|
From: CORE C. L. <cor...@li...> - 2000-11-20 10:02:03
|
Core CVS committal Author : smugg Project : core Module : src Added Files: forward.xpm icon.xpm new.xpm reply-all.xpm reply.xpm send-recieve.xpm Removed Files: forward32x32.xpm new-mail32x32.xpm reply-all32x32.xpm reply32x32.xpm send-recieve32x32.xpm Log Message: fixed some theming issues |
|
From: CORE C. L. <cor...@li...> - 2000-11-20 10:02:33
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
account.c callbacks.c callbacks.h main.c prefs.c
Log Message:
fixed some theming issues
===================================================================
RCS file: /cvsroot/corem/core/src/account.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- account.c 2000/11/16 05:46:47 1.3
+++ account.c 2000/11/20 10:02:03 1.4
@@ -160,77 +160,77 @@
* Returns: nothing
*/
-Account *account_read(gchar * path)
+Account *account_read(gchar *path)
{
FILE *fp;
- gchar *line;
- Account *acct;
+ gchar *line;
+ Account *acct;
- fp = fopen(path, "r");
+ fp = fopen(path, "r");
if (fp == NULL) {
perror("fopen");
return NULL;
- }
+ }
- acct = new_account();
+ acct = new_account();
-
+
while ((line = get_next_line(fp)) != NULL) {
- if (g_strncasecmp(line, "account_name=", 13) == 0)
+ if (g_strncasecmp(line, "account_name=", 13) == 0)
account_set_name(acct, line + 13);
else if (g_strncasecmp(line, "smtp_server=", 12) == 0)
account_set_server(acct, line + 12);
- else if (g_strncasecmp(line, "full_name=", 10) == 0)
+ else if (g_strncasecmp(line, "full_name=", 10) == 0)
account_set_fullname(acct, line + 10);
- else if (g_strncasecmp(line, "path=", 5) == 0)
+ else if (g_strncasecmp(line, "path=", 5) == 0)
account_set_path(acct, line + 5);
- else if (g_strncasecmp(line, "email_address=", 14) == 0)
+ else if (g_strncasecmp(line, "email_address=", 14) == 0)
account_set_address(acct, line + 14);
- }
+ }
- return acct;
+ return acct;
}
Account *get_next_folder()
{
- struct stat file_stat;
- struct dirent *dentry = NULL;
- char *temp = NULL;
- char *path = NULL;
- Account *mbox = NULL;
-
- temp = g_strdup(getenv("HOME"));
- if (!temp)
- return NULL;
-
- asprintf(&path, "%s/.core/accounts", temp);
- if (!path)
- return NULL;
- g_free(temp);
-
- if (!acct_dir)
- acct_dir = opendir(path);
-
- if (!acct_dir) {
- perror("opendir");
- return NULL;
- }
-
- while ((dentry = readdir(acct_dir)) != NULL) {
-
- asprintf(&temp, "%s/%s", path, dentry->d_name);
- if (!temp)
- break;
-
- if (stat(temp, &file_stat) < 0)
- break;
-
- if (S_ISREG(file_stat.st_mode))
- mbox = account_read(temp);
-
- /* g_free(dentry); */
- g_free(temp);
- }
+ struct stat file_stat;
+ struct dirent *dentry = NULL;
+ char *temp = NULL;
+ char *path = NULL;
+ Account *mbox = NULL;
+
+ temp = g_strdup(getenv("HOME"));
+ if (!temp)
+ return NULL;
+
+ asprintf(&path, "%s/.core/accounts", temp);
+ if (!path)
+ return NULL;
+ g_free(temp);
+
+ if (!acct_dir)
+ acct_dir = opendir(path);
+
+ if (!acct_dir) {
+ perror("opendir");
+ return NULL;
+ }
+
+ while ((dentry = readdir(acct_dir)) != NULL) {
+
+ asprintf(&temp, "%s/%s", path, dentry->d_name);
+ if (!temp)
+ break;
+
+ if (stat(temp, &file_stat) < 0)
+ break;
+
+ if (S_ISREG(file_stat.st_mode))
+ mbox = account_read(temp);
+
+ /* g_free(dentry); */
+ g_free(temp);
+ }
return mbox;
}
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- callbacks.c 2000/11/16 21:15:09 1.13
+++ callbacks.c 2000/11/20 10:02:03 1.14
@@ -18,7 +18,7 @@
{
GtkWidget *accounts_win;
GtkWidget *main_vbox, *vbox;
- GtkWidget *table;
+ GtkWidget *hbutton_box;
GtkWidget *button_new, *button_edit, *button_remove, *button_close;
gchar *titles[] =
{ "Folder Name", "Full Name", "E-mail Address",
@@ -35,15 +35,14 @@
vbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
- gtk_container_add(GTK_CONTAINER(main_vbox), vbox);
+ gtk_box_pack_start(GTK_BOX(main_vbox), vbox, TRUE, TRUE, 0);
clist = gtk_clist_new_with_titles(4, titles);
gtk_widget_set_usize(GTK_WIDGET(clist), 600, 180);
gtk_container_add(GTK_CONTAINER(vbox), clist);
- table = gtk_table_new(3, 4, FALSE);
- gtk_table_set_row_spacings(GTK_TABLE(table), 2);
- gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 4);
+ hbutton_box = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
button_new = gtk_button_new_with_label("New");
gtk_widget_set_usize(GTK_WIDGET(button_new), 55, 22);
@@ -51,8 +50,7 @@
GTK_SIGNAL_FUNC
(create_accounts_win_new_edit),
GINT_TO_POINTER(0));
- gtk_table_attach(GTK_TABLE(table), button_new, 0, 1, 0, 1,
- GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_new);
button_edit = gtk_button_new_with_label("Edit");
gtk_widget_set_usize(GTK_WIDGET(button_edit), 55, 22);
@@ -60,20 +58,20 @@
GTK_SIGNAL_FUNC
(create_accounts_win_new_edit),
GINT_TO_POINTER(1));
- gtk_table_attach(GTK_TABLE(table), button_edit, 1, 2, 0, 1,
- GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_edit);
button_remove = gtk_button_new_with_label("Remove");
gtk_widget_set_usize(GTK_WIDGET(button_remove), 55, 22);
- gtk_table_attach(GTK_TABLE(table), button_remove, 2, 3, 0, 1,
- GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_remove);
+
+ hbutton_box = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
button_close = gtk_button_new_with_label("Close");
gtk_signal_connect_object(GTK_OBJECT(button_close), "clicked",
GTK_SIGNAL_FUNC(gtk_widget_destroy),
GTK_OBJECT(accounts_win));
- gtk_box_pack_end(GTK_BOX(main_vbox), button_close, FALSE, FALSE,
- 4);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_close);
gtk_widget_show_all(accounts_win);
}
@@ -85,6 +83,7 @@
GtkWidget *table;
GtkWidget *label;
GtkWidget *sep1;
+ GtkWidget *hbutton_box;
GtkWidget *button_save, *button_cancel;
if (type == 0)
@@ -173,24 +172,27 @@
hbox = gtk_hbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
- gtk_box_pack_end(GTK_BOX(main_vbox), hbox, TRUE, TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbox, TRUE, TRUE, 0);
sep1 = gtk_hseparator_new();
- gtk_box_pack_end(GTK_BOX(main_vbox), sep1, TRUE, TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(main_vbox), sep1, TRUE, TRUE, 0);
+
+ hbutton_box = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
button_save = gtk_button_new_with_label("Save");
gtk_widget_set_usize(GTK_WIDGET(button_save), 55, 22);
/*gtk_signal_connect(GTK_OBJECT(button_save), "clicked",
GTK_SIGNAL_FUNC(account_write),
GINT_TO_POINTER(type)); */
- gtk_box_pack_start(GTK_BOX(hbox), button_save, TRUE, TRUE, 0);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_save);
button_cancel = gtk_button_new_with_label("Cancel");
gtk_widget_set_usize(GTK_WIDGET(button_cancel), 55, 22);
gtk_signal_connect_object(GTK_OBJECT(button_cancel), "clicked",
GTK_SIGNAL_FUNC(gtk_widget_destroy),
GTK_OBJECT(accounts_win_new));
- gtk_box_pack_start(GTK_BOX(hbox), button_cancel, TRUE, TRUE, 0);
+ gtk_container_add(GTK_CONTAINER(hbutton_box), button_cancel);
gtk_widget_show_all(accounts_win_new);
}
@@ -209,7 +211,7 @@
spool = g_strdup(gtk_entry_get_text(GTK_ENTRY(spoolfile)));
if (type == 1)
pop = g_strdup(gtk_entry_get_text(GTK_ENTRY(popserver)));
- smtp = g_strdup(gtk_entry_get_text(GTK_ENTRY(smtpserver)));
+ mtp = g_strdup(gtk_entry_get_text(GTK_ENTRY(smtpserver)));
account_file =
g_strconcat(getenv("HOME"), "/.core/accounts/", acct_name, NULL);
@@ -357,10 +359,9 @@
gtk_widget_show_all(mail);
}
-int folder_selected(GtkWidget * list, GList * node /*, gint col,
- gpointer data */ )
+int folder_selected(GtkWidget * list, GList * node, gint col,
+ gpointer data)
{
- gint col;
Message *message = NULL;
Account *mbox = NULL;
char *text[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- callbacks.h 2000/11/16 04:12:18 1.3
+++ callbacks.h 2000/11/20 10:02:03 1.4
@@ -13,8 +13,8 @@
void create_mail_menu(GtkWidget * window, GtkWidget ** menubar);
-int folder_selected(GtkWidget * list, GList * node /*, gint col,
- gpointer data */ );
+int folder_selected(GtkWidget * list, GList * node, gint col,
+ gpointer data);
int folder_unselected( /*GtkWidget * list, GList * node, gint col,
gpointer data */ );
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- main.c 2000/11/14 22:07:28 1.7
+++ main.c 2000/11/20 10:02:03 1.8
@@ -140,7 +140,7 @@
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
&bitmap, NULL,
g_strconcat(theme,
- "new-mail32x32.xpm",
+ "new.xpm",
NULL));
new = gtk_pixmap_new(pixmap, bitmap);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), "New",
@@ -158,7 +158,7 @@
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
&bitmap, NULL,
g_strconcat(theme,
- "reply32x32.xpm",
+ "reply.xpm",
NULL));
reply = gtk_pixmap_new(pixmap, bitmap);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), "Reply",
@@ -176,7 +176,7 @@
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
&bitmap, NULL,
g_strconcat(theme,
- "reply-all32x32.xpm",
+ "reply-all.xpm",
NULL));
reply_all = gtk_pixmap_new(pixmap, bitmap);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), "Reply All",
@@ -194,7 +194,7 @@
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
&bitmap, NULL,
g_strconcat(theme,
- "forward32x32.xpm",
+ "forward.xpm",
NULL));
forward = gtk_pixmap_new(pixmap, bitmap);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), "Forward",
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- prefs.c 2000/11/16 05:46:47 1.2
+++ prefs.c 2000/11/20 10:02:03 1.3
@@ -295,18 +295,18 @@
g_strdup_printf("Core %d.%d.%d", CORE_MAJOR, CORE_MINOR,
CORE_MICRO));
gtk_signal_connect(GTK_OBJECT
- (GTK_FONT_SELECTION_DIALOG
- (fontsel)->cancel_button), "clicked",
+ (GTK_FONT_SELECTION_DIALOG(fontsel)->
+ cancel_button), "clicked",
GTK_SIGNAL_FUNC(gtk_widget_destroy), fontsel);
gtk_signal_connect(GTK_OBJECT
(GTK_FONT_SELECTION_DIALOG(fontsel)->ok_button),
"clicked", GTK_SIGNAL_FUNC(set_font), fontsel);
gtk_object_set_data(GTK_OBJECT
- (GTK_FONT_SELECTION_DIALOG
- (fontsel)->ok_button), "entry", entry);
+ (GTK_FONT_SELECTION_DIALOG(fontsel)->
+ ok_button), "entry", entry);
gtk_widget_hide(GTK_WIDGET
- (GTK_FONT_SELECTION_DIALOG
- (fontsel)->apply_button));
+ (GTK_FONT_SELECTION_DIALOG(fontsel)->
+ apply_button));
gtk_widget_show(fontsel);
return;
button = NULL;
|
|
From: CORE C. L. <cor...@li...> - 2000-11-20 21:02:14
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
account.c account.h callbacks.c callbacks.h panes.c prefs.c
Log Message:
bad memory, cant remember my changes
===================================================================
RCS file: /cvsroot/corem/core/src/account.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- account.c 2000/11/20 10:02:03 1.4
+++ account.c 2000/11/20 21:02:13 1.5
@@ -160,77 +160,77 @@
* Returns: nothing
*/
-Account *account_read(gchar *path)
+Account *account_read(gchar * path)
{
FILE *fp;
- gchar *line;
- Account *acct;
+ gchar *line;
+ Account *acct;
- fp = fopen(path, "r");
+ fp = fopen(path, "r");
if (fp == NULL) {
perror("fopen");
return NULL;
- }
+ }
- acct = new_account();
+ acct = new_account();
-
+
while ((line = get_next_line(fp)) != NULL) {
- if (g_strncasecmp(line, "account_name=", 13) == 0)
+ if (g_strncasecmp(line, "account_name=", 13) == 0)
account_set_name(acct, line + 13);
else if (g_strncasecmp(line, "smtp_server=", 12) == 0)
account_set_server(acct, line + 12);
- else if (g_strncasecmp(line, "full_name=", 10) == 0)
+ else if (g_strncasecmp(line, "full_name=", 10) == 0)
account_set_fullname(acct, line + 10);
- else if (g_strncasecmp(line, "path=", 5) == 0)
+ else if (g_strncasecmp(line, "path=", 5) == 0)
account_set_path(acct, line + 5);
- else if (g_strncasecmp(line, "email_address=", 14) == 0)
+ else if (g_strncasecmp(line, "email_address=", 14) == 0)
account_set_address(acct, line + 14);
- }
+ }
- return acct;
+ return acct;
}
Account *get_next_folder()
{
- struct stat file_stat;
- struct dirent *dentry = NULL;
- char *temp = NULL;
- char *path = NULL;
- Account *mbox = NULL;
-
- temp = g_strdup(getenv("HOME"));
- if (!temp)
- return NULL;
-
- asprintf(&path, "%s/.core/accounts", temp);
- if (!path)
- return NULL;
- g_free(temp);
-
- if (!acct_dir)
- acct_dir = opendir(path);
-
- if (!acct_dir) {
- perror("opendir");
- return NULL;
- }
-
- while ((dentry = readdir(acct_dir)) != NULL) {
-
- asprintf(&temp, "%s/%s", path, dentry->d_name);
- if (!temp)
- break;
-
- if (stat(temp, &file_stat) < 0)
- break;
-
- if (S_ISREG(file_stat.st_mode))
- mbox = account_read(temp);
-
- /* g_free(dentry); */
- g_free(temp);
- }
+ struct stat file_stat;
+ struct dirent *dentry = NULL;
+ char *temp = NULL;
+ char *path = NULL;
+ Account *mbox = NULL;
+
+ temp = g_strdup(getenv("HOME"));
+ if (!temp)
+ return NULL;
+
+ asprintf(&path, "%s/.core/accounts", temp);
+ if (!path)
+ return NULL;
+ g_free(temp);
+
+ if (!acct_dir)
+ acct_dir = opendir(path);
+
+ if (!acct_dir) {
+ perror("opendir");
+ return NULL;
+ }
+
+ while ((dentry = readdir(acct_dir)) != NULL) {
+
+ asprintf(&temp, "%s/%s", path, dentry->d_name);
+ if (!temp)
+ break;
+
+ if (stat(temp, &file_stat) < 0)
+ break;
+
+ if (S_ISREG(file_stat.st_mode))
+ mbox = account_read(temp);
+
+ /* g_free(dentry); */
+ g_free(temp);
+ }
return mbox;
}
===================================================================
RCS file: /cvsroot/corem/core/src/account.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- account.h 2000/11/14 22:07:28 1.2
+++ account.h 2000/11/20 21:02:13 1.3
@@ -3,7 +3,7 @@
char *name;
char *address;
char *server;
- char *path;
+ char *path;
FILE *fp;
} Account;
@@ -26,5 +26,5 @@
char *account_get_name(Account * ac);
int account_set_name(Account * ac, char *path);
-Account *account_read(gchar *path);
+Account *account_read(gchar * path);
Account *get_next_folder(void);
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -3 -r1.14 -r1.15
--- callbacks.c 2000/11/20 10:02:03 1.14
+++ callbacks.c 2000/11/20 21:02:13 1.15
@@ -20,9 +20,9 @@
GtkWidget *main_vbox, *vbox;
GtkWidget *hbutton_box;
GtkWidget *button_new, *button_edit, *button_remove, *button_close;
- gchar *titles[] =
- { "Folder Name", "Full Name", "E-mail Address",
- "Mailbox Path" };
+ gchar *titles[] = { "Folder Name", "Full Name", "E-mail Address",
+ "Mailbox Path"
+ };
title = g_strdup_printf("Accounts");
@@ -42,7 +42,8 @@
gtk_container_add(GTK_CONTAINER(vbox), clist);
hbutton_box = gtk_hbutton_box_new();
- gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
+ 0);
button_new = gtk_button_new_with_label("New");
gtk_widget_set_usize(GTK_WIDGET(button_new), 55, 22);
@@ -64,8 +65,9 @@
gtk_widget_set_usize(GTK_WIDGET(button_remove), 55, 22);
gtk_container_add(GTK_CONTAINER(hbutton_box), button_remove);
- hbutton_box = gtk_hbutton_box_new();
- gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
+ hbutton_box = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
+ 0);
button_close = gtk_button_new_with_label("Close");
gtk_signal_connect_object(GTK_OBJECT(button_close), "clicked",
@@ -99,86 +101,87 @@
gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
gtk_container_add(GTK_CONTAINER(accounts_win_new), main_vbox);
- table = gtk_table_new(4, 2, FALSE);
- gtk_table_set_row_spacings(GTK_TABLE(table), 2);
- gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
+ table = gtk_table_new(4, 2, FALSE);
+ gtk_table_set_row_spacings(GTK_TABLE(table), 2);
+ gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
label = gtk_label_new("Folder Name:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
folder_name = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(folder_name), 200, 20);
- gtk_table_attach(GTK_TABLE(table), folder_name, 1, 2, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), folder_name, 1, 2, 0,
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
label = gtk_label_new("Full Name:");
- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
full_name = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(full_name), 200, 20);
- gtk_table_attach(GTK_TABLE(table), full_name, 1, 2, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), full_name, 1, 2, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
label = gtk_label_new("E-mail Address:");
- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2,
- 3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2,
+ 3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
email_address = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(email_address), 200, 20);
- gtk_table_attach(GTK_TABLE(table), email_address, 1, 2, 2,
- 3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), email_address, 1, 2, 2,
+ 3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
- table = gtk_table_new(2, 4, FALSE);
- gtk_table_set_row_spacings(GTK_TABLE(table), 2);
- gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
+ table = gtk_table_new(2, 4, FALSE);
+ gtk_table_set_row_spacings(GTK_TABLE(table), 2);
+ gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
label = gtk_label_new("Username:");
- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0,
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
username = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(username), 100, 20);
- gtk_table_attach(GTK_TABLE(table), username, 1, 2, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), username, 1, 2, 0,
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
label = gtk_label_new("Password:");
- gtk_table_attach(GTK_TABLE(table), label, 2, 3, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 2, 3, 0,
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
password = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(password), 100, 20);
- gtk_table_attach(GTK_TABLE(table), password, 3, 4, 0,
- 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), password, 3, 4, 0,
+ 1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
label = gtk_label_new("Server:");
- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
server = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(server), 100, 20);
- gtk_table_attach(GTK_TABLE(table), server, 1, 2, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), server, 1, 2, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
label = gtk_label_new("Path:");
- gtk_table_attach(GTK_TABLE(table), label, 2, 3, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), label, 2, 3, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
path = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(path), 100, 20);
- gtk_table_attach(GTK_TABLE(table), path, 3, 4, 1,
- 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ gtk_table_attach(GTK_TABLE(table), path, 3, 4, 1,
+ 2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
- hbox = gtk_hbox_new(FALSE, 0);
- gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
gtk_box_pack_start(GTK_BOX(main_vbox), hbox, TRUE, TRUE, 0);
sep1 = gtk_hseparator_new();
gtk_box_pack_start(GTK_BOX(main_vbox), sep1, TRUE, TRUE, 0);
- hbutton_box = gtk_hbutton_box_new();
- gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE, 0);
+ hbutton_box = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
+ 0);
button_save = gtk_button_new_with_label("Save");
gtk_widget_set_usize(GTK_WIDGET(button_save), 55, 22);
@@ -201,47 +204,47 @@
void account_write()
{
/*FILE *account;
- gchar *account_file;
- gchar *acct_name, *fullname, *email, *spool, *pop, *smtp;
-
- acct_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(account_name)));
- fullname = g_strdup(gtk_entry_get_text(GTK_ENTRY(full_name)));
- email = g_strdup(gtk_entry_get_text(GTK_ENTRY(email_address)));
- if (type == 0)
- spool = g_strdup(gtk_entry_get_text(GTK_ENTRY(spoolfile)));
- if (type == 1)
- pop = g_strdup(gtk_entry_get_text(GTK_ENTRY(popserver)));
- mtp = g_strdup(gtk_entry_get_text(GTK_ENTRY(smtpserver)));
-
- account_file =
- g_strconcat(getenv("HOME"), "/.core/accounts/", acct_name, NULL);
-
- if (g_strcasecmp(acct_name, "") == 0) {
- g_print("ERROR: You must specify a account name");
- return;
- }
+ gchar *account_file;
+ gchar *acct_name, *fullname, *email, *spool, *pop, *smtp;
- account = fopen(account_file, "w");
- if (account == NULL) {
- fprintf(account, "ERROR: Cannot write to account file\n");
- return;
- }
+ acct_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(account_name)));
+ fullname = g_strdup(gtk_entry_get_text(GTK_ENTRY(full_name)));
+ email = g_strdup(gtk_entry_get_text(GTK_ENTRY(email_address)));
+ if (type == 0)
+ spool = g_strdup(gtk_entry_get_text(GTK_ENTRY(spoolfile)));
+ if (type == 1)
+ pop = g_strdup(gtk_entry_get_text(GTK_ENTRY(popserver)));
+ mtp = g_strdup(gtk_entry_get_text(GTK_ENTRY(smtpserver)));
+
+ account_file =
+ g_strconcat(getenv("HOME"), "/.core/accounts/", acct_name, NULL);
+
+ if (g_strcasecmp(acct_name, "") == 0) {
+ g_print("ERROR: You must specify a account name");
+ return;
+ }
+
+ account = fopen(account_file, "w");
+ if (account == NULL) {
+ fprintf(account, "ERROR: Cannot write to account file\n");
+ return;
+ }
+
+ if (type == 0)
+ fprintf(account, "account_type=mbox\n");
+ if (type == 1)
+ fprintf(account, "account_type=pop3\n");
+ fprintf(account, "account_name=%s\n", acct_name);
+ fprintf(account, "full_name=%s\n", fullname);
+ fprintf(account, "email_address=%s\n", email);
+ if (type == 0)
+ fprintf(account, "spoolfile=%s\n", spool);
+ if (type == 1)
+ fprintf(account, "popserver=%s\n", pop);
+ fprintf(account, "smtpserver=%s\n", smtp);
- if (type == 0)
- fprintf(account, "account_type=mbox\n");
- if (type == 1)
- fprintf(account, "account_type=pop3\n");
- fprintf(account, "account_name=%s\n", acct_name);
- fprintf(account, "full_name=%s\n", fullname);
- fprintf(account, "email_address=%s\n", email);
- if (type == 0)
- fprintf(account, "spoolfile=%s\n", spool);
- if (type == 1)
- fprintf(account, "popserver=%s\n", pop);
- fprintf(account, "smtpserver=%s\n", smtp);
-
- gtk_widget_destroy(accounts_win_new);
- return;*/
+ gtk_widget_destroy(accounts_win_new);
+ return; */
}
void create_core_about_window(void)
@@ -360,18 +363,17 @@
}
int folder_selected(GtkWidget * list, GList * node, gint col,
- gpointer data)
+ gpointer data)
{
Message *message = NULL;
Account *mbox = NULL;
- char *text[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
+ gchar *text[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
mbox = (Account *) gtk_ctree_node_get_row_data(GTK_CTREE(list),
GTK_CTREE_NODE
(node));
-
title =
- g_strdup_printf("Core %d.%d.%d: Inbox", CORE_MAJOR,
+ g_strdup_printf("Core %d.%d.%d", CORE_MAJOR,
CORE_MINOR, CORE_MICRO);
gtk_window_set_title(GTK_WINDOW(main_win), title);
while (1) {
@@ -469,9 +471,9 @@
free(temp);
item =
- gtk_ctree_insert_node(GTK_CTREE(mail_ctree), top, NULL,
- text, 0, NULL, NULL, NULL, NULL,
- FALSE, TRUE);
+ gtk_ctree_insert_node(GTK_CTREE(mail_ctree), NULL,
+ NULL, text, 0, NULL, NULL, NULL,
+ NULL, FALSE, TRUE);
temp = header_get_value(find_header(head, "Message-Id:"));
if (temp)
@@ -485,11 +487,16 @@
current_mbox = mbox;
return TRUE;
+ data = NULL;
}
-int folder_unselected( /*GtkWidget * list, GList * node, gint col,
- gpointer data */ )
+int folder_unselected(GtkWidget * list, GList * node, gint col,
+ gpointer data)
{
+ list = NULL;
+ node = NULL;
+ col = 0;
+ data = NULL;
return TRUE;
}
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- callbacks.h 2000/11/20 10:02:03 1.4
+++ callbacks.h 2000/11/20 21:02:13 1.5
@@ -14,9 +14,9 @@
void create_mail_menu(GtkWidget * window, GtkWidget ** menubar);
int folder_selected(GtkWidget * list, GList * node, gint col,
- gpointer data);
-int folder_unselected( /*GtkWidget * list, GList * node, gint col,
- gpointer data */ );
+ gpointer data);
+int folder_unselected(GtkWidget * list, GList * node, gint col,
+ gpointer data);
int mail_selected(GtkWidget * list, GList * node, gint col, gpointer data);
int mail_unselected(GtkWidget * list, GList * node, gint col,
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- panes.c 2000/11/14 19:38:44 1.3
+++ panes.c 2000/11/20 21:02:13 1.4
@@ -35,6 +35,8 @@
folder_ctree = gtk_ctree_new_with_titles(3, 0, folder_titles);
gtk_signal_connect(GTK_OBJECT(folder_ctree), "tree_select_row",
GTK_SIGNAL_FUNC(folder_selected), NULL);
+ gtk_signal_connect(GTK_OBJECT(folder_ctree), "tree_unselect_row",
+ GTK_SIGNAL_FUNC(folder_unselected), NULL);
if (!text || !text[0] || !text[1] || !text[2]) {
fprintf(stderr, "ERROR: Malloc failed, Exiting....\n");
@@ -213,12 +215,12 @@
if (config.ml_from == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), ifrom,
- 150);
+ 250);
}
if (config.ml_subject == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), isubject,
- 175);
+ 125);
}
if (config.ml_date == 1) {
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- prefs.c 2000/11/20 10:02:03 1.3
+++ prefs.c 2000/11/20 21:02:13 1.4
@@ -295,18 +295,18 @@
g_strdup_printf("Core %d.%d.%d", CORE_MAJOR, CORE_MINOR,
CORE_MICRO));
gtk_signal_connect(GTK_OBJECT
- (GTK_FONT_SELECTION_DIALOG(fontsel)->
- cancel_button), "clicked",
+ (GTK_FONT_SELECTION_DIALOG
+ (fontsel)->cancel_button), "clicked",
GTK_SIGNAL_FUNC(gtk_widget_destroy), fontsel);
gtk_signal_connect(GTK_OBJECT
(GTK_FONT_SELECTION_DIALOG(fontsel)->ok_button),
"clicked", GTK_SIGNAL_FUNC(set_font), fontsel);
gtk_object_set_data(GTK_OBJECT
- (GTK_FONT_SELECTION_DIALOG(fontsel)->
- ok_button), "entry", entry);
+ (GTK_FONT_SELECTION_DIALOG
+ (fontsel)->ok_button), "entry", entry);
gtk_widget_hide(GTK_WIDGET
- (GTK_FONT_SELECTION_DIALOG(fontsel)->
- apply_button));
+ (GTK_FONT_SELECTION_DIALOG
+ (fontsel)->apply_button));
gtk_widget_show(fontsel);
return;
button = NULL;
|
|
From: CORE C. L. <cor...@li...> - 2000-11-20 22:40:19
|
Core CVS committal Author : smugg Project : core Module : src Removed Files: icon-test16x16.xpm icon-test32x32.xpm Log Message: removed icon-test16x16.xpm icon-test32x32.xpm using only icon.xpm now |
|
From: CORE C. L. <cor...@li...> - 2000-11-21 05:10:41
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
account.c account.h callbacks.c callbacks.h
Log Message:
added a save_account, and account_write, now it works saving a account, fixed the folder_selected bug, now we need to fix listing of accounts for the main accounts window
===================================================================
RCS file: /cvsroot/corem/core/src/account.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- account.c 2000/11/20 22:59:01 1.6
+++ account.c 2000/11/21 05:10:40 1.7
@@ -182,15 +182,37 @@
account_set_server(acct, line + 12);
else if (g_strncasecmp(line, "full_name=", 10) == 0)
account_set_fullname(acct, line + 10);
- else if (g_strncasecmp(line, "path=", 5) == 0)
- account_set_path(acct, line + 5);
- else if (g_strncasecmp(line, "email_address=", 14) == 0)
- account_set_address(acct, line + 14);
+ else if (g_strncasecmp(line, "email_address=", 14) == 0)
+ account_set_address(acct, line + 14);
+ else if (g_strncasecmp(line, "path=", 5) == 0)
+ account_set_path(acct, line + 5);
}
return acct;
}
+Account *account_write(Account * acct)
+{
+ FILE *fp;
+ gchar *file = g_strconcat(getenv("HOME"), "/.core/accounts/", acct->name, NULL);
+
+ fp = fopen(file, "w");
+ if (fp == NULL) {
+ perror("fopen");
+ return NULL;
+ }
+
+ fprintf(fp, "account_name=%s\n", acct->name);
+ fprintf(fp, "full_name=%s\n", acct->full_name);
+ fprintf(fp, "email_address=%s\n", acct->address);
+ fprintf(fp, "username=%s\n", acct->username);
+ fprintf(fp, "password=%s\n", acct->password);
+ fprintf(fp, "smtp_server=%s\n", acct->server);
+ fprintf(fp, "path=%s\n", acct->path);
+
+ return NULL;
+}
+
Account *get_next_folder()
{
struct stat file_stat;
@@ -235,11 +257,11 @@
return mbox;
}
-int account_reset_file(Account *ac)
+int account_reset_file(Account * ac)
{
- if (!ac || !ac->fp)
- return FALSE;
+ if (!ac || !ac->fp)
+ return FALSE;
- rewind(ac->fp);
- return TRUE;
+ rewind(ac->fp);
+ return TRUE;
}
===================================================================
RCS file: /cvsroot/corem/core/src/account.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- account.h 2000/11/20 22:59:01 1.5
+++ account.h 2000/11/21 05:10:40 1.6
@@ -55,8 +55,9 @@
/* Read in the settings found in the file path, return an account structure */
Account *account_read(gchar * path);
+Account *account_write(Account * acct);
/* Move through the various folders returning them one at a time */
Account *get_next_folder(void);
/* Reset the file pointer for the local mailbox */
-int account_reset(Account *ac);
+int account_reset(Account * ac);
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- callbacks.c 2000/11/20 22:59:01 1.17
+++ callbacks.c 2000/11/21 05:10:40 1.18
@@ -14,37 +14,45 @@
*password, *server, *path;
GtkWidget *accounts_win_new;
+
+/* The main account window */
void create_account_window()
{
GtkWidget *accounts_win;
- GtkWidget *main_vbox, *vbox;
- GtkWidget *hbutton_box;
+ GtkWidget *main_vbox, *hbox;
+ GtkWidget *hbutton_box;
GtkWidget *button_new, *button_edit, *button_remove, *button_close;
gchar *titles[] = { "Folder Name", "Full Name", "E-mail Address",
"Mailbox Path"
};
+ /* Window title */
title = g_strdup_printf("Accounts");
+ /* Create the account window */
accounts_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ /* Set title for the account window */
gtk_window_set_title(GTK_WINDOW(accounts_win), title);
+ /* Account window main vbox */
main_vbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
gtk_container_add(GTK_CONTAINER(accounts_win), main_vbox);
- vbox = gtk_vbox_new(FALSE, 0);
- gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
- gtk_box_pack_start(GTK_BOX(main_vbox), vbox, TRUE, TRUE, 0);
-
+ /* The clist for browsing accounts */
clist = gtk_clist_new_with_titles(4, titles);
gtk_widget_set_usize(GTK_WIDGET(clist), 600, 180);
- gtk_container_add(GTK_CONTAINER(vbox), clist);
+ gtk_container_add(GTK_CONTAINER(main_vbox), clist);
+
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 0);
+ /* The buttons at the bottom of the window */
hbutton_box = gtk_hbutton_box_new();
- gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
+ gtk_box_pack_start(GTK_BOX(hbox), hbutton_box, FALSE, FALSE,
0);
+ /* New account button */
button_new = gtk_button_new_with_label("New");
gtk_widget_set_usize(GTK_WIDGET(button_new), 55, 22);
gtk_signal_connect_object(GTK_OBJECT(button_new), "clicked",
@@ -53,6 +61,7 @@
GINT_TO_POINTER(0));
gtk_container_add(GTK_CONTAINER(hbutton_box), button_new);
+ /* Edit account button */
button_edit = gtk_button_new_with_label("Edit");
gtk_widget_set_usize(GTK_WIDGET(button_edit), 55, 22);
gtk_signal_connect_object(GTK_OBJECT(button_edit), "clicked",
@@ -61,135 +70,153 @@
GINT_TO_POINTER(1));
gtk_container_add(GTK_CONTAINER(hbutton_box), button_edit);
+ /* Remove account button */
button_remove = gtk_button_new_with_label("Remove");
gtk_widget_set_usize(GTK_WIDGET(button_remove), 55, 22);
gtk_container_add(GTK_CONTAINER(hbutton_box), button_remove);
-
- hbutton_box = gtk_hbutton_box_new();
- gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
- 0);
+ /* Close button */
button_close = gtk_button_new_with_label("Close");
gtk_signal_connect_object(GTK_OBJECT(button_close), "clicked",
GTK_SIGNAL_FUNC(gtk_widget_destroy),
GTK_OBJECT(accounts_win));
gtk_container_add(GTK_CONTAINER(hbutton_box), button_close);
+ /* Show all widgets in the accounts window */
gtk_widget_show_all(accounts_win);
}
-
-void create_accounts_win_new_edit(gint type)
+/* The new/edit account window */
+void create_accounts_win_new_edit(gint type) /* type 0 for new account and
+ type 1 for edit a account */
{
- GtkWidget *main_vbox, *hbox;
+ GtkWidget *main_vbox;
GtkWidget *table;
GtkWidget *label;
GtkWidget *sep1;
GtkWidget *hbutton_box;
GtkWidget *button_save, *button_cancel;
+ /* Set the right title for the window */
if (type == 0)
title = g_strdup_printf("New Account");
if (type == 1)
title = g_strdup_printf("Edit Account");
-
+ /* Create the new/edit account window */
accounts_win_new = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(accounts_win_new), title);
+ /* Main vbox, in here everything goes */
main_vbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
gtk_container_add(GTK_CONTAINER(accounts_win_new), main_vbox);
+ /* A nice table with 2 columns */
table = gtk_table_new(4, 2, FALSE);
gtk_table_set_row_spacings(GTK_TABLE(table), 2);
gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
+ /* Folder name label */
label = gtk_label_new("Folder Name:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Folder name entry */
folder_name = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(folder_name), 200, 20);
gtk_table_attach(GTK_TABLE(table), folder_name, 1, 2, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Full name label */
label = gtk_label_new("Full Name:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Full name entry */
full_name = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(full_name), 200, 20);
gtk_table_attach(GTK_TABLE(table), full_name, 1, 2, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* E-mail address label */
label = gtk_label_new("E-mail Address:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2,
3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* E-mail address entry */
email_address = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(email_address), 200, 20);
gtk_table_attach(GTK_TABLE(table), email_address, 1, 2, 2,
3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* A nice table with 4 columns */
table = gtk_table_new(2, 4, FALSE);
gtk_table_set_row_spacings(GTK_TABLE(table), 2);
gtk_box_pack_start(GTK_BOX(main_vbox), table, FALSE, FALSE, 4);
+ /* Username label */
label = gtk_label_new("Username:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Username entry */
username = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(username), 100, 20);
gtk_table_attach(GTK_TABLE(table), username, 1, 2, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Password label */
label = gtk_label_new("Password:");
gtk_table_attach(GTK_TABLE(table), label, 2, 3, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Password entry */
password = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(password), 100, 20);
gtk_table_attach(GTK_TABLE(table), password, 3, 4, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Server label */
label = gtk_label_new("Server:");
gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Server entry */
server = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(server), 100, 20);
gtk_table_attach(GTK_TABLE(table), server, 1, 2, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Path label */
label = gtk_label_new("Path:");
gtk_table_attach(GTK_TABLE(table), label, 2, 3, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
+ /* Path entry */
path = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(path), 100, 20);
gtk_table_attach(GTK_TABLE(table), path, 3, 4, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
- hbox = gtk_hbox_new(FALSE, 0);
- gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
- gtk_box_pack_start(GTK_BOX(main_vbox), hbox, TRUE, TRUE, 0);
-
+ /* A separator betwen the entryboxes and the buttons */
sep1 = gtk_hseparator_new();
gtk_box_pack_start(GTK_BOX(main_vbox), sep1, TRUE, TRUE, 0);
+ /* A new hbutton box */
hbutton_box = gtk_hbutton_box_new();
gtk_box_pack_start(GTK_BOX(main_vbox), hbutton_box, FALSE, FALSE,
0);
+ /* Save button */
button_save = gtk_button_new_with_label("Save");
gtk_widget_set_usize(GTK_WIDGET(button_save), 55, 22);
- /*gtk_signal_connect(GTK_OBJECT(button_save), "clicked",
- GTK_SIGNAL_FUNC(account_write),
- GINT_TO_POINTER(type)); */
+ gtk_signal_connect(GTK_OBJECT(button_save), "clicked",
+ GTK_SIGNAL_FUNC(save_account),
+ GINT_TO_POINTER(type));
gtk_container_add(GTK_CONTAINER(hbutton_box), button_save);
+ /* Cancel button */
button_cancel = gtk_button_new_with_label("Cancel");
gtk_widget_set_usize(GTK_WIDGET(button_cancel), 55, 22);
gtk_signal_connect_object(GTK_OBJECT(button_cancel), "clicked",
@@ -197,63 +224,42 @@
GTK_OBJECT(accounts_win_new));
gtk_container_add(GTK_CONTAINER(hbutton_box), button_cancel);
+ /* Show all widgets in new/edit account window */
gtk_widget_show_all(accounts_win_new);
}
-void account_write()
+void save_account(gint type)
{
- /*FILE *account;
- gchar *account_file;
- gchar *acct_name, *fullname, *email, *spool, *pop, *smtp;
-
- acct_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(account_name)));
- fullname = g_strdup(gtk_entry_get_text(GTK_ENTRY(full_name)));
- email = g_strdup(gtk_entry_get_text(GTK_ENTRY(email_address)));
- if (type == 0)
- spool = g_strdup(gtk_entry_get_text(GTK_ENTRY(spoolfile)));
- if (type == 1)
- pop = g_strdup(gtk_entry_get_text(GTK_ENTRY(popserver)));
- mtp = g_strdup(gtk_entry_get_text(GTK_ENTRY(smtpserver)));
-
- account_file =
- g_strconcat(getenv("HOME"), "/.core/accounts/", acct_name, NULL);
-
- if (g_strcasecmp(acct_name, "") == 0) {
- g_print("ERROR: You must specify a account name");
- return;
- }
-
- account = fopen(account_file, "w");
- if (account == NULL) {
- fprintf(account, "ERROR: Cannot write to account file\n");
- return;
- }
-
- if (type == 0)
- fprintf(account, "account_type=mbox\n");
- if (type == 1)
- fprintf(account, "account_type=pop3\n");
- fprintf(account, "account_name=%s\n", acct_name);
- fprintf(account, "full_name=%s\n", fullname);
- fprintf(account, "email_address=%s\n", email);
- if (type == 0)
- fprintf(account, "spoolfile=%s\n", spool);
- if (type == 1)
- fprintf(account, "popserver=%s\n", pop);
- fprintf(account, "smtpserver=%s\n", smtp);
+ Account *acct;
+
+ acct = new_account();
- gtk_widget_destroy(accounts_win_new);
- return; */
+ acct->name = gtk_entry_get_text(GTK_ENTRY(folder_name));
+ acct->full_name = gtk_entry_get_text(GTK_ENTRY(full_name));
+ acct->address = gtk_entry_get_text(GTK_ENTRY(email_address));
+ /*acct->type = gtk_entry_get_text(GTK_ENTRY(type));*/
+ acct->username = gtk_entry_get_text(GTK_ENTRY(username));
+ acct->password = gtk_entry_get_text(GTK_ENTRY(password));
+ acct->server = gtk_entry_get_text(GTK_ENTRY(server));
+ acct->path = gtk_entry_get_text(GTK_ENTRY(path));
+
+ account_write(acct);
+
+ gtk_widget_destroy(accounts_win_new);
+ return;
}
+/* This creates the preference window with the correct title About */
void create_core_about_window(void)
{
+ /* Set the title */
gchar *title = g_strdup_printf("About");
+ /* Pass the title to right callback */
create_preferences_window_cb(title);
}
-
+/* Calls the create_mail_window_cb showing the right stuff for viewing a mail */
void create_mail_window_view(GtkWidget * button, gpointer data)
{
Message *m;
@@ -271,6 +277,7 @@
button = NULL;
}
+/* Calls the create_mail_window_cb showing the right stuff for creating a new mail */
void create_mail_window_new(GtkWidget * button)
{
Message *m;
@@ -285,6 +292,7 @@
button = NULL;
}
+/* Calls the create_mail_window_cb showing the right stuff for replying to a mail */
void create_mail_window_reply(GtkWidget * button, gpointer data)
{
Message *m;
@@ -301,6 +309,7 @@
button = NULL;
}
+/* Calls the create_mail_window_cb showing the right stuff to reply to all recipients of a mail */
void create_mail_window_reply_all(GtkWidget * button, gpointer data)
{
Message *m;
@@ -316,6 +325,7 @@
button = NULL;
}
+/* Calls the create_mail_window_cb showing the right stuff to forward a mail */
void create_mail_window_forward(GtkWidget * button, gpointer data)
{
Message *m;
@@ -332,6 +342,7 @@
button = NULL;
}
+/* The real create_mail_window callback */
void create_mail_window_cb(gchar * title, Message * message,
MessageFlags mode)
{
@@ -362,6 +373,7 @@
gtk_widget_show_all(mail);
}
+/* Function when selecting a folder */
int folder_selected(GtkWidget * list, GList * node, gint col,
gpointer data)
{
@@ -372,10 +384,7 @@
mbox = (Account *) gtk_ctree_node_get_row_data(GTK_CTREE(list),
GTK_CTREE_NODE
(node));
- title =
- g_strdup_printf("Core %d.%d.%d", CORE_MAJOR,
- CORE_MINOR, CORE_MICRO);
- gtk_window_set_title(GTK_WINDOW(main_win), title);
+
while (1) {
GtkCTreeNode *top, *item;
char *temp;
@@ -485,17 +494,18 @@
free);
destroy_message(message);
}
- current_mbox = mbox;
- account_reset_file(mbox);
+ current_mbox = mbox;
+ account_reset_file(mbox);
return TRUE;
data = NULL;
}
+/* Function for unselecting a item in the folder ctree */
int folder_unselected(GtkWidget * list, GList * node, gint col,
gpointer data)
{
- gtk_ctree_remove_node(GTK_CTREE(mail_ctree), NULL);
+ gtk_ctree_remove_node(GTK_CTREE(mail_ctree), NULL);
return TRUE;
list = NULL;
@@ -504,6 +514,7 @@
data = NULL;
}
+/* Function for selecting a mail in the mail ctree */
int mail_selected(GtkWidget * list, GList * node, gint col, gpointer data)
{
char *temp;
@@ -522,6 +533,9 @@
data = NULL;
}
+/* Function for unselecting a mail in the mail ctree
+ * Don't really need to do anything in this function, nothing to free from memory
+ */
int mail_unselected(GtkWidget * list, GList * node, gint col,
gpointer data)
{
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- callbacks.h 2000/11/20 21:02:13 1.5
+++ callbacks.h 2000/11/21 05:10:40 1.6
@@ -1,31 +1,66 @@
+/* This function is called from main() to create the main window */
void create_core_main_window(void);
+
+/* This function creates the preference window with 'About' as title */
void create_core_about_window(void);
+
+/* The main menu widget */
GtkWidget *create_main_menu();
+
+/* The toolbar that goes in the main window */
GtkWidget *create_main_toolbar();
-void create_account_window();
+
+/* The real callback for create_mail_window_view/new/reply/reply_all/forward */
void create_mail_window_cb(gchar * title, Message * message,
MessageFlags mode);
+
+/* Calls the create_mail_window_cb showing the right stuff for viewing a mail */
void create_mail_window_view(GtkWidget * button, gpointer data);
+
+/* Calls the create_mail_window_cb showing the right stuff for creating a new mail */
void create_mail_window_new(GtkWidget * button);
+
+/* Calls the create_mail_window_cb showing the right stuff for replying to a mail */
void create_mail_window_reply(GtkWidget * button, gpointer data);
+
+/* Calls the create_mail_window_cb showing the right stuff to reply to all recipients of a mail */
void create_mail_window_reply_all(GtkWidget * button, gpointer data);
+
+/* Calls the create_mail_window_cb showing the right stuff to forward a mail */
void create_mail_window_forward(GtkWidget * button, gpointer data);
+/* The mail window menu */
void create_mail_menu(GtkWidget * window, GtkWidget ** menubar);
+/* Function when selecting a folder */
int folder_selected(GtkWidget * list, GList * node, gint col,
gpointer data);
+/* Function when unselecting a folder */
int folder_unselected(GtkWidget * list, GList * node, gint col,
gpointer data);
+/* Function for selecting a mail in the mail ctree */
int mail_selected(GtkWidget * list, GList * node, gint col, gpointer data);
+
+/* Function for unselecting a mail in the mail ctree
+ * Don't really need to do anything in this function, nothing to free from memory */
int mail_unselected(GtkWidget * list, GList * node, gint col,
gpointer data);
+/* Menu function for hiding/shoing the toolbar */
void toolbar_hide_show();
+
+/* Change toolbar typ, 0 for text, 1 for icons and 2 for both text and icons */
void toolbar_change_layout(gint type);
+
+/* Quit core funcion */
void core_main_quit(void);
+/* The main account window */
+void create_account_window();
+
+/* The new/edit account window */
void create_accounts_win_new_edit(gint type);
-void create_accounts_win_delete();
-void account_write();
+
+/* Save account */
+void save_account(gint type);
|
|
From: CORE C. L. <cor...@li...> - 2000-11-21 19:57:56
|
Core CVS committal Author : smugg Project : core Module : src Added Files: Makefile.am Removed Files: Makefile Log Message: Added autoconf/automake stuff, cleaned up some stuff |
|
From: CORE C. L. <cor...@li...> - 2000-11-21 22:33:40
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
Makefile.am callbacks.c core.h main.c panes.c prefs.c
Log Message:
added a set_theme_dir()
===================================================================
RCS file: /cvsroot/corem/core/src/Makefile.am,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- Makefile.am 2000/11/21 19:57:55 1.1
+++ Makefile.am 2000/11/21 22:33:40 1.2
@@ -1,11 +1,19 @@
MAINTAINERCLEANFILES = Makefile.in
CFLAGS = -g -W -Wall -Wno-implicit
-GTK_CFLAGS = @GTK_CFLAGS@
+GTK_CFLAGS = -I@GTK_CFLAGS@
GTK_LIBS = @GTK_LIBS@
+DEFS = -DCORE_SHARE=\"$(prefix)/share/core\" -DCORE_VERSION=\"@VERSION@\"
+INCLUDES = -I$(top_srcdir) $(GTK_CFLAGS) -I ..
bin_PROGRAMS = core
-core_SOURCES = main.c account.c account.h callbacks.c callbacks.h \
- headers.c headers.h message.c message.h menus.c menus.h \
- panes.c panes.h prefs.c prefs.h util.c util.h
+core_SOURCES = main.c \
+ account.c account.h \
+ callbacks.c callbacks.h \
+ headers.c headers.h \
+ message.c message.h \
+ menus.c menus.h \
+ panes.c panes.h \
+ prefs.c prefs.h \
+ util.c util.h
core_LDADD = @GTK_LIBS@
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -3 -r1.19 -r1.20
--- callbacks.c 2000/11/21 17:59:01 1.19
+++ callbacks.c 2000/11/21 22:33:40 1.20
@@ -88,7 +88,6 @@
/* The new/edit account window */
void create_accounts_win_new_edit()
{
-
GtkWidget *main_vbox;
GtkWidget *table;
GtkWidget *label;
@@ -96,10 +95,10 @@
GtkWidget *hbutton_box;
GtkWidget *button_save, *button_cancel;
- /* Set the right title for the window */
- /* This still needs to be done. It can be figured out by looking for a
- * selected row in the account clist. */
- title = g_strdup("New");
+ /* Set the right title for the window */
+ /* This still needs to be done. It can be figured out by looking for a
+ * selected row in the account clist. */
+ title = g_strdup("New");
/* Create the new/edit account window */
accounts_win_new = gtk_window_new(GTK_WINDOW_TOPLEVEL);
@@ -121,8 +120,8 @@
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
/* Folder name entry */
- folder_name = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(folder_name), "");
+ folder_name = gtk_entry_new();
+ gtk_entry_set_text(GTK_ENTRY(folder_name), "");
gtk_widget_set_usize(GTK_WIDGET(folder_name), 200, 20);
gtk_table_attach(GTK_TABLE(table), folder_name, 1, 2, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -134,7 +133,7 @@
/* Full name entry */
full_name = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(full_name), "");
+ gtk_entry_set_text(GTK_ENTRY(full_name), "");
gtk_widget_set_usize(GTK_WIDGET(full_name), 200, 20);
gtk_table_attach(GTK_TABLE(table), full_name, 1, 2, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -146,7 +145,7 @@
/* E-mail address entry */
email_address = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(email_address), "");
+ gtk_entry_set_text(GTK_ENTRY(email_address), "");
gtk_widget_set_usize(GTK_WIDGET(email_address), 200, 20);
gtk_table_attach(GTK_TABLE(table), email_address, 1, 2, 2,
3, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -163,7 +162,7 @@
/* Username entry */
username = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(username), "");
+ gtk_entry_set_text(GTK_ENTRY(username), "");
gtk_widget_set_usize(GTK_WIDGET(username), 100, 20);
gtk_table_attach(GTK_TABLE(table), username, 1, 2, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -175,7 +174,7 @@
/* Password entry */
password = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(password), "");
+ gtk_entry_set_text(GTK_ENTRY(password), "");
gtk_widget_set_usize(GTK_WIDGET(password), 100, 20);
gtk_table_attach(GTK_TABLE(table), password, 3, 4, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -187,7 +186,7 @@
/* Server entry */
server = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(server), "");
+ gtk_entry_set_text(GTK_ENTRY(server), "");
gtk_widget_set_usize(GTK_WIDGET(server), 100, 20);
gtk_table_attach(GTK_TABLE(table), server, 1, 2, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -199,7 +198,7 @@
/* Path entry */
path = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(path), "");
+ gtk_entry_set_text(GTK_ENTRY(path), "");
gtk_widget_set_usize(GTK_WIDGET(path), 100, 20);
gtk_table_attach(GTK_TABLE(table), path, 3, 4, 1,
2, GTK_EXPAND | GTK_FILL, 0, 1, 1);
===================================================================
RCS file: /cvsroot/corem/core/src/core.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- core.h 2000/11/14 19:38:44 1.6
+++ core.h 2000/11/21 22:33:40 1.7
@@ -1,11 +1,6 @@
#include <stdio.h>
#include <gtk/gtk.h>
-/* core version information */
-#define CORE_MAJOR 0
-#define CORE_MINOR 0
-#define CORE_MICRO 0
-
typedef struct {
gint xsize;
gint ysize;
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- main.c 2000/11/20 10:02:03 1.8
+++ main.c 2000/11/21 22:33:40 1.9
@@ -1,8 +1,10 @@
#include "message.h"
-
#include "core.h"
#include "callbacks.h"
#include "panes.h"
+#include <dirent.h>
+#include <sys/types.h>
+#define PREFIX "/usr"
GtkWidget *message_pane;
ConfigData config;
@@ -15,28 +17,44 @@
GtkWidget *reply;
GtkWidget *reply_all;
GtkWidget *forward;
-
+gchar *theme;
int main(int argc, char **argv)
{
gchar *dir;
+ /* Create $HOME/.core directory */
dir = g_strconcat(getenv("HOME"), "/.core", NULL);
mkdir(dir, 0700);
g_free(dir);
+
+ /* Create $HOME/.core/accounts directory */
dir = g_strconcat(getenv("HOME"), "/.core/accounts", NULL);
mkdir(dir, 0700);
g_free(dir);
+
+ /* Create $HOME/.core/themes directory */
dir = g_strconcat(getenv("HOME"), "/.core/themes", NULL);
mkdir(dir, 0700);
g_free(dir);
+
+ /* Set locale */
gtk_set_locale();
+
+ /* Init */
gtk_init(&argc, &argv);
+
+ /* Create main window */
create_core_main_window();
+
+ /* Here core sleeps until the core_main_quit is called */
gtk_main();
+
+ /* Returns nothing */
return 0;
}
+/* The main window callback */
void create_core_main_window(void)
{
GtkWidget *main_vbox;
@@ -44,9 +62,11 @@
GtkWidget *hpane;
GtkWidget *pane;
config_read();
+
+ set_theme_dir();
+
title =
- g_strdup_printf("Core %d.%d.%d", CORE_MAJOR, CORE_MINOR,
- CORE_MICRO);
+ g_strdup_printf("Core %s", CORE_VERSION);
main_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(main_win), config.xsize,
config.ysize);
@@ -118,15 +138,32 @@
}
}
+int set_theme_dir()
+{
+ DIR *dir;
+ gchar *tmp;
+ tmp = g_strconcat(getenv("HOME"), "/.core/themes/", config.theme, NULL);
+ dir = opendir(tmp);
+ if (dir != NULL) {
+ theme = g_strconcat(getenv("HOME"), "/.core/themes/", config.theme, NULL);
+ return 1;
+ }
+ tmp = g_strconcat(CORE_SHARE, "/themes/", config.theme, NULL);
+ dir = opendir(tmp);
+
+ if (dir != NULL) {
+ theme = g_strconcat(CORE_SHARE, "/themes/", config.theme, NULL);;
+ return 1;
+ }
+
+ return 0;
+}
+
GtkWidget *create_main_toolbar()
{
- gchar *theme;
GdkBitmap *bitmap;
GdkColormap *colormap;
GdkPixmap *pixmap;
- theme =
- g_strconcat(g_getenv("HOME"), "/.core/themes/", config.theme,
- "/", NULL);
toolbar =
gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH);
@@ -140,8 +177,8 @@
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
&bitmap, NULL,
g_strconcat(theme,
- "new.xpm",
- NULL));
+ "new.xpm",
+ NULL));
new = gtk_pixmap_new(pixmap, bitmap);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), "New",
"Send a new message.",
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- panes.c 2000/11/20 22:32:00 1.5
+++ panes.c 2000/11/21 22:33:40 1.6
@@ -10,7 +10,9 @@
GtkWidget *mail_ctree;
GtkWidget *folder_ctree;
extern GtkWidget *main_win;
+extern gchar *theme;
+
GtkWidget *core_create_folder_pane()
{
GtkWidget *scroll;
@@ -22,7 +24,6 @@
GdkPixmap *cpixmap, *opixmap;
GtkStyle *style;
GdkFont *font;
- gchar *theme;
gchar *folder_titles[] = { "Folders", "Msg", "New", NULL };
gchar **text = NULL;
@@ -50,9 +51,6 @@
gdk_font_ref(style->font);
gtk_widget_set_style(folder_ctree, style);
- theme =
- g_strconcat(getenv("HOME"), "/.core/themes/",
- config.theme, "/", NULL);
colormap = gtk_widget_get_colormap(folder_ctree);
cpixmap =
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
@@ -117,11 +115,7 @@
{ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
gint ipriority, iread, iattachment, iscore, ifrom, isubject, idate,
iserver;
- gchar *theme;
gchar **text = NULL;
- theme =
- g_strconcat(getenv("HOME"), "/.core/themes/", config.theme,
- "/", NULL);
if (config.ml_from == 1) {
field_titles[col] = "From";
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- prefs.c 2000/11/20 21:02:13 1.4
+++ prefs.c 2000/11/21 22:33:40 1.5
@@ -6,6 +6,7 @@
extern GtkWidget *folder_ctree;
extern GtkWidget *mail_ctree;
extern GtkWidget *main_win;
+extern gchar *theme;
static void pref_selected(GtkWidget * list, GtkCTreeNode * node);
static void ok_clicked();
static void apply_clicked();
@@ -32,7 +33,6 @@
GtkCTreeNode *top, *item;
GtkWidget *label;
GtkWidget *separator;
- gchar *theme;
GdkBitmap *bitmap;
GdkColormap *colormap;
GdkPixmap *pixmap;
@@ -44,10 +44,6 @@
gchar *title[] = { "Options" };
gchar *node[] = { "Core" };
- theme =
- g_strconcat(getenv("HOME"), "/.core/themes/", config.theme,
- "/", NULL);
-
pref_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(pref_win), 700, 400);
gtk_window_set_title(GTK_WINDOW(pref_win), wintitle);
@@ -116,11 +112,11 @@
logo = gtk_pixmap_new(pixmap, bitmap);
gtk_box_pack_start(GTK_BOX(corevbox), logo, TRUE, TRUE, 0);
- sprintf(buf, "\nCore %d.%d.%d\n\n"
+ sprintf(buf, "\nCore %s\n\n"
"Core is witten by:\n"
"Christopher Rosendahl <sm...@no...>\n"
"Nathan Ingersoll <ningerso@d.umn.edu>\n",
- CORE_MAJOR, CORE_MINOR, CORE_MICRO);
+ CORE_VERSION);
label = gtk_label_new(buf);
gtk_misc_set_alignment(GTK_MISC(label), 0.5, 0);
gtk_box_pack_start(GTK_BOX(corevbox), label, TRUE, TRUE,
@@ -292,8 +288,7 @@
(GTK_ENTRY(entry)));
gtk_font_selection_dialog_set_preview_text
(GTK_FONT_SELECTION_DIALOG(fontsel),
- g_strdup_printf("Core %d.%d.%d", CORE_MAJOR, CORE_MINOR,
- CORE_MICRO));
+ g_strdup_printf("Core %s", CORE_VERSION));
gtk_signal_connect(GTK_OBJECT
(GTK_FONT_SELECTION_DIALOG
(fontsel)->cancel_button), "clicked",
|
|
From: CORE C. L. <cor...@li...> - 2000-11-21 22:45:02
|
Core CVS committal Author : smugg Project : core Module : src Modified Files: Makefile.am Log Message: glib cflags added =================================================================== RCS file: /cvsroot/corem/core/src/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- Makefile.am 2000/11/21 22:33:40 1.2 +++ Makefile.am 2000/11/21 22:45:01 1.3 @@ -1,10 +1,12 @@ MAINTAINERCLEANFILES = Makefile.in CFLAGS = -g -W -Wall -Wno-implicit -GTK_CFLAGS = -I@GTK_CFLAGS@ +GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_LIBS = @GLIB_LIBS@ +GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ DEFS = -DCORE_SHARE=\"$(prefix)/share/core\" -DCORE_VERSION=\"@VERSION@\" -INCLUDES = -I$(top_srcdir) $(GTK_CFLAGS) -I .. +INCLUDES = -I$(top_srcdir) $(GTK_CFLAGS) $(GLIB_CFLAGS)-I .. bin_PROGRAMS = core core_SOURCES = main.c \ @@ -16,4 +18,4 @@ panes.c panes.h \ prefs.c prefs.h \ util.c util.h -core_LDADD = @GTK_LIBS@ +core_LDADD = $(GLIB_LIBS) $(GTK_LIBS) |
|
From: CORE C. L. <cor...@li...> - 2000-11-22 04:58:38
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.h main.c menus.c panes.c
Log Message:
add a themes menu, witch displays a icon, and a theme name, also added a switch_theme witch doesnt work, could you look in to it nathan? cant get the shit to work proper, need to get to bed now =)! have fun =) hehe cya tomorrow, mail me and tell me your online times!
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- callbacks.h 2000/11/21 17:59:01 1.7
+++ callbacks.h 2000/11/22 04:58:37 1.8
@@ -64,3 +64,5 @@
/* Save account */
void save_account(void);
+
+void switch_theme(gchar *theme);
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- main.c 2000/11/21 23:25:47 1.10
+++ main.c 2000/11/22 04:58:37 1.11
@@ -90,8 +90,8 @@
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), mhandle, FALSE, FALSE, 0);
- create_main_toolbar();
thandle = gtk_handle_box_new();
+ create_main_toolbar();
main_menu = create_main_menu();
gtk_container_set_border_width(GTK_CONTAINER(main_menu), 0);
@@ -105,8 +105,6 @@
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), thandle, FALSE, FALSE, 0);
- gtk_container_add(GTK_CONTAINER(thandle), toolbar);
-
hpane = gtk_hpaned_new();
gtk_box_pack_start(GTK_BOX(main_vbox), hpane, TRUE, TRUE, 0);
@@ -141,15 +139,11 @@
{
DIR *dir;
gchar *tmp;
+ tmp = g_strconcat(getenv("HOME"), "/.core/themes/", config.theme, "/", NULL);
- tmp =
- g_strconcat(getenv("HOME"), "/.core/themes/", config.theme,
- NULL);
dir = opendir(tmp);
if (dir != NULL) {
- theme =
- g_strconcat(getenv("HOME"), "/.core/themes/",
- config.theme, "/", NULL);
+ theme = g_strconcat(getenv("HOME"), "/.core/themes/", config.theme, "/", NULL);
return TRUE;
}
tmp = g_strconcat(CORE_SHARE, "/themes/", config.theme, NULL);
@@ -246,8 +240,8 @@
GTK_SIGNAL_FUNC
(create_mail_window_forward), NULL);
gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
-
- return (toolbar);
+ gtk_container_add(GTK_CONTAINER(thandle), toolbar);
+ return FALSE;
}
===================================================================
RCS file: /cvsroot/corem/core/src/menus.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- menus.c 2000/11/14 19:38:44 1.4
+++ menus.c 2000/11/22 04:58:37 1.5
@@ -1,9 +1,14 @@
#include "message.h"
#include "core.h"
+#include "menus.h"
#include "callbacks.h"
#include "prefs.h"
+#include <dirent.h>
+#include <sys/stat.h>
+#include <sys/types.h>
ConfigData config;
+extern GtkWidget *toolbar;
/*static GtkItemFactoryEntry main_menu_items[] = {
{"/File", NULL, NULL, 0, "<Branch>"},
@@ -66,7 +71,7 @@
{
GtkWidget *menu, *file, *filemenu, *edit, *editmenu, *view,
*viewmenu, *help, *helpmenu;
- GtkWidget *quit, *accounts, *preferences, *toolbar, *toolbarmenu,
+ GtkWidget *quit, *accounts, *preferences, *themes, *themesmenu, *toolbar, *toolbarmenu,
*show, *text, *icons, *both, *about, *message_list,
*message_listmenu, *mpriority, *mread, *mattachment, *mscore,
*mfrom, *msubject, *mdate, *mserver;
@@ -115,6 +120,14 @@
viewmenu = gtk_menu_new();
gtk_menu_item_set_submenu(GTK_MENU_ITEM(view), viewmenu);
+ themes = gtk_menu_item_new_with_label("Themes");
+ gtk_menu_append(GTK_MENU(viewmenu), themes);
+
+ themesmenu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(themes), themesmenu);
+
+ create_themes_menu(themesmenu);
+
toolbar = gtk_menu_item_new_with_label("Toolbar");
gtk_menu_append(GTK_MENU(viewmenu), toolbar);
@@ -263,4 +276,70 @@
gtk_menu_append(GTK_MENU(helpmenu), about);
return (menu);
+}
+
+void create_themes_menu(GtkWidget *menu)
+{
+ gint i;
+ gchar *dirs[] = {g_strconcat(getenv("HOME"), "/.core/themes", NULL),
+ g_strconcat(CORE_SHARE, "/themes", NULL)};
+
+ for (i = 0 ; i < 2 ; i++) {
+ gchar *dirname = dirs[i];
+ DIR *dir;
+ struct dirent *dent;
+ struct stat stats;
+ dir = opendir(dirname);
+ if (dir) {
+ GtkWidget *menu_item;
+ GtkWidget *label;
+ GtkWidget *hbox;
+ GdkBitmap *bitmap;
+ GdkColormap *colormap;
+ GdkPixmap *pixmap;
+ GtkWidget *icon;
+ while ((dent = readdir(dir))) {
+ gchar *temp = g_strconcat(dirname, "/", dent->d_name, NULL);
+ stat(temp, &stats);
+ if (!S_ISDIR(stats.st_mode)) {
+ g_free(temp);
+ continue;
+ }
+ if (!strcmp(dent->d_name, ".")) {
+ continue;
+ g_free(temp);
+ }
+ if (!strcmp(dent->d_name, "..")) {
+ g_free(temp);
+ continue;
+ }
+ menu_item = gtk_menu_item_new();
+ label = gtk_label_new(dent->d_name);
+ colormap = gtk_widget_get_colormap(menu_item);
+ pixmap = gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
+ &bitmap, NULL,
+ g_strconcat(dirname, "/",
+ dent->d_name, "/new.xpm", NULL));
+ icon = gtk_pixmap_new(pixmap, bitmap);
+
+ hbox = gtk_hbox_new(0,8);
+ gtk_box_pack_start(GTK_BOX(hbox), icon, FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(menu_item), hbox);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", GTK_SIGNAL_FUNC(switch_theme), g_strdup(dent->d_name));
+ gtk_menu_append(GTK_MENU(menu), menu_item);
+ g_free(temp);
+ }
+ }
+ }
+ return;
+}
+
+void switch_theme(gchar *theme)
+{
+ config.theme = g_strdup(theme);
+ set_theme_dir();
+ gtk_widget_destroy(toolbar);
+ create_main_toolbar();
+ return;
}
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- panes.c 2000/11/21 22:33:40 1.6
+++ panes.c 2000/11/22 04:58:37 1.7
@@ -172,35 +172,29 @@
if (config.ml_from == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), ifrom,
- 250);
+ 237);
gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
ifrom, FALSE);
}
if (config.ml_subject == 1) {
- gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
- isubject, TRUE);
+ gtk_clist_set_column_width(GTK_CLIST(mail_ctree), isubject,
+ 175);
}
if (config.ml_date == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), idate,
- 100);
- gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
- idate, FALSE);
+ 150);
}
if (config.ml_server == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), iserver,
40);
- gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
- iserver, FALSE);
}
if (config.ml_priority) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree),
ipriority, 40);
- gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
- ipriority, FALSE);
}
if (config.ml_read == 1) {
|
|
From: CORE C. L. <cor...@li...> - 2000-11-22 09:02:03
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c callbacks.h core.h main.c menus.c panes.c
Log Message:
still havent fixed the switch_theme issue, added a new bug for you to fix =) hehe, check the create_account_window() in callbacks.c i cnt se what i have done wrong =( btw i couldnt sleep so i got up just as soon as my mom left to work, now im gonna lay down next to my gf and try to get some sleep cya
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -3 -r1.21 -r1.22
--- callbacks.c 2000/11/21 23:25:47 1.21
+++ callbacks.c 2000/11/22 09:02:01 1.22
@@ -1,5 +1,4 @@
#include "message.h"
-
#include "core.h"
#include "callbacks.h"
#include "panes.h"
@@ -10,22 +9,24 @@
extern ConfigData config;
extern gchar *title;
-GtkWidget *clist;
+GtkWidget *ctree;
GtkWidget *folder_name, *full_name, *email_address, *type, *username,
*password, *server, *path;
GtkWidget *accounts_win_new;
-
+extern GtkWidget *toolbar;
/* The main account window */
void create_account_window()
{
+ Account *mbox;
GtkWidget *accounts_win;
GtkWidget *main_vbox, *hbox;
+ GtkCTreeNode *item;
GtkWidget *hbutton_box;
GtkWidget *button_new, *button_edit, *button_remove, *button_close;
+ gchar **text = NULL;
gchar *titles[] = { "Folder Name", "Full Name", "E-mail Address",
- "Mailbox Path"
- };
+ "Mailbox Path", NULL };
/* Window title */
title = g_strdup_printf("Accounts");
@@ -41,9 +42,29 @@
gtk_container_add(GTK_CONTAINER(accounts_win), main_vbox);
/* The clist for browsing accounts */
- clist = gtk_clist_new_with_titles(4, titles);
- gtk_widget_set_usize(GTK_WIDGET(clist), 600, 180);
- gtk_container_add(GTK_CONTAINER(main_vbox), clist);
+ ctree = gtk_ctree_new_with_titles(4, 0, titles);
+ gtk_container_add(GTK_CONTAINER(main_vbox), ctree);
+ while ((mbox = get_next_folder())) {
+ if (text[0])
+ g_free(text[0]);
+ if (text[1])
+ g_free(text[1]);
+ if (text[2])
+ g_free(text[2]);
+ if (text[3])
+ g_free(text[3]);
+
+ text = (char **) g_malloc(4 * sizeof(char *));
+ text[0] = account_get_name(mbox);
+ text[1] = g_strdup("Test 1");
+ text[2] = g_strdup("Test 2");
+ text[3] = g_strdup("Test 3");
+
+ item = gtk_ctree_insert_node(GTK_CTREE(ctree),
+ NULL, NULL, text, 0, NULL, NULL, NULL, NULL, FALSE, FALSE);
+ gtk_ctree_node_set_row_data_full(GTK_CTREE(ctree), item, mbox,
+ (GtkDestroyNotify)destroy_account);
+ }
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 0);
@@ -254,6 +275,16 @@
gtk_widget_destroy(accounts_win_new);
return;
+}
+
+void switch_theme(gchar *theme)
+{
+ g_free(config.theme);
+ config.theme = g_strdup(theme);
+ set_theme_dir();
+ gtk_widget_destroy(toolbar);
+ create_main_toolbar();
+ return;
}
/* This creates the preference window with the correct title About */
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- callbacks.h 2000/11/22 04:58:37 1.8
+++ callbacks.h 2000/11/22 09:02:01 1.9
@@ -65,4 +65,5 @@
/* Save account */
void save_account(void);
+/* Function for switching the where *theme is the directory name of the theme */
void switch_theme(gchar *theme);
===================================================================
RCS file: /cvsroot/corem/core/src/core.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- core.h 2000/11/21 22:33:40 1.7
+++ core.h 2000/11/22 09:02:01 1.8
@@ -1,5 +1,8 @@
-#include <stdio.h>
+#include <dirent.h>
#include <gtk/gtk.h>
+#include <stdio.h>
+#include <sys/stat.h>
+#include <sys/types.h>
typedef struct {
gint xsize;
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -3 -r1.11 -r1.12
--- main.c 2000/11/22 04:58:37 1.11
+++ main.c 2000/11/22 09:02:01 1.12
@@ -12,6 +12,7 @@
GtkWidget *main_win;
GtkWidget *mhandle;
GtkWidget *thandle;
+GtkWidget *hpane;
GtkWidget *toolbar;
GtkWidget *new;
GtkWidget *reply;
@@ -59,7 +60,6 @@
{
GtkWidget *main_vbox;
GtkWidget *main_menu;
- GtkWidget *hpane;
GtkWidget *pane;
config_read();
@@ -240,7 +240,11 @@
GTK_SIGNAL_FUNC
(create_mail_window_forward), NULL);
gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
+
+ gtk_widget_show_all(toolbar);
gtk_container_add(GTK_CONTAINER(thandle), toolbar);
+ gtk_widget_queue_resize(GTK_WIDGET(thandle));
+
return FALSE;
}
===================================================================
RCS file: /cvsroot/corem/core/src/menus.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- menus.c 2000/11/22 04:58:37 1.5
+++ menus.c 2000/11/22 09:02:01 1.6
@@ -3,43 +3,10 @@
#include "menus.h"
#include "callbacks.h"
#include "prefs.h"
-#include <dirent.h>
-#include <sys/stat.h>
-#include <sys/types.h>
ConfigData config;
extern GtkWidget *toolbar;
-/*static GtkItemFactoryEntry main_menu_items[] = {
- {"/File", NULL, NULL, 0, "<Branch>"},
- {"/File/Quit", NULL, core_main_quit, 0, NULL},
-
- {"/Edit", NULL, NULL, 0, "<Branch>"},
- {"/Edit/Options...", NULL, create_preferences_window, 0, NULL},
-
- {"/View", NULL, NULL, 0, "<Branch>"},
- {"/View/Messagelist", NULL, NULL, 0, "<Branch>"},
- {"/View/Messagelist/Display", NULL, NULL, 0, "<Branch>"},
- {"/View/Messagelist/Display/Priority", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Messagelist/Display/Read", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Messagelist/Display/Attachment", NULL, NULL, 0,
- "<CheckItem>"},
- {"/View/Messagelist/Display/Score", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Messagelist/Display/From", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Messagelist/Display/Subject", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Messagelist/Display/Date", NULL, NULL, 0, "<CheckItem>"},
- {"/View/Toolbar/sep", NULL, NULL, 0, "<Separator>"},
- {"/View/Toolbar/Show", NULL, toolbar_change_layout, 0, "<ToggleItem>"},
- {"/View/Toolbar/As Text", NULL, NULL, 0, "<RadioItem>"},
- {"/View/Toolbar/As Icons", NULL, NULL, 0, "<RadioItem>"},
- {"/View/Toolbar/As Both", NULL, NULL, 0, "<RadioItem>"},
- {"/View/Toolbar/sep", NULL, NULL, 0, "<Separator>"},
- {"/View/Toolbar/Theme", NULL, NULL, 0, "<Branch>"},
-
- {"/Help", NULL, NULL, 0, "<LastBranch>"},
- {"/Help/About", NULL, create_core_about_window, 0, NULL},
-};*/
-
static GtkItemFactoryEntry mail_menu_items[] = {
{"/File", NULL, NULL, 0, "<Branch>"},
{"/File/Close", NULL, NULL, 0, NULL},
@@ -332,14 +299,5 @@
}
}
}
- return;
-}
-
-void switch_theme(gchar *theme)
-{
- config.theme = g_strdup(theme);
- set_theme_dir();
- gtk_widget_destroy(toolbar);
- create_main_toolbar();
return;
}
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- panes.c 2000/11/22 04:58:37 1.7
+++ panes.c 2000/11/22 09:02:01 1.8
@@ -1,5 +1,3 @@
-#include <gtk/gtk.h>
-
#include "message.h"
#include "core.h"
#include "panes.h"
@@ -10,9 +8,9 @@
GtkWidget *mail_ctree;
GtkWidget *folder_ctree;
extern GtkWidget *main_win;
+extern GtkWidget *hpane;
extern gchar *theme;
-
GtkWidget *core_create_folder_pane()
{
GtkWidget *scroll;
@@ -45,7 +43,7 @@
}
font = gdk_font_load(config.default_font);
- style = gtk_style_copy(gtk_widget_get_style(main_win));
+ style = gtk_style_copy(gtk_widget_get_style(hpane));
gdk_font_unref(style->font);
style->font = font;
gdk_font_ref(style->font);
@@ -110,6 +108,9 @@
GdkColormap *colormap;
GdkPixmap *pixmap;
GdkBitmap *bitmap;
+ GtkStyle *style;
+ GdkFont *font;
+
gint col = 0;
gchar *field_titles[8] =
{ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
@@ -166,9 +167,16 @@
}
- mail_ctree = gtk_ctree_new_with_titles(col, 0, field_titles);
+ mail_ctree = gtk_ctree_new_with_titles(col, 1, field_titles);
gtk_signal_connect(GTK_OBJECT(mail_ctree), "tree_select_row",
GTK_SIGNAL_FUNC(mail_selected), NULL);
+
+ font = gdk_font_load(config.default_font);
+ style = gtk_style_copy(gtk_widget_get_style(hpane));
+ gdk_font_unref(style->font);
+ style->font = font;
+ gdk_font_ref(style->font);
+ gtk_widget_set_style(mail_ctree, style);
if (config.ml_from == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), ifrom,
|
|
From: CORE C. L. <cor...@li...> - 2000-11-22 19:12:10
|
Core CVS committal Author : smugg Project : core Module : src Added Files: menus.h Log Message: added a menus.h |
|
From: CORE C. L. <cor...@li...> - 2000-11-23 01:08:39
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
core.h main.c menus.c panes.c panes.h prefs.c
Log Message:
added some menuitems, where you can change the ctree line style....
===================================================================
RCS file: /cvsroot/corem/core/src/core.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- core.h 2000/11/22 09:02:01 1.8
+++ core.h 2000/11/23 01:08:37 1.9
@@ -20,4 +20,6 @@
gboolean ml_subject;
gboolean ml_date;
gboolean ml_server;
+ gboolean ml_linestyle;
+ gboolean fl_linestyle;
} ConfigData;
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- main.c 2000/11/22 23:45:00 1.13
+++ main.c 2000/11/23 01:08:37 1.14
@@ -93,6 +93,18 @@
thandle = gtk_handle_box_new();
create_main_toolbar();
+
+
+ hpane = gtk_hpaned_new();
+
+ {
+ pane = core_create_folder_pane();
+ gtk_paned_pack1(GTK_PANED(hpane), pane, TRUE, TRUE);
+
+ pane = core_create_mlist_pane();
+ gtk_paned_pack2(GTK_PANED(hpane), pane, TRUE, TRUE);
+ }
+
main_menu = create_main_menu();
gtk_container_set_border_width(GTK_CONTAINER(main_menu), 0);
gtk_container_add(GTK_CONTAINER(mhandle), main_menu);
@@ -105,17 +117,7 @@
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), thandle, FALSE, FALSE, 0);
- hpane = gtk_hpaned_new();
gtk_box_pack_start(GTK_BOX(main_vbox), hpane, TRUE, TRUE, 0);
-
- {
- pane = core_create_folder_pane();
- gtk_paned_pack1(GTK_PANED(hpane), pane, TRUE, TRUE);
-
- pane = core_create_mlist_pane();
- gtk_paned_pack2(GTK_PANED(hpane), pane, TRUE, TRUE);
- }
-
gtk_widget_show_all(main_win);
if (config.tb_show == 0) {
===================================================================
RCS file: /cvsroot/corem/core/src/menus.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- menus.c 2000/11/22 23:45:00 1.7
+++ menus.c 2000/11/23 01:08:37 1.8
@@ -2,6 +2,7 @@
#include "core.h"
#include "menus.h"
#include "callbacks.h"
+#include "panes.h"
#include "prefs.h"
ConfigData config;
@@ -40,9 +41,14 @@
*viewmenu, *help, *helpmenu;
GtkWidget *quit, *accounts, *preferences, *themes, *themesmenu,
*toolbar, *toolbarmenu, *show, *text, *icons, *both, *about,
- *message_list, *message_listmenu, *mpriority, *mread,
- *mattachment, *mscore, *mfrom, *msubject, *mdate, *mserver;
+ *message_list, *message_listmenu, *mline_style, *mline_stylemenu,
+ *mline_none, *mline_solid, *mline_dotted, *mline_tabbed, *folder_list,
+ *folder_listmenu, *fline_style, *fline_stylemenu, *fline_none,
+ *fline_solid, *fline_dotted, *fline_tabbed, *mpriority,
+ *mread, *mattachment, *mscore, *mfrom, *msubject, *mdate, *mserver;
GSList *radio_buttons = NULL;
+ GSList *mline_radio = NULL;
+ GSList *fline_radio = NULL;
menu = gtk_menu_bar_new();
/********************************
* File menu *
@@ -166,6 +172,52 @@
gtk_menu_item_set_submenu(GTK_MENU_ITEM(message_list),
message_listmenu);
+ mline_style = gtk_menu_item_new_with_label("Line Style");
+ gtk_menu_append(GTK_MENU(message_listmenu), mline_style);
+
+ mline_stylemenu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(mline_style), mline_stylemenu);
+
+ mline_none = gtk_radio_menu_item_new_with_label(mline_radio, "None");
+ mline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mline_none));
+ gtk_signal_connect_object(GTK_OBJECT(mline_none), "toggled",
+ GTK_SIGNAL_FUNC(mail_ctree_change_line_style),
+ GINT_TO_POINTER(0));
+ gtk_menu_append(GTK_MENU(mline_stylemenu), mline_none);
+
+ mline_solid = gtk_radio_menu_item_new_with_label(mline_radio, "Solid");
+ mline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mline_solid));
+ gtk_signal_connect_object(GTK_OBJECT(mline_solid), "toggled",
+ GTK_SIGNAL_FUNC(mail_ctree_change_line_style),
+ GINT_TO_POINTER(1));
+ gtk_menu_append(GTK_MENU(mline_stylemenu), mline_solid);
+
+ mline_dotted = gtk_radio_menu_item_new_with_label(mline_radio, "Dotted");
+ mline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mline_dotted));
+ gtk_signal_connect_object(GTK_OBJECT(mline_none), "toggled",
+ GTK_SIGNAL_FUNC(mail_ctree_change_line_style),
+ GINT_TO_POINTER(2));
+ gtk_menu_append(GTK_MENU(mline_stylemenu), mline_dotted);
+
+ mline_tabbed = gtk_radio_menu_item_new_with_label(mline_radio, "Tabbed");
+ mline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mline_tabbed));
+ gtk_signal_connect_object(GTK_OBJECT(mline_tabbed), "toggled",
+ GTK_SIGNAL_FUNC(mail_ctree_change_line_style),
+ GINT_TO_POINTER(3));
+ gtk_menu_append(GTK_MENU(mline_stylemenu), mline_tabbed);
+
+ if (config.ml_linestyle == 0)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mline_none), TRUE);
+
+ if (config.ml_linestyle == 1)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mline_solid), TRUE);
+
+ if (config.ml_linestyle == 2)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mline_dotted), TRUE);
+
+ if (config.ml_linestyle == 3)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mline_tabbed), TRUE);
+
mpriority = gtk_check_menu_item_new_with_label("Show Priority");
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mpriority),
FALSE);
@@ -226,6 +278,59 @@
if (config.ml_server == 1)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mserver), TRUE);
+
+ folder_list = gtk_menu_item_new_with_label("Folder List");
+ gtk_menu_append(GTK_MENU(viewmenu), folder_list);
+
+ folder_listmenu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(folder_list),
+ folder_listmenu);
+
+ fline_style = gtk_menu_item_new_with_label("Line Style");
+ gtk_menu_append(GTK_MENU(folder_listmenu), fline_style);
+
+ fline_stylemenu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(fline_style), fline_stylemenu);
+
+ fline_none = gtk_radio_menu_item_new_with_label(fline_radio, "None");
+ fline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(fline_none));
+ gtk_signal_connect_object(GTK_OBJECT(fline_none), "toggled",
+ GTK_SIGNAL_FUNC(folder_ctree_change_line_style),
+ GINT_TO_POINTER(0));
+ gtk_menu_append(GTK_MENU(fline_stylemenu), fline_none);
+
+ fline_solid = gtk_radio_menu_item_new_with_label(fline_radio, "Solid");
+ fline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(fline_solid));
+ gtk_signal_connect_object(GTK_OBJECT(fline_solid), "toggled",
+ GTK_SIGNAL_FUNC(folder_ctree_change_line_style),
+ GINT_TO_POINTER(1));
+ gtk_menu_append(GTK_MENU(fline_stylemenu), fline_solid);
+
+ fline_dotted = gtk_radio_menu_item_new_with_label(fline_radio, "Dotted");
+ fline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(fline_dotted));
+ gtk_signal_connect_object(GTK_OBJECT(fline_none), "toggled",
+ GTK_SIGNAL_FUNC(folder_ctree_change_line_style),
+ GINT_TO_POINTER(2));
+ gtk_menu_append(GTK_MENU(fline_stylemenu), fline_dotted);
+
+ fline_tabbed = gtk_radio_menu_item_new_with_label(fline_radio, "Tabbed");
+ fline_radio = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(fline_tabbed));
+ gtk_signal_connect_object(GTK_OBJECT(fline_tabbed), "toggled",
+ GTK_SIGNAL_FUNC(folder_ctree_change_line_style),
+ GINT_TO_POINTER(3));
+ gtk_menu_append(GTK_MENU(fline_stylemenu), fline_tabbed);
+
+ if (config.fl_linestyle == 0)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(fline_none), TRUE);
+
+ if (config.fl_linestyle == 1)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(fline_solid), TRUE);
+
+ if (config.fl_linestyle == 2)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(fline_dotted), TRUE);
+
+ if (config.fl_linestyle == 3)
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(fline_tabbed), TRUE);
/********************************
* Help menu *
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- panes.c 2000/11/22 23:45:00 1.9
+++ panes.c 2000/11/23 01:08:37 1.10
@@ -96,7 +96,17 @@
gtk_clist_set_column_width(GTK_CLIST(folder_ctree), 0, 100);
gtk_widget_set_usize(scroll, 12, 50);
+ gtk_widget_show_all(folder_ctree);
+ if (config.ml_linestyle == 0)
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_NONE);
+ if (config.ml_linestyle == 1)
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_SOLID);
+ if (config.ml_linestyle == 2)
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_DOTTED);
+ if (config.ml_linestyle == 3)
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_TABBED);
+
return (scroll);
}
@@ -268,7 +278,15 @@
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_container_add(GTK_CONTAINER(scroll), mail_ctree);
-
+ gtk_widget_show_all(mail_ctree);
+ if (config.ml_linestyle == 0)
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_NONE);
+ if (config.ml_linestyle == 1)
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_SOLID);
+ if (config.ml_linestyle == 2)
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_DOTTED);
+ if (config.ml_linestyle == 3)
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_TABBED);
return (scroll);
}
@@ -474,4 +492,52 @@
gtk_box_pack_start(GTK_BOX(vbox), scroll, TRUE, TRUE, 0);
return (vbox);
+}
+
+
+void folder_ctree_change_line_style(gint type)
+{
+ if (type == 0) {
+ config.fl_linestyle = 0;
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_NONE);
+ }
+
+ if (type == 1) {
+ config.fl_linestyle = 1;
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_SOLID);
+ }
+
+ if (type == 2) {
+ config.fl_linestyle = 2;
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_DOTTED);
+ }
+
+ if (type == 3) {
+ config.fl_linestyle = 3;
+ gtk_ctree_set_line_style(GTK_CTREE(folder_ctree), GTK_CTREE_LINES_TABBED);
+ }
+}
+
+
+void mail_ctree_change_line_style(gint type)
+{
+ if (type == 0) {
+ config.ml_linestyle = 0;
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_NONE);
+ }
+
+ if (type == 1) {
+ config.ml_linestyle = 1;
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_SOLID);
+ }
+
+ if (type == 2) {
+ config.ml_linestyle = 2;
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_DOTTED);
+ }
+
+ if (type == 3) {
+ config.ml_linestyle = 3;
+ gtk_ctree_set_line_style(GTK_CTREE(mail_ctree), GTK_CTREE_LINES_TABBED);
+ }
}
===================================================================
RCS file: /cvsroot/corem/core/src/panes.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- panes.h 2000/11/14 19:38:44 1.3
+++ panes.h 2000/11/23 01:08:37 1.4
@@ -1,6 +1,6 @@
-
GtkWidget *core_create_folder_pane(void);
GtkWidget *core_create_mlist_pane(void);
GtkWidget *core_create_message_pane(Message * message, MessageFlags mode);
-
GtkWidget *core_create_fonts_page(GtkWidget * window);
+void folder_ctree_change_line_style(gint type);
+void mail_ctree_change_line_style(gint type);
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- prefs.c 2000/11/21 22:33:40 1.5
+++ prefs.c 2000/11/23 01:08:37 1.6
@@ -352,6 +352,8 @@
config.ml_subject = 1;
config.ml_date = 1;
config.ml_server = 0;
+ config.ml_linestyle = 2;
+ config.fl_linestyle = 2;
config.theme = g_strdup("default");
home = getenv("HOME");
rc = g_strconcat(home, "/.corerc", NULL);
@@ -391,6 +393,10 @@
config.ml_date = atoi(line + 8);
} else if (g_strncasecmp(line, "ml_server=", 10) == 0) {
config.ml_server = atoi(line + 10);
+ } else if (g_strncasecmp(line, "ml_linestyle=", 13) == 0) {
+ config.ml_linestyle = atoi(line + 13);
+ } else if (g_strncasecmp(line, "fl_linestyle=", 13) == 0) {
+ config.fl_linestyle = atoi(line + 13);
} else if (g_strncasecmp(line, "theme=", 6) == 0) {
config.theme = g_strdup(line + 6);
}
@@ -432,6 +438,8 @@
fprintf(config_file, "ml_subject=%d\n", config.ml_subject);
fprintf(config_file, "ml_date=%d\n", config.ml_date);
fprintf(config_file, "ml_server=%d\n", config.ml_server);
+ fprintf(config_file, "ml_linestyle=%d\n", config.ml_linestyle);
+ fprintf(config_file, "fl_linestyle=%d\n", config.fl_linestyle);
fprintf(config_file, "theme=%s\n", config.theme);
g_free(rc);
return;
|
|
From: CORE C. L. <cor...@li...> - 2000-11-23 03:28:14
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c
Log Message:
checked your changes... trye type improve some but it failed..... try look what im doing wrong =) gotta go to bed
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -3 -r1.24 -r1.25
--- callbacks.c 2000/11/23 02:23:03 1.24
+++ callbacks.c 2000/11/23 03:28:13 1.25
@@ -8,6 +8,7 @@
extern GtkWidget *main_win;
extern ConfigData config;
extern gchar *title;
+extern gchar *theme;
GtkWidget *ctree;
GtkWidget *folder_name, *full_name, *email_address, *type, *username,
@@ -330,6 +331,9 @@
int folder_selected(GtkWidget * list, GList * node, gint col,
gpointer data)
{
+ GdkBitmap *bitmap;
+ GdkColormap *colormap;
+ GdkPixmap *pixmap;
Message *message = NULL;
Account *mbox = NULL;
gchar *text[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
@@ -416,25 +420,7 @@
}
if (config.ml_read == 1) {
- found = find_header(head, "Status:");
- if (found) {
- text[col] = header_get_value(found);
- if (strchr(text[col], 'R')) {
- free(text[col]);
- text[col] = g_strdup("Read");
- }
- else if (strchr(text[col], 'O')) {
- free(text[col]);
- text[col] = g_strdup("Unread");
- }
- else {
- free(text[col]);
- text[col] = g_strdup("New");
- }
- }
- else
- text[col] = g_strdup("New");
- col++;
+ text[col] = g_strdup("");
}
temp = header_get_value(find_header(head, "References:"));
@@ -454,6 +440,21 @@
gtk_ctree_insert_node(GTK_CTREE(mail_ctree), top,
NULL, text, 0, NULL, NULL, NULL,
NULL, FALSE, TRUE);
+
+ if (config.ml_read == 1) {
+ found = find_header(head, "Status:");
+ if (found) {
+ text[col] = header_get_value(found);
+ if (strchr(text[col], 'O')) {
+ g_free(text[col]);
+ colormap = gtk_widget_get_colormap(mail_ctree);
+ pixmap = gdk_pixmap_colormap_create_from_xpm(NULL, colormap, &bitmap, NULL, g_strconcat(theme, "read.xpm", NULL));
+ gtk_ctree_node_set_pixmap(GTK_CTREE(mail_ctree), item, col, pixmap, bitmap);
+ gdk_bitmap_unref(bitmap);
+ gdk_pixmap_unref(pixmap);
+ }
+ }
+ }
temp = header_get_value(find_header(head, "Message-Id:"));
if (temp)
|
|
From: CORE C. L. <cor...@li...> - 2000-11-24 01:56:10
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c
Log Message:
really havent changed anything just commited so it wont freak when i update next time
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -3 -r1.26 -r1.27
--- callbacks.c 2000/11/23 09:32:12 1.26
+++ callbacks.c 2000/11/24 01:56:10 1.27
@@ -562,4 +562,5 @@
return;
signum = 0;
+
}
|
|
From: CORE C. L. <cor...@li...> - 2000-11-25 23:54:29
|
Core CVS committal Author : smugg Project : core Module : src Added Files: Makefile.am Log Message: fixed so make install is workable... next step is to make core do a accountsfile by itself if no accountsfile exists |
|
From: CORE C. L. <cor...@li...> - 2000-11-25 23:54:55
|
Core CVS committal Author : smugg Project : core Module : src Modified Files: Makefile.am Log Message: fixed so make install is workable... next step is to make core do a accountsfile by itself if no accountsfile exists =================================================================== RCS file: /cvsroot/corem/core/src/Makefile.am,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- Makefile.am 2000/11/21 23:25:47 1.4 +++ Makefile.am 2000/11/25 23:54:24 1.5 @@ -1,5 +1,7 @@ MAINTAINERCLEANFILES = Makefile.in +SUBDIRS = pixmaps + CFLAGS = -g -W -Wall -Wno-implicit GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ |
|
From: CORE C. L. <cor...@li...> - 2000-11-26 00:48:11
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c
Log Message:
no change
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- callbacks.c 2000/11/25 19:11:52 1.28
+++ callbacks.c 2000/11/26 00:48:11 1.29
@@ -534,11 +534,10 @@
/* Function for checking folders for new mail */
void check_for_new_mail(int signum)
{
- int i;
- char *temp;
+ gint i;
+ gchar *temp;
Account *mbox;
GtkCTreeNode *node;
-
for (i = 1, node = gtk_ctree_node_nth(GTK_CTREE(folder_ctree), i); node;
i++, node = gtk_ctree_node_nth(GTK_CTREE(folder_ctree), i)) {
mbox = gtk_ctree_node_get_row_data(GTK_CTREE(folder_ctree), node);
@@ -551,11 +550,11 @@
}
asprintf(&temp, "%d", account_get_num_messages(mbox));
gtk_ctree_node_set_text(GTK_CTREE(folder_ctree), node, 1, temp);
- free(temp);
+ g_free(temp);
asprintf(&temp, "%d", account_get_num_new_messages(mbox));
gtk_ctree_node_set_text(GTK_CTREE(folder_ctree), node, 2, temp);
- free(temp);
+ g_free(temp);
}
signal(SIGALRM, check_for_new_mail);
|
|
From: CORE C. L. <cor...@li...> - 2000-11-26 01:52:34
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
Makefile.am prefs.c
Log Message:
reorganized some in the repository..... you should remove your $HOME/.corerc for this update to work, now make install works perfectly
===================================================================
RCS file: /cvsroot/corem/core/src/Makefile.am,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- Makefile.am 2000/11/25 23:54:24 1.5
+++ Makefile.am 2000/11/26 01:52:04 1.6
@@ -1,7 +1,5 @@
MAINTAINERCLEANFILES = Makefile.in
-SUBDIRS = pixmaps
-
CFLAGS = -g -W -Wall -Wno-implicit
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- prefs.c 2000/11/23 01:08:37 1.6
+++ prefs.c 2000/11/26 01:52:04 1.7
@@ -354,7 +354,7 @@
config.ml_server = 0;
config.ml_linestyle = 2;
config.fl_linestyle = 2;
- config.theme = g_strdup("default");
+ config.theme = g_strdup("Default");
home = getenv("HOME");
rc = g_strconcat(home, "/.corerc", NULL);
|
|
From: CORE C. L. <cor...@li...> - 2000-11-26 01:52:04
|
Core CVS committal Author : smugg Project : core Module : src Removed Files: Makefile.am attachment.xpm folder_closed_new.xpm folder_closed_normal.xpm folder_open_new.xpm folder_open_normal.xpm forward.xpm icon.xpm load.xpm logo.xpm new.xpm read.xpm reply-all.xpm reply.xpm send-recieve.xpm trash.xpm Log Message: reorganized some in the repository..... you should remove your $HOME/.corerc for this update to work, now make install works perfectly |
|
From: CORE C. L. <cor...@li...> - 2000-11-26 11:39:18
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c callbacks.h core.h panes.c prefs.c
Log Message:
added some colors to the error msg in the console, made new messages apear with a diffrent font in the mail_ctree, fixed the account listing in accounts_window look nice =), created a create_error_window() wich is used for creating warning windows..... ask in the core-devel list if you want to know more about it.... cant remember anything more =) here goes, im to tired to write what ive dont after your update.... but its - all you did
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -3 -r1.29 -r1.30
--- callbacks.c 2000/11/26 00:48:11 1.29
+++ callbacks.c 2000/11/26 11:39:17 1.30
@@ -168,27 +168,81 @@
void save_account()
{
- Account *acct;
+ Account *acct;
+ gchar *tmp_folder_name, *tmp_full_name, *tmp_email_address,
+ *tmp_username, *tmp_password, *tmp_server, *tmp_path;
+
+
+ tmp_folder_name = gtk_entry_get_text(GTK_ENTRY(folder_name));
+ tmp_full_name = gtk_entry_get_text(GTK_ENTRY(full_name));
+ tmp_email_address = gtk_entry_get_text(GTK_ENTRY(email_address));
+ tmp_username = gtk_entry_get_text(GTK_ENTRY(username));
+ tmp_password = gtk_entry_get_text(GTK_ENTRY(password));
+ tmp_server = gtk_entry_get_text(GTK_ENTRY(server));
+ tmp_path = gtk_entry_get_text(GTK_ENTRY(path));
+ create_error_window(g_strdup("ERROR"),
+ g_strdup
+ ("Make sure you have filled in everything"),
+ g_strdup("OK"));
+ if (g_strdup(tmp_folder_name) == NULL /* &&
+ tmp_full_name == NULL &&
+ tmp_email_address == NULL &&
+ tmp_username == NULL &&
+ tmp_password == NULL &&
+ tmp_server == NULL &&
+ tmp_path == NULL */ ) {
+ create_error_window(g_strdup("ERROR"),
+ g_strdup
+ ("Make sure you have filled in everything"),
+ g_strdup("OK"));
+ return;
+ }
+ acct = new_account();
+
+ account_set_name(acct, tmp_folder_name);
+ account_set_fullname(acct, tmp_full_name);
+ account_set_address(acct, tmp_email_address);
+ /*acct->type = gtk_entry_get_text(GTK_ENTRY(type)); */
+ account_set_username(acct, tmp_username);
+ account_set_password(acct, tmp_password);
+ account_set_server(acct, tmp_server);
+ account_set_path(acct, tmp_path);
- acct = new_account();
+ account_write(acct);
- account_set_name(acct, gtk_entry_get_text(GTK_ENTRY(folder_name)));
- account_set_fullname(acct,
- gtk_entry_get_text(GTK_ENTRY(full_name)));
- account_set_address(acct,
- gtk_entry_get_text(GTK_ENTRY(email_address)));
- /*acct->type = gtk_entry_get_text(GTK_ENTRY(type)); */
- account_set_username(acct,
- gtk_entry_get_text(GTK_ENTRY(username)));
- account_set_password(acct,
- gtk_entry_get_text(GTK_ENTRY(password)));
- account_set_server(acct, gtk_entry_get_text(GTK_ENTRY(server)));
- account_set_path(acct, gtk_entry_get_text(GTK_ENTRY(path)));
+ gtk_widget_destroy(accounts_win_new);
+ return;
+}
- account_write(acct);
+void create_error_window(gchar * title, gchar * text, gchar * button_text)
+{
+ GtkWidget *window;
+ GtkWidget *main_vbox;
+ GtkWidget *label;
+ GtkWidget *buttonshbox, *button;
+
+ window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_widget_set_usize(GTK_WIDGET(window), 200, 45);
+ gtk_window_set_title(GTK_WINDOW(window), title);
+ gtk_signal_connect(GTK_OBJECT(window), "delete_event",
+ gtk_widget_destroy, GTK_OBJECT(window));
+ gtk_signal_connect(GTK_OBJECT(window), "destroy",
+ gtk_widget_destroy, GTK_OBJECT(window));
+
+ main_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(window), main_vbox);
+
+ label = gtk_label_new(text);
+ gtk_box_pack_start(GTK_BOX(main_vbox), label, FALSE, FALSE, 0);
+
+ buttonshbox = gtk_hbutton_box_new();
+ gtk_box_pack_start(GTK_BOX(main_vbox), buttonshbox, FALSE, FALSE,
+ 0);
- gtk_widget_destroy(accounts_win_new);
- return;
+ button = gtk_button_new_with_label(button_text);
+ gtk_container_add(GTK_CONTAINER(buttonshbox), button);
+
+ gtk_widget_show_all(window);
}
void switch_theme(gchar * theme)
@@ -334,6 +388,8 @@
int folder_selected(GtkWidget * list, GList * node, gint col,
gpointer data)
{
+ GtkStyle *style;
+ GdkFont *font;
GdkBitmap *bitmap;
GdkColormap *colormap;
GdkPixmap *pixmap;
@@ -465,6 +521,17 @@
pixmap, bitmap);
gdk_bitmap_unref(bitmap);
gdk_pixmap_unref(pixmap);
+
+ font = gdk_font_load(config.new_font);
+ style =
+ gtk_style_copy(gtk_widget_get_style
+ (mail_ctree));
+ gdk_font_unref(style->font);
+ style->font = font;
+ gdk_font_ref(style->font);
+ gtk_ctree_node_set_row_style(GTK_CTREE
+ (mail_ctree),
+ item, style);
}
}
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- callbacks.h 2000/11/23 09:32:12 1.12
+++ callbacks.h 2000/11/26 11:39:17 1.13
@@ -67,3 +67,5 @@
/* Function for checking for new messages. */
void check_for_new_mail(int signum);
+
+void create_error_window(gchar * title, gchar * text, gchar * button_text);
===================================================================
RCS file: /cvsroot/corem/core/src/core.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- core.h 2000/11/23 01:08:37 1.9
+++ core.h 2000/11/26 11:39:17 1.10
@@ -1,3 +1,4 @@
+
#include <dirent.h>
#include <gtk/gtk.h>
#include <stdio.h>
@@ -23,3 +24,8 @@
gboolean ml_linestyle;
gboolean fl_linestyle;
} ConfigData;
+
+#define RED "[1;31m"
+#define GREEN "[1;32m"
+#define YELLOW "[1;33m"
+#define BLUE "[1;34m"
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -3 -r1.14 -r1.15
--- panes.c 2000/11/26 09:29:43 1.14
+++ panes.c 2000/11/26 11:39:17 1.15
@@ -39,7 +39,8 @@
GTK_SIGNAL_FUNC(folder_unselected), NULL);
if (!text || !text[0] || !text[1] || !text[2]) {
- fprintf(stderr, "ERROR: Malloc failed, Exiting....\n");
+ fprintf(stderr, "%sERROR: %sMalloc failed, Exiting....\n",
+ RED, GREEN);
exit(-1);
}
@@ -270,13 +271,15 @@
text = (char **) g_malloc(5 * sizeof(char *));
if (!text) {
- fprintf(stderr, "ERROR: Malloc failed, Exiting....\n");
+ fprintf(stderr, "%sERROR: %sMalloc failed, Exiting....\n",
+ RED, GREEN);
exit(-1);
}
text[1] = g_strdup("Message In Thread");
if (!text) {
- fprintf(stderr, "ERROR: Malloc failed, Exiting....\n");
+ fprintf(stderr, "%sERROR: %sMalloc failed, Exiting....\n",
+ RED, GREEN);
exit(-1);
}
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- prefs.c 2000/11/26 01:52:04 1.7
+++ prefs.c 2000/11/26 11:39:17 1.8
@@ -343,7 +343,7 @@
("-schumacher-clean-medium-r-normal-*-*-120-*-*-c-*-iso8859-1");
config.new_font =
g_strdup
- ("-schumacher-clean-bold-r-normal-*-*-140-*-*-c-*-iso646.1991-irv");
+ ("-schumacher-clean-bold-r-normal-*-*-120-*-*-c-*-iso646.1991-irv");
config.ml_priority = 0;
config.ml_read = 1;
config.ml_attachment = 1;
@@ -417,8 +417,8 @@
rc = g_strconcat(home, "/.corerc", NULL);
config_file = fopen(rc, "w");
if (config_file == NULL) {
- fprintf(config_file,
- "ERROR: Cannot write to config file\n");
+ fprintf(config_file, "%sERROR: %sMalloc failed, Exiting....\n",
+ RED, GREEN);
return;
}
|
|
From: CORE C. L. <cor...@li...> - 2000-11-26 23:32:46
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c panes.c
Log Message:
now when you press save in new_account() it checks so you have filled in everything correct, if not a error message displays, if everything is filled in it inserts the new account in the account_window clist and in the folder_ctree, somehow it doesnt save the data? prehaps something wrong with account_write() prehaps i can check it later, need to fix that and fix check_for_new_mail to change the pixmaps in the nodes wich have new messages, to folder_closed_new.xpm and folder_open_new.xpm
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -3 -r1.31 -r1.32
--- callbacks.c 2000/11/26 21:28:17 1.31
+++ callbacks.c 2000/11/26 23:32:44 1.32
@@ -8,6 +8,7 @@
Account *current_mbox;
extern GtkWidget *mail_ctree;
+extern GtkWidget *account_clist;
extern GtkWidget *main_win;
extern ConfigData config;
extern gchar *title;
@@ -109,6 +110,7 @@
/* Password entry */
password = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(password), "");
+ gtk_entry_set_visibility(GTK_ENTRY(password), FALSE);
gtk_widget_set_usize(GTK_WIDGET(password), 100, 20);
gtk_table_attach(GTK_TABLE(table), password, 3, 4, 0,
1, GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -171,8 +173,8 @@
Account *acct;
gchar *tmp_folder_name, *tmp_full_name, *tmp_email_address,
*tmp_username, *tmp_password, *tmp_server, *tmp_path;
+ gchar **text = NULL;
-
tmp_folder_name = gtk_entry_get_text(GTK_ENTRY(folder_name));
tmp_full_name = gtk_entry_get_text(GTK_ENTRY(full_name));
tmp_email_address = gtk_entry_get_text(GTK_ENTRY(email_address));
@@ -180,17 +182,14 @@
tmp_password = gtk_entry_get_text(GTK_ENTRY(password));
tmp_server = gtk_entry_get_text(GTK_ENTRY(server));
tmp_path = gtk_entry_get_text(GTK_ENTRY(path));
- create_error_window(g_strdup("ERROR"),
- g_strdup
- ("Make sure you have filled in everything"),
- g_strdup("OK"));
- if (g_strdup(tmp_folder_name) == NULL /* &&
- tmp_full_name == NULL &&
- tmp_email_address == NULL &&
- tmp_username == NULL &&
- tmp_password == NULL &&
- tmp_server == NULL &&
- tmp_path == NULL */ ) {
+
+ if ((tmp_folder_name == NULL || *tmp_folder_name == '\0') &&
+ (tmp_full_name == NULL || *tmp_full_name == '\0') &&
+ (tmp_email_address == NULL || *tmp_email_address == '\0') &&
+ (tmp_username == NULL || *tmp_username == '\0') &&
+ (tmp_password == NULL || *tmp_password == '\0') &&
+ (tmp_server == NULL || *tmp_server == '\0') &&
+ (tmp_path == NULL || *tmp_path == '\0')) {
create_error_window(g_strdup("ERROR"),
g_strdup
("Make sure you have filled in everything"),
@@ -209,6 +208,44 @@
account_set_path(acct, tmp_path);
account_write(acct);
+
+ if (text) {
+ if (text[0])
+ g_free(text[0]);
+ if (text[1])
+ g_free(text[1]);
+ if (text[2])
+ g_free(text[2]);
+ if (text[3])
+ g_free(text[3]);
+ } else text = (char **) g_malloc(4 * sizeof(char *));
+
+ text[0] = account_get_name(acct);
+ text[1] = account_get_fullname(acct);
+ text[2] = account_get_address(acct);
+ text[3] = account_get_path(acct);
+
+ gtk_clist_insert(GTK_CLIST(account_clist), 4, text);
+
+ if (text) {
+ if (text[0])
+ g_free(text[0]);
+ if (text[1])
+ g_free(text[1]);
+ if (text[2])
+ g_free(text[2]);
+ if (text[3])
+ g_free(text[3]);
+ } else text = (char **) g_malloc(4 * sizeof(char *));
+
+ text[0] = account_get_name(acct);
+ text[1] = g_strdup("0");
+ text[2] = g_strdup("0");
+
+
+ gtk_ctree_insert_node(GTK_CTREE(folder_ctree), NULL, NULL, text, 0, NULL, NULL, NULL, NULL, FALSE, TRUE);
+
+
gtk_widget_destroy(accounts_win_new);
return;
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- panes.c 2000/11/26 21:28:17 1.17
+++ panes.c 2000/11/26 23:32:45 1.18
@@ -6,7 +6,7 @@
ConfigData config;
GtkWidget *mail_ctree;
GtkWidget *folder_ctree;
-GtkWidget *clist;
+GtkWidget *account_clist;
extern GtkWidget *main_win;
extern GtkWidget *hpane;
extern gchar *theme;
@@ -333,8 +333,8 @@
gtk_container_add(GTK_CONTAINER(accounts_win), main_vbox);
/* The clist for browsing accounts */
- clist = gtk_clist_new_with_titles(4, titles);
- gtk_box_pack_start(GTK_BOX(main_vbox), clist, TRUE, TRUE, 0);
+ account_clist = gtk_clist_new_with_titles(4, titles);
+ gtk_box_pack_start(GTK_BOX(main_vbox), account_clist, TRUE, TRUE, 0);
account_reset_dir();
i = 0;
@@ -356,8 +356,8 @@
text[2] = account_get_address(mbox);
text[3] = account_get_path(mbox);
- gtk_clist_insert(GTK_CLIST(clist), i, text);
- gtk_clist_set_row_data_full(GTK_CLIST(clist), i,
+ gtk_clist_insert(GTK_CLIST(account_clist), i, text);
+ gtk_clist_set_row_data_full(GTK_CLIST(account_clist), i,
mbox,
(GtkDestroyNotify)
destroy_account);
@@ -373,10 +373,10 @@
g_free(text[3]);
g_free(text);
- gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 0, TRUE);
- gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 1, TRUE);
- gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 2, TRUE);
- gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 3, TRUE);
+ gtk_clist_set_column_auto_resize(GTK_CLIST(account_clist), 0, TRUE);
+ gtk_clist_set_column_auto_resize(GTK_CLIST(account_clist), 1, TRUE);
+ gtk_clist_set_column_auto_resize(GTK_CLIST(account_clist), 2, TRUE);
+ gtk_clist_set_column_auto_resize(GTK_CLIST(account_clist), 3, TRUE);
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 0);
|
|
From: CORE C. L. <cor...@li...> - 2000-11-27 10:12:14
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c prefs.c
Log Message:
cant remember what ive changed, cant be to much ;=)
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -3 -r1.32 -r1.33
--- callbacks.c 2000/11/26 23:32:44 1.32
+++ callbacks.c 2000/11/27 10:12:11 1.33
@@ -175,6 +175,7 @@
*tmp_username, *tmp_password, *tmp_server, *tmp_path;
gchar **text = NULL;
+ /* Get the values from the entry boxes */
tmp_folder_name = gtk_entry_get_text(GTK_ENTRY(folder_name));
tmp_full_name = gtk_entry_get_text(GTK_ENTRY(full_name));
tmp_email_address = gtk_entry_get_text(GTK_ENTRY(email_address));
@@ -183,6 +184,7 @@
tmp_server = gtk_entry_get_text(GTK_ENTRY(server));
tmp_path = gtk_entry_get_text(GTK_ENTRY(path));
+ /* Check and make sure everything is filled in */
if ((tmp_folder_name == NULL || *tmp_folder_name == '\0') &&
(tmp_full_name == NULL || *tmp_full_name == '\0') &&
(tmp_email_address == NULL || *tmp_email_address == '\0') &&
@@ -196,19 +198,30 @@
g_strdup("OK"));
return;
}
+
+ /* Make a new account, this only frees the Account data */
acct = new_account();
+ /* Set the foldername */
account_set_name(acct, tmp_folder_name);
+ /* Set the full name */
account_set_fullname(acct, tmp_full_name);
+ /* Set the email address */
account_set_address(acct, tmp_email_address);
/*acct->type = gtk_entry_get_text(GTK_ENTRY(type)); */
+ /* Set username */
account_set_username(acct, tmp_username);
+ /* Set password */
account_set_password(acct, tmp_password);
+ /* Set server */
account_set_server(acct, tmp_server);
+ /* Set path */
account_set_path(acct, tmp_path);
+ /* Write the account */
account_write(acct);
+ /* Make sure there isnt anything in text, or malloc text[] */
if (text) {
if (text[0])
g_free(text[0]);
@@ -220,13 +233,16 @@
g_free(text[3]);
} else text = (char **) g_malloc(4 * sizeof(char *));
+ /* Set the text in text array */
text[0] = account_get_name(acct);
text[1] = account_get_fullname(acct);
text[2] = account_get_address(acct);
text[3] = account_get_path(acct);
+ /* Insert text[] into account_clist */
gtk_clist_insert(GTK_CLIST(account_clist), 4, text);
+ /* Make sure there isnt anything in text, or malloc text[] */
if (text) {
if (text[0])
g_free(text[0]);
@@ -244,8 +260,18 @@
gtk_ctree_insert_node(GTK_CTREE(folder_ctree), NULL, NULL, text, 0, NULL, NULL, NULL, NULL, FALSE, TRUE);
-
+ /* If everything worked fine we should free text[] */
+ if (text) {
+ if (text[0])
+ g_free(text[0]);
+ if (text[1])
+ g_free(text[1]);
+ if (text[2])
+ g_free(text[2]);
+ if (text[3])
+ g_free(text[3]);
+ }
gtk_widget_destroy(accounts_win_new);
return;
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- prefs.c 2000/11/26 21:28:17 1.9
+++ prefs.c 2000/11/27 10:12:11 1.10
@@ -257,6 +257,7 @@
g_strdup(gtk_entry_get_text(GTK_ENTRY(def_font)));
config.new_font =
g_strdup(gtk_entry_get_text(GTK_ENTRY(new_font)));
+ apply_clicked();
gtk_widget_destroy(pref_win);
}
@@ -269,7 +270,7 @@
font =
gdk_font_load(g_strdup
(gtk_entry_get_text(GTK_ENTRY(def_font))));
- style = gtk_style_copy(gtk_widget_get_style(main_win));
+ style = gtk_style_copy(gtk_widget_get_style(folder_ctree));
gdk_font_unref(style->font);
style->font = font;
gdk_font_ref(style->font);
|
|
From: CORE C. L. <cor...@li...> - 2000-11-30 22:28:22
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c main.c menus.c panes.c
Log Message:
bleh just tested som stuff iirc
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -3 -r1.33 -r1.34
--- callbacks.c 2000/11/27 10:12:11 1.33
+++ callbacks.c 2000/11/30 22:28:21 1.34
@@ -1,8 +1,12 @@
+#include <gdk/gdk.h>
+#include <glib.h>
+#include <gtk/gtk.h>
+#include <signal.h>
+
#include "message.h"
#include "core.h"
#include "callbacks.h"
#include "panes.h"
-#include <signal.h>
#define TIMEOUT 30
@@ -479,33 +483,26 @@
break;
col = 0;
-
- if (config.ml_from == 1) {
- found = find_header(head, "From:");
- if (found)
- text[col] = header_get_value(found);
- else
- text[col] = g_strdup("");
- col++;
- }
- if (config.ml_subject == 1) {
+ found = find_header(head, "From:");
+ if (found)
+ text[col] = header_get_value(found);
+ else
+ text[col] = g_strdup("");
+ col++;
found = find_header(head, "Subject:");
- if (found)
- text[col] = header_get_value(found);
- else
- text[col] = g_strdup("");
- col++;
- }
-
- if (config.ml_date == 1) {
- found = find_header(head, "Date:");
- if (found)
- text[col] = header_get_value(found);
- else
- text[col] = g_strdup("");
- col++;
- }
+ if (found)
+ text[col] = header_get_value(found);
+ else
+ text[col] = g_strdup("");
+ col++;
+
+ found = find_header(head, "Date:");
+ if (found)
+ text[col] = header_get_value(found);
+ else
+ text[col] = g_strdup("");
+ col++;
if (config.ml_server == 1) {
found = find_header(head, "Server:");
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- main.c 2000/11/23 02:23:03 1.15
+++ main.c 2000/11/30 22:28:21 1.16
@@ -6,9 +6,9 @@
#include <sys/types.h>
#define PREFIX "/usr"
+gchar *theme, *title;
GtkWidget *message_pane;
ConfigData config;
-gchar *title;
GtkWidget *main_win;
GtkWidget *mhandle;
GtkWidget *thandle;
@@ -18,7 +18,6 @@
GtkWidget *reply;
GtkWidget *reply_all;
GtkWidget *forward;
-gchar *theme;
int main(int argc, char **argv)
{
@@ -93,8 +92,6 @@
thandle = gtk_handle_box_new();
create_main_toolbar();
-
-
hpane = gtk_hpaned_new();
{
@@ -118,6 +115,7 @@
gtk_box_pack_start(GTK_BOX(main_vbox), thandle, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(main_vbox), hpane, TRUE, TRUE, 0);
+
gtk_widget_show_all(main_win);
if (config.tb_show == 0) {
@@ -160,6 +158,10 @@
g_strconcat(CORE_SHARE, "/themes/", config.theme, "/",
NULL);
return TRUE;
+ }
+
+ else {
+ create_error_window(g_strdup("ERROR"), g_strdup("Theme not found"), g_strdup("Quit"));
}
return FALSE;
===================================================================
RCS file: /cvsroot/corem/core/src/menus.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- menus.c 2000/11/23 09:32:12 1.10
+++ menus.c 2000/11/30 22:28:21 1.11
@@ -46,7 +46,7 @@
*mline_tabbed, *folder_list, *folder_listmenu, *fline_style,
*fline_stylemenu, *fline_none, *fline_solid, *fline_dotted,
*fline_tabbed, *mpriority, *mread, *mattachment, *mscore,
- *mfrom, *msubject, *mdate, *mserver;
+ *mserver;
GSList *radio_buttons = NULL;
GSList *mline_radio = NULL;
GSList *fline_radio = NULL;
@@ -265,28 +265,6 @@
gtk_menu_append(GTK_MENU(message_listmenu), mscore);
if (config.ml_score == 1)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mscore),
- TRUE);
-
- mfrom = gtk_check_menu_item_new_with_label("Show From");
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mfrom), FALSE);
- gtk_menu_append(GTK_MENU(message_listmenu), mfrom);
- if (config.ml_from == 1)
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mfrom),
- TRUE);
-
- msubject = gtk_check_menu_item_new_with_label("Show Subject");
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(msubject),
- FALSE);
- gtk_menu_append(GTK_MENU(message_listmenu), msubject);
- if (config.ml_subject == 1)
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
- (msubject), TRUE);
-
- mdate = gtk_check_menu_item_new_with_label("Show Date");
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mdate), FALSE);
- gtk_menu_append(GTK_MENU(message_listmenu), mdate);
- if (config.ml_date == 1)
- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mdate),
TRUE);
mserver = gtk_check_menu_item_new_with_label("Show Server");
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -3 -r1.18 -r1.19
--- panes.c 2000/11/26 23:32:45 1.18
+++ panes.c 2000/11/30 22:28:21 1.19
@@ -135,24 +135,18 @@
iserver;
gchar **text = NULL;
- if (config.ml_from == 1) {
- field_titles[col] = "From";
- ifrom = col;
- col++;
- }
-
- if (config.ml_subject == 1) {
- field_titles[col] = "Subject";
- isubject = col;
- col++;
- }
+ field_titles[col] = "From";
+ ifrom = col;
+ col++;
+
+ field_titles[col] = "Subject";
+ isubject = col;
+ col++;
+
+ field_titles[col] = "Date";
+ idate = col;
+ col++;
- if (config.ml_date == 1) {
- field_titles[col] = "Date";
- idate = col;
- col++;
- }
-
if (config.ml_server == 1) {
field_titles[col] = "Server";
iserver = col;
@@ -195,22 +189,16 @@
gdk_font_ref(style->font);
gtk_widget_set_style(mail_ctree, style);
- if (config.ml_from == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), ifrom,
237);
gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
ifrom, FALSE);
- }
- if (config.ml_subject == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), isubject,
175);
- }
- if (config.ml_date == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), idate,
150);
- }
if (config.ml_server == 1) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), iserver,
|
|
From: CORE C. L. <cor...@so...> - 2000-12-19 16:24:11
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
callbacks.c core.h main.c menus.c menus.h panes.c prefs.c
prefs.h
Log Message:
rewrote the config parser to use GHashTables, and fixed everything, somehow core segfaults in create_main_menu, its hard to trace whats causing the segfault since it leaves no traces in the stack
===================================================================
RCS file: /cvsroot/corem/core/src/callbacks.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -3 -r1.35 -r1.36
--- callbacks.c 2000/12/15 22:27:17 1.35
+++ callbacks.c 2000/12/19 16:24:10 1.36
@@ -14,7 +14,6 @@
extern GtkWidget *mail_ctree;
extern GtkWidget *account_clist;
extern GtkWidget *main_win;
-extern ConfigData config;
extern gchar *title;
extern gchar *theme;
@@ -307,15 +306,13 @@
void switch_theme(gchar * theme)
{
- if (!theme || !config.theme)
+ if (!theme || !rc_get_value("theme"))
return;
- if (strcmp(theme, config.theme) == 0)
+ if (strcmp(theme, (char *) rc_get_value("theme")) == 0)
return;
- if (config.theme)
- g_free(config.theme);
- config.theme = g_strdup(theme);
+ rc_set_value("theme", theme);
set_theme_dir();
gtk_widget_destroy(toolbar);
create_main_toolbar();
@@ -493,35 +490,35 @@
text[col] = g_strdup("");
col++;
- if (config.ml_server == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_server")) == 0) {
text[col] = header_get_value(head, "Server:");
if (!text[col])
text[col] = g_strdup("");
col++;
}
- if (config.ml_priority == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_priority")) == 0) {
text[col] = header_get_value(head, "Priority:");
if (!text[col])
text[col] = g_strdup("");
col++;
}
- if (config.ml_attachment == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_attachment")) == 0) {
text[col] = header_get_value(head, "Attachment:");
if (!text[col])
text[col] = g_strdup("");
col++;
}
- if (config.ml_score == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_score")) == 0) {
text[col] = header_get_value(head, "Score:");
if (!text[col])
text[col] = g_strdup("");
col++;
}
- if (config.ml_read == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_read")) == 0) {
text[col] = g_strdup("");
}
@@ -543,7 +540,7 @@
NULL, text, 0, NULL, NULL, NULL,
NULL, FALSE, TRUE);
- if (config.ml_read == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_read")) == 0) {
char *xpm_name;
text[col] = header_get_value(head, "Status:");
@@ -569,7 +566,7 @@
gdk_bitmap_unref(bitmap);
gdk_pixmap_unref(pixmap);
- font = gdk_font_load(config.new_font);
+ font = gdk_font_load((char *) rc_get_value("new_font"));
style =
gtk_style_copy(gtk_widget_get_style
(mail_ctree));
===================================================================
RCS file: /cvsroot/corem/core/src/core.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- core.h 2000/11/26 11:39:17 1.10
+++ core.h 2000/12/19 16:24:10 1.11
@@ -5,7 +5,7 @@
#include <sys/stat.h>
#include <sys/types.h>
-typedef struct {
+/*typedef struct {
gint xsize;
gint ysize;
gboolean tb_show;
@@ -23,7 +23,7 @@
gboolean ml_server;
gboolean ml_linestyle;
gboolean fl_linestyle;
-} ConfigData;
+} ConfigData;*/
#define RED "[1;31m"
#define GREEN "[1;32m"
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- main.c 2000/12/15 22:27:17 1.17
+++ main.c 2000/12/19 16:24:10 1.18
@@ -7,9 +7,10 @@
#include <sys/types.h>
#define PREFIX "/usr"
+void core_init();
+
gchar *theme, *title;
GtkWidget *message_pane;
-ConfigData config;
GtkWidget *main_win;
GtkWidget *mhandle;
GtkWidget *thandle;
@@ -22,37 +23,14 @@
int main(int argc, char **argv)
{
- gchar *dir;
- /* Create $HOME/.core directory */
- dir = g_strconcat(getenv("HOME"), "/.core", NULL);
- if (dir) {
- mkdir(dir, 0700);
- g_free(dir);
- }
-
- /* Create $HOME/.core/accounts directory */
- dir = g_strconcat(getenv("HOME"), "/.core/accounts", NULL);
- if (dir) {
- mkdir(dir, 0700);
- g_free(dir);
- }
-
- /* Create $HOME/.core/themes directory */
- dir = g_strconcat(getenv("HOME"), "/.core/themes", NULL);
- if (dir) {
- mkdir(dir, 0700);
- g_free(dir);
- }
-
/* Set locale */
gtk_set_locale();
- /* Init */
+ /* Init GTK+ */
gtk_init(&argc, &argv);
-
- /* Create main window */
- create_core_main_window();
+ /* Init Core */
+ core_init();
/* Here core sleeps until the core_main_quit is called */
gtk_main();
@@ -61,60 +39,91 @@
}
+void core_init()
+{
+ gchar *dir;
+ /* Create $HOME/.core directory */
+ dir = g_strconcat(getenv("HOME"), "/.core", NULL);
+ if (dir) {
+ mkdir(dir, 0700);
+ g_free(dir);
+ }
+
+ /* Create $HOME/.core/accounts directory */
+ dir = g_strconcat(getenv("HOME"), "/.core/accounts", NULL);
+ if (dir) {
+ mkdir(dir, 0700);
+ g_free(dir);
+ }
+
+ /* Create $HOME/.core/themes directory */
+ dir = g_strconcat(getenv("HOME"), "/.core/themes", NULL);
+ if (dir) {
+ mkdir(dir, 0700);
+ g_free(dir);
+ }
+
+ rc_set_defaults();
+ /* Create main window */
+ create_core_main_window();
+
+ return;
+}
+
+
/* The main window callback */
void create_core_main_window(void)
{
GtkWidget *main_vbox;
GtkWidget *main_menu;
GtkWidget *pane;
-
- bzero(&config, sizeof(ConfigData));
- config_read();
-
+ gint i = 0;
+g_print("%d", i); i++;
set_theme_dir();
-
+g_print("%d", i); i++;
title = g_strdup_printf("Core %s", CORE_VERSION);
main_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_widget_set_usize(GTK_WIDGET(main_win), config.xsize,
- config.ysize);
+ gtk_widget_set_usize(GTK_WIDGET(main_win), 800,
+ 600);
gtk_window_set_title(GTK_WINDOW(main_win), title);
gtk_signal_connect(GTK_OBJECT(main_win), "delete_event",
core_main_quit, NULL);
gtk_signal_connect(GTK_OBJECT(main_win), "destroy",
core_main_quit, NULL);
gtk_widget_realize(main_win);
-
+g_print("%d", i); i++;
main_vbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
gtk_container_add(GTK_CONTAINER(main_win), main_vbox);
-
+g_print("%d", i); i++;
mhandle = gtk_handle_box_new();
gtk_handle_box_set_shadow_type(GTK_HANDLE_BOX(mhandle),
GTK_SHADOW_NONE);
-
+g_print("%d", i); i++;
gtk_handle_box_set_handle_position(GTK_HANDLE_BOX(mhandle),
GTK_POS_LEFT);
gtk_handle_box_set_snap_edge(GTK_HANDLE_BOX(mhandle),
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), mhandle, FALSE, FALSE, 0);
-
+g_print("%d", i); i++;
thandle = gtk_handle_box_new();
create_main_toolbar();
-
+g_print("%d", i); i++;
hpane = gtk_hpaned_new();
-
+g_print("%d", i); i++;
{
pane = core_create_folder_pane();
gtk_paned_pack1(GTK_PANED(hpane), pane, TRUE, TRUE);
-
+g_print("%d", i); i++;
pane = core_create_mlist_pane();
gtk_paned_pack2(GTK_PANED(hpane), pane, TRUE, TRUE);
}
-
+g_print("%d", i); i++; /***************9***************/
main_menu = create_main_menu();
+g_print("%d", i); i++;
gtk_container_set_border_width(GTK_CONTAINER(main_menu), 0);
gtk_container_add(GTK_CONTAINER(mhandle), main_menu);
-
+g_print("%d", i); i++;
gtk_handle_box_set_shadow_type(GTK_HANDLE_BOX(thandle),
GTK_SHADOW_NONE);
gtk_handle_box_set_handle_position(GTK_HANDLE_BOX(thandle),
@@ -122,22 +131,22 @@
gtk_handle_box_set_snap_edge(GTK_HANDLE_BOX(thandle),
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), thandle, FALSE, FALSE, 0);
-
+g_print("%d", i); i++;
gtk_box_pack_start(GTK_BOX(main_vbox), hpane, TRUE, TRUE, 0);
-
+g_print("%d", i); i++;
gtk_widget_show_all(main_win);
-
- if (config.tb_show == 0) {
+g_print("%d", i); i++;
+ if (GPOINTER_TO_INT(rc_get_value("tb_show")) == 0) {
gtk_widget_hide(thandle);
}
-
- if (config.tb_buttons == 0) {
+g_print("%d", i); i++;
+ if (GPOINTER_TO_INT(rc_get_value("tb_buttons")) == 0) {
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_TEXT);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
}
-
- if (config.tb_buttons == 1) {
+g_print("%d", i); i++;
+ if (GPOINTER_TO_INT(rc_get_value("tb_buttons")) == 1) {
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_ICONS);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
@@ -150,26 +159,26 @@
gchar *tmp;
tmp =
- g_strconcat(getenv("HOME"), "/.core/themes/", config.theme,
+ g_strconcat(getenv("HOME"), "/.core/themes/", rc_get_value("theme"),
"/", NULL);
dir = opendir(tmp);
if (dir != NULL) {
theme =
g_strconcat(getenv("HOME"), "/.core/themes/",
- config.theme, "/", NULL);
+ rc_get_value("theme"), "/", NULL);
return TRUE;
}
g_free(tmp);
- tmp = g_strconcat(CORE_SHARE, "/themes/", config.theme, NULL);
+ tmp = g_strconcat(CORE_SHARE, "/themes/", rc_get_value("theme"), NULL);
dir = opendir(tmp);
g_free(tmp);
if (dir != NULL) {
theme =
- g_strconcat(CORE_SHARE, "/themes/", config.theme, "/",
+ g_strconcat(CORE_SHARE, "/themes/", rc_get_value("theme"), "/",
NULL);
return TRUE;
}
@@ -276,21 +285,21 @@
void toolbar_change_layout(gint type)
{
if (type == 0) {
- config.tb_buttons = 0;
+ rc_set_value("tb_buttons", "0");
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_TEXT);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
}
if (type == 1) {
- config.tb_buttons = 1;
+ rc_set_value("tb_buttons", "1");
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_ICONS);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
}
if (type == 2) {
- config.tb_buttons = 2;
+ rc_set_value("tb_buttons", "2");
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_BOTH);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
@@ -299,13 +308,13 @@
void toolbar_hide_show()
{
- if (config.tb_show == 1) {
- config.tb_show = 0;
+ if (GPOINTER_TO_INT(rc_get_value("tb_show")) == 1) {
+ rc_set_value("tb_show", "0");
gtk_widget_hide(thandle);
return;
- } else if (config.tb_show == 0) {
+ } else if (GPOINTER_TO_INT(rc_get_value("tb_show")) == 0) {
gtk_widget_show(thandle);
- config.tb_show = 1;
+ rc_set_value("tb_show", "1");
return;
}
return;
@@ -315,6 +324,6 @@
void core_main_quit(void)
{
- config_write();
+ rc_write();
gtk_main_quit();
}
===================================================================
RCS file: /cvsroot/corem/core/src/menus.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- menus.c 2000/12/15 22:27:17 1.12
+++ menus.c 2000/12/19 16:24:10 1.13
@@ -5,15 +5,14 @@
#include "panes.h"
#include "prefs.h"
-extern ConfigData config;
extern GtkWidget *toolbar;
static GtkItemFactoryEntry mail_menu_items[] = {
{"/File", NULL, NULL, 0, "<Branch>"},
{"/File/Close", NULL, NULL, 0, NULL},
};
+static void create_themes_menu(GtkWidget * menu);
-
void core_create_mail_menu(GtkWidget * window, GtkWidget ** menubar)
{
GtkItemFactory *item_factory;
@@ -111,11 +110,11 @@
show = gtk_check_menu_item_new_with_label("Show");
gtk_check_menu_item_set_show_toggle(GTK_CHECK_MENU_ITEM(show),
TRUE);
- if (config.tb_show == 0) {
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("tb_show")) == 0) {
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(show),
FALSE);
}
- if (config.tb_show == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("tb_show")) == 0) {
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(show),
TRUE);
}
@@ -151,17 +150,17 @@
GINT_TO_POINTER(2));
gtk_menu_append(GTK_MENU(toolbarmenu), both);
- if (config.tb_buttons == 0) {
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("tb_buttons")) == 0) {
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(text),
TRUE);
}
- if (config.tb_buttons == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("tb_buttons")) == 0) {
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(icons),
TRUE);
}
- if (config.tb_buttons == 2) {
+ if (g_strcasecmp(g_strdup("2"), (char *) rc_get_value("tb_buttons")) == 0) {
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(both),
TRUE);
}
@@ -220,19 +219,19 @@
GINT_TO_POINTER(3));
gtk_menu_append(GTK_MENU(mline_stylemenu), mline_tabbed);
- if (config.ml_linestyle == 0)
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mline_none), TRUE);
- if (config.ml_linestyle == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mline_solid), TRUE);
- if (config.ml_linestyle == 2)
+ if (g_strcasecmp(g_strdup("2"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mline_dotted), TRUE);
- if (config.ml_linestyle == 3)
+ if (g_strcasecmp(g_strdup("3"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mline_tabbed), TRUE);
@@ -240,14 +239,14 @@
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mpriority),
FALSE);
gtk_menu_append(GTK_MENU(message_listmenu), mpriority);
- if (config.ml_priority == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_priority")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mpriority), TRUE);
mread = gtk_check_menu_item_new_with_label("Show Read");
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mread), FALSE);
gtk_menu_append(GTK_MENU(message_listmenu), mread);
- if (config.ml_read == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mread),
TRUE);
@@ -256,14 +255,14 @@
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mattachment),
FALSE);
gtk_menu_append(GTK_MENU(message_listmenu), mattachment);
- if (config.ml_attachment == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_attachment")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mattachment), TRUE);
mscore = gtk_check_menu_item_new_with_label("Show Score");
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mscore), FALSE);
gtk_menu_append(GTK_MENU(message_listmenu), mscore);
- if (config.ml_score == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_score")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mscore),
TRUE);
@@ -271,7 +270,7 @@
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mserver),
FALSE);
gtk_menu_append(GTK_MENU(message_listmenu), mserver);
- if (config.ml_server == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_server")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(mserver), TRUE);
@@ -329,19 +328,19 @@
GINT_TO_POINTER(3));
gtk_menu_append(GTK_MENU(fline_stylemenu), fline_tabbed);
- if (config.fl_linestyle == 0)
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("fl_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(fline_none), TRUE);
- if (config.fl_linestyle == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("fl_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(fline_solid), TRUE);
- if (config.fl_linestyle == 2)
+ if (g_strcasecmp(g_strdup("2"), (char *) rc_get_value("fl_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(fline_dotted), TRUE);
- if (config.fl_linestyle == 3)
+ if (g_strcasecmp(g_strdup("3"), (char *) rc_get_value("fl_linestyle")) == 0)
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM
(fline_tabbed), TRUE);
@@ -359,11 +358,10 @@
GTK_SIGNAL_FUNC(create_core_about_window),
NULL);
gtk_menu_append(GTK_MENU(helpmenu), about);
-
return (menu);
}
-void create_themes_menu(GtkWidget * menu)
+static void create_themes_menu(GtkWidget * menu)
{
gint i;
gchar *dirs[] =
@@ -416,7 +414,6 @@
g_free(temp);
icon = gtk_pixmap_new(pixmap, bitmap);
-
hbox = gtk_hbox_new(0, 8);
gtk_box_pack_start(GTK_BOX(hbox), icon,
FALSE, FALSE, 0);
===================================================================
RCS file: /cvsroot/corem/core/src/menus.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- menus.h 2000/11/22 23:45:00 1.2
+++ menus.h 2000/12/19 16:24:10 1.3
@@ -1,2 +1 @@
GtkWidget *create_main_menu();
-void create_themes_menu(GtkWidget * menu);
===================================================================
RCS file: /cvsroot/corem/core/src/panes.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- panes.c 2000/12/15 22:27:17 1.20
+++ panes.c 2000/12/19 16:24:10 1.21
@@ -3,7 +3,6 @@
#include "panes.h"
#include "callbacks.h"
-extern ConfigData config;
GtkWidget *mail_ctree;
GtkWidget *folder_ctree;
GtkWidget *account_clist;
@@ -44,7 +43,7 @@
exit(-1);
}
- font = gdk_font_load(config.default_font);
+ font = gdk_font_load((char *) rc_get_value("default_font"));
style = gtk_style_copy(gtk_widget_get_style(hpane));
gdk_font_unref(style->font);
style->font = font;
@@ -58,7 +57,6 @@
g_strconcat(theme,
"folder_closed_normal.xpm",
NULL));
-
colormap = gtk_widget_get_colormap(folder_ctree);
opixmap =
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
@@ -100,16 +98,16 @@
gtk_widget_set_usize(scroll, 12, 50);
gtk_widget_show_all(folder_ctree);
- if (config.ml_linestyle == 0)
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_NONE);
- if (config.ml_linestyle == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_SOLID);
- if (config.ml_linestyle == 2)
+ if (g_strcasecmp(g_strdup("2"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_DOTTED);
- if (config.ml_linestyle == 3)
+ if (g_strcasecmp(g_strdup("3"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_TABBED);
@@ -147,31 +145,31 @@
idate = col;
col++;
- if (config.ml_server == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_server")) == 0) {
field_titles[col] = "Server";
iserver = col;
col++;
}
- if (config.ml_priority == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_priority")) == 0) {
field_titles[col] = "Priority";
ipriority = col;
col++;
}
- if (config.ml_attachment == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_attachment")) == 0) {
field_titles[col] = "";
iattachment = col;
col++;
}
- if (config.ml_score == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_score")) == 0) {
field_titles[col] = "Score";
iscore = col;
col++;
}
- if (config.ml_read == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_read")) == 0) {
field_titles[col] = "";
iread = col;
col++;
@@ -182,7 +180,7 @@
gtk_signal_connect(GTK_OBJECT(mail_ctree), "tree_select_row",
GTK_SIGNAL_FUNC(mail_selected), NULL);
- font = gdk_font_load(config.default_font);
+ font = gdk_font_load((char *) rc_get_value("default_font"));
style = gtk_style_copy(gtk_widget_get_style(hpane));
gdk_font_unref(style->font);
style->font = font;
@@ -197,17 +195,17 @@
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), idate, 150);
- if (config.ml_server == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_server")) == 0) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), iserver,
40);
}
- if (config.ml_priority) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_priority")) == 0) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree),
ipriority, 40);
}
- if (config.ml_read == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_read")) == 0) {
colormap = gtk_widget_get_colormap(mail_ctree);
pixmap =
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
@@ -227,7 +225,7 @@
}
- if (config.ml_attachment == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_attachment")) == 0) {
colormap = gtk_widget_get_colormap(mail_ctree);
pixmap =
gdk_pixmap_colormap_create_from_xpm(NULL, colormap,
@@ -247,7 +245,7 @@
}
- if (config.ml_score == 1) {
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_score")) == 0) {
gtk_clist_set_column_width(GTK_CLIST(mail_ctree), iscore,
30);
gtk_clist_set_column_auto_resize(GTK_CLIST(mail_ctree),
@@ -274,16 +272,16 @@
GTK_POLICY_AUTOMATIC);
gtk_container_add(GTK_CONTAINER(scroll), mail_ctree);
gtk_widget_show_all(mail_ctree);
- if (config.ml_linestyle == 0)
+ if (g_strcasecmp(g_strdup("0"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_NONE);
- if (config.ml_linestyle == 1)
+ if (g_strcasecmp(g_strdup("1"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_SOLID);
- if (config.ml_linestyle == 2)
+ if (g_strcasecmp(g_strdup("2"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_DOTTED);
- if (config.ml_linestyle == 3)
+ if (g_strcasecmp(g_strdup("3"), (char *) rc_get_value("ml_linestyle")) == 0)
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_TABBED);
return (scroll);
@@ -619,25 +617,25 @@
void folder_ctree_change_line_style(gint type)
{
if (type == 0) {
- config.fl_linestyle = 0;
+ rc_set_value("fl_linestyle", "0");
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_NONE);
}
if (type == 1) {
- config.fl_linestyle = 1;
+ rc_set_value("fl_linestyle", "1");
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_SOLID);
}
if (type == 2) {
- config.fl_linestyle = 2;
+ rc_set_value("fl_linestyle", "2");
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_DOTTED);
}
if (type == 3) {
- config.fl_linestyle = 3;
+ rc_set_value("fl_linestyle", "3");
gtk_ctree_set_line_style(GTK_CTREE(folder_ctree),
GTK_CTREE_LINES_TABBED);
}
@@ -647,25 +645,25 @@
void mail_ctree_change_line_style(gint type)
{
if (type == 0) {
- config.ml_linestyle = 0;
+ rc_set_value("ml_linestyle", "0");
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_NONE);
}
if (type == 1) {
- config.ml_linestyle = 1;
+ rc_set_value("ml_linestyle", "1");
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_SOLID);
}
if (type == 2) {
- config.ml_linestyle = 2;
+ rc_set_value("ml_linestyle", "2");
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_DOTTED);
}
if (type == 3) {
- config.ml_linestyle = 3;
+ rc_set_value("ml_linestyle", "3");
gtk_ctree_set_line_style(GTK_CTREE(mail_ctree),
GTK_CTREE_LINES_TABBED);
}
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -3 -r1.11 -r1.12
--- prefs.c 2000/12/15 22:27:17 1.11
+++ prefs.c 2000/12/19 16:24:10 1.12
@@ -1,8 +1,12 @@
+#include <glib.h>
+#include <gtk/gtk.h>
+#include <stdio.h>
+#include <stdlib.h>
#include "core.h"
#include "util.h"
#include "prefs.h"
-extern ConfigData config;
+ConfigData *config;
extern GtkWidget *folder_ctree;
extern GtkWidget *mail_ctree;
extern GtkWidget *main_win;
@@ -146,7 +150,7 @@
gtk_widget_set_usize(GTK_WIDGET(def_font), 320, 20);
gtk_entry_set_editable(GTK_ENTRY(def_font), TRUE);
gtk_entry_set_text(GTK_ENTRY(def_font),
- config.default_font);
+ (char *) rc_get_value("default_font"));
gtk_table_attach(GTK_TABLE(table), def_font, 0, 1, 1, 2,
GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -167,7 +171,7 @@
new_font = gtk_entry_new();
gtk_widget_set_usize(GTK_WIDGET(new_font), 320, 20);
gtk_entry_set_editable(GTK_ENTRY(new_font), TRUE);
- gtk_entry_set_text(GTK_ENTRY(new_font), config.new_font);
+ gtk_entry_set_text(GTK_ENTRY(new_font), (char *) rc_get_value("new_font"));
gtk_table_attach(GTK_TABLE(table), new_font, 0, 1, 3, 4,
GTK_EXPAND | GTK_FILL, 0, 1, 1);
@@ -253,10 +257,8 @@
static void ok_clicked()
{
- config.default_font =
- g_strdup(gtk_entry_get_text(GTK_ENTRY(def_font)));
- config.new_font =
- g_strdup(gtk_entry_get_text(GTK_ENTRY(new_font)));
+ rc_set_value("default_font", gtk_entry_get_text(GTK_ENTRY(def_font)));
+ rc_set_value("new_font", gtk_entry_get_text(GTK_ENTRY(new_font)));
apply_clicked();
gtk_widget_destroy(pref_win);
}
@@ -326,7 +328,7 @@
}
-void config_read()
+/*void config_read()
{
FILE *config_file;
gchar *home;
@@ -338,7 +340,7 @@
config.xsize = 800;
config.ysize = 600;
config.tb_show = 1;
- config.tb_buttons = 2; /* 0 = TEXT 1 = ICONS 2 = BOTH */
+ config.tb_buttons = 2; 0 = TEXT 1 = ICONS 2 = BOTH
config.default_font =
g_strdup
("-schumacher-clean-medium-r-normal-*-*-120-*-*-c-*-iso8859-1");
@@ -447,4 +449,142 @@
fprintf(config_file, "theme=%s\n", config.theme);
g_free(rc);
return;
+}
+*/
+
+int rc_remove_key(char * key)
+{
+ char *tmp;
+
+ tmp = g_hash_table_lookup(config, key);
+ if (key && strlen(key)) {
+ if (tmp) {
+ g_hash_table_freeze(config);
+
+ g_hash_table_remove(config, key);
+
+ g_hash_table_thaw(config);
+ } else
+ return FALSE;
+ } else
+ return FALSE;
+
+ return TRUE;
+}
+
+int rc_set_value(char * key, char * value)
+{
+ char *tmp;
+
+ if (key && strlen(key)) {
+ if (value && strlen(value)) {
+ tmp = g_hash_table_lookup(config, key);
+ if (tmp) {
+ rc_remove_key(key);
+ g_free(tmp);
+ } else {
+ g_hash_table_freeze(config);
+
+ g_hash_table_insert(config, key, value);
+
+ g_hash_table_thaw(config);
+ }
+ } else
+ return FALSE;
+ } else
+ return FALSE;
+
+ return TRUE;
+}
+
+char *rc_get_value(char * key)
+{
+ char *tmp;
+
+ if (key && strlen(key)) {
+ tmp = g_hash_table_lookup(config, g_strdup(key));
+ if (tmp) {
+ return g_strdup(tmp);
+ g_free(tmp);
+ } else {
+ fprintf(stderr, "%sERROR:%s Key %s not found", RED, GREEN, g_strdup(key));
+ return FALSE;
+ }
+ } else {
+ fprintf(stderr, "%sERROR:%s Key not provided in rc_get_value", RED, GREEN);
+ return FALSE;
+ }
+
+ return FALSE;
+}
+
+
+int rc_set_defaults()
+{
+ config = g_hash_table_new(g_str_hash, g_str_equal);
+ rc_set_value("xsize", "800");
+ rc_set_value("ysize", "600");
+ rc_set_value("tb_show", "1");
+ rc_set_value("tb_buttons", "2"); /*0 = TEXT 1 = ICONS 2 = BOTH*/
+ rc_set_value("default_font",
+ "-schumacher-clean-medium-r-normal-*-*-120-*-*-c-*-iso8859-1");
+ rc_set_value("new_font",
+ "-schumacher-clean-bold-r-normal-*-*-120-*-*-c-*-iso646.1991-irv");
+ rc_set_value("ml_priority", "0");
+ rc_set_value("ml_read", "1");
+ rc_set_value("ml_attachment", "1");
+ rc_set_value("ml_score", "0");
+ rc_set_value("ml_from", "1");
+ rc_set_value("ml_subject", "1");
+ rc_set_value("ml_date", "1");
+ rc_set_value("ml_server", "0");
+ rc_set_value("ml_linestyle", "2");
+ rc_set_value("fl_linestyle", "2");
+ rc_set_value("theme", "Default");
+ return TRUE;
+}
+
+
+int rc_parse_into_hash()
+{
+
+
+ return TRUE;
+}
+
+int rc_write()
+{
+ FILE *config_file;
+ gchar *rc;
+
+ rc = g_strconcat(getenv("HOME"), "/.corerc", NULL);
+ config_file = fopen(rc, "w");
+ if (config_file == NULL) {
+ fprintf(config_file,
+ "%sERROR: %sFailed to write to %s\n", RED,
+ GREEN, rc);
+ return FALSE;
+ }
+
+ fprintf(config_file,
+ "# ~/.corerc: Created by core, do not modify\n");
+ fprintf(config_file, "xsize=%s\n", (char *) rc_get_value("xsize"));
+ fprintf(config_file, "ysize=%s\n", (char *) rc_get_value("ysize"));
+ fprintf(config_file, "tb_show=%s\n", (char *) rc_get_value("tb_show"));
+ fprintf(config_file, "tb_buttons=%s\n", (char *) rc_get_value("tb_buttons"));
+ fprintf(config_file, "default_font=%s\n", (char *) rc_get_value("default_font"));
+ fprintf(config_file, "new_font=%s\n", (char *) rc_get_value("new_font"));
+ fprintf(config_file, "ml_priority=%s\n", (char *) rc_get_value("ml_priority"));
+ fprintf(config_file, "ml_read=%s\n", (char *) rc_get_value("ml_read"));
+ fprintf(config_file, "ml_attachment=%s\n", (char *) rc_get_value("ml_attachment"));
+ fprintf(config_file, "ml_score=%s\n", (char *) rc_get_value("ml_score"));
+ fprintf(config_file, "ml_from=%s\n", (char *) rc_get_value("ml_from"));
+ fprintf(config_file, "ml_subject=%s\n", (char *) rc_get_value("ml_subject"));
+ fprintf(config_file, "ml_date=%s\n", (char *) rc_get_value("ml_date"));
+ fprintf(config_file, "ml_server=%s\n", (char *) rc_get_value("ml_server"));
+ fprintf(config_file, "ml_linestyle=%s\n", (char *) rc_get_value("ml_linestyle"));
+ fprintf(config_file, "fl_linestyle=%s\n", (char *) rc_get_value("fl_linestyle"));
+ fprintf(config_file, "theme=%s\n", (char *) rc_get_value("theme"));
+ g_free(rc);
+ return TRUE;
}
=================...
[truncated message content] |
|
From: CORE C. L. <cor...@so...> - 2000-12-19 16:43:22
|
Core CVS committal
Author : smugg
Project : core
Module : src
Modified Files:
main.c prefs.c
Log Message:
forgot to add a parser thing
===================================================================
RCS file: /cvsroot/corem/core/src/main.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -3 -r1.18 -r1.19
--- main.c 2000/12/19 16:24:10 1.18
+++ main.c 2000/12/19 16:42:51 1.19
@@ -64,6 +64,7 @@
}
rc_set_defaults();
+ rc_parse_into_hash();
/* Create main window */
create_core_main_window();
@@ -78,9 +79,9 @@
GtkWidget *main_menu;
GtkWidget *pane;
gint i = 0;
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
set_theme_dir();
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
title = g_strdup_printf("Core %s", CORE_VERSION);
main_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(main_win), 800,
@@ -91,39 +92,41 @@
gtk_signal_connect(GTK_OBJECT(main_win), "destroy",
core_main_quit, NULL);
gtk_widget_realize(main_win);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
main_vbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
gtk_container_add(GTK_CONTAINER(main_win), main_vbox);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
mhandle = gtk_handle_box_new();
gtk_handle_box_set_shadow_type(GTK_HANDLE_BOX(mhandle),
GTK_SHADOW_NONE);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
gtk_handle_box_set_handle_position(GTK_HANDLE_BOX(mhandle),
GTK_POS_LEFT);
gtk_handle_box_set_snap_edge(GTK_HANDLE_BOX(mhandle),
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), mhandle, FALSE, FALSE, 0);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
thandle = gtk_handle_box_new();
create_main_toolbar();
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
hpane = gtk_hpaned_new();
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
{
pane = core_create_folder_pane();
gtk_paned_pack1(GTK_PANED(hpane), pane, TRUE, TRUE);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
pane = core_create_mlist_pane();
gtk_paned_pack2(GTK_PANED(hpane), pane, TRUE, TRUE);
}
-g_print("%d", i); i++; /***************9***************/
+g_print("%d\n", i); i++; /***************9***************/
+ /*FIXME*/ /*FIXME*/ /*FIXME*/ /*FIXME*/ /*FIXME*/
main_menu = create_main_menu();
-g_print("%d", i); i++;
+ /*FIXME*/ /*FIXME*/ /*FIXME*/ /*FIXME*/ /*FIXME*/
+g_print("%d\n", i); i++;
gtk_container_set_border_width(GTK_CONTAINER(main_menu), 0);
gtk_container_add(GTK_CONTAINER(mhandle), main_menu);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
gtk_handle_box_set_shadow_type(GTK_HANDLE_BOX(thandle),
GTK_SHADOW_NONE);
gtk_handle_box_set_handle_position(GTK_HANDLE_BOX(thandle),
@@ -131,21 +134,21 @@
gtk_handle_box_set_snap_edge(GTK_HANDLE_BOX(thandle),
GTK_POS_LEFT);
gtk_box_pack_start(GTK_BOX(main_vbox), thandle, FALSE, FALSE, 0);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
gtk_box_pack_start(GTK_BOX(main_vbox), hpane, TRUE, TRUE, 0);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
gtk_widget_show_all(main_win);
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
if (GPOINTER_TO_INT(rc_get_value("tb_show")) == 0) {
gtk_widget_hide(thandle);
}
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
if (GPOINTER_TO_INT(rc_get_value("tb_buttons")) == 0) {
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_TEXT);
gtk_widget_queue_resize(GTK_WIDGET(thandle));
}
-g_print("%d", i); i++;
+g_print("%d\n", i); i++;
if (GPOINTER_TO_INT(rc_get_value("tb_buttons")) == 1) {
gtk_toolbar_set_style(GTK_TOOLBAR(toolbar),
GTK_TOOLBAR_ICONS);
===================================================================
RCS file: /cvsroot/corem/core/src/prefs.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- prefs.c 2000/12/19 16:24:10 1.12
+++ prefs.c 2000/12/19 16:42:51 1.13
@@ -328,130 +328,6 @@
}
-/*void config_read()
-{
- FILE *config_file;
- gchar *home;
- gchar *line;
- gchar *rc;
-
- bzero(&config, sizeof(ConfigData));
-
- config.xsize = 800;
- config.ysize = 600;
- config.tb_show = 1;
- config.tb_buttons = 2; 0 = TEXT 1 = ICONS 2 = BOTH
- config.default_font =
- g_strdup
- ("-schumacher-clean-medium-r-normal-*-*-120-*-*-c-*-iso8859-1");
- config.new_font =
- g_strdup
- ("-schumacher-clean-bold-r-normal-*-*-120-*-*-c-*-iso646.1991-irv");
- config.ml_priority = 0;
- config.ml_read = 1;
- config.ml_attachment = 1;
- config.ml_score = 0;
- config.ml_from = 1;
- config.ml_subject = 1;
- config.ml_date = 1;
- config.ml_server = 0;
- config.ml_linestyle = 2;
- config.fl_linestyle = 2;
- config.theme = g_strdup("Default");
- home = getenv("HOME");
- rc = g_strconcat(home, "/.corerc", NULL);
-
- config_file = fopen(rc, "r");
- if (config_file == NULL) {
- config_write();
- return;
- }
- line = get_next_line(config_file);
- while (line != NULL) {
- if (g_strncasecmp(line, "xsize=", 6) == 0) {
- config.xsize = atoi(line + 6);
- } else if (g_strncasecmp(line, "ysize=", 6) == 0) {
- config.ysize = atoi(line + 6);
- } else if (g_strncasecmp(line, "tb_show=", 8) == 0) {
- config.tb_show = atoi(line + 8);
- } else if (g_strncasecmp(line, "tb_buttons=", 11) == 0) {
- config.tb_buttons = atoi(line + 11);
- } else if (g_strncasecmp(line, "default_font=", 13) == 0) {
- config.default_font = g_strdup(line + 13);
- } else if (g_strncasecmp(line, "new_font=", 9) == 0) {
- config.new_font = g_strdup(line + 9);
- } else if (g_strncasecmp(line, "ml_priority=", 12) == 0) {
- config.ml_priority = atoi(line + 12);
- } else if (g_strncasecmp(line, "ml_read=", 8) == 0) {
- config.ml_read = atoi(line + 8);
- } else if (g_strncasecmp(line, "ml_attachment=", 14) == 0) {
- config.ml_attachment = atoi(line + 14);
- } else if (g_strncasecmp(line, "ml_score=", 9) == 0) {
- config.ml_score = atoi(line + 9);
- } else if (g_strncasecmp(line, "ml_from=", 8) == 0) {
- config.ml_from = atoi(line + 8);
- } else if (g_strncasecmp(line, "ml_subject=", 11) == 0) {
- config.ml_subject = atoi(line + 11);
- } else if (g_strncasecmp(line, "ml_date=", 8) == 0) {
- config.ml_date = atoi(line + 8);
- } else if (g_strncasecmp(line, "ml_server=", 10) == 0) {
- config.ml_server = atoi(line + 10);
- } else if (g_strncasecmp(line, "ml_linestyle=", 13) == 0) {
- config.ml_linestyle = atoi(line + 13);
- } else if (g_strncasecmp(line, "fl_linestyle=", 13) == 0) {
- config.fl_linestyle = atoi(line + 13);
- } else if (g_strncasecmp(line, "theme=", 6) == 0) {
- config.theme = g_strdup(line + 6);
- }
- g_free(line);
- line = get_next_line(config_file);
- }
- if (line)
- g_free(line);
- fclose(config_file);
- g_free(rc);
-}
-
-void config_write()
-{
- FILE *config_file;
- gchar *home;
- gchar *rc;
-
- home = getenv("HOME");
- rc = g_strconcat(home, "/.corerc", NULL);
- config_file = fopen(rc, "w");
- if (config_file == NULL) {
- fprintf(config_file,
- "%sERROR: %sMalloc failed, Exiting....\n", RED,
- GREEN);
- return;
- }
-
- fprintf(config_file,
- "# ~/.corerc: Created by core, do not modify\n");
- fprintf(config_file, "xsize=%d\n", config.xsize);
- fprintf(config_file, "ysize=%d\n", config.ysize);
- fprintf(config_file, "tb_show=%d\n", config.tb_show);
- fprintf(config_file, "tb_buttons=%d\n", config.tb_buttons);
- fprintf(config_file, "default_font=%s\n", config.default_font);
- fprintf(config_file, "new_font=%s\n", config.new_font);
- fprintf(config_file, "ml_priority=%d\n", config.ml_priority);
- fprintf(config_file, "ml_read=%d\n", config.ml_read);
- fprintf(config_file, "ml_attachment=%d\n", config.ml_attachment);
- fprintf(config_file, "ml_score=%d\n", config.ml_score);
- fprintf(config_file, "ml_from=%d\n", config.ml_from);
- fprintf(config_file, "ml_subject=%d\n", config.ml_subject);
- fprintf(config_file, "ml_date=%d\n", config.ml_date);
- fprintf(config_file, "ml_server=%d\n", config.ml_server);
- fprintf(config_file, "ml_linestyle=%d\n", config.ml_linestyle);
- fprintf(config_file, "fl_linestyle=%d\n", config.fl_linestyle);
- fprintf(config_file, "theme=%s\n", config.theme);
- g_free(rc);
- return;
-}
-*/
-
int rc_remove_key(char * key)
{
char *tmp;
@@ -547,7 +423,67 @@
int rc_parse_into_hash()
{
+ FILE *config_file;
+ gchar *line;
+ gchar *rc;
+
+ if (!getenv("HOME")) {
+ fprintf(stderr, "%sERROR:%s Environment variable HOME not set.\n", RED, GREEN);
+ return FALSE;
+ }
+
+ rc = g_strconcat(getenv("HOME"), "/.corerc", NULL);
+ config_file = fopen(rc, "r");
+ if (config_file == NULL) {
+ rc_write();
+ return FALSE;
+ }
+ line = get_next_line(config_file);
+ while (line != NULL) {
+ if (g_strncasecmp(line, "xsize=", 6) == 0) {
+ rc_set_value("xsize", line + 6);
+ } else if (g_strncasecmp(line, "ysize=", 6) == 0) {
+ rc_set_value("ysize", line + 6);
+ } else if (g_strncasecmp(line, "tb_show=", 8) == 0) {
+ rc_set_value("tb_show", line + 8);
+ } else if (g_strncasecmp(line, "tb_buttons=", 11) == 0) {
+ rc_set_value("tb_buttons", line + 11);
+ } else if (g_strncasecmp(line, "default_font=", 13) == 0) {
+ rc_set_value("default_font", line + 13);
+ } else if (g_strncasecmp(line, "new_font=", 9) == 0) {
+ rc_set_value("new_font", line + 9);
+ } else if (g_strncasecmp(line, "ml_priority=", 12) == 0) {
+ rc_set_value("ml_priority",line + 12);
+ } else if (g_strncasecmp(line, "ml_read=", 8) == 0) {
+ rc_set_value("ml_read", line + 8);
+ } else if (g_strncasecmp(line, "ml_attachment=", 14) == 0) {
+ rc_set_value("ml_attachment", line + 14);
+ } else if (g_strncasecmp(line, "ml_score=", 9) == 0) {
+ rc_set_value("ml_score", line + 9);
+ } else if (g_strncasecmp(line, "ml_from=", 8) == 0) {
+ rc_set_value("ml_from", line + 8);
+ } else if (g_strncasecmp(line, "ml_subject=", 11) == 0) {
+ rc_set_value("ml_subject", line + 11);
+ } else if (g_strncasecmp(line, "ml_date=", 8) == 0) {
+ rc_set_value("ml_date", line + 8);
+ } else if (g_strncasecmp(line, "ml_server=", 10) == 0) {
+ rc_set_value("ml_server", line + 10);
+ } else if (g_strncasecmp(line, "ml_linestyle=", 13) == 0) {
+ rc_set_value("ml_linestyle", line + 13);
+ } else if (g_strncasecmp(line, "fl_linestyle=", 13) == 0) {
+ rc_set_value("fl_linestyle", line + 13);
+ } else if (g_strncasecmp(line, "theme=", 6) == 0) {
+ rc_set_value("theme", line + 6);
+ }
+ g_free(line);
+ line = get_next_line(config_file);
+ }
+
+ if (line)
+ g_free(line);
+ fclose(config_file);
+ g_free(rc);
return TRUE;
}
|