2005-02-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: removed gimp_ui_manager_ui_get()
and implement the new virtual functions GtkUIManager::get_widget()
and ::get_action() instead. Menu loading happens transparently now.
* app/display/gimpdisplayshell.c
* app/widgets/gimpdockable.c
* app/widgets/gimptexteditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: use
gtk_ui_manager_get_widget() instead of the removed
gimp_ui_manager_ui_get().
2004-12-31 Michael Natterer <mitch@gimp.org>
Applied modified patch from Ben Campbell which adds drop
coordinates to the color drop callback and uses it to insert
colors in the palette editor. Extended the patch to add drop
coordinates to all drop callbacks.
* app/core/gimppalette.[ch]: added gimp_palette_insert_entry().
* app/display/gimpdisplayshell-dnd.[ch]: added drop coordinates
to all drop callbacks.
* app/dialogs/palette-import-dialog.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdnd.[ch]
* app/widgets/gimpdrawabletreeview.c
* app/widgets/gimpfgbgeditor.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppropwidgets.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptoolbox-dnd.c
* app/widgets/gimptoolbox-image-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptooloptionseditor.c
* libgimpwidgets/gimpcolorselect.c: changed accordingly. The passed
drop coordiantes are so far unused.
* app/widgets/gimppaletteeditor.c: use the drop coordinates to
insert the new color into the palette at the right place instead
of always appending. Fixes bug #150030.
2004-12-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: renamed
gimp_ui_manager_get_action() to gimp_ui_manager_find_action().
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c
* app/display/gimpdisplayshell-close.c: changed accordingly.
(this change is quite useless as it stands, but will help keeping
the diff between 2.2 and 2.3 small as soon as we're branched).
* app/widgets/gimpcolormapeditor.c
(gimp_colormap_preview_button_press): invoke the "edit-color", not
"new-color" action upon double click.
(palette_editor_select_entry): update the ui manager after
selecting the entry so the entry-specific actions become sensitive
if there was no entry selected before.
2004-10-16 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: added utility function
gimp_ui_manager_get_action() which takes "group_name" and
"action_name".
* app/display/gimpdisplayshell-close.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: use it.
2004-10-16 Michael Natterer <mitch@gimp.org>
* app/actions/channels-actions.c
* app/actions/colormap-editor-actions.c
* app/actions/documents-actions.c
* app/actions/tool-options-actions.c
* app/actions/vectors-actions.c: added more tooltips for actions
which are used as extended dialog button callbacks.
* app/widgets/gimpeditor.c (gimp_editor_add_action_button): keep
the list of extended actions in reverse order.
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpdocumentview.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpvectorstreeview.c: don't set the tooltips
manually. Removes another bunch of insane translatable multiline
format strings. Pass the extended actions in the right order
to gimp_editor_add_action_button().
2004-06-29 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpwidgets-utils.[ch]: added new function
gimp_get_mod_string() which takes a GdkModifierType and returns
correctly formated strings for all shift,control,alt combinations.
* app/tools/gimpbucketfilloptions.c
* app/tools/gimpcolorpickeroptions.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcropoptions.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpflipoptions.c
* app/tools/gimpmagnifyoptions.c
* app/tools/gimpmoveoptions.c
* app/tools/gimptransformoptions.c
* app/tools/gimpvectoroptions.c
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpdocumentview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpthumbbox.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpvectorstreeview.c: use the new function instead
of gimp_get_mod_name_shift(),control(),alt(),separator(). This
kindof addresses the issue of configurable modifier keys but is
actually indended to ease translation of format strings ("%s" is
easier to get right than "%s%s%s").
2004-05-24 Sven Neumann <sven@gimp.org>
* app/core/gimptoolinfo.[ch]: derive GimpToolInfo from
GimpViewable, it doesn't make sense for it to be a GimpData.
* app/widgets/gimptooloptionseditor.c
(gimp_tool_options_editor_get_title): do not append " Options" to
the tool name. Fixes bug #142280.
2004-05-17 Michael Natterer <mitch@gimp.org>
* menus/menus.xsl: put the image popup menu into a dummy menubar
to work around the silly GtkUIManager restriction that popup menus
can't have tearoff items.
* app/menus/menus.c
* app/menus/image-menu.c
* app/display/gimpdisplayshell-callbacks.c
* app/gui/gui-vtable.c
* app/menus/plug-in-menus.c: changed accordingly.
* app/gui/gui.c (gui_restore_after_callback): connect to
"notify::tearoff-menus" of GimpGuiConfig and reconfigure the
global image UI manager accordingly.
* app/config/gimpguiconfig.c: removed GIMP_PARAM_RESTART from the
"tearoff-menus" property because GtkUIManager can change this on
the fly.
* app/display/gimpdisplayshell.[ch]: added the menubar to the
GimpDisplayShell struct. Some cleanup in gimp_display_shell_new().
* app/display/gimpdisplayshell-appearance.c
(gimp_display_shell_set_show_menubar): use shell->menubar instead
of asking the UI manager.
* app/widgets/gimpuimanager.[ch]: changed gimp_ui_manager_ui_get()
to transparently load the XML files even if a sub-widget was
requested. Reordered parameters of gimp_ui_manager_ui_popup().
Lots of internal cleanups.
* app/widgets/gimpdockable.c
* app/widgets/gimptooloptionseditor.c: simplified accordingly.
* app/widgets/gimpeditor.[ch]: added new function
gimp_editor_popup_menu() which takes a GimpMenuPositionFunc and
updates/shows the editor's menu.
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c: use gimp_editor_popup_menu().
* app/widgets/gimptoolbox.c: moved all code from
gimp_toolbox_new() to GObject::constructor().
2004-05-13 Michael Natterer <mitch@gimp.org>
* menus/tool-options-menu.xml: added "name" attributes to all
submenus.
* app/menus/tool-options-menu.c: use the menu names instead of the
overly long action names.
* app/actions/colormap-editor-commands.c
* app/actions/tool-options-commands.c: added some callback
implementations.
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimptooloptionseditor.c: removed the callbacks here
and use action buttons.
* app/actions/actions.c
* app/actions/colormap-editor-actions.c
* app/actions/edit-actions.c: code review / cleanup.
2004-04-30 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: added signal "update" which
is G_SIGNAL_RUN_LAST, so handlers can hook in before and after
the default implementation. Update the action groups
in the default implementations.
(gimp_ui_manager_ui_get): make sure we always return a widget
by calling gtk_ui_manager_ensure_update().
* app/widgets/gimpdockable.c (gimp_dockable_show_menu): make
sure the dockable menu is loaded before trying to access its
widgets/actions.
Resurrected the dynamic tool options menus:
* app/actions/tool-options-actions.c: dynamically destroy/create
actions for the tool options' presets.
* app/actions/tool-options-commands.[ch]: all callbacks are
GimpEnumAction::selected() callbacks now.
* app/gui/tool-options-menu.[ch]: connect and connect_after to
GimpUIManager::update(). Remove the old preset menu items
in the former callback, create the new ones in the latter.
Removed the last item factory entries.
* app/gui/menus.c
* app/widgets/gimptooloptionseditor.c: changed accordingly.
2004-04-29 Michael Natterer <mitch@gimp.org>
Switch from GtkItemFactory to GtkUIManager. The migration is
almost complete, still stuff missing/incomplete, definitely added
a bunch of new bugs...
* app/actions/*-commands.[ch]: converted all callback from
GtkItemFactory callbacks to GtkAction callbacks.
* app/actions/debug-actions.c
* app/actions/gradient-editor-actions.c
* app/actions/help-actions.c
* app/actions/plug-in-actions.c
* app/actions/qmask-actions.c
* app/actions/tool-options-actions.c: various fixes.
* app/display/gimpdisplay.[ch]
* app/display/gimpdisplayshell-appearance.[ch]
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell.[ch]: move everything from
GtkItemFactory to GtkUIManager.
* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
Needed because the action callbacks don't have a widget parameter
and sometimes we need a parent window for showing dialogs.
* app/gui/Makefile.am
* app/gui/brushes-menu.[ch]
* app/gui/buffers-menu.[ch]
* app/gui/channels-menu.[ch]
* app/gui/colormap-editor-menu.[ch]
* app/gui/dialogs-menu.[ch]
* app/gui/documents-menu.[ch]
* app/gui/error-console-menu.[ch]
* app/gui/fonts-menu.[ch]
* app/gui/gradient-editor-menu.[ch]
* app/gui/gradients-menu.[ch]
* app/gui/images-menu.[ch]
* app/gui/layers-menu.[ch]
* app/gui/palette-editor-menu.[ch]
* app/gui/palettes-menu.[ch]
* app/gui/patterns-menu.[ch]
* app/gui/qmask-menu.[ch]
* app/gui/templates-menu.[ch]
* app/gui/vectors-menu.[ch]: removed these files.
* app/gui/gui.c: create a global UI manager for the image popup
menu and the toolbox menubar.
* app/gui/menus.[ch]: removed all GtkItemFactory code.
* app/gui/image-menu.[ch]
* app/gui/toolbox-menu.[ch]: removed everything except the trivial
setup_funcs.
* app/gui/file-open-menu.c
* app/gui/file-save-menu.c
* app/gui/tool-options-menu.c: don't use the macros from menus.h
any more, they are gone.
* app/gui/gui-vtable.c
* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
menu entries.
* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
gimp_ui_manager_update/g
* app/widgets/gimpuimanager.[ch]: added API to get an action
group by name.
* app/widgets/gimpmenufactory.c: don't choke on the item_factory
entries being NULL.
* app/widgets/gimpactiongroup.c: make sure booleans set using
g_object_set() only have TRUE or FALSE values.
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimpdockable.[ch]
* app/widgets/gimpdocked.[ch]
* app/widgets/gimpeditor.[ch]
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
code and enable the #if 0'ed UI manager stuff.
* menus/gradient-editor-menu.xml: fixed typos.
* menus/image-menu.xml: duplicate everything so we have both
an image menubar and an image popup menu. Badly cries for an
XSL processor.
* menus/toolbox-menu.xml: added an "Extensions" placeholder.
2004-04-22 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: remember and ref the created
widgets. Added gimp_ui_manager_ui_popup() which pops up a GtkMenu
with a custom GimpMenuPositionFunc and a GtkDestroyNotify which is
called on popdown.
* app/widgets/gimpmenufactory.c (gimp_menu_factory_finalize):
don't forget to free the list of managed UIs.
* app/widgets/gimpdockable.[ch]
* app/widgets/gimpdockbook.[ch]
* app/widgets/gimpdocked.[ch]
* app/widgets/gimpeditor.[ch]: added GimpUIManager stuff parallel
to the to-be-removed GtkItemFactory stuff.
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimptooloptionseditor.c: changed accordingly and added
#if 0'ed code which actually uses all the UI managers.
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell.c
* app/gui/gui-vtable.c: disabled some gimp_ui_manager_update()
calls because they were invoking toggle and radio callbacks
which still have the wrong signature.
2004-04-21 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpuimanager.[ch]: new GtkUIManager subclass. Adds
API to update all action groups and knows which UIs it can create
from which XML files.
* app/widgets/gimpmenufactory.[ch]: register the XML file
basenames along with path of their toplevel menus. Create
GimpUIManagers instead of GtkUIManagers and register the
XML files and menu paths with them.
* app/gui/menus.c: register all XML files and their toplevel
menu paths.
* app/widgets/gimpeditor.[ch]: also create a GimpUIManager when
creating the GtkItemFactory. Added "const gchar *ui_identifier"
parameter to gimp_editor_create_menu().
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpdataeditor.[ch]
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpitemtreeview.[ch]: added "ui_identifier"
parameters to all constructors.
* app/widgets/gimpbrusheditor.c
* app/widgets/gimpbrushfactoryview.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainerpopup.c
* app/widgets/gimpdocumentview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpfontview.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpimageview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppatternfactoryview.c
* app/widgets/gimptemplateview.c
* app/widgets/gimptooloptionseditor.c
* app/gui/dialogs-constructors.c
* app/gui/gradient-select.c
* app/gui/palette-select.c
* app/gui/pattern-select.c: pass UI identifiers to the changed
functions above.
* app/display/gimpdisplayshell.[ch]: added a GimpUIManager for
the menubar (menubar creating code still commented out).
* app/display/gimpdisplay.c
* app/gui/gui-vtable.c: update the ui manager.
2004-01-30 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptooloptionseditor.[ch]: added the scrolled
window to the GimpToolOptionsEditor struct.
(gimp_tool_options_editor_tool_changed): set the active tool's
help ID on the scrolled window. Fixes bug #132969.
2003-11-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptooloptionseditor.c
(gimp_tool_options_editor_get_preview): use
gtk_widget_get_screen() instead of gdk_screen_get_default().
* app/widgets/gimpdatafactoryview.[ch]: added "GtkWidget *parent"
to GimpDataEditFunc.
* app/gui/dialogs-constructors.[ch]
(dialogs_edit_brush,gradient,palette_func): use the passed parent
widget for finding the right screen instead of
gdk_screen_get_deafault().
* app/gui/gui.c: minor cleanup.
2003-11-08 Michael Natterer <mitch@gimp.org>
To be multihead safe, each new window or menu needs to be
associated with a GdkScreen or it will pop up on the default
screen.
* libgimpwidgets/gimpquerybox.[ch]
* app/display/gimpdisplayshell-layer-select.[ch]
* app/widgets/widgets-types.h
* app/widgets/gimpitemfactory.[ch]
* app/widgets/gimpitemtreeview.[ch]
* app/widgets/gimptemplateview.[ch]
* app/widgets/gimptooldialog.[ch]
* app/widgets/gimpviewabledialog.[ch]
* app/gui/channels-commands.[ch]
* app/gui/color-notebook.[ch]
* app/gui/convert-dialog.[ch]
* app/gui/edit-commands.[ch]
* app/gui/grid-dialog.[ch]
* app/gui/image-commands.[ch]
* app/gui/info-dialog.[ch]
* app/gui/layers-commands.[ch]
* app/gui/offset-dialog.[ch]
* app/gui/resize-dialog.[ch]
* app/gui/stroke-dialog.[ch]
* app/gui/templates-commands.[ch]
* app/gui/vectors-commands.[ch]: added "GtkWidget *parent"
paramaters to all functions which create menus, popups or windows
and pass "parent" to gimp_dialog_new() or one of the various
wrappers around it. As a side effect, this fixes bug #61092.
* app/widgets/gimpdialogfactory.[ch]: added "GdkScreen *screen"
instead of "parent" here since there are no possible parent
windows on startup.
* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_origin_button_press): added a quick hack to
send a display to another screen: click the origin button with the
middle mouse button.
* app/display/gimpdisplayshell.c
(gimp_display_shell_screen_changed): don't chain up
undonditionally (don't crash).
* libgimpwidgets/gimpdialog.c (gimp_dialog_new_valist): set the
dialog's screen from a non-GtkWidget parent widget. The rest of
non-window parent widget handling is still unimplemented.
* libgimpwidgets/gimpcolorbutton.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainerpopup.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpdevicestatus.c
* app/widgets/gimpdockable.c
* app/widgets/gimpdrawabletreeview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimphelp.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppreview-popup.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpsessioninfo.c
* app/widgets/gimptoolbox-color-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpvectorstreeview.c
* app/widgets/gimpwidgets-utils.c
* app/display/gimpdisplayshell-scale.c
* app/display/gimpnavigationview.c
* app/gui/module-browser.c
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.c
* app/gui/drawable-commands.c
* app/gui/file-commands.c
* app/gui/file-new-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor-commands.c
* app/gui/gui-vtable.c
* app/gui/gui.c
* app/gui/info-window.c
* app/gui/palette-import-dialog.c
* app/gui/palettes-commands.c
* app/gui/qmask-commands.c
* app/gui/select-commands.c
* app/gui/tool-options-commands.c
* app/gui/view-commands.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpimagemaptool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimptransformtool.c
* plug-ins/FractalExplorer/FractalExplorer.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c: changed accordingly. Changed all
menu_position funcs to place the menu on the right screen.
2003-10-21 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdocked.[ch]: added new virtual function
GimpDocked::get_title() which returns a custom title. Added signal
"title_changed". Added public wrappers around the new stuff.
* app/widgets/gimpdockable.c: implement GtkContainer::add() and
::remove() and connect to the child's "title_changed" signal. Use
the GimpDocked's title if it provides one.
* app/widgets/gimptooloptionseditor.c: implement
GimpDocked::get_title() and return e.g. "Paintbrush Options". Emit
"title_changed" when the active tool changes. Simplified
GimpDocked::get_preview()'s implementation a lot since it does not
include a label any more.
2003-10-17 Sven Neumann <sven@gimp.org>
* app/widgets/gimptooloptionseditor.c: gimp_dnd_viewable_dest_add()
calls gtk_drag_dest_set() for us so we don't need to do it here.
2003-10-13 Sven Neumann <sven@gimp.org>
* app/widgets/gimptooloptionseditor.c: set the horizontal scrollbar
policy to AUTOMATIC; addresses bug #124134.
2003-10-10 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpdocked.[ch]: new files implementing
GimpDockedInterface, a GTypeInterface which must be implemented by
all widgets which want to be packed into a GimpDockable. Has
virtual functions similar to the ones GimpDockable had.
* app/widgets/gimpdockable.[ch]: removed all virtual functions and
all function pointers from the instance struct (also the ones just
added in the commit below). Make sure only widgets implementing
the GimpDockedIface are added and simply call the child's
GimpDocked functions where we used to call our own virtual
functions and function pointers.
* app/widgets/gimpcoloreditor.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpeditor.c
* app/widgets/gimpimageeditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimpsessioninfo.c
* app/widgets/gimptooloptionseditor.c
* app/display/gimpnavigationview.c: implement GimpDockedIface.
* app/gui/dialogs-constructors.c: removed all that get_preview_func(),
set_context_func() etc. cruft since that's done by GimpDockedIface.
It's really a file of constructors now.
* app/gui/dialogs-menu.c: changed accordingly.
* app/widgets/gimpimagedock.c: forgotten in the commit below.
2003-09-30 Michael Natterer <mitch@gimp.org>
* app/gui/tool-options-menu.c: added a "Rename Saved Options"
submenu and factored on-the-fly submenu creation out to a utility
function.
* app/gui/tool-options-commands.[ch]: added rename callback.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_TOOL_OPTIONS_RENAME.
* app/widgets/gimptooloptionseditor.c
(gimp_tool_options_editor_menu_popup): pass "button = 0" to
gtk_menu_popup() because we show the menu on button_release, not
on button_press.
2003-09-30 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptooloptionseditor.c: connect to the "add" and
"remove" signals of the current tool_option's presets container
and set the "Restore" and "Delete" buttons insensitive when there
are no saved tool options. Also show the "Enter Name" dialog
directly instead of popping up a menu with only one item.
2003-09-30 Michael Natterer <mitch@gimp.org>
* app/gui/tool-options-menu.[ch] (tool_options_menu_setup): new
function for stuff which needs to be done once, not on every
tool_options_menu_update(). Cleanup.
* app/gui/menus.c: register it as setup_func of <ToolOptions>.
* app/gui/tool-options-commands.c: removed the "Reset"
implementations and activate GimpToolOptionsEditor's buttons
accordingly.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_TOOL_OPTIONS_DELETE.
* app/widgets/gimptooloptionseditor.[ch]: moved "Reset"
implementations to this file. Added "Delete" button. Pop up the
"Save", "Restore" and "Delete" submenus of the <ToolOptions>
item_factory when the resp. buttons are clicked.
2003-09-29 Michael Natterer <mitch@gimp.org>
* app/core/gimptoolinfo.[ch]: added a GimpContainer of tool
options presets.
* app/core/gimptooloptions.[ch] (gimp_tool_options_set_property):
silently accept setting the *same* tool_info again.
(gimp_tool_options_build_filename): is public now.
* app/tools/gimp-tools.c (gimp_tools_restore,save): load and save
the presets container.
* app/gui/tool-options-dialog.[ch]: removed.
* app/gui/tool-options-commands.[ch]
* app/gui/tool-options-menu.[ch]: new files implementing a menu
for the new GimpToolOptionsEditor widget. Has submenus for saving,
loading, and deleting tool options to/from the
tool_info->options_presets container.
* app/gui/Makefile.am
* app/gui/dialogs-constructors.c
* app/gui/menus.c: changed accordingly.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimptooloptionseditor.[ch]: the tool options dialog
as proper widget. The "Load" and "Save" buttons still do the same
stuff as before. Will make them use the new presets since making
them do something useful was the reason for this whole change.
* app/widgets/gimphelp-ids.h: added missing help IDs for the tool
options dialog.
2003-03-26 Sven Neumann <sven@gimp.org>
* app/gui/tool-options-dialog.c (tool_options_dialog_restore_callback):
reset the tool-options before loading the user settings. Don't warn if
loading fails.
2003-03-25 Sven Neumann <sven@gimp.org>
* Makefile.am
* gimpintl.h: removed this header file.
* gimpmiscui.c: include libgimp-intl.h.
* gimp.c (gimp_main): call setlocale() and bind to the libgimp
textdomain so that plug-ins don't need to do that explicitely.
* libgimp/stdplugins-intl.h: added the functionality that used to
live in gimpintl.h and removed the libgimp related stuff. Got rid
of the INIT_I18N_UI() macro.
* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
Plug-ins simply call INIT_I18N() once in their run() function.
* plug-ins/script-fu/script-fu-intl.h: added the functionality
that used to live in gimpintl.h and removed the libgimp related
stuff.
* app/Makefile.am
* app/gimp-intl.h: new file that defines the gettext macros for
the GIMP core.
* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.
* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
2003-02-10 Michael Natterer <mitch@gimp.org>
* app/tools/tool_options.[ch]: added a "const gchar *extension"
parameter to gimp_tool_options_[de]serialize(). Default to
"default" if NULL is passed.
* app/tools/tool_manager.[ch]: load the tool_options from the
default files in tool_manager_restore(), added tool_manager_save()
which saves the default files.
* app/app_procs.c: call tool_manager_save() on app exit.
* app/gui/tool-options-dialog.c: pass "user" when loading/saving
the user defaults. Changed tooltips of the load & save buttons.
2003-02-09 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontext.[ch]: simplified everything a lot by
merging the public GimpContextPropType enum with the internal
anonymous object property id enum. Removed the internal copy_prop
functions and handle property copying in a big switch() in
gimp_context_copy_property(). Removed the separate signal
connections for each property of the parent context and do the
same using a single "notify" handler. Emit "notify" signals all
over the place. Removed internal arrays which are no longer
needed due to enum merge and copy_property simplification.
Removed the array of signal names and use g_signal_name().
Removed gimp_context_unset_parent() and allow "parent" being NULL
in gimp_context_set_parent().
* app/tools/tool_manager.c
* app/widgets/gimpdevices.c: changed accordingly.
* libgimptool/gimptooltypes.h: changed GimpToolOptionsGUIFunc to
return a GtkWidget (the created tool options widget).
* libgimptool/gimptoolmodule.c: #include <gtk/gtk.h>
* app/tools/tool_options.[ch]: removed the "main_vbox" from the
GimpToolOptions struct. Changed gimp_tool_options_gui() to create
and return the main_vbox.
* app/tools/tool_manager.c: create the "This Tool has no Options"
label here if NULL was passed as "options_gui_func". Attach the
options widget to the tool_options object using
g_object_set_data().
* app/gui/tool-options-dialog.c: changed accordingly.
* app/tools/gimpairbrushtool.c
* app/tools/gimpblendoptions.[ch]
* app/tools/gimpbucketfilloptions.[ch]
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickeroptions.[ch]
* app/tools/gimpconvolvetool.c
* app/tools/gimpcropoptions.[ch]
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpflipoptions.[ch]
* app/tools/gimpinkoptions.[ch]
* app/tools/gimpmagnifyoptions.[ch]
* app/tools/gimpmeasureoptions.[ch]
* app/tools/gimpmoveoptions.[ch]
* app/tools/gimpselectionoptions.[ch]
* app/tools/gimpsmudgetool.c
* app/tools/gimptextoptions.[ch]
* app/tools/gimptransformoptions.[ch]
* app/tools/gimpvectoroptions.[ch]
* app/tools/paint_options.[ch]: return the options vbox from
all tool_options_gui functions.
2003-02-08 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-serialize.c (gimp_config_serialize_property):
the virtual serialize_property() returning FALSE doesn't mean the
serialization failed but that the function didn't handle the
property, so don't error but continue with the default
implementation. Print newlines after properties only if
indent_level == 0.
* app/gui/tool-options-dialog.c: added tool options saving/loading
as quickly hacked proof-of-concept.
* app/paint/paint-enums.[ch]: added enum GimpInkBlobType.
* app/tools/gimpinkoptions.[ch]: ported to object properties,
cleanup.
* app/tools/gimpinktool.c: changed accordingly.
2003-01-05 Manish Singh <yosh@gimp.org>
* many files in app, modules and libgimp*: cleanup, removed unecessary
G_OBJECT() casts. Should do the same for plug-ins, when more of them
get undeprecated.
2002-09-02 Michael Natterer <mitch@gimp.org>
DND cleanup part 1:
* app/widgets/gimpdnd.[ch]: changed all gimp_dnd_*_dest_set() and
_unset() functions to _dest_add() and _dest_remove(). Switch from
using static arrays of GtkTargetEntries to dynamic GtkTargetLists.
The _add() and _remove() functions configure the drag dest
automatically if not already done, so there is no need to call
gtk_drag_dest_set() on the widget any more. Drag source cleanup
will follow...
Renamed silly function names gimp_gtk_* to gimp_dnd_*
* app/display/gimpdisplayshell.c
* app/tools/gimpblendtool.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimplistitem.c
* app/widgets/gimpmenuitem.c
* app/widgets/gimppreview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptoolbox-color-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptoolbox.c
* app/gui/about-dialog.c
* app/gui/color-select.c
* app/gui/device-status-dialog.c
* app/gui/tool-options-dialog.c: changed accordingly. Removed
all calls to gtk_drag_dest_set() and their GtkTargetEntry tables.
* app/widgets/gimpchannellistitem.c: enabled some commented out
dnd code (which will not work since dnd needs more love...)
* app/widgets/gimpitemlistview.[ch]: added a third
"gboolean interactive" parameter to GimpItemNewFunc.
* app/gui/channels-commands.[ch]
* app/gui/layers-commands.[ch]
* app/gui/vectors-commands.[ch]: if the new_item_func is called
with "interactive == FALSE", don't pop up a dialog but silently
create a new item of the image's size.
* app/widgets/gimpdrawablelistview.c: use the new feature to allow
color and pattern drops to the "New" button, which creates a new
layer/channel filled with the color/pattern.
(special feature for drc ;-)
* app/widgets/gimppaletteeditor.c: fixed event handling so we see
the context menu again. Also, don't redraw on "expose", since
GtkPreview does that for us.
2002-03-13 Michael Natterer <mitch@gimp.org>
* app/gui/brush-select.[ch]: renamed parameters to be consistent
with the other foo-select.* files.
* app/gui/tool-options-dialog.c: removed unused function.
* app/plug-in/plug-in-types.h: PlugInImageType was accidentially
exported to the PDB.
* tools/pdbgen/enums.pl
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c: regenerated.
More brush, pattern, ... PDB wrapper cleanup:
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/palette_select.pdb
* tools/pdbgen/pdb/pattern_select.pdb: even more cleanup, guard
all functions with if(!gimp->no_interface).
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/palettes.pdb
* tools/pdbgen/pdb/patterns.pdb: reordered functions to be
consistent across all files. Generate libgimp wrappers for *all*
functions because of API symmetry.
* tools/pdbgen/pdb/gradients.pdb: renamed gradients_[get|set]_active
to gradients_[get|set]_gradient because of API symmetry.
* libgimp/gimpcompat.h: added the old function names here, guard
the whole file with GIMP_ENABLE_COMPAT_CRUFT (it's back, yeah).
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gflare/gflare.c: use the new function names.
* libgimp/gimpbrushes_pdb.[ch]
* libgimp/gimpgradients_pdb.[ch]
* libgimp/gimppalettes_pdb.[ch]
* libgimp/gimppatterns_pdb.[ch]
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/palette_select_cmds.c
* app/pdb/palettes_cmds.c
* app/pdb/pattern_select_cmds.c
* app/pdb/patterns_cmds.c: regenerated.
2002-03-10 Michael Natterer <mitch@gimp.org>
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/tool-options-dialog.[ch]: made the tool options dialog
dockable. Create a fancy tab for it which looks like the old
dialog header.
* app/gui/gui.c
* app/gui/menus.c
* app/gui/toolbox.c: changed accordingly.
* app/tools/gimpbucketfilltool.c
* app/tools/gimpcroptool.c
* app/tools/gimperasertool.c: moved the tool toggling widgets to
the top.
* app/tools/paint_options.c: show the paint mode menu for all
paint tools but set it insensitive where it makes no sense.
Reduces flickering and makes the tools' similarity more obvious.
* app/widgets/gimpdataeditor.c: fixed segfault in
gimp_data_editor_set_data() (data may be NULL), don't pass NULL to
gtk_entry_set_text(), make the name entry insensitive if data ==
NULL.
* app/widgets/gimpdialogfactory.c: fixed longstanding bug which
made newly created docks steal the first session entry with a NULL
widget instead of the first _dock_ session entry with a NULL
widget. Added even more debugging output. Cleanup.
* app/widgets/gimpdockbook.c: made the tab/menu widget code more
general to cover the tool options tab.