summaryrefslogtreecommitdiff
path: root/gtk/gtkmenushell.h
Commit message (Collapse)AuthorAgeFilesLines
* Revert name changeCody Russell2008-07-011-1/+1
| | | | svn path=/trunk/; revision=20724
* Practically everything changed.Cody Russell2008-06-301-1/+1
| | | | | | | | | | | | | 2008-06-30 Cody Russell <bratsche@gnome.org> * Practically everything changed. Change all references of GIMP Toolkit (and variations of it) to GTK+ Toolkit, showing no mercy at all to our beloved ancestry. (#540529) svn path=/trunk/; revision=20709
* Bug 539466 – GtkMenuShell API/ABI break in trunk.Carlos Garnacho2008-06-211-2/+2
| | | | | | | | | | | 2008-06-21 Carlos Garnacho <carlos@imendio.com> Bug 539466 – GtkMenuShell API/ABI break in trunk. * gtk/gtkmenushell.h: Fix API/ABI break, two guint fields had different name and packing width. svn path=/trunk/; revision=20666
* Switch to "guint GSEAL (foo) : width;" when packing fields in guints.Tim Janik2008-06-201-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gtk/gtkbox.h: * gtk/gtkbutton.h: * gtk/gtkcellrenderer.h: * gtk/gtkcellrenderertext.h: * gtk/gtkcheckmenuitem.h: * gtk/gtkcontainer.h: * gtk/gtkentry.h: * gtk/gtkhandlebox.h: * gtk/gtkimcontextsimple.h: * gtk/gtklabel.h: * gtk/gtkliststore.h: * gtk/gtkmenu.h: * gtk/gtkmenuitem.h: * gtk/gtkmenushell.h: * gtk/gtknotebook.h: * gtk/gtkpaned.h: * gtk/gtkplug.h: * gtk/gtkprintjob.h: * gtk/gtkprogressbar.h: * gtk/gtkrange.h: * gtk/gtkscale.h: * gtk/gtkscrolledwindow.h: * gtk/gtksizegroup.h: * gtk/gtksocket.h: * gtk/gtkspinbutton.h: * gtk/gtkstatusbar.h: * gtk/gtktable.h: * gtk/gtktearoffmenuitem.h: * gtk/gtktextbuffer.h: * gtk/gtktextview.h: * gtk/gtktogglebutton.h: * gtk/gtktoolbar.h: * gtk/gtktreestore.h: * gtk/gtktreeviewcolumn.h: * gtk/gtkwindow.h: Do not specify width inside GSEAL() when packing fields in guints. svn path=/trunk/; revision=20621
* Seal GtkMenuShellTim Janik2008-06-201-14/+14
| | | | svn path=/trunk/; revision=20609
* whitespace cleanup: remove trailing whitespace and excess newlines andMichael Natterer2008-05-281-1/+1
| | | | | | | | | | | 2008-05-28 Michael Natterer <mitch@imendio.com> * gtk/gtk*.h: whitespace cleanup: remove trailing whitespace and excess newlines and sprinkled some newlines where needed. Zero code or formatting changes included. svn path=/trunk/; revision=20225
* define __GTK_H_INSIDE__ around including all other headers.Michael Natterer2008-05-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-05-28 Michael Natterer <mitch@imendio.com> * gtk/gtk.h: define __GTK_H_INSIDE__ around including all other headers. * gtk/gtktypebuiltins.h.template * gtk/gtkversion.h.in * gtk/gtk*.h: add single-include guards that #error out if GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is included individually. * gtk/gtkprintbackend.h * gtk/gtkprinter-private.h * gtk/gtktextlayout.h * gtk/gtktexttagprivate.h * gtk/gtktexttypes.h * gtk/gtktreedatalist.h: include <gtk/gtk.h> instead of individual headers in these private or semi-private headers. * gtk/gtkimmodule.h: also here because it's not in gtk.h. * gtk/gtkpagesetupunixdialog.h * gtk/gtkprinter.h * gtk/gtkprintjob.h * gtk/gtkprintunixdialog.h: likewise in the gtkunixprint headers. * gtk/gtkclist.h * gtk/gtkcombo.h * gtk/gtkctree.h * gtk/gtkfilesel.h * gtk/gtkitemfactory.h * gtk/gtklist.h * gtk/gtklistitem.h * gtk/gtkoldeditable.h * gtk/gtkoptionmenu.h * gtk/gtkpixmap.h * gtk/gtkpreview.h * gtk/gtksignal.h * gtk/gtktipsquery.h: whenever possible, include only <gtk/gtk.h> instead of individual headers in these deprecated headers. They don't get included at all when GTK_DISABLE_DEPRECATED is defined, so if an app needs them anyway, it must undef GTK_DISABLE_DEPRECATED and include them individually, which should continue to work. * gtk/gtkclist.c: include "gtkctree.h" because of the change above. svn path=/trunk/; revision=20221
* add move_selected signal to allow overriding the default internalMatthias Clasen2007-06-151-1/+2
| | | | | | | | | | | 2007-06-15 Matthias Clasen <mclasen@redhat.com> * gtk/gtkmenushell.[ch]: add move_selected signal to allow overriding the default internal behaviour. (#446833, Ryan Lortie) svn path=/trunk/; revision=18145
* Allow to pop up menus without grabbing the keyboard. Useful for stuff likeMichael Natterer2005-03-311-6/+10
| | | | | | | | | | | | | | | | | | | 2005-03-31 Michael Natterer <mitch@gimp.org> Allow to pop up menus without grabbing the keyboard. Useful for stuff like virtual keyboards. Fixes bug #159890 * gtk/gtk.symbols * gtk/gtkmenushell.[ch]: added boolean property "take-focus" and public API gtk_menu_shell_set/get_take_focus(). * gtk/gtkmenu.c (gtk_menu_popup) (popup_grab_on_window): don't grab the keyboard if take_focus is FALSE. * gtk/gtkmenuitem.c (_gtk_menu_item_popup_submen): propagate the parent menu_shell's take_focus property to the submenu which is about to be popped up.
* Make PLT-reduction work with gcc4, and don't include everything inMatthias Clasen2005-03-201-8/+2
| | | | | | | | | | | | | | | | | | 2005-03-20 Matthias Clasen <mclasen@redhat.com> Make PLT-reduction work with gcc4, and don't include everything in gdkalias.h: * gtk/grk.symbols: Group symbols by header and source file. * gtk/makegtkalias.pl: Protect definitions by the same preprocessor symbols used to guard the headers. Move the alias declarations to a separate file which is produced when calling makegtkalias.pl -def * gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate this file. * gtk/*.c: Include gtkalias.h after the other headers, include gtkaliasdef.c at the bottom. * gtk/*.h: Small cleanups.
* Support no-Alt mnemnonics in menu bars (#101309, Owen Taylor)Matthias Clasen2004-12-101-0/+7
| | | | | | | | | | | | | | | | | | | | | | 2004-12-10 Matthias Clasen <mclasen@redhat.com> Support no-Alt mnemnonics in menu bars (#101309, Owen Taylor) * gtk/gtkwindow.c: Factor out mnemonic hash code into a separate file. * gtk/gtkmnemonichash.[hc]: Factored out mnemonic hash code from gtkwindow.c. * gtk/Makefile.am (gtk_c_sources): Add gtkmnemonichash.[hc]. * gtk/gtkmenushell.c (struct _GtkMenuShellPrivate): Give menu shells their own mnemonic hash. * gtk/gtkmenushell.h: Add private api to support mnemonics. * gtk/gtklabel.c (gtk_label_setup_mnemonic): Add mnemonic to the menushell mnemonic hash when inside a menu.
* #136672, reported by Christian Persch; fixes based on a patch by SoerenOwen Taylor2004-03-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Sun Mar 14 19:26:48 2004 Owen Taylor <otaylor@redhat.com> #136672, reported by Christian Persch; fixes based on a patch by Soeren Sandmann. * gtk/gtkmenu.c: Change the handling of mixed gridded and non-gridded menu items; the old method was causing major performance problems even with the "avoid relayout on destruction" hack put in recently. Now we first lay out the gridded items and then put the non-gridded items into empty rows / after the gridded items. Layout is done in a central menu_shell_ensure_layout(). Also avoid emitting property notifications when we initially insert or attach items. * gtk/gtkmenushell.[ch] gtk/gtkmenu.c: Stop setting the unused menu_shell->menu_flag, and document it as unused in the header. * tests/testactions.c: Add a test of creating/removing lots of items. * test/testgtk.c: Add some more cruft to the menu test.
* New function to emit the "cancel" signal on a menu shell.Matthias Clasen2003-12-211-0/+1
| | | | | | | | | | | | | | Sun Dec 21 01:54:40 2003 Matthias Clasen <maclas@gmx.de> * gtk/gtkmenushell.h: * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function to emit the "cancel" signal on a menu shell. * gtk/gtkmenu.c (gtk_menu_key_press): * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the new function instead of directly emitting the signal. (#81803, Owen Taylor)
* Remove usage of menu_shell->ignore leave which was to deal with strayOwen Taylor2003-08-131-1/+1
| | | | | | | | | | Wed Aug 13 17:01:49 2003 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify): Remove usage of menu_shell->ignore leave which was to deal with stray events we no longer get because we do grabbing differently. Comment it as unused in the header. (#115837, Keith Bissett)
* Add a new binding signal, "move_scroll", and use it to hook upOwen Taylor2002-12-141-0/+2
| | | | | | | | | | | | | | | | | | | | Sat Dec 14 14:19:16 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenu.c: Add a new binding signal, "move_scroll", and use it to hook up Home/End/Page_Up/Page_Down keybindings. (#80484, Narayana Pattipati, Marius Andreiana) * gtk/gtkmenu.c (gtk_menu_scroll_item_visible): Fix some bugs in the computation of when an item is visible. (#99545) * gtk/gtkbindings.[ch] (_gtk_binding_signal_new) gtk/gtkmenushell.c: Move here, export privately. * gtk/gtkmenushell.c (_gtk_menu_shell_select_last): Export privately. * gtk/gtkmenushell.c (gtk_menu_shell_select_item): Don't select the item if it is already selected.
* gtkmenu.c, gtkmenubar.c, gtkmenuitem.c, gtkmenushell.c, gtkmenushell.h,Soeren Sandmann2002-10-201-20/+20
| | | | | | | | | | | | | | | | | | Sun Oct 20 23:58:03 2002 Soeren Sandmann <sandmann@daimi.au.dk> * gtkmenu.c, gtkmenubar.c, gtkmenuitem.c, gtkmenushell.c, gtkmenushell.h, gtkmenushell.h - make the delay before submenus appear below menu bars a GtkSetting - make the delay before submenus pops up a GtkSetting - make the stay up triangle slightly larger - don't pop up the first submenu immediately. - make the default delay for submenus 225 ms, and 0 for menubars. - make the default delay before popping down inside the stay-up triangle 1000 ms Fixes #74950
* Deprecation cleanupManish Singh2002-10-051-6/+6
| | | | | | | | Fri Oct 4 18:40:50 2002 Manish Singh <yosh@gimp.org> * gtkcheckmenuitem.[ch] gtkimagemenuitem.[ch] gtkmenu.[ch] gtkmenubar.[ch] gtkmenuitem.[ch] gtkmenushell.[ch] gtkradiomenuitem.[ch]: Deprecation cleanup
* Make icon sizes configurable (#70648, slightly based on a patch from BillOwen Taylor2002-09-241-2/+2
| | | | | | | | | | | | | | | | | | | Tue Sep 24 16:40:14 2002 Owen Taylor <otaylor@redhat.com> Make icon sizes configurable (#70648, slightly based on a patch from Bill Haneman, Brian Cameron) * gtk/gtkiconfactory.[ch]: Add gtk_icon_size_lookup_for_settings(). * gtk/gtksettings.c: Add gtk-icon-sizes XSETTING * gtk/gtkiconfactory.c: Make icon sizes per-GtkSettings. * gtk/gtkstyle.c: Use gtk_icon_size_lookup_for_settings() * gtk/gtkrc.[ch]: Privately export _gtk_rc_reset_styles() to force all the widgets to recompute their appearance.
* Add an extra parameter to _gtk_menu_item_select_first() to allow us toOwen Taylor2002-07-061-1/+2
| | | | | | | | | | | | Fri Jul 5 20:18:23 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.[ch] gtk/gtkmenubar.c gtk/gtkmenuitem.c gtk/gtkentry.c gtk/gtktextview.c: Add an extra parameter to _gtk_menu_item_select_first() to allow us to choose whether we want to select the first item predictably or to select the first sensitive item. Fixes problem with insensitive menu items and keynav. (#85796, reported by Bill Haneman and others.)
* Export private _gtk_menu_shell_activate() to encapsulate cut-and-pasteOwen Taylor2002-04-111-0/+1
| | | | | | | | | | | | Sat Apr 6 06:57:00 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste code. * gtk/gtkmenubar.c: Select the first item on the menu bar for F10 rather than acting as if the user pressed <Alt>F to select the file manager.
* Massive padding addition to class structures.Owen Taylor2002-02-231-0/+6
| | | | | | | | Sat Feb 23 11:54:12 2002 Owen Taylor <otaylor@redhat.com> * gtk/*.h gdk/*.h: Massive padding addition to class structures. * gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
* Non-exported _gtk_menu_select_first() function that selects the first itemOwen Taylor2002-02-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | Sat Feb 2 20:16:04 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkmenushell.c (_gtk_menu_shell_select_first): Non-exported _gtk_menu_select_first() function that selects the first item of the menu in a standard way. (Skipping tearoffs.) * gtk/gtkmenushell.c gtk/gtkentry.c gtk/gtktextview.c gtkmenuitem.c: Use _gtk_menu_shell_select_first(). * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Remember if we are starting the timeout from a keypress so we can set menushell->ignore_enter properly. * gtk/gtknotebook.c (focus_child_in): Return something meaningful if there are no children. * gtk/gtkmenu.c (gtk_menu_key_press): Fix precendence problem.
* GdkEventButton->button can occupy significantly more than 2 bits. Besides,Elliot Lee2000-11-221-3/+3
| | | | | * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly more than 2 bits. Besides, I need to implement an evil hack. :)
* Add note about GtkMenuPositionFunc API changes.Alexander Larsson2000-11-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-08 Alexander Larsson <alexl@redhat.com> * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc API changes. * gtk/gtkmenu.c: Add support for scrolling menus. Remove gtk_menu_append/prepend/insert, these have been moved to gtkcompat.h as #defines. * gtk/gtkcompat.h.in: Add compatibility #defines for gtk_menu_append/prepend/insert * gtk/gtkmenu.h: Add data needed for scrolling menus. GtkMenuPositionFunc gets an extra argument push_in. gtk_menu_append/prepend/insert removed. * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu positioning behaviour to fit to scrolling menus. * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse into menuitem->submeny. That is wrong, and broke torn off submenus of torn off menus, since they were unrealized when the first menu was unrealized. * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and gtk_menu_shell_select_item() since these need to be overridden in GtkMenu. * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu positioning behaviour to fit to scrolling menus. (gtk_option_menu_key_press, gtk_option_menu_button_press): Select the current item so that it is prelighted when the menu pops up. This is a workaround to the fact that the menu doesn't get the initial enter event (due to grabs). * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c: s/gtk_menu_append/gtk_menu_shell_append/ * gtk/gtknotebook.c: s/gtk_menu_insert/gtk_menu_shell_insert/ * gtk/testgtk.c (create_menu, create_menus): Create the first menu with 50 items so that menu scrolling can be tested. Patch from Jonathan Blandford <jrb@redhat.com> * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new system to handle size requests. First, we ask what the size of the toggle is. Then, when allocating the size, we allocate the toggle_size first. This way we can have multiple menu-item classes w/o needing a seperate class for each. * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system. * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system. * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_toggle_size_request): New function to handle the toggle size-request.
* Use G_GNUC_CONST.Elliot Lee2000-08-301-1/+1
| | | | Use G_GNUC_CONST.
* applied patch from Andreas Persenius <ndap@swipnet.se> that updates theTim Janik2000-07-261-4/+4
| | | | | | | | Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org> * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that updates the license headers to the GNU Lesser General Public License, as well as updating the copyright year to 2000.
* s/refcount/ref_count/.Tim Janik2000-02-131-0/+1
| | | | | | | | | | | | | | | | | | Sun Feb 13 08:54:45 2000 Tim Janik <timj@gtk.org> * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/. * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the parameters given and cursor->ref_count. coding style fixups. * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer, not GtkWidget. * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to fix up widget macros and add _GET_CLASS() variant. * gtk/*.c: some GtkType fixups.
* Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org>Tim Janik1999-03-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org> * merges from gtk-1-2: Tue Mar 16 17:43:33 1999 Tim Janik <timj@gtk.org> * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the item factory class has been created. (gtk_item_factory_parse_rc): likewise. * gtk/gtkmenu.c: keep proper references for old_active_menu_item. (gtk_menu_reparent): unset the usize of the new parent, so the menu can sanely be size requested and we don't get nasty screen artefacts upon next reparentation. (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an enter notify. only synthesize enter notifies if the pointer really is inside the event window. (gtk_menu_popdown): use gtk_menu_shell_deselect(). (gtk_menu_popup): move the background setting stuff into gtk_menu_tearoff_bg_copy() so it can be called from other places as well. * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use gtk_menu_shell_select_item() to select the new item. (gtk_menu_shell_deselect): export this function, so gtkmenu.c can do the right thing for deselection as well. Sat Mar 15 20:10:33 1999 Tim Janik <timj@gtk.org> * gtk/gtkwidget.[hc]: (gtk_widget_accelerators_locked): return whether a widget's accelerators are locked. * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or existing accelerators if the widget's accelerators are locked. Sat Mar 14 19:44:05 1999 Tim Janik <timj@gtk.org> * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items. * gtk/gtkmenu.c: truely forward key press and key release events to the menu widget from the toplevel or tearoff window. we can't simply connect to that, we need to stop further processing of the events as well. Sat Mar 13 13:14:17 1999 Tim Janik <timj@gtk.org> * gtk/gtkmenu.c: (gtk_menu_key_press): pass event->keyval, event->state to gtk_accelerator_valid, instead of event->keyval twice. refuse to install single letter accelerators for menus that use single letter shortcuts. * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use gtk_menu_ensure_uline_accel_group(). * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group() which will always return an uline accel group, made gtk_menu_get_uline_accel_group() return NULL if the group isn't yet created. Mon Mar 15 01:03:27 1999 Lars Hamann <lars@gtk.org> * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag. * gtk/gtkclist.c (gtk_clist_column_title_passive): Leave button sensitive, trap button_press, button_release, motion_notify, enter_notify and leave_notify events instead. (gtk_clist_column_title_active): disconnect event handler. (gtk_clist_drag_data_get): fixed memory leak. Reported by Guillaume Laurent <glaurent@worldnet.fr> Wed Mar 10 23:49:55 1999 Lars Hamann <lars@gtk.org> * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few width/height mixups. * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal if needed. Wed Mar 10 00:11:32 1999 Tim Janik <timj@gtk.org> * gtk/testgtk.c (create_item_factory): unref the item factory after window's destruction. * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference count on the menu shell around the menu item's activation, since the signal emission may cause menu shell destruction. * gtk/gtkitemfactory.c: the previous code leaked one accel group per menu. we use gtk_menu_get_uline_accel_group() now to fix that, and with that also create the underline accelerator group of the menus only if required (i.e. an underline accelerator has been specified). (gtk_item_factory_construct): (gtk_item_factory_create_item): removed code that would create an extra accel group for the menu (and leak references). (gtk_item_factory_create_item): adapted the underline accelerator installation code to properly feature gtk_menu_get_uline_accel_group(). * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive menu->accel_group, this may return NULL if the accelerator group hasn't been set yet. added gtk_menu_get_uline_accel_group() to retrive the underline accelerator group of the menu, this will be created on demand and proper care is taken about its reference count. * gtk/gtkitemfactory.h: * gtk/gtkitemfactory.c: dumped the approach of keeping a widgets by action list on the factory since the factory<->widget destroy negotiation didn't work and would be hard to get going at all. instead we keep a list of GtkItemFactoryItem items on the factory (GtkItemFactoryItems are persistant throughout a program's life time). also, i removed the static const gchar *key_* variables, and made them inline strings (they weren't actually used anyways). (gtk_item_factory_add_item): update ifactory->items. (gtk_item_factory_destroy): destroy ifactory->items (and remove the item factory pointer from the remaining ifactory widgets). (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem list to find the widget. (gtk_item_factory_get_item): new function that works around gtk_item_factory_get_widget() limitations, this function will only return menu items, even for <Branch> entries. Tue Mar 9 01:01:28 1999 Tim Janik <timj@gtk.org> * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our font hash table, if we have a GdkFontPrivate entry for this font already, simply increment its reference count, provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>. * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>. Sun Mar 7 06:13:29 1999 Tim Janik <timj@gtk.org> * gtk/gtkcontainer.c: (gtk_container_add_with_args): (gtk_container_addv): (gtk_container_add): before adding a child to a conatiner, make sure it is (default) constructed, this is neccessary because under certain circumstances the child will get relized and mapped immediatedly, in which case it has to be constructed already. Mon Mar 1 17:58:21 1999 Tim Janik <timj@gtk.org> * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal values > 1 as TRUE also.
* Added notice to look in AUTHORS and ChangeLog files for a list of changes.CST 1999 Shawn T. Amundson1999-02-241-0/+8
| | | | | | | Wed Feb 24 01:22:39 CST 1999 Shawn T. Amundson <amundson@gtk.org> * *.[ch]: Added notice to look in AUTHORS and ChangeLog files for a list of changes.
* removed all occourances of #pragma } and #pragma { which were in place toTim Janik1998-10-071-1/+0
| | | | | | | | | | | Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org> * gtk/gtk*.h: * gdk/gdk.h: removed all occourances of #pragma } and #pragma { which were in place to fixup emacs' cc-mode indentation. putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the proper way to achive this and doesn't produce problems for stupid pragma-related compiler bugs. ;)
* Added gdk_text/string_extents() - too calculate all the metrics at once ofOwen Taylor1998-08-121-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com> * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - too calculate all the metrics at once of a string, including things which weren't calculated before. * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New MenuItem type, that when put as the first thing in a menu, makes the menu tearoff. Currently drawn as a dashed line. * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag "hide_on_activate" to the MenuItem class structure to allow check and radio buttons to be changed with <Space> without hiding the menu. * gtk/gtkaccellabel.[ch]: Added new capabilities to set a underline_group and underline_mods for the label - accelerators added in the underline group matching underline_mods will be displayed as an underline character. This doesn't work - Save As needs to be underlined as Save _As. * gtk/gtkitemfactory.c: - Create a AccelGroup for each MenuShell we create. - If an '&' appears before a character 'c' in the path, then make 'c' an accelerator in the menu's accel group, and if the menuitem is menubar <alt>C an accelerator in the itemfactory's accel group. * gtk/gtklabel.[ch]: Add support for a pattern arg - which is a string. If an '_' appears in this string, the corresponding position in the label is underlined. Add gtk_label_parse_uline() convenience function which takes a string with embedded underlines, sets the pattern and label, and returns the accelerator keyval. * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget. Instead, they create a GtkWindow and add themselves to that. (When torn off, another new feature, they create another GtkWindow to hold the torn off menu) New function gtk_menu_set_tearoff_state() * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: Added action signals for keyboard navigation of menus. * gtk/gtkmenushell.c: Key press handler which activates bindings for navigation, and accelerators, for handling underline accelerators. Exported functions to select and activate menu items in a menushell. * gtk/testgtk.c: Added a new "Item Factory" test which tests GtkItemFactory and the new keyboard navigation of menus.
* fixed an assertment.Tim Janik1998-06-071-20/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org> * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment. * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from, this should eventually be done by gentypeinfo.el somewhen. * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays. * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the enum values of an enum type. * gtk/gtk.defs: * gtk/gtkcurve.h: * gtk/gtkobject.h: * gtk/gtkprivate.h: * gtk/gtkwidget.h: * gtk/gtkenums.h: brought enum/flags definitions in sync, added a few more enum definitions for bindings and pattern matching. * some more macro and GtkType fixups in various places. * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used as a key-release modifier for the binding system. Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org> * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it was a stale list pointer that is already present in GtkMenuShell. * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal GtkMenuShell::selection_done which is emitted after the menu shell poped down again and all possible menu items have been activated. Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org> * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue before activation of the menuitem, so the menu is actually taken off the screen prior to any menu item activation. * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation for NULL nodes. * gtk/gtkwidget.h: * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop the emission of the "add-accelerator" signal on a widget. this is usefull to prevent accelerator installation on certain widgets. * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu labels left justified, by setting their alignment. stop accelerator installation for the menu items, since we use dynamic menus. Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org> * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people should *really* use GtkItemFactory. this is only for preserving source compatibility where possible, use of GtkMenuFactory is deprecated as of now. * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function to create user signals of type GTK_RUN_NO_RECURSE. don't know why i missed this possibility when i added gtk_object_class_add_user_signal in late january. * gtk/gtkmain.c (gtk_init): ignore subsequent function calls. Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org> * gtk/gtkaccelgroup.h: * gtk/gtkaccelgroup.c: new implementation of the accelerator concept. * gtk/gtkaccellabel.h: * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features display of the accelerators associated with a certain widget. * gtk/gtkitemfactory.h: * gtk/gtkitemfactory.c: new widget, item factory with automatic rc parsing and accelerator handling. * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for positioning a menu. (gtk_menu_map): removed the allocation code. (gtk_menu_size_allocate): care for redrawing of children and resize our widget->window correctly. (gtk_menu_key_press): feature the new accelerator groups. * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the submenu if neccessary. * gtk/gtkmenuitem.c: * gtk/gtkcheckmenuitem.c: * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label() function variants. * gdk/gdk.c: (gdk_keyval_from_name): (gdk_keyval_name): new functions for keyval<->key-name associations. (gdk_keyval_to_upper): (gdk_keyval_to_lower): (gdk_keyval_is_upper): (gdk_keyval_is_lower): new functions to check/translate keyvalues with regards to their cases. Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org> * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a widget's class path. (gtk_widget_path): new function to calculate a widget's name path. * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up pattern matching, features reversed pattern matches.
* Changed LGPL address for FSF in all .h and .c filesPDT 1998 Shawn T. Amundson1998-04-131-2/+3
| | | | | | Sun Apr 12 18:54:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> * Changed LGPL address for FSF in all .h and .c files
* Initial revisionElliot Lee1997-11-241-0/+83