|
GnuCash 2.4.99
|
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
1.7.4