1 /* 2 * window.h 3 * Copyright (C) 2002-2009 Jim Evins <evins@snaught.com>. 4 * 5 * This file is part of gLabels. 6 * 7 * gLabels is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * gLabels is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with gLabels. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 21 #ifndef __WINDOW_H__ 22 #define __WINDOW_H__ 23 24 #include <gtk/gtk.h> 25 26 #include "view.h" 27 #include "label.h" 28 #include "ui-property-bar.h" 29 #include "ui-sidebar.h" 30 #include "print-op.h" 31 #include "merge-properties-dialog.h" 32 33 G_BEGIN_DECLS 34 35 #define GL_TYPE_WINDOW (gl_window_get_type ()) 36 #define GL_WINDOW(obj) \ 37 (G_TYPE_CHECK_INSTANCE_CAST((obj), GL_TYPE_WINDOW, glWindow )) 38 #define GL_WINDOW_CLASS(klass) \ 39 (G_TYPE_CHECK_CLASS_CAST ((klass), GL_TYPE_WINDOW, glWindowClass)) 40 #define GL_IS_WINDOW(obj) \ 41 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GL_TYPE_WINDOW)) 42 #define GL_IS_WINDOW_CLASS(klass) \ 43 (G_TYPE_CHECK_CLASS_TYPE ((klass), GL_TYPE_WINDOW)) 44 45 typedef struct _glWindow glWindow; 46 typedef struct _glWindowClass glWindowClass; 47 48 struct _glWindow { 49 GtkWindow parent_widget; 50 51 GtkUIManager *ui; 52 53 GtkWidget *hbox; 54 55 glLabel *label; 56 57 GtkWidget *view; 58 glUIPropertyBar *property_bar; 59 glUISidebar *sidebar; 60 61 GtkWidget *status_bar; 62 GtkWidget *cursor_info; 63 GtkWidget *cursor_info_frame; 64 GtkWidget *zoom_info; 65 GtkWidget *zoom_info_frame; 66 67 guint menu_tips_context_id; 68 69 glPrintOpSettings *print_settings; 70 glMergePropertiesDialog *merge_dialog; 71 GtkMenu *context_menu; 72 GtkMenu *empty_selection_context_menu; 73 }; 74 75 struct _glWindowClass { 76 GtkWindowClass parent_class; 77 }; 78 79 GType gl_window_get_type (void) G_GNUC_CONST; 80 81 GtkWidget *gl_window_new (void); 82 83 GtkWidget *gl_window_new_from_file (const gchar *filename); 84 85 GtkWidget *gl_window_new_from_label (glLabel *label); 86 87 gboolean gl_window_is_empty (glWindow *window); 88 89 void gl_window_set_label (glWindow *window, 90 glLabel *label); 91 92 const GList *gl_window_get_window_list (void); 93 94 G_END_DECLS 95 96 #endif /* __WINDOW_H__ */ 97 98 99 100 /* 101 * Local Variables: -- emacs 102 * mode: C -- emacs 103 * c-basic-offset: 8 -- emacs 104 * tab-width: 8 -- emacs 105 * indent-tabs-mode: nil -- emacs 106 * End: -- emacs 107 */ 108