Commit Graph

11 Commits

Author SHA1 Message Date
Michael Natterer 1f1305c372 Some dock refactoring which separates the docking logic from active image
2005-05-11  Michael Natterer  <mitch@gimp.org>

	Some dock refactoring which separates the docking logic from
	active image and UI manager stuff:

	* app/widgets/gimpmenudock.[ch]: new widget renamed from
	GimpImageDock, zero changes except the name change.

	* app/widgets/gimpimagedock.[ch]: new widget derived from
	GimpDock. Keeps the UI manager.

	* app/widgets/gimpdock.[ch]: removed the UI manager. GimpDock only
	contains the basic docking logic again.

	* app/widgets/gimpmenudock.[ch]
	* app/widgets/gimptoolbox.[ch]: derive them from GimpImageDock.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/actions/dialogs-commands.c
	* app/actions/dock-actions.c
	* app/actions/dock-commands.c
	* app/actions/dockable-commands.c
	* app/dialogs/dialogs-constructors.c: changed accordingly.
2005-05-11 20:26:12 +00:00
Michael Natterer dbc49d9a11 app/widgets/Makefile.am new toolbox area which shows the active image.
2004-05-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoolbox-image-area.[ch]: new toolbox area which
	shows the active image.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added config options to control the
	visibility of the toolbox' color, indicator and image areas.

	* app/widgets/gimptoolbox.[ch]: added the image area and honor the
	new config options. Put the various areas into their own wrap box.

	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/widgets/gimphelp-ids.h: added a help ID for the image area.

	* app/widgets/gimptoolbox-indicator-area.c: made the previews
	a bit larger, cleanup.

	* app/gui/preferences-dialog.c: added a "Toolbox" page as GUI for
	the new config options.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/toolbox.png: a (wrong) icon
	for the "Toolbox" prefs page. Needs to be replaced.
2004-05-31 20:30:52 +00:00
Michael Natterer da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Sven Neumann 610e2a639e added a container that keeps references to the buttons which are not added
2003-06-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptoolbox.[ch]: added a container that keeps
	references to the buttons which are not added to the wrap box.
	Just to make sure they are destroyed on exit.
2003-06-11 12:05:00 +00:00
Michael Natterer b879840890 g_strdup() the stock_id passed to gimp_tool_info_new() because the
2002-03-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: g_strdup() the stock_id passed to
	gimp_tool_info_new() because the caller's memory may disappear
	after registering the tool (tool modules).

	Made a GimpDock out of the toolbox:

	* app/gui/Makefile.am
	* app/gui/color-area.[ch]
	* app/gui/indicator-area.[ch]
	* app/gui/toolbox.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolbox-color-area.[ch]
	* app/widgets/gimptoolbox-indicator-area.[ch]
	* app/widgets/gimptoolbox.[ch]: ...and added here.

	* app/widgets/gimpdock.[ch]: don't set a minimal width. Added a
	"destroy_if_empty" boolean so we can prevent destruction of the
	toolbox if it's last dockable is removed. Added gimp_dock_construct()
	which is called from GimpImageDock and GimpToolbox.

	* app/widgets/gimpimagedock.[ch]: Default to not showing the image
	menu, set a minimal width here, misc. minor cleanup.

	* app/widgets/gimpdockbook.c: some more GIMP_IS_IMAGE_DOCK()
	checks, fixed dnd widget creation.

	* app/widgets/gimpdialogfactory.[ch]: changed
	gimp_dialog_factories_toggle() to take just the toolbox_factory as
	parameter. When restoring the session use the created dock's
	dialog factory to create dockables, not the the factory we
	created the dock from (for the toolbox).

	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.

	* app/gui/dialogs.[ch]: create an own dialog factory for the toolbox
	and set dialogs_toolbox_new() as it's new_dock_func.

	* app/gui/dialogs-constructors.[ch]: changed dialogs_toolbox_get()
	accordingly.

	* app/gui/dialogs-commands.[ch]: added dialogs_show_toolbox(), ckeck
	if a dock is really a GimpImageDock before casting.

	* app/gui/gui.c
	* app/gui/menus.c
	* app/widgets/gimppaletteeditor.c: changed accordingly.

	* app/gui/color-notebook.c
	* app/gui/color-select.c
	* app/gui/colormap-dialog.c
	* app/gui/palette-editor-commands.c: removed useless inclusion of
	"gui/color-area.h".

	* themes/Default/gtkrc: set "gimp-dock-style" for GimpToolbox widgets.
