aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-05-24 09:11:41 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-05-24 09:11:41 +0000
commitb71a63353f0582ced62925d73912545892ac1808 (patch)
treeeb9f27c2183f8e54f9bb28207883bf116a1c4272
parentf0aecea6fcbd3aaa8e36b39d952cdf6d2da3ac70 (diff)
added a toggle button for the attachment pane.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@283 ee746299-78ed-0310-b773-934348b2243d
-rw-r--r--ChangeLog4
-rw-r--r--ChangeLog.ja4
-rw-r--r--src/compose.c51
-rw-r--r--src/compose.h2
-rw-r--r--src/pixmaps/clip.xpm5
5 files changed, 57 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 01256e38..c6c1794a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2005-05-24
+ * src/compose.[ch]: added a toggle button for the attachment pane.
+
+2005-05-24
+
* src/compose.[ch]: reimplemented the attachment list with
GtkTreeView. Fixed attaching of locale filename.
* src/utils.c: uri_list_extract_filenames(): properly parse URI.
diff --git a/ChangeLog.ja b/ChangeLog.ja
index c7a2dbeb..27633dca 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,5 +1,9 @@
2005-05-24
+ * src/compose.[ch]: 添付ペインのトグルボタンを追加。
+
+2005-05-24
+
* src/compose.[ch]: 添付リストを GtkTreeView で再実装。 locale
ファイル名の添付を修正。
* src/utils.c: uri_list_extract_filenames(): URI を正しくパースする
diff --git a/src/compose.c b/src/compose.c
index 6424a529..edcdf299 100644
--- a/src/compose.c
+++ b/src/compose.c
@@ -385,10 +385,15 @@ static void compose_allsel_cb (Compose *compose);
static void compose_grab_focus_cb (GtkWidget *widget,
Compose *compose);
+#if USE_GPGME
static void compose_signing_toggled (GtkWidget *widget,
Compose *compose);
static void compose_encrypt_toggled (GtkWidget *widget,
Compose *compose);
+#endif
+
+static void compose_attach_toggled (GtkWidget *widget,
+ Compose *compose);
static void compose_changed_cb (GtkTextBuffer *textbuf,
Compose *compose);
@@ -3703,11 +3708,13 @@ static Compose *compose_create(PrefsAccount *account, ComposeMode mode)
GtkWidget *followup_entry;
GtkWidget *followup_hbox;
+ GtkWidget *misc_hbox;
#if USE_GPGME
- GtkWidget *gpg_hbox;
GtkWidget *signing_chkbtn;
GtkWidget *encrypt_chkbtn;
#endif /* USE_GPGME */
+ GtkWidget *attach_img;
+ GtkWidget *attach_toggle;
GtkWidget *paned;
@@ -3853,14 +3860,24 @@ static Compose *compose_create(PrefsAccount *account, ComposeMode mode)
g_signal_connect(G_OBJECT(subject_entry), "grab_focus",
G_CALLBACK(compose_grab_focus_cb), compose);
-#if USE_GPGME
- gpg_hbox = gtk_hbox_new(FALSE, 0);
- gtk_box_pack_start(GTK_BOX(vbox2), gpg_hbox, FALSE, FALSE, 0);
+ misc_hbox = gtk_hbox_new(FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox2), misc_hbox, FALSE, FALSE, 0);
+
+ attach_img = stock_pixbuf_widget(window, STOCK_PIXMAP_CLIP);
+ attach_toggle = gtk_toggle_button_new();
+ GTK_WIDGET_UNSET_FLAGS(attach_toggle, GTK_CAN_FOCUS);
+ gtk_container_add(GTK_CONTAINER(attach_toggle), attach_img);
+ gtk_box_pack_start(GTK_BOX(misc_hbox), attach_toggle, FALSE, FALSE, 8);
+ g_signal_connect(G_OBJECT(attach_toggle), "toggled",
+ G_CALLBACK(compose_attach_toggled), compose);
+#if USE_GPGME
signing_chkbtn = gtk_check_button_new_with_label(_("PGP Sign"));
- gtk_box_pack_start(GTK_BOX(gpg_hbox), signing_chkbtn, FALSE, FALSE, 8);
+ GTK_WIDGET_UNSET_FLAGS(signing_chkbtn, GTK_CAN_FOCUS);
+ gtk_box_pack_start(GTK_BOX(misc_hbox), signing_chkbtn, FALSE, FALSE, 8);
encrypt_chkbtn = gtk_check_button_new_with_label(_("PGP Encrypt"));
- gtk_box_pack_start(GTK_BOX(gpg_hbox), encrypt_chkbtn, FALSE, FALSE, 8);
+ GTK_WIDGET_UNSET_FLAGS(encrypt_chkbtn, GTK_CAN_FOCUS);
+ gtk_box_pack_start(GTK_BOX(misc_hbox), encrypt_chkbtn, FALSE, FALSE, 8);
g_signal_connect(G_OBJECT(signing_chkbtn), "toggled",
G_CALLBACK(compose_signing_toggled), compose);
@@ -3873,6 +3890,8 @@ static Compose *compose_create(PrefsAccount *account, ComposeMode mode)
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(attach_scrwin),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_ALWAYS);
+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(attach_scrwin),
+ GTK_SHADOW_IN);
gtk_widget_set_size_request(attach_scrwin, -1, 80);
store = gtk_list_store_new(N_ATTACH_COLS, G_TYPE_STRING, G_TYPE_STRING,
@@ -4093,6 +4112,8 @@ static Compose *compose_create(PrefsAccount *account, ComposeMode mode)
compose->followup_hbox = followup_hbox;
compose->followup_entry = followup_entry;
+ compose->misc_hbox = misc_hbox;
+ compose->attach_toggle = attach_toggle;
#if USE_GPGME
compose->signing_chkbtn = signing_chkbtn;
compose->encrypt_chkbtn = encrypt_chkbtn;
@@ -4196,6 +4217,8 @@ static Compose *compose_create(PrefsAccount *account, ComposeMode mode)
gtk_widget_set_sensitive(compose->exteditor_btn, FALSE);
gtk_widget_set_sensitive(compose->linewrap_btn, FALSE);
+ gtk_widget_set_sensitive(compose->attach_toggle, FALSE);
+
menu_set_sensitive_all(GTK_MENU_SHELL(compose->popupmenu),
FALSE);
}
@@ -5795,6 +5818,19 @@ static void compose_encrypt_toggled(GtkWidget *widget, Compose *compose)
}
#endif /* USE_GPGME */
+static void compose_attach_toggled(GtkWidget *widget, Compose *compose)
+{
+ GtkItemFactory *ifactory;
+
+ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
+ compose->use_attach = TRUE;
+ else
+ compose->use_attach = FALSE;
+
+ ifactory = gtk_item_factory_from_widget(compose->menubar);
+ menu_set_active(ifactory, "/View/Attachment", compose->use_attach);
+}
+
static void compose_changed_cb(GtkTextBuffer *textbuf, Compose *compose)
{
if (compose->modified == FALSE) {
@@ -5961,6 +5997,9 @@ static void compose_toggle_attach_cb(gpointer data, guint action,
compose->use_attach = FALSE;
}
+
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(compose->attach_toggle),
+ compose->use_attach);
}
#if USE_GPGME
diff --git a/src/compose.h b/src/compose.h
index 1f31a929..7a271a56 100644
--- a/src/compose.h
+++ b/src/compose.h
@@ -106,6 +106,8 @@ struct _Compose
GtkWidget *followup_hbox;
GtkWidget *followup_entry;
+ GtkWidget *misc_hbox;
+ GtkWidget *attach_toggle;
GtkWidget *signing_chkbtn;
GtkWidget *encrypt_chkbtn;
diff --git a/src/pixmaps/clip.xpm b/src/pixmaps/clip.xpm
index c425d203..2a72c5c2 100644
--- a/src/pixmaps/clip.xpm
+++ b/src/pixmaps/clip.xpm
@@ -1,6 +1,6 @@
/* XPM */
static char * clip_xpm[] = {
-"6 12 2 1",
+"6 11 2 1",
" c None",
". c #000000",
" ... ",
@@ -13,5 +13,4 @@ static char * clip_xpm[] = {
". .. .",
". .",
". .",
-" .... ",
-" "};
+" .... "};