Commit graph

16 commits

Author SHA1 Message Date
Michael Natterer 8e3259d084 app/apptypes.h app/Makefile.am new widget. The upcoming replacement for
2001-02-27  Michael Natterer  <mitch@gimp.org>

	* app/apptypes.h
	* app/Makefile.am
	* app/gimpdrawablelistview.[ch]: new widget. The upcoming replacement
	for the layers and channels dialogs.

	* app/test_commands.[ch]: put the test dialogs here...

	* app/commands.[ch]: ... and made this one clean again.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]: some signal handling fine tuning.

	* app/gimpimage.[ch]: emits "active_layer_changed" and
	"active_channel_changed" signals now. The semantics of
	gimage->active_layer and gimage->active_channel have changed a bit.
	We now have either an active layer _or_ and active channel (there
	is no active layer any more if a channel is active).

	* app/channel_ops.c
	* app/floating_sel.c
	* app/gdisplay.c
	* app/layers_dialog.c
	* app/menus.c: changed accordingly.

	* app/tools/gimpcolorpickertool.c: actually assign the draw_class
	vraiable in the class_init function.

	* app/tools/gimpdrawtool.[ch]
	* app/tools/tool.c: removed the _new() functions because these
	objects are abstract superclasses. Did some cleanup.
	Nathan, please configure you editor to _not_ produce any tabs
	in the source code.

	* app/tools/gimppaintbrushtool.[ch]: "blurb" and "help" are tagged
	with _(), not N_(). Put the register function to the header.

	* po/POTFILES.in: made it compile again.
2001-02-27 14:14:13 +00:00
Michael Natterer 8710fa8941 app/commands.[ch] first version of the new layers and channels dialogs.
2001-02-19  Michael Natterer  <mitch@gimp.org>

	* app/commands.[ch]
	* app/menus.c: first version of the new layers and channels dialogs.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c: allow creation with a NULL container.

	* app/gimpdnd.[ch]: added generic DND functions for all drawable
	types (not just setting the DND icon). Started to remove code
	duplication.

	* app/gimpdrawablepreview.c: with some magic calculations and ugly
	assumptions the drawable previews now look exactly like in the old
	L&C dialog.

	* app/gimpimagepreview.c: no need to say "return" at the end of a
	void function.

	* app/gimppreview.[ch]: added the "is_popup" boolean also to the
	default constructor. Call gimp_preview_set_viewable() before
	calculating the preview size.
2001-02-19 22:54:12 +00:00
Michael Natterer a80dd4d071 added DND source functions which work by GtkType.
2001-02-18  Michael Natterer  <mitch@gimp.org>

	* app/gimpdnd.[ch]: added DND source functions which work by
	GtkType.

	* app/commands.c
	* app/brush_select.c
	* app/gradient_select.[ch]
	* app/pattern_select.c: removed the DND code here because it's all
	done by the GimpContainerView now.

	* app/gimpbrushpreview.c
	* app/gimpgradientpreview.c
	* app/gimppalettepreview.c
	* app/gimppatternpreview.c: use the DND by-type connect functions.

	* app/gimpbrushgenerated.c: implemented "duplicate", cleanup.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]: added a "activate_item" signal
	method which is emitted by the subclasses to indicate double click.

	* app/gimpdatafactoryview.c: connect to "activate_item" and show
	the editor.

	* app/convert.c
	* app/gimppalette.[ch]
	* app/palette.c
	* app/paletteP.h
	* app/palette_import.c
	* app/palette_select.[ch]: major cleanup: Behaves like the other
	datatypes now: DND, context stuff, GimpContainerListViews in
	the dialogs etc. Mostly just removal of code.

	* app/gradient_editor.c: fixed signal blocking/unblocking.

	* plug-ins/script-fu/scripts/Makefile.am: install the "Test Sphere"
	script again.