2002-03-14 17:07:02 +00:00
Michael Natterer 1f08f9d9d0 removed type checking casts from macros which return parts of
2002-03-10  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpwidgets.h: removed type checking casts from
	macros which return parts of pseudo-widgets.

	* app/widgets/gimpbrushfactoryview.c: changed accordingly.

	* app/widgets/gimpdialogfactory.c: added a "dispose"
	implementation used to destroy all dialogs the factory has
	created.

	* app/gui/toolbox.[ch]: removed toolbox_free(), removed the static
	"toolbox_shell" variable, set the active tool correctly on
	creation, don't show the window here (fixes session menagement),
	take the vbox' spacing into account when calculating the window's
	resize hints.

	* app/gui/gui.c: don't include "toolbox.h", don't call
	toolbox_free().

	* app/widgets/gimpfontselection.c: set the width of the entry to
	16 chars on creation so it doesn't fall back to it's insanely
	large default width, minor stuff.

	* app/tools/gimptexttool.c
	* app/tools/selection_options.c: some more scale_entries.
2002-03-10 18:31:42 +00:00
Michael Natterer 8b5b8df82d generate app/file/Makefile
2001-10-25  Michael Natterer  <mitch@gimp.org>

	* configure.in: generate app/file/Makefile

	* app/Makefile.am
	* app/file-open.[ch]
	* app/file-save.[ch]
	* app/file-utils.[ch]: removed...

	* app/file/Makefile.am
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/file/file-utils.[ch]: ...and added here.

	* app/gui/file-commands.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* tools/pdbgen/pdb/fileops.pdb: changed includes accordingly.

	* app/app_procs.[ch]: removed app_exit_finish() and
	app_exit_finish_done() from the public API, call gtk_main() here,
	pass "no_data" to gimp_new() and "restore_session" to
	gui_restore().

	* app/main.c: removed global variable "double_speed", don't
	call gtk_main() in main.c. Added some missing log domains.

	* app/appenv.h: removed "double_speed".

	* app/core/gimp.[ch]: added "gboolean no_data" property which
	must be passed to gimp_new().

	* app/display/gimpdisplay-foreach.[ch]: added gdisplays_set_busy()
	and gdisplays_unset_busy().

	* app/gui/about-dialog.c: don't include "appenv.h", declare
	"double_speed" extern.

	* app/gui/brush-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: made the list of dialogs and the
	global selection dialogs private. Added functions which get a
	dialog by PDB callback_name. Pass a "Gimp" and the callback_name
	to the constructors. Don't include "app_procs.h" for "the_gimp"
	and "appenv.h" for "no_data" any more. Use the passed "Gimp"
	instead and look at gimp->no_data.

	* app/gui/toolbox.[ch]: pass a "Gimp" to the constructor.

	* app/gui/gui.[ch]: use the new gdisplays_[un]set_busy() functions,
	use the passed "Gimp" all over the place, don't include
	"appenv.h" and "app_procs.h". gui_really_quit_dialog() takes
	a "quit_func" callback now and calls it instead of calling
	app_exit_finish() (which is now private) directly.

	* app/gui/convert-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/palette-import-dialog.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: changed accordingly.

	* app/pdb/brush_select_cmds.c
	* app/pdb/fileops_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/pattern_select_cmds.c: regenerated.

2001-10-25  Michael Natterer  <mitch@gimp.org>

	* POTFILES.in: app/file-*.c -> app/file/file-*.c
