File: screem-site.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 (185 lines) | stat: -rw-r--r-- 7,045 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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
#ifndef SCREEM_SITE_H
#define SCREEM_SITE_H

#include <glib.h>

#include <gtk/gtktreemodel.h>
#include <gtk/gtktreestore.h>
#include <gtk/gtktreeview.h>

#include "screem-page.h"

#define SCREEM_TYPE_SITE            (screem_site_get_type ())
#define SCREEM_SITE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), SCREEM_TYPE_SITE, ScreemSite))
#define SCREEM_SITE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), SCREEM_TYPE_SITE, ScreemSiteClass))
#define SCREEM_IS_SITE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SCREEM_TYPE_SITE))

typedef enum {
        PERMS_EXEC = 0,
        PERMS_IGNORE = 1,
        PERMS_ALL = 2
} ScreemSitePerms;

typedef enum  {
        SYM_FOLLOW = 0,
        SYM_IGNORE = 1,
        SYM_MAINTAIN =2
} ScreemSiteSymlinks;

typedef enum  {
        LOCAL = 0,
        FTP = 1,
	DAV = 2,
        RSH = 3,
	SSH = 4,
	UPLOAD_OTHER = 5
} UploadMethods;

/* These are defined in screem-site.c */
extern const gchar *permission_strings[];
extern const gchar *symlink_strings[];
extern const gchar *upload_strings[];
extern const gchar *upload_schemes[];

typedef struct ScreemSitePrivate ScreemSitePrivate;


typedef struct {
        GObject parent;
     
	ScreemSitePrivate *private;
} ScreemSite;

typedef struct {
        GObjectClass parent_class;

} ScreemSiteClass;

GType       screem_site_get_type(void);
ScreemSite* screem_site_new( GObject *application );

void screem_site_set_name( ScreemSite *site, const gchar *name );
const gchar* screem_site_get_name( ScreemSite *site );

void screem_site_set_pathname( ScreemSite *site, const gchar *pathname );
const gchar* screem_site_get_pathname( ScreemSite *site );

void screem_site_set_preview_static( ScreemSite *site, gboolean flag );
gboolean screem_site_get_preview_static( ScreemSite *site );

void screem_site_set_preview_dynamic( ScreemSite *site, gboolean flag );
gboolean screem_site_get_preview_dynamic( ScreemSite *site );

void screem_site_set_remote_url( ScreemSite *site, const gchar *remote_url );
const gchar* screem_site_get_remote_url( ScreemSite *site );

void screem_site_set_remote_method( ScreemSite *site, UploadMethods method );
UploadMethods screem_site_get_remote_method( ScreemSite *site );

void screem_site_set_remote_path( ScreemSite *site, const gchar *remote_path );
const gchar* screem_site_get_remote_path( ScreemSite *site );

void screem_site_set_remote_user( ScreemSite *site, const gchar *remote_user );
const gchar* screem_site_get_remote_user( ScreemSite *site );

void screem_site_set_remote_pass( ScreemSite *site, const gchar *remote_pass );
const gchar* screem_site_get_remote_pass( ScreemSite *site );

void screem_site_set_cvs_root( ScreemSite *site, const gchar *cvs_root );
const gchar* screem_site_get_cvs_root( ScreemSite *site );
void screem_site_set_auto_update_ask( ScreemSite *site, gboolean value );
gboolean screem_site_get_auto_update_ask( ScreemSite *site );
void screem_site_set_auto_update( ScreemSite *site, gboolean value );
gboolean screem_site_get_auto_update( ScreemSite *site );

void screem_site_set_use_ctags( ScreemSite *site, gboolean flag );
gboolean screem_site_get_use_ctags( const ScreemSite *site );
void screem_site_update_ctags_file( ScreemSite *site );

void screem_site_set_site_template( ScreemSite *site,
				    const gchar *path );
const gchar *screem_site_get_site_template( ScreemSite *site );

