File: screem-window.h

package info (click to toggle)
screem 0.12.1-1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 19,728 kB
  • ctags: 8,333
  • sloc: ansic: 98,234; sh: 8,278; xml: 2,278; makefile: 1,054
file content (112 lines) | stat: -rw-r--r-- 3,151 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#ifndef SCREEM_WINDOW_H
#define SCREEM_WINDOW_H

#include <gtk/gtk.h>

#include "screem-application.h"

#include "screem-search.h"

#define SCREEM_TYPE_WINDOW  (screem_window_get_type())
#define SCREEM_WINDOW(obj)  (G_TYPE_CHECK_INSTANCE_CAST( ( obj ), SCREEM_TYPE_WINDOW, \
                                                ScreemWindow ) )
#define SCREEM_WINDOW_CLASS(klass)  (G_TYPE_CHECK_CLASS_CAST( ( klass ), \
                                                             SCREEM_TYPE_WINDOW, \
                                                             ScreemWindowClass ) )
#define SCREEM_IS_WINDOW(obj)  (G_TYPE_CHECK_INSTANCE_TYPE( ( obj ), SCREEM_TYPE_WINDOW ) )

#ifndef SCREEM_WINDOW_DEFINED
#define SCREEM_WINDOW_DEFINED
typedef struct ScreemWindow ScreemWindow;
#endif

typedef struct {
	GtkWindowClass parent_spot;

} ScreemWindowClass;

typedef struct ScreemWindowDetails ScreemWindowDetails;

struct ScreemWindow {
	GtkWindow parent_object;

	ScreemWindowDetails *details;

	/* UI Stuff */

	/* x,y + size, we need to rememeber
	 * non maximized values */
	gint x;
	gint y;
	gint w;
	gint h;
	gboolean max;

	GtkWidget *content_hbox;

	GtkWidget *dock;
	GObject *layout;

	/* the main action group */
	GtkActionGroup *action_group;

	/* open sites group */
	GtkActionGroup *sites_group;
	
	/* ui manager */
	GObject *merge;

	/* editable toolbars */
	GObject *toolbar_model;
	GtkWidget *toolbar;
	
	GtkWidget *status;
	GtkWidget *status_text;

	ScreemSearch *search;
	
	/* the app we belong to */
	ScreemApplication *application;
};

GType  screem_window_get_type( void );
void     screem_window_close( ScreemWindow *window );

void screem_window_set_current( ScreemWindow *window, ScreemSite *site );
ScreemSite *screem_window_get_current( ScreemWindow *window );

void screem_window_set_document( ScreemWindow *window, ScreemPage *page );
ScreemPage* screem_window_get_document( ScreemWindow *window );
gboolean screem_window_set_document_tab( ScreemWindow *window, ScreemPage *page );
void screem_window_remove_document( ScreemWindow *window, ScreemPage *page );

void screem_window_show_message( ScreemWindow *window, const gchar *message,
						gboolean force_msgs );
void screem_window_show_error( ScreemWindow *window, const gchar *error,
						gboolean force_msgs );

void screem_window_clear_messages( ScreemWindow *window );
void screem_window_clear_errors( ScreemWindow *window );

void screem_window_print( ScreemWindow *window, gboolean preview );

void screem_window_display_view( ScreemWindow *window );

void screem_window_toggle_online_status( ScreemWindow *window,
					 gpointer data );

GList *screem_window_get_documents( ScreemWindow *window );

/* yuk, need away to get the selection from the editor when the
 * window is all that is known about
 */
gchar *screem_window_get_selection( ScreemWindow *window );

/* and a way to replace the selection */
void screem_window_replace_selection( ScreemWindow *window, const gchar *data );

void screem_window_add_dock_item( ScreemWindow *window, const gchar *text,
				  const gchar *stock_id, const gchar *name,
				  GtkWidget *item, GtkPositionType pos );

#endif