gimp/app/widgets/gimpmenudock.h
Michael Natterer 359990db33 added a read-only property for the display's image, so it can be retreived
2002-05-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c: added a read-only property for the
	display's image, so it can be retreived by the core, which
	treats displays as simple GimpObjects.

	* app/core/gimpcontext.c: made context->display an object
	property, not just gpointer. Connect to the "remove" signal of
	gimp->displays to get notified of disappearing displays. Removed
	the EEKWrapper and get the display's gimage with g_object_get().

	* app/widgets/gimpimagedock.[ch]: added image_dock->display_container
	and require it being passed in the constructor. Do voodoo things
	in the "image_changed" and "display_changed" callbacks to ensure
	that the dock doesn't end up with no display even if the active
	image has one. Added a style property for the image menu's preview
	size.

	* app/gui/dialogs-commands.c (dialogs_menu_update): set the
	"View as List" and "View as Grid" items insensitive if the
	other view type doesn't exist. Hide them if the view cannot
	be classified as "list" or "grid" at all. Also hide the
	"Preview Size" submenu if it's pointless for the view.

	* app/gui/dialogs-constructors.c: added a special tab for the
	navigation dialog. Will propbaby add dockable->stock_id to
	generalize this kind of tab. Pass gimp->displays to
	gimp_image_dock_new().

	* app/gui/menus.c: reordered the "<Dialogs>" factory entries,
	added more stock icons, cleanup.

	* etc/gtkrc_user
	* themes/Default/gtkrc: document usage of GimpImageDock's
	"menu_preview_height" property.
2002-05-10 13:09:19 +00:00

73 lines
2.5 KiB
C

/* The GIMP -- an image manipulation program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimpimagedock.h
* Copyright (C) 2001 Michael Natterer <mitch@gimp.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __GIMP_IMAGE_DOCK_H__
#define __GIMP_IMAGE_DOCK_H__
#include "gimpdock.h"
#define GIMP_TYPE_IMAGE_DOCK (gimp_image_dock_get_type ())
#define GIMP_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDock))
#define GIMP_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass))
#define GIMP_IS_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_IMAGE_DOCK))
#define GIMP_IS_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_DOCK))
#define GIMP_IMAGE_DOCK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass))
typedef struct _GimpImageDockClass GimpImageDockClass;
struct _GimpImageDock
{
GimpDock parent_instance;
GimpContainer *image_container;
GimpContainer *display_container;
gboolean show_image_menu;
gboolean auto_follow_active;
GtkWidget *option_menu;
GtkWidget *menu;
GtkWidget *auto_button;
};
struct _GimpImageDockClass
{
GimpDockClass parent_class;
};
GType gimp_image_dock_get_type (void) G_GNUC_CONST;
GtkWidget * gimp_image_dock_new (GimpDialogFactory *dialog_factory,
GimpContainer *image_container,
GimpContainer *display_container);
void gimp_image_dock_set_auto_follow_active (GimpImageDock *image_dock,
gboolean show);
void gimp_image_dock_set_show_image_menu (GimpImageDock *image_dock,
gboolean show);
#endif /* __GIMP_IMAGE_DOCK_H__ */