1. 10 Dec, 1999 1 commit
    • Garry R. Osgood's avatar
      app/gimpimage.c app/undo.c app/undo_types.h docs/undo.txt Changed sanity · fe6ee9d1
      Garry R. Osgood authored
      1999-12-10 Garry R. Osgood <gosgood@idt.net>
      	* app/gimpimage.c
      	* app/undo.c
              * app/undo_types.h
              * docs/undo.txt
              Changed sanity checks in undo_pop/free_layer_mask() to LAYER_MASK_ADD_UNDO
      	and LAYER_MASK_REMOVE_UNDO to be consistent with undo_push_layer_mask()
      	These now nvoke proper cleanup and release of GimpLayerMasks.
      	* docs/undo.txt: New file, an overview of undo logic written by
      	Austin Donnelly
      	* app/undo.c
      	* app/undo_types.h
      	* app/gimpimage.c : Introduced a new UndoType, UNDO_NULL, which maps
      	to zero, introducing that value into the enumerated types. Use the
              type to signal type unknown/error/untyped conditions.
      
      	Full patch documentation at
      	http://idt.net/~gosgood/gimp-patch/patch02.html
      fe6ee9d1
  2. 03 Nov, 1999 1 commit
  3. 13 Oct, 1999 1 commit
  4. 01 Oct, 1999 3 commits
    • EDT 1999  Austin Donnelly's avatar
      Factored out common code from gimp_image_{raise,lower}_layer and · 97140d8f
      EDT 1999 Austin Donnelly authored
      Fri Oct  1 19:05:04 EDT 1999  Austin Donnelly  <austin@gimp.org>
      
      	* app/gimpimage.c: Factored out common code from
      	    gimp_image_{raise,lower}_layer and
      	    gimp_image_{raise_layer_to_top,lower_layer_to_bottom}.  They
      	    now call gimp_image_position_layer() to do the real work.
      	* app/gimpimage.h: gimp_image_position_layer() takes extra arg to
      	    tell whether an undo should be pushed.
      	* app/layers_dialog.c: reposition layer with undo.
      	* app/undo.c: new undo type for layer reposition.  Layer rename
      	    shouldn't dirty and clean the image twice!
      	* app/undo.h: prototype for undo_push_layer_reposition().
      	* app/undo_types.h: LAYER_REPOSITION_UNDO type.
      97140d8f
    • Austin Donnelly's avatar
      don't want sub-undo type undo_push_channel() takes ADD or REMOVE type · 4b4d3934
      Austin Donnelly authored
      Fri Oct  1 15:18:34 1999  Austin Donnelly  <and1000@research.att.com>
      
      	* app/channel.h: don't want sub-undo type
      	* app/gimpimage.c: undo_push_channel() takes ADD or REMOVE type
      	* app/undo.c: undo_push_channel() takes type.  More specific
      	    CHANNEL_{ADD,REMOVE}_UNDO types.
      	* app/undo.h: undo_push_channel() prototype.
      	* app/undo_types.h: More specific CHANNEL_{ADD,REMOVE}_UNDO types.
      4b4d3934
    • Austin Donnelly's avatar
      comment typo fix, plus add %D* to default image-title-format string, so · 11409e97
      Austin Donnelly authored
      Fri Oct  1 12:46:12 1999  Austin Donnelly  <austin@gimp.org>
      
      	* gimprc.in: comment typo fix, plus add %D* to default
      	    image-title-format string, so people get a '*' in the titlebar
      	    if their image is dirty.
      	* app/fileops.c: initialise filename before using it.
      	* app/gdisplay.c: empty parameter list () is K&R - should be
      	    stronger (void) in ANSI C.
      	* app/gimpdrawable.c: gimp_drawable_{dirty,clean} functions
      	    removed - no one uses them anyway.  Parasite undo type is
      	    proper parasite undo type, not MISC_UNDO.
      	* app/gimpdrawableP.h: drawable dirty bit removed.
      	* app/gimpimage.c: don't change the resolution if there's no
      	    difference from the old one.  Call gdisplay_shrink_wrap() to
      	    re-calculate scale factors and refresh the display on
      	    resolution change.  Layer undo doesn't have sub-types
      	    anymore, uses main UndoType instead.
      	* app/layer.h: Remove LayerUndoType
      	* app/qmask.c: fix qmask undo so it actually works.
      	* app/undo.h: new types for undo_push_layer{,_mask} and
      	    undo_push_qmask.
      	* app/undo.c: change way group boundaries are represented:
      	    each Undo has a group_boundary boolean set to TRUE if this is
      	    the start or the end of a group, and the type of the Undo is
      	    the group's type.  Within a group, each Undo keeps its own
      	    type.  This allows pop funcs and free funcs to do
      	    type-specific things (eg needed by layer and channel stuff).
      	    Don't maintain per-drawable dirty flags anymore.   Floating
      	    sel to layer and layer rename now uses meaningful undo types.
      	* app/undo_types.h: more specific undo types:
      	    LAYER_{ADD,REMOVE}_UNDO, LAYER_MASK_{ADD,REMOVE}_UNDO,
      	    LAYER_RENAME_UNDO, and PARASITE_{ATTACH,DETACH}_UNDO.
      	* app/undo_history.c: oops - undo stack was being placed into gtk
      	    list in wrong order.
      	* app/edit_selection.c: push more descriptive LAYER_DISPLACE_UNDO
      	    rather than MISC_UNDO.
      	* app/layers_dialog.c: better tagging of undo types
      11409e97
  5. 29 Sep, 1999 1 commit
  6. 23 Sep, 1999 1 commit
    • Manish Singh's avatar
      app/channel.h app/gimpimage.h app/gimpimageP.h app/layer.h app/undo.[ch] · 7d62a34e
      Manish Singh authored
      * app/channel.h
      * app/gimpimage.h
      * app/gimpimageP.h
      * app/layer.h
      * app/undo.[ch]
      * app/undo_types.h: use proper naming convention for undo enums,
      and hide them from the pdbgen stuff
      
      * app/procedural_db.h: don't skip PDB_END
      
      * app/undo_history.c: remove gccism from undo_history_append_special
      
      * libgimp/gimpintl.h: INIT_LOCALE should be defined in all cases
      
      * plug-ins/script-fu/Makefile.am: add script-fu-constants.[ch]
      
      * plug-ins/script-fu/script-fu.c: use init_generated_constants
      
      * plug-ins/script-fu/siod.h: #include <stdio.h> for FILE *
      
      * tools/pdbgen/script-fu.pl: new file
      
      * tools/pdbgen/Makefile.am: add rule for constant script-fu gen
      
      * tools/pdbgen/enumgen.pl: add enum skip feature
      
      * tools/pdbgen/lib.pl: use nicks for gimpenums.h
      
      * tools/pdbgen/pdb/procedural_db.pdb: ignore PDB_END
      
      -Yosh
      7d62a34e
  7. 20 Sep, 1999 1 commit
    • EDT 1999  Austin Donnelly's avatar
      Honest, guv, it's not a feature - it's a tightly integrated package of · bf8db4ad
      EDT 1999 Austin Donnelly authored
      Mon Sep 20 12:51:30 EDT 1999  Austin Donnelly  <austin@gimp.org>
      
      	Honest, guv, it's not a feature - it's a tightly integrated
      	package of undo system cleanups and fixes.
      
      	NEW FILES:
      	* app/undo_history.c: window showing recent undo (and redo) steps
      	    available.
      	* app/undo_types.h: broken out of undo.h to fix circular includes.
      
      	MODIFIED FILES:
      	* app/Makefile.am: compile undo_history.c
      	* app/channel.h: use enum for channel undo type, not just magic
      	    numbers.
      	* app/layer.h: same for layer undos.
      	* app/commands.c: edit_show_undo_history_cmd_callback() function to
      	    pull up undo history window.
      	* app/commands.h: prototype for above.
      	* app/gdisplay.c: make undo / redo menu items sensitive according
      	    to whether they would do anything.  Would be easy to change
      	    the text to say what would be undone/redone, but I don't know
      	    the GTK.
      	* app/gimpimage.c: new signal emitted by gimage:
      	    UNDO_EVENT. gimp_image_undo_event() function to emit it.
      	* app/gimpimage.h: prototype for above.
      	* app/gimpimageP.h: pushing_undo_group member is now an undo_type,
      	    not an int.  Keep undo history widget here too (if created).
      	* app/menus.c: add "Edit/Undo history..." to image menu.
      	* app/undo.c: new types: enums undo_type and undo_state rather than
      	    ints and magic numbers.  All undo_pop_* and undo_free_*
      	    functions made static.  New static function
      	    undo_type_to_name().  Issue undo event signals on various
      	    important events (eg undo pushed, undo popped etc).
      	    undo_push() now takes a "dirties_image" arg to say whether
      	    image should be dirtied.  Layer moves now dirty the image.  A
      	    couple of g_return_if_fails () on undo_pop and undo_redo to
      	    assert we're not in the middle of an undo group.
      	    undo_get_{undo,redo}_name() to peek at names of top items on
      	    undo and redo stacks resp.   undo_map_over_{undo,redo}_stack()
      	    to run a function for each item or group on stack.  Layer and
      	    channel undos use symbolic names rather than 0 or 1.  Array
      	    mapping undo types to names.
      	* app/undo.h: split out undo types to undo_types.h.  Prototypes
      	    for functions described above.  undo_event_t enum.
      	    undo_history_new() prototype lives here too.
      
      	Random other fixes:
      	* app/gimpdrawable.c
      	* app/image_render.c: default labels in switches to keep egcs happy.
      
      	* app/nav_window.c: some fixes to (sort of) cope with image res !=
      	    screen res.  Still needs work to handle non-square pixels
      	    properly.
      
      	* app/paths_dialog.c: bad idea to call gimp_image_dirty()
      	    directly.  Even though it's currently commented out.
      bf8db4ad