Commit Graph

8 Commits

Author SHA1 Message Date
Michael Natterer 06b16890ba Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
2001-07-24  Michael Natterer  <mitch@gimp.org>

	Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)

	* configure.in: require glib/gtk+ >= 1.3.7, commented out the
	gtkxmhtml stuff.

	From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
	to hack or use GIMP HEAD.

	Beware, it crashes randomly :)

	* app/core/Makefile.am
	* app/core/gimpmarshal.list: new file plus rules to generate
	gimpmarshal.[ch] from it.

	* app/core/*
	* app/tools/*
	* app/widgets/*
	* libgimpwidgets/*: started to use the glib object system. All
	core/ objects are still gtk objects however. All signals are
	created using g_signal_new(). There are many gtk+ artefacts left.
	Finally, we will _not_ use the gtk_signal_foo() wrappers and
	friends any more.

	* app/colormaps.c
	* app/devices.[ch]
	* app/disp_callbacks.c
	* app/errorconsole.c
	* app/file-save.[ch]
	* app/interface.c
	* app/module_db.c
	* app/nav_window.c
	* app/ops_buttons.c
	* app/scroll.c
	* app/user_install.c
	* app/gui/about-dialog.c
	* app/gui/brush-editor.c
	* app/gui/brushes-commands.c
	* app/gui/color-notebook.c
	* app/gui/colormap-dialog.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-commands.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.c
	* app/gui/gradient-editor.c
	* app/gui/gradients-commands.c
	* app/gui/image-commands.c
	* app/gui/info-dialog.[ch]
	* app/gui/layer-select.c
	* app/gui/layers-commands.c
	* app/gui/menus.c
	* app/gui/offset-dialog.c
	* app/gui/palette-editor.c
	* app/gui/palettes-commands.c
	* app/gui/patterns-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.[ch]
	* app/gui/splash.c
	* app/gui/tips-dialog.c
	* app/gui/tool-options-dialog.c
	* app/gui/toolbox.c
	* app/gui/tools-commands.c
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpmenu.c
	* libgimp/gimppatternmenu.c
	* libgimp/gimpui.c
	* libgimpbase/gimpenv.c: tons and tons of changes like "const
	gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
	and currently disables), lots of s/gtk_signal/g_signal/,
	removal/replacement of deprecated stuff,
	s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
	while I was on it, zillions of warnings left...

	* modules/Makefile.am: disabled the water color selector
	temporarily (XInput issues).

	* plug-ins/Makefile.am
	* plug-ins/common/.cvsignore
	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
	which did not build (including Script-Fu). They are trivial to
	fix.
2001-07-24 21:27:11 +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 656d1fae86 app/gradient_editor.[ch] use GimpContainerListView instead of cooking an
2001-02-13  Michael Natterer  <mitch@gimp.org>

	* app/gradient_editor.[ch]
	* app/gradient_select.[ch]: use GimpContainerListView instead of
	cooking an own list.

	* app/gimpgradient.[ch]: removed the GdkPixmap from the gradient.

	* app/gimpcontainerlistview.c: connect the viewable's "name_changed"
	signal to the label.

	* app/gimpmarshal.[ch]
	* app/gimppreview.[ch]: new virtual function "get_size",

	* app/gimpgradientpreview.c: implement "get_size" and return a 3:1
	aspect ratio.

	* app/gradients.c
	* app/palette_select.[ch]
	* app/palettes.c: removed the dialog freeze/thaw functions.

	* app/brush_select.c
	* app/pattern_select.c
	* app/plug_in.c: stuff.
2001-02-13 00:12:15 +00:00
Michael Natterer 5ffb34db38 V2001-02-07 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
	* app/gimpdrawable-preview.[ch]: new files formerly known as
	gimpdrawablepreview.[ch].

	This is a new naming scheme for methods of objects which live
	outside their object's file. The old name implied a derived object
	(and is in fact now taken by a GimpPreview subclass, see below).

	Further candidates for renaming are e.g. gimpdrawable-invert.[ch],
	gimpimage-convert.[ch] etc.  Finaly, the main objects (image,
	drawable) will go to their own directories together with their
	subclasses.

	* app/apptypes.h: added typedefs for the new objects:

	* app/gimpbrushpreview.[ch]
	* app/gimppatternpreview.[ch]: new subclasses of GimpPreview.

	* app/gimpdrawablepreview.[ch]: contains a subclass of GimpPreview
	now.

	* app/gimpviewable.[ch]: renamed the virtual functions to
	"get_preview" and "get_new_preview" to avoid confusion with the
	new GimpPreview subclasses.

	* app/gimppreview.[ch]: virtualized "create_preview" and
	"create_popup".

	* app/gimpmarshal.[ch]: new marsaller for GimpPreview.

	* app/channels_dialog.c
	* app/fileops.c
	* app/gimpbrush.c
	* app/gimpdnd.c
	* app/gimpdrawable.c
	* app/gimpimage.c
	* app/gimppattern.c
	* app/layer_select.c
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/nav_window.c
	* app/palette_import.c
	* app/undo_history.c
	* app/pdb/drawable_cmds.c
	* app/pdb/image_cmds.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/image.pdb: changed accordingly.
2001-02-07 00:06:58 +00:00
Michael Natterer 359e141fc0 app/gimpcontainerlistview.[ch] app/gimpcontainerview.[ch] moved the signal
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainerlistview.[ch]
	* app/gimpcontainerview.[ch]
	* app/gimpmarshal.[ch]: moved the signal connecting stuff to the
	GimpContainerViewClass which has virtual functions for insert,
	remove and clear now which are implemented by the
	GimpContainerListViewClass.
2001-02-05 19:10:40 +00:00
Michael Natterer 2e464cf5e6 app/gimpcontainer.[ch] made the "get_by_name" and the "by_index" access
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainer.[ch]
	* app/gimplist.[ch]: made the "get_by_name" and the "by_index"
	access functions methods of the GimpContainerClass. The semantic
	of this index is somewhat unclear if we have e.g. a hash table
	implementation but the container needs to have an order for the
	ContainerView. Finally, the ordering will be a feature of the
	ContainerView.

	* app/gimpmarshal.[ch]: marshallers needed for the new methods.

	* app/brushes.[ch]
	* app/patterns.[ch]: the public global brush and pattern lists
	are GimpContainers now (they are really GimpLists of course).

	* app/brush_select.c
	* app/devices.c
	* app/gimpcontainerlistview.c
	* app/gimpcontext.c
	* app/gimpdnd.c
	* app/pattern_select.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-05 17:48:50 +00:00
Michael Natterer f029c6b59f app/Makefile.am app/apptypes.h new object. Everything that can have a
2001-02-04  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/apptypes.h
	* app/gimpviewable.[ch]: new object. Everything that can have a
	preview will be a GimpViewable. The virtual functions are
	"invalidate_preview", "preview" and "preview_new".

	* app/gimpmarshal.[ch]: new marshaller needed for the viewable.

	* app/gimpdrawable.[ch]
	* app/gimpimage.[ch]: derived from GimpViewable. Removed the
	preview stuff from the public interface.

	Made a single boolean out of GimpImage's "comp_preview_valid"
	array because we have only one copposite preview.

	* app/gimplayer.c: made the preview stuff private.

	* app/gimppreviewcache.[ch]: removed gimp_preview_scale()...

	* app/temp_buf.[ch]: ...and added it as temp_buf_scale() here.

	* app/gimpdrawablepreview.[ch]: is a private method of
	GimpDrawable now.

	* app/channels_dialog.c
	* app/convert.c
	* app/drawable.c
	* app/fileops.c
	* app/floating_sel.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/gimpchannel.c
	* app/gimpcontainer.c
	* app/gimpdnd.c
	* app/layer_select.c
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/nav_window.c
	* app/palette_import.c
	* app/undo.c
	* app/undo_history.c
	* app/pdb/drawable_cmds.c
	* app/pdb/image_cmds.c
	* app/tools/crop.c
	* app/tools/edit_selection.c
	* app/tools/ink.c
	* app/tools/paint_core.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/image.pdb
	* po/POTFILES.in: changed accordingly.
2001-02-04 22:10:54 +00:00
Michael Natterer 92c45a90e6 app/Makefile.am removed. added.
2001-01-10  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimpsignal.[ch]: removed.
	* app/gimpmarshal.[ch]: added.

	* app/channel.[ch]
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.c
	* app/gimpbrushlist.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpcontext.c
	* app/gimpdrawable.c
	* app/gimpimage.c
	* app/gimplist.[ch]
	* app/gimpobject.[ch]
	* app/gimpset.[ch]
	* app/layer.c
	* app/layers_dialog.c
	* app/module_db.c
	* app/parasitelist.[ch]: removed gimp_signal_new() and
	GIMP_TYPE_INIT(). Fixed lots of object related uglyness.
2001-01-10 00:36:54 +00:00