2001-02-18 19:44:28 +00:00
Michael Natterer 2f6f9bdd0b app/gimpcontainer.[ch] app/gimpcontainergridview.c
2001-02-17  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainer.[ch]
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]
	* app/gimplist.c
	* app/gimpmarshal.[ch]: the GimpContainer has a new virtual "reorder"
	method which is much more eficient then the current remove/add
	braindeadness when renaming data objects.
	Changed the views to connect to "reorder" and call the
	GimpContainerView's new "reorder_item" method which then does
	the right thing in the view subclasses.

	* app/gimpdatafactory.c
	* app/gimpdatafactoryview.c
	* app/gimpdatalist.[ch]: removed the data list loading and saving
	stuff from GimpDataList because that's the job of the
	GimpDataFactory.

	* app/brush_edit.[ch]
	* app/brush_select.c: cleanup.

	* app/gradient_editor.[ch]: changed it to work like the brush
	editor: return a GradientEditor pointer in the constructor
	and statically store this pointer in the gradient selection file.
	Removed the global "g_editor" variable and added tons of
	GradientEditor* variables to function calls so they know their
	context without the global variable.

	* app/gradient_select.c: changed accordingly.
2001-02-17 21:20:10 +00:00
Michael Natterer 123ee5651e app/gimpcontainergridview.[ch] app/gimpcontainerlistview.[ch] follow the
2001-02-09  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]
	* app/gimpcontainerview.[ch]: follow the GimpPreview API change
	and take only "size" instead of "width" and "height" in the
	constructor.

	* app/gimpdnd.[ch]: first attempt to hack GtkType based DND which
	speaks in terms of GimpViewable instead of Brush, Pattern, ...
	Added functions to remove DND callbacks (used by the multi-views).

	* app/gimppreview.[ch]: new function gimp_preview_set_size_full().

	* app/commands.c: updated the example dialogs to be DND aware.

	* app/gimpimage.c: fixed preview size calculation by ensuring a
	minimal width/height of 1 pixel.
	Reported by Dave Neary <dneary@eircom.net>
2001-02-09 21:49:47 +00:00
Michael Natterer 1823b4645b moved the constructor-parameter-overkill to the new function
2001-02-09  Michael Natterer  <mitch@gimp.org>

	* app/gimppreview.[ch]: moved the constructor-parameter-overkill
	to the new function gimp_preview_new_full() and made the
	gimp_preview_new() interface simple.

	* app/gimpbrushpreview.c
	* app/gimppatternpreview.c: added DND support.

	* app/gimpdnd.c: use the new preview system.

	* app/gimpconstrainedhwrapbox.c: implement "size_allocate". Ok,
	this is silly -- I will write an own widget which does the
	"scrollable grid of whatever" stuff in one place...

	* app/commands.c
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpimagepreview.c: follow the GimpPreview constructor change.
2001-02-09 15:12:01 +00:00
Michael Natterer ceb16abd1e changed the test dialogs a bit.
2001-02-09  Michael Natterer  <mitch@gimp.org>

	* app/commands.c: changed the test dialogs a bit.

	* app/gimpconstrainedhwrapbox.[ch]: should be called
	GimpHackedWrapBoxForContainerView now ;-)

	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]: fixed the minimal size setting
	by getting the magic values from the relevan gtk widgets.
	Scroll to the active item if it not visible.
2001-02-08 23:24:06 +00:00
Michael Natterer be88b13500 added an (unused) "context" argument and a "set_viewable" function.
2001-02-08  Michael Natterer  <mitch@gimp.org>

	* app/gimppreview.[ch]: added an (unused) "context" argument
	and a "set_viewable" function.

	* app/gimpconstrainedhwrapbox.c: even more evil than before.

	* app/gimpbrushpreview.c
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.c
	* app/gimpimagepreview.c
	* app/gimppatternpreview.c: fixed lots of forgotten signal handlers

	* app/commands.[ch]
	* app/menus.c: added "Multi View" dialogs.
