After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 699993 - volumebutton.h not in header gtkmm.h
volumebutton.h not in header gtkmm.h
Status: RESOLVED FIXED
Product: gtkmm
Classification: Bindings
Component: build
3.4.x
Other Linux
: Normal normal
: ---
Assigned To: gtkmm-forge
gtkmm-forge
Depends on:
Blocks:
 
 
Reported: 2013-05-09 09:58 UTC by Alfredo Pons Menargues
Modified: 2013-05-18 10:11 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
headertest2.sh (431 bytes, text/plain)
2013-05-15 07:48 UTC, Kjell Ahlstedt
  Details
patch: Add missing includes in gdkmm.h and gtkmm.h. (2.33 KB, patch)
2013-05-15 07:49 UTC, Kjell Ahlstedt
none Details | Review

Description Alfredo Pons Menargues 2013-05-09 09:58:57 UTC
The volumebutton.h not in header gtkmm.h

This is a bug?
Is there any reason for that is not in the gtkmm.h header?

Currently if you want to use an object volumebutton, you must include: #include <gtkmm/volumebutton.h>

Regards.
Comment 1 Kjell Ahlstedt 2013-05-15 07:48:23 UTC
Created attachment 244275 [details]
headertest2.sh

This small script can help in the search for missing files in gdkmm.h and
gtkmm.h. It may not be necessary to include all header files directly. An
included file may include other files.

I've noticed the following missing files in gtkmm 3. Files in parentheses
shall not be added.
plug.h and socket.h might be added within #ifdef GDK_WINDOWING_X11, but I
recommend not adding them. If GDK_WINDOWING_X11 is defined, it's defined in one
of the files in gdk/gdk.h. It would not be nice to include that file in gtkmm.h
(although it's included anyway via some of the other included files).

gdkmm.h
  gdkmm/devicemanager.h
  (gdkmm/wrap_init.h)

gtkmm.h
  gtkmm/accelmap.h
  gtkmm/actionable.h
  gtkmm/fontchooserwidget.h
  (gtkmm/plug.h)
  gtkmm/scalebutton.h
  (gtkmm/selectiondata_private.h)
  (gtkmm/socket.h)
  (gtkmm/treeview_private.h)
  gtkmm/volumebutton.h
  (gtkmm/wrap_init.h)
Comment 2 Kjell Ahlstedt 2013-05-15 07:49:39 UTC
Created attachment 244276 [details] [review]
patch: Add missing includes in gdkmm.h and gtkmm.h.

Here's a patch for the master branch.
I don't know if it's ok to push it now. Perhaps something shall first be done
to the master branch to mark that gtkmm 3.8.1 has been released.
Comment 3 Murray Cumming 2013-05-15 07:55:48 UTC
Sorry, I have pushed that tag now. I guess I forgot to do it before.

Please go ahead with this patch for master.

Maybe you'd like to put that script in tools/
Comment 4 Alfredo Pons Menargues 2013-05-15 08:18:12 UTC
Thank you.
I just needed to confirm it was a bug. For now, until the Debian team does not include gtkmm 3.8.1 version, I will write the #include needed in my source code.
There is no problem.
Thank you Murray and Kjell.
Comment 5 Kjell Ahlstedt 2013-05-15 14:27:30 UTC
(In reply to comment #3)
> Sorry, I have pushed that tag now. I guess I forgot to do it before.
> Please go ahead with this patch for master.

Bug 700069 shall not be fixed in the stable release 2.24. Then I suppose this
bug shall not be fixed in the stable release 3.8.

Shall I make a gtkmm-3-8 branch before I push the patch to the master branch?
Branch from where? From "Gtk::Widget: Don't call signal_hide handlers on a
widget being deleted", which is the last commit in 3.8.1? Or from HEAD?

I don't fully understand the tagging in git.
At https://git.gnome.org/browse/gtkmm/, tag 3.8.1 is shown under
"Tag Download", but not in the list of commit messages. When I do "git pull"
and "git tag", there is no 3.8.1 tag in the shown tag list.

> Maybe you'd like to put that script in tools/

Yes, I can put both the script in comment 1, and the one in bug 697835
comment 20 in tools/. These scripts can be useful for testing other packages
as well. glibmm/tools/ or a new directory under glibmm/tools/ is probably a
suitable location. glibmm/tools/test_scripts/?
Comment 6 Murray Cumming 2013-05-17 11:05:47 UTC
(In reply to comment #5)
> I don't fully understand the tagging in git.
> At https://git.gnome.org/browse/gtkmm/, tag 3.8.1 is shown under
> "Tag Download", but not in the list of commit messages. When I do "git pull"
> and "git tag", there is no 3.8.1 tag in the shown tag list.

I did not push the 3.8.1 commit (which changed the version number in configure.ac, for instance) until just now. Sorry for the mess.

I have created a gtkmm-3-8 branch with the correct stuff in it.

Please feel free to push to git master.
Comment 7 Kjell Ahlstedt 2013-05-18 10:11:56 UTC
I've pushed the modification of gtkmm/gdk/gdkmm.h and gtkmm/gtk/gtkmm.h
https://git.gnome.org/browse/gtkmm/commit/?id=0c5befc5b1ab275ec547c2d12862c7468414ec9d

and a rewritten version of headertest2.sh to
glibmm/tools/test_scripts/testmmh.sh
https://git.gnome.org/browse/glibmm/commit/?id=e998d27cae0725c9dab4b163c6638348dea5e7bd