void screem_site_set_template_path( ScreemSite *site, const gchar *template_path );
const gchar* screem_site_get_template_path( ScreemSite *site );

void screem_site_set_http_url( ScreemSite *site, const gchar *http_url );
const gchar* screem_site_get_http_url( ScreemSite *site );

gboolean screem_site_get_fake_flag( ScreemSite *site );

void screem_site_set_passive_ftp( ScreemSite *site, gboolean flag );
gboolean screem_site_get_passive_ftp( ScreemSite *site );

void screem_site_set_no_delete( ScreemSite *site, gboolean flag );
gboolean screem_site_get_no_delete( ScreemSite *site );

void screem_site_set_check_moved( ScreemSite *site, gboolean flag );
gboolean screem_site_get_check_moved( ScreemSite *site );

void screem_site_set_no_overwrite( ScreemSite *site, gboolean flag );
gboolean screem_site_get_no_overwrite( ScreemSite *site );

void screem_site_set_permissions( ScreemSite *site, ScreemSitePerms permissions );
ScreemSitePerms screem_site_get_permissions( ScreemSite *site );

void screem_site_set_symlinks( ScreemSite *site, ScreemSiteSymlinks symlinks );
ScreemSiteSymlinks screem_site_get_symlinks( ScreemSite *site );

void screem_site_set_is_import( ScreemSite *site, gboolean val );
gboolean screem_site_get_is_import( ScreemSite *site );

GList *screem_site_get_auto_open( ScreemSite *site );

gboolean screem_site_is_excluded( ScreemSite *site, const gchar *path );
void screem_site_add_exclude( ScreemSite *site, const gchar *pattern );
void screem_site_remove_exclude( ScreemSite *site, const gchar *pattern );

gboolean screem_site_is_ascii( ScreemSite *site, const gchar *path );
void screem_site_add_ascii( ScreemSite *site, const gchar *pattern );
void screem_site_remove_ascii( ScreemSite *site, const gchar *pattern );

gboolean screem_site_is_ignored( ScreemSite *site, const gchar *path );
void screem_site_add_ignore( ScreemSite *site, const gchar *patterm );
void screem_site_remove_ignore( ScreemSite *site, const gchar *pattern );

void screem_site_add_auto_open( ScreemSite *site, const gchar *file );

void screem_site_save( ScreemSite *site );
gboolean screem_site_create( ScreemSite *site );
gboolean screem_site_load( ScreemSite *site );
gboolean screem_site_write_project_file( ScreemSite *site );
gboolean screem_site_parse_project_file( ScreemSite *site, 
					 const gchar *filename );

ScreemPage* screem_site_locate_page( ScreemSite *site, const gchar *path );
gboolean screem_site_add_page( ScreemSite *site, ScreemPage *page );
void screem_site_remove_page_with_path( ScreemSite *site, const gchar *path );
void screem_site_remove_page( ScreemSite *site, ScreemPage *page );
/* use screem_site_foreach_page() in preference to
 * screem_site_get_pages() as the later builds a new list while
 * the foreach method just goes through each item in a hash table */
GList *screem_site_get_pages( ScreemSite *site );
void screem_site_foreach_page( ScreemSite *site,
		GFunc func, gpointer user_data );

GObject *screem_site_get_todo( ScreemSite *site );

void screem_site_file_change( ScreemSite *site, const gchar *src,
			      const gchar *dest );

/* not too happy on this one */
void screem_site_set_documents( ScreemSite *site, const gchar *name, GList *list );
GList* screem_site_get_documents( ScreemSite *site, const gchar *name );

GList* screem_site_get_excludes( ScreemSite *site );
GList* screem_site_get_ignores( ScreemSite *site );
GList* screem_site_get_asciis( ScreemSite *site );

/* function pointer type for getting the file upload status' from
   the upload wizard */
typedef gboolean(*SiteSyncState)( ScreemSite *site, GHashTable **table );

gchar *screem_get_local_site_path( ScreemSite *site );

#endif