2001-02-08 04:16:41 +00:00
Michael Natterer 7118df5262 added a "border" attribute. The border can have any color (which has no
2001-02-08  Michael Natterer  <mitch@gimp.org>

	* app/gimppreview.[ch]: added a "border" attribute. The border can
	have any color (which has no sane API yet...). Added "width" and
	"height" attributes and provide a "set_size" function.

	* app/gimpbrushpreview.c
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpimagepreview.c
	* app/gimppatternpreview.c: changed accordingly, enabled
	highlighting of the selected item in the grid views.
2001-02-07 23:14:14 +00:00
Michael Natterer d1bae8a4ab app/gimppreview.[ch] app/gimpbrushpreview.c app/gimpcontainergridview.c
2001-02-07  Michael Natterer  <mitch@gimp.org>

	* app/gimppreview.[ch]
	* app/gimpbrushpreview.c
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpimagepreview.c
	* app/gimppatternpreview.c: added an "is_popup" parameter to the
	preview constructor so the subclasses can decide if to do special
	stuff like pipe animation.
2001-02-07 18:01:54 +00:00
Michael Natterer c827d40a2c added "set_by_type", "get_by_type" and "changed_by_type" methods which
2001-02-07  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontext.[ch]: added "set_by_type", "get_by_type" and
	"changed_by_type" methods which take a GtkType and decide from
	that if to manipulate the Brush, Pattern etc.

	* app/gimpcontainerview.[ch]
	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]: added a GimpContext to the views
	which is used to manage the active item.

	* app/commands.c: pass the user_context to the test views.

	* app/gimpbrushpreview.c
	* app/gimppatternpreview.c
	* app/gimppreview.[ch]: added a virtual "needs_popup" method which
	returns a boolen indicating if the viewable is already fully
	visible.

	* app/gimage.[ch]: removed gimage_foreach() and some other
	functions which can easily be done be gimp_container_foreach().
	Removed gimage_delete().

	* app/fileops.c
	* app/gdisplay.c
	* app/lc_dialog.c
	* app/nav_window.c
	* app/palette_import.c
	* app/preferences_dialog.c
	* app/xcf.c
	* app/pdb/image_cmds.c
	* tools/pdbgen/pdb/image.pdb: changed accordingly. Switched from
	"disp_count" refcounting to real GtkObject refcounting for
	GimpImages.
2001-02-07 15:01:52 +00:00
Michael Natterer 6c1915daf9 app/gimpcontainergridview.[ch] added "min_items_x" and "min_items_y"
2001-02-06  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]: added "min_items_x" and
	"min_items_y" parameters to the constructors.

	* app/gimppreview.[ch]: added event handling for "click" and
	"popup", show a dummy popup for testing.

	* app/commands.c: changed accordingly.

	* app/menus.c: added a separator and removed N_() from the test stuff.
2001-02-06 21:43:59 +00:00
Michael Natterer e65e4e3253 app/Makefile.am A bad hack on top of another hack: The GtkHWrapBox
2001-02-06  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimpconstrainedhwrapbox.[ch]: A bad hack on top of another
	hack: The GtkHWrapBox "size_request" method _always_ wants a
	maximal requisition height, which it of course gets from a
	container like the scrolled window, yielding in wrong vscrollbar
	calculation.

	* app/gimpbrush.c: create a nice preview with scale and pipe
	indicators.

	* app/gimpcontainergridview.[ch]: use the GimpConstrainderHWrapBox.

	* app/commands.c
	* app/gimpcontainerlistview.c
	* app/gimppreview.c: cleanup, fixed a crash in the preview idle
	rendering function.
2001-02-06 15:57:07 +00:00
Michael Natterer 3f839512fe add the spacing between the previews here instead of expecting an already
2001-02-06  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainergridview.[ch]: add the spacing between the
	previews here instead of expecting an already bordered preview.
	Set the widget background to white.

	* app/gimppattern.c: removed the white border hack.
2001-02-05 23:44:19 +00:00
Michael Natterer 1f8b94df75 app/gimpcontainergridview.[ch] app/gimpcontainerlistview.[ch] implemented
2001-02-06  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]
	* app/gimpcontainerview.[ch]: implemented "set_preview_size".

	* app/commands.c: added a preview size slider to the test dialogs.
2001-02-05 23:14:14 +00:00
Michael Natterer f16c3aef18 app/Makefile.am new widget providing a grid view in the style of the
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimpcontainergridview.[ch]: new widget providing a grid view
	in the style of the current brush and pattern selections.

	* app/gimpcontainerlistview.[ch]
	* app/gimppreview.[ch]: the constructors take "width" and "height"
	parameters now.

	* app/gimpviewable.c: if the viewable is not able to generate
	a static (cached) preview, create a new one and cache it ourselves.

	* app/gimppattern.c: produce a nice preview.

	* app/temp_buf.[ch]: changed temp_buf_copy_area() to take a
	destination offset instead of a border parameter. This function
	was not used at all before.

	* app/commands.[ch]
	* app/menus.c: test dialogs for the grid view.
2001-02-05 21:52:57 +00:00