GnuCash 2.4.99
gnc-window.h
Go to the documentation of this file.
00001 /*
00002  * gnc-window.h -- structure which represents a GnuCash window.
00003  *
00004  * Copyright (C) 2003 Jan Arne Petersen <jpetersen@uni-bonn.de>
00005  * Copyright (C) 2003 David Hampton <hampton@employees.org>
00006  *
00007  * This program is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU General Public License as
00009  * published by the Free Software Foundation; either version 2 of
00010  * the License, or (at your option) any later version.
00011  *
00012  * This program is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  * GNU General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU General Public License
00018  * along with this program; if not, contact:
00019  *
00020  * Free Software Foundation           Voice:  +1-617-542-5942
00021  * 51 Franklin Street, Fifth Floor    Fax:    +1-617-542-2652
00022  * Boston, MA  02110-1301,  USA       gnu@gnu.org
00023  */
00024 
00041 #ifndef __GNC_WINDOW_H
00042 #define __GNC_WINDOW_H
00043 
00044 #include <gtk/gtk.h>
00045 #include "gnc-plugin-page.h"
00046 
00047 G_BEGIN_DECLS
00048 
00049 /* type macros */
00050 #define GNC_TYPE_WINDOW            (gnc_window_get_type ())
00051 #define GNC_WINDOW(o)            (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_WINDOW, GncWindow))
00052 #define GNC_IS_WINDOW(o)         (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_WINDOW))
00053 #define GNC_WINDOW_GET_IFACE(o)  (G_TYPE_INSTANCE_GET_INTERFACE ((o), GNC_TYPE_WINDOW, GncWindowIface))
00054 
00055 /* typedefs & structures */
00056 typedef struct GncWindow GncWindow; /* dummy typedef */
00057 
00058 typedef struct
00059 {
00060     GTypeInterface parent;
00061 
00062     /* Virtual Table */
00063     GtkWindow * (* get_gtk_window) (GncWindow *window);
00064     GtkWidget * (* get_statusbar) (GncWindow *window);
00065     GtkWidget * (* get_progressbar) (GncWindow *window);
00066     void (* ui_set_sensitive) (GncWindow *window, gboolean sensitive);
00067 } GncWindowIface;
00068 
00069 /* function prototypes */
00070 GType          gnc_window_get_type (void);
00071 
00072 GtkWindow     *gnc_window_get_gtk_window (GncWindow *window);
00073 
00074 void           gnc_window_update_status (GncWindow *window, GncPluginPage *page);
00075 void           gnc_window_set_status (GncWindow *window, GncPluginPage *page, const gchar *message);
00076 
00077 void           gnc_window_set_progressbar_window (GncWindow *window);
00078 GncWindow     *gnc_window_get_progressbar_window (void);
00079 void           gnc_window_show_progress (const char *message, double percentage);
00080 
00081 G_END_DECLS
00082 
00083 #endif /* __GNC_WINDOW_H */
00084 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines