nautilus/libnautilus/nautilus-meta-view-frame.h
Maciej Stachowiak 53c5e06a43 Changed NautilusViewFrame to allow creation of `Nautilus::View' objects
* libnautilus/ntl-view-frame.c, libnautilus/ntl-view-frame.h:
	Changed NautilusViewFrame to allow creation of `Nautilus::View'
	objects that have additional interfaces while sharing the actual
	control. This will allow, for instance, the creation of components
	that are both a `Nautilus::View' and a `Bonobo::Embeddable'. The
	basic changes are to require a `BonoboObject' with a
	`Bonobo::Control' interface at construction time.
	- Two creation functions are provided: `nautilus_view_frame_new',
	which takes a GtkWidget, creates a new control that contains that
	widget, and the constructs a NautilusViewFrame with that control,
	and `nautilus_view_frame_new_from_control', which creates a
	NautilusViewFrame that gets added as an additional interface to an
	existing control.
	- In the course of doing this it became clear that it would be
	easier if NautilusViewFrame were changed to inherit from
	BonoboObject rather than GtkBin, so this was done; as a result,
	the nautilus_view_frame_get_bonobo_object call was removed, since
	the view_frame _is_ a bonobo object. However, a
	nautilus_view_frame_get_bonobo_control call was added as a
	convenience, to allow other code to avoid having to
	query_local_interface for the control object manually.
	* libnautilus/ntl-meta-view-frame.c,
	libnautilus/ntl-meta-view-frame.h,
	libnautilus/ntl-content-view-frame.c,
	libnautilus/ntl-content-view-frame.h: Analogous changes; mainly,
	added `nautilus_meta_view_frame_new',
	`nautilus_meta_view_frame_new_from_control',
	`nautilus_content_view_frame_new' and
	`nautilus_content_view_frame_new_from_control'.
	* components/help/hyperbola-nav-index.c,
	components/help/hyperbola-nav-tree.c,
	components/history/ntl-history-view.c,
	components/html/ntl-web-browser.c, components/notes/ntl-notes.c,
	components/websearch/ntl-web-search.c, src/ntl-app.c,
	src/file-manager/fm-directory-view.c: Fixed initialization and
	object creation functions to deal with the above API change.
2000-02-20 01:29:39 +00:00

57 lines
2.4 KiB
C

/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 2 -*- */
/*
* libnautilus: A library for nautilus view implementations.
*
* Copyright (C) 1999, 2000 Red Hat, Inc.
* Copyright (C) 2000 Eazel, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Author: Elliot Lee <sopwith@redhat.com>
*
*/
/* ntl-meta-view-frame.h: Interface for object that represents the
frame a nautilus meta view plugs into. */
#ifndef NTL_META_VIEW_FRAME_H
#define NTL_META_VIEW_FRAME_H
#include <libnautilus/ntl-view-frame.h>
#define NAUTILUS_TYPE_META_VIEW_FRAME (nautilus_meta_view_frame_get_type ())
#define NAUTILUS_META_VIEW_FRAME(obj) (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_META_VIEW_FRAME, NautilusMetaViewFrame))
#define NAUTILUS_META_VIEW_FRAME_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_META_VIEW_FRAME, NautilusMetaViewFrameClass))
#define NAUTILUS_IS_META_VIEW_FRAME(obj) (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_META_VIEW_FRAME))
#define NAUTILUS_IS_META_VIEW_FRAME_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), NAUTILUS_TYPE_META_VIEW_FRAME))
typedef struct _NautilusMetaViewFrame NautilusMetaViewFrame;
typedef struct _NautilusMetaViewFrameClass NautilusMetaViewFrameClass;
struct _NautilusMetaViewFrameClass {
NautilusViewFrameClass parent_spot;
};
struct _NautilusMetaViewFrame {
NautilusViewFrame parent;
};
GtkType nautilus_meta_view_frame_get_type (void);
NautilusMetaViewFrame *nautilus_meta_view_frame_new (GtkWidget *widget);
NautilusMetaViewFrame *nautilus_meta_view_frame_new_from_bonobo_control (BonoboObject *bonobo_control);
void nautilus_meta_view_frame_set_label (NautilusMetaViewFrame *mvc,
const char *label);
#endif