2001-10-25 13:30:01 +00:00
Michael Natterer d010bb5fe4 removed more GUI initialisation code.
2001-05-01  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c: removed more GUI initialisation code.

	* app/color_transfer.c: removed useless includes.

	* app/gui/brush-editor.[ch]
	* app/gui/dialogs-constructors.c:
	s/BrushEditGeneratedWindow/BrushEditor/, s/begw/brush_editor/, made
	the brush preview of the editor autoresizing.

	* app/gui/dialogs.h: removed "extern" declaration of non-existant
	variable.

	* app/gui/gui.[ch]: new function gui_post_init() which shows the
	tips dialog.

	* app/gui/tips-dialog.c: made signal handling nicer (clean up in a
	"destroy" handler).

	* app/gui/toolbox.[ch]: removed toolbox_raise(), removed the help
	system (de)initialisation code which is now in gui.c, cleanup.
2001-05-01 13:16:59 +00:00
Michael Natterer f283b957b1 app/session.[ch] removed the old dialog session management code...
2001-04-17  Michael Natterer  <mitch@gimp.org>

	* app/session.[ch]
	* app/gimprc.c: removed the old dialog session management code...

	* app/widgets/gimpdialogfactory.[ch]: ...and manage all dialogs here.

	* app/gui/dialogs-constructors.[ch]: dialog factory compliant
	constructors for all session managed toplevel dialogs.

	* app/brush_select.[ch]
	* app/devices.[ch]
	* app/docindex.[ch]
	* app/errorconsole.[ch]
	* app/gradient_select.[ch]
	* app/info_dialog.c
	* app/lc_dialog.[ch]
	* app/palette.[ch]
	* app/pattern_select.[ch]
	* app/toolbox.[ch]
	* app/tools/tool_options_dialog.[ch]: all dialog constructors have
	to return the dialog now (even the legacy ones that will go away).
	Removed the session management code as this is now done for the
	dialogs, not by them.

	* app/app_procs.c
	* app/color_select.c
	* app/commands.[ch]
	* app/indicator_area.c
	* app/menus.c
	* app/palette_select.c
	* app/preferences_dialog.c
	* app/gui/dialogs.c
	* app/gui/dialogs-commands.[ch]
	* app/gui/gui.c
	* app/tools/gimptool.c
	* app/widgets/gimpdock.c: changed accordingly.
2001-04-17 16:00:27 +00:00
Michael Natterer 04f7131848 added cmd_callbacks for the toolbox and the preferences dialog.
2001-02-24  Michael Natterer  <mitch@gimp.org>

	* app/commands.[ch]: added cmd_callbacks for the toolbox and
	the preferences dialog.

	* app/context_manager.c: cleanup.

	* app/gimppreview.[ch]: made gimp_preview_render() public.

	* app/gimptoolinfopreview.c
	* app/tools/gimptoolinfo.c: the tool previews look nice now but
	are still ugly implemented (it renders tons of temp_bufs on each
	state change).

	* app/indicator_area.[ch]: pass a context to the constructor.

	* app/menus.c: don't call the toolbox and the prefs dialog
	directly but dispatch via commands.[ch]

	* app/preferences_dialog.[ch]
	* app/toolbox.[ch]: renamed the constructor / raise function, cleanup.

	* app/tools/color_picker.c: tried to get the shortcut working again.

	* app/tools/paint_options.c: the brush dialog's paint options
	are shown/hidden from the context manager now.
2001-02-24 02:42:09 +00:00
Michael Natterer afebbc2f86 app/Makefile.am new files containing most of the code from
2001-01-22  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/toolbox.[ch]: new files containing most of the code
	from app/interface.[ch]

	* app/interface.[ch]: only contains create_display_shell() now.
	Needs to be somehow merged with other arbitrarily named display
	files around.

	* app/app_procs.c
	* app/menus.c
	* po/POTFILES.in: changed accordingly.

	* app/asupsample.c
	* app/gradient.c
	* app/tile.c: cleanup.
2001-01-22 03:30:42 +00:00