1. 23 Jun, 2003 1 commit
    • Henrik Brix Andersen's avatar
      Added a per image configurable grid. · edd5c339
      Henrik Brix Andersen authored
      This fixes bug #65198
      * app/core/Makefile.am
      * app/core/core-types.h:
      * app/core/gimpgrid.[ch]: added new class GimpGrid.
      * app/core/core-enums.[ch]: added new enum GimpGridType.
      * app/core/gimpimage-guides.[ch]: removed the gimp_image_snap_*()
      * app/core/gimpimage-snap.[ch]: ...and added them here since they
      are no longer guide specific.
      * app/core/gimpimage-undo-push.[ch]: added
      * app/display/gimpdisplayshell-handlers.c:
      * app/core/gimpimage.[ch]: added grid member to _GimpImage. Added
      new signal "grid_changed", added gimp_image_grid_changed(),
      gimp_image_get_grid() and gimp_image_set_grid().
      * app/display/gimpdisplayshell-appearance.[ch]: added
      gimp_display_shell_set_snap_to_grid() and
      * app/display/gimpdisplayshell-callbacks.c: added call to
      * app/display/gimpdisplayshell.[ch]: added grid member to
      _GimpDisplayShellVisibility, added snap_to_grid and grid_dialog
      members to _GimpDisplayShell, added
      gimp_display_shell_draw_grid(), modified
      gimp_display_shell_snap_coords() to use the new
      gimp_image_snap_*() functions.
      * app/gui/image-menu.c: added grid entries to
      * app/gui/view-commands.[ch]: added
      view_toggle_grid_cmd_callback() and
      * app/gui/Makefile.am
      * app/gui/grid-dialog.[ch]: added a grid dialog.
  2. 28 May, 2003 1 commit
    • Michael Natterer's avatar
      app/gui/image-menu.c app/gui/palette-editor-menu.c · ad3efec7
      Michael Natterer authored
      2003-05-28  Michael Natterer  <mitch@gimp.org>
      	* app/gui/image-menu.c
      	* app/gui/palette-editor-menu.c
      	* app/gui/view-commands.[ch]
      	* app/widgets/gimpgradienteditor.c
      	* app/widgets/gimppaletteeditor.[ch]: changed all places to show
      	zoom menu items and icons in ZOOM_OUT, ZOOM_IN order. In an attack
      	of consistency, also reordered all callbacks accordingly.
  3. 04 Apr, 2003 1 commit
    • Sven Neumann's avatar
      extended range of possible zoom ratios like in the other scaling routines. · 70094157
      Sven Neumann authored
      2003-04-04  Sven Neumann  <sven@gimp.org>
      	* app/display/gimpdisplayshell-scale.c
      	(gimp_display_shell_scale_fit): extended range of possible zoom
      	ratios like in the other scaling routines.
      	* app/display/gimpdisplayshell-scale.[ch]
      	* app/display/gimpdisplayshell.[ch]
      	* app/gui/image-menu.c
      	* app/gui/view-commands.[ch]: added a dialog to menually enter the
      	zoom ratio. Fixes bug #65057.
  4. 11 Mar, 2003 2 commits
    • Michael Natterer's avatar
      app/display/Makefile.am new files implementing canvas padding, fullscreen · b36590e6
      Michael Natterer authored
      2003-03-11  Michael Natterer  <mitch@gimp.org>
      	* app/display/Makefile.am
      	* app/display/gimpdisplayshell-appearance.[ch]: new files
      	implementing canvas padding, fullscreen toggling and utility
      	functions to show/hide GimpDisplayShell components (menubar,
      	statusbar, ...) Added the possibility to show/hide the scrollbars.
      	* app/display/gimpdisplayshell.[ch]: added struct
      	GimpDisplayShellVisibility which stores the GUI components'
      	visibility. Added two such structs to the GimpDisplayShell struct:
      	one for normal mode and one for fullscreen mode. Default to
      	"everything invisible" for fullscreen.  Fixes bug #74383.
      	* app/display/gimpdisplayshell-callbacks.c: fiddle with the
      	two visibility structs when toggling fullscreen.
      	* app/display/gimpdisplayshell-handlers.c: #include
      	* app/gui/image-menu.c
      	* app/gui/view-commands.[ch]: added a "Show Scrollbars" menu entry,
      	use the new widget show/hide utility functions.
    • Sven Neumann's avatar
      app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch] · 632b7f8a
      Sven Neumann authored
      2003-03-11  Sven Neumann  <sven@gimp.org>
      	* app/display/gimpdisplayshell-callbacks.c
      	* app/display/gimpdisplayshell.[ch]
      	* app/gui/image-menu.c
      	* app/gui/view-commands.[ch]: added a fullscreen mode for the
      	image display by means of gtk_window_fullscreen/unfullscreen.
      	Depends on the window manager implementing _NET_WM_STATE_FULLSCREEN.
      	* app/tools/gimpcroptool.c: made gimp_crop_tool_draw() static.
      	* app/tools/gimptexttool.[ch]: derive from GimpDrawTool, no real
      	changes yet.
  5. 14 Dec, 2002 1 commit
    • Michael Natterer's avatar
      Changed menubar showing/hiding to work like rulers and statusbar: · f03b6b6d
      Michael Natterer authored
      2002-12-14  Michael Natterer  <mitch@gimp.org>
      	Changed menubar showing/hiding to work like rulers and statusbar:
      	* app/config/gimpconfig-blurbs.h
      	* app/config/gimpdisplayconfig.[ch]: renamed "menu_bar_per_display"
      	to "show_menubar". Removed GIMP_PARAM_RESTART flag.
      	* app/display/gimpdisplayshell.[ch]: chaged shell->item_factory to
      	shell->menubar_factory plus shell->popup_factory and always create
      	both of them. Added "gboolean update_popup" to
      	gimp_display_shell_set_menu_sensitivity() and call it recursively
      	with update_popup == TRUE if the display it is called for is the
      	active one.
      	* app/display/gimpdisplay.c
      	* app/display/gimpdisplayshell-callbacks.c: changed accordinly.
      	* app/gui/gui.c: ditto. Set the menu sensitivity of new displays.
      	* app/gui/menus.c: added "<Image>/View/Toggle Menubar" menu item.
      	Moved some factory initialization code from gimpdisplayshell.c
      	* app/gui/view-commands.[ch]: added
      	view_toggle_menubar_cmd_callback(). Update the menu sensitivity
      	manually in all callbacks which don't call gimp_image_flush().
      	* app/gui/preferences-dialog.c (prefs_dialog_new): moved the "Show
      	Menubar" toggle to the "Appearance" frame of the "Image Windows"
      	page. Added an own frame for the display zoom/scaling settings.
      	(preferences_dialog_create): Attach config_copy and config_orig
      	using g_object_set_data_full() instead of just g_object_set_data()
      	plus a g_object_weak_ref().
      	(prefs_default_resolution_callback): set the resolution for both
      	fields of the "size_sizeentry" instead of setting it for "x"
  6. 20 Mar, 2002 1 commit
    • Michael Natterer's avatar
      pass an additional "Gimp" pointer to · e302aeb1
      Michael Natterer authored
      2002-03-20  Michael Natterer  <mitch@gimp.org>
      	* app/display/gimpdisplayshell.[ch]: pass an additional "Gimp"
      	pointer to gimp_display_shell_set_menu_sensitivity() so we can
      	correctly set the state of some items even without a display.
      	Set the sensitivity of much more items. Never set submenus
      	insensitive so the user can always browse the whole menu
      	(according to the GNOME HIG).
      	* app/image_map.c
      	* app/display/gimpdisplay.c
      	* app/gui/gui.c: changed accordingly.
      	* app/gui/view-commands.[ch]: added a callback for the display
      	filters dialog because display releted dialogs are going to
      	be handled different soon.
      	* app/gui/menus.c: use the new callback.
  7. 16 Nov, 2001 1 commit
    • Michael Natterer's avatar
      Wishlist item #57669: · 4403d58a
      Michael Natterer authored
      2001-11-16  Michael Natterer  <mitch@gimp.org>
      	Wishlist item #57669:
      	* app/gimprc.[ch]: replaced gimprc option "allow-resize-windows"
      	by "resize-windows-on-zoom" and "resize-windows-on-resize".
      	* app/gui/preferences-dialog.c: added a toggle for
      	* app/display/gimpdisplayshell-handlers.c
      	* app/display/gimpdisplayshell-scale.c
      	* app/tools/gimpmagnifytool.c
      	* docs/gimprc.5.in
      	* etc/gimprc.in
      	* etc/gimprc.win32: changed accordingly.
      	* app/display/gimpdisplay-area.[ch]: added gimp_area_new().
      	* app/display/gimpdisplay.c: cleanup usage of GimpArea.
      	* app/display/gimpdisplayshell.[ch]: added configurable canvas
      	padding color and a small color_panel to change it in the upper
      	right corner of the window.
      	* app/display/gimpdisplayshell-callbacks.[ch]: added a callback
      	for the color_panel, initialize the color in the "realize"
      	Wishlist item #51548.
      	* app/display/gimpdisplayshell-selection.[ch]
      	* app/gui/menus.c
      	* app/gui/view-commands.[ch]: made the layer boundary toggleable
      	separately from the selection.
      	* app/gui/color-notebook.c: #if 0'ed a debugging g_print().
  8. 02 Nov, 2001 1 commit
    • Michael Natterer's avatar
      app/display/Makefile.am app/display/gimpdisplay-callbacks.[ch] · d162376d
      Michael Natterer authored
      2001-11-01  Michael Natterer  <mitch@gimp.org>
      	* app/display/Makefile.am
      	* app/display/gimpdisplay-callbacks.[ch]
      	* app/display/gimpdisplay-render.[ch]
      	* app/display/gimpdisplay-scale.[ch]
      	* app/display/gimpdisplay-scroll.[ch]: removed and added as
      	gimpdisplayshell-foo.[ch] because they are all methods of the
      	* app/display/gimpdisplay.[ch]
      	* app/display/gimpdisplayshell.[ch]: moved the "offset" and "size"
      	variables from GimpDisplay to GimpDisplayShell. GimpDisplay
      	should know nothing about screen coordinates.
      	The gdisplay_[un]transform_foo() methods are still part of
      	GimpDisplay but will be moved to GimpDisplayShell as soon as the
      	tools' vitrual functions speak in image coordinates instead of
      	* app/display/gimpdisplayshell-callbacks.[ch]: prefixed all
      	functions with gimp_display_shell_*. Moved some stuff to a
      	"realize" callback File still has to be renamed.
      	* app/display/gimpdisplay-foreach.[ch]: removed
      	* app/gui/menus.c
      	* app/gui/view-commands.[ch]
      	* app/display/gimpdisplayshell-scale.[ch]: implemented "Zoom to
      	Fit Window" function (#57670).
      	* app/nav_window.c
      	* app/display/gimpdisplay-handlers.c
      	* app/display/gimpdisplayshell-render.[ch]
      	* app/display/gimpdisplayshell-scale.[ch]
      	* app/display/gimpdisplayshell-scroll.[ch]
      	* app/gui/colormap-dialog.c
      	* app/gui/gui.c
      	* app/gui/preferences-dialog.c
      	* app/tools/gimpmagnifytool.c
      	* app/tools/gimpmovetool.c
      	* app/widgets/gimppreview.c: changed according to variable
      	and filename changes.
      	* app/tools/tool_manager.c: tool_manager_select_tool(): send the
      	active tool a "HALT" command before selecting the new one. Fixes
      	stale tool dialogs which were there because some other hack was
      	removed (This is IMHO the right place to shut down the active
      	* app/tools/gimpcroptool.c: don't shrink wrap after cropping but
      	let gimprc.allow_resize_windows decide.
      	* app/tools/gimpselectiontool.c: gimage_mask_value() takes image,
      	not screen coordinates. A good example of how braindead it is to
      	pass GdkEvents to tools :-) Fixes incorrect cursor and oper
      	update of the selection tools.
      	* app/tools/gimptransformtool.c
      	* app/undo.c: removed (#if 0 for now) some strange code which did
      	manual exposing of GimpDisplayShell areas. This was definitely a
      	hack and should not be there given the image emits correct
      	"update" signals.
  9. 26 Jun, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am removed. · d26c2668
      Michael Natterer authored
      2001-06-26  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am
      	* app/color_transfer.[ch]: removed.
      	* app/tools/Makefile.am
      	* app/tools/gimpcolorbalancetool-transfer.[ch]: added.
      	* app/tools/gimpcolorbalancetool.c: changed accordingly.
      	* app/base/Makefile.am
      	* app/base/tile-manager-crop.[ch]: formerly known as crop_buffer().
      	* app/tools/gimptexttool.c: changed accordingly.
      	* app/context_manager.[ch]: added the global clipboard and the
      	named buffer list here.
      	* app/app_procs.c: don't call color_transfer_init() and don't free
      	the buffer stuff (done by the context manager now).
      	* app/errorconsole.c: don't #include "gui/commands.h"
      	* app/global_edit.[ch]: removed lots of stuff which is now done by
      	gui/edit-commands.* or the new GimpBuffer object. The "paste
      	named" dialog will go away and this file will be moved to core/
      	* app/image_new.c: no need to declare the global_buffer extern any
      	* app/qmask.c: don't #include "global_edit.h"
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpbuffer.[ch]: new object (aka named buffer)
      	* app/core/gimpcontext.[ch]: added a GimpBuffer attribute.
      	* app/core/gimpimage.[ch]: one s/int/gboolean/.
      	* app/core/gimppattern.c: hmm...
      	* app/gui/commands.[ch]: split up in small files:
      	* app/gui/Makefile.am
      	* app/gui/edit-commands.[ch]
      	* app/gui/file-commands.[ch]
      	* app/gui/image-commands.[ch]
      	* app/gui/select-commands.[ch]
      	* app/gui/view-commands.[ch]: new files.
      	* app/gui/dialogs-constructors.[ch]
      	* app/gui/dialogs.c: added the named buffer list & grid.
      	* app/gui/file-new-dialog.[ch]
      	* app/gui/menus.c
      	* app/gui/palette-editor.c
      	* app/gui/test-commands.c: changed accordingly.
      	* app/pdb/edit_cmds.c
      	* tools/pdbgen/pdb/edit.pdb: changed for the global_edit stuff.
      	* app/widgets/Makefile.am
      	* app/widgets/gimpbufferpreview.[ch]
      	* app/widgets/gimpbufferview.[ch]
      	* app/widgets/gimpcontainereditor.[ch]: new widgets.
      	* app/widgets/gimpcontainerview-utils.c
      	* app/widgets/gimpdatafactoryview.[ch]
      	* app/widgets/gimpdnd.[ch]
      	* app/widgets/gimpdrawablepreview.c
      	* app/widgets/gimplayerlistview.c
      	* app/widgets/gimppreview.c
      	* app/widgets/widgets-types.h: changed accordingly for the new
      	GimpBuffer object and it's views, misc. cleanups.
      	* pixmaps/Makefile.am
      	* pixmaps/paste-as-new.xpm
      	* pixmaps/paste-into.xpm
      	* pixmaps/paste.xpm: new pixmaps (they all look the same... Tigert? ;-)
      	* po/POTFILES.in: added the new files.