#define ADDRESSBOOK_GUESS_FOLDER_NAME "NewFolder"
#define ADDRESSBOOK_GUESS_GROUP_NAME "NewGroup"
-#define EDITGROUP_WIDTH 580
-#define EDITGROUP_HEIGHT 340
-
typedef enum {
GROUP_COL_NAME = 0,
GROUP_COL_EMAIL = 1,
}
g_free( sName );
}
-
+
static void edit_group_cancel(GtkWidget *widget, gboolean *cancelled) {
*cancelled = TRUE;
gtk_main_quit();
}
text[ GROUP_COL_EMAIL ] = email->address;
text[ GROUP_COL_REMARKS ] = email->remarks;
-
+
row = gtk_clist_append( clist, text );
gtk_clist_set_row_data( clist, row, email );
return row;
static gboolean edit_group_list_group_button( GtkCList *clist, GdkEventButton *event, gpointer data ) {
if( ! event ) return FALSE;
-
+
if( event->button == 1 ) {
if( event->type == GDK_2BUTTON_PRESS ) {
edit_group_to_avail( NULL, NULL );
static gboolean edit_group_list_avail_button( GtkCList *clist, GdkEventButton *event, gpointer data ) {
if( ! event ) return FALSE;
-
+
if( event->button == 1 ) {
if( event->type == GDK_2BUTTON_PRESS ) {
edit_group_to_group( NULL, NULL );
return g_utf8_collate( name1, name2 );
}
+static void addressbook_edit_group_size_allocate_cb(GtkWidget *widget,
+ GtkAllocation *allocation)
+{
+ g_return_if_fail(allocation != NULL);
+
+ prefs_common.addressbookeditgroupwin_width = allocation->width;
+ prefs_common.addressbookeditgroupwin_height = allocation->height;
+}
+
static void addressbook_edit_group_create( gboolean *cancelled ) {
GtkWidget *window;
GtkWidget *vbox;
gchar *titles[ GROUP_N_COLS ];
gint i;
+ static GdkGeometry geometry;
+
titles[ GROUP_COL_NAME ] = _( "Name" );
- titles[ GROUP_COL_EMAIL ] = _("E-Mail Address");
+ titles[ GROUP_COL_EMAIL ] = _("Email Address");
titles[ GROUP_COL_REMARKS ] = _("Remarks");
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- gtk_widget_set_size_request(window, EDITGROUP_WIDTH, EDITGROUP_HEIGHT );
gtk_container_set_border_width(GTK_CONTAINER(window), 0);
gtk_window_set_title(GTK_WINDOW(window), _("Edit Group Data"));
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
- gtk_window_set_modal(GTK_WINDOW(window), TRUE);
+ gtk_window_set_modal(GTK_WINDOW(window), TRUE);
g_signal_connect(G_OBJECT(window), "delete_event",
G_CALLBACK(edit_group_delete_event),
cancelled);
g_signal_connect(G_OBJECT(window), "key_press_event",
G_CALLBACK(edit_group_key_pressed),
cancelled);
+ g_signal_connect(G_OBJECT(window), "size_allocate",
+ G_CALLBACK(addressbook_edit_group_size_allocate_cb), NULL);
vbox = gtk_vbox_new( FALSE, 6 );
gtk_container_set_border_width(GTK_CONTAINER(vbox), BORDER_WIDTH);
gtk_box_pack_start(GTK_BOX(vboxl), hboxh, FALSE, FALSE, 0);
label = gtk_label_new(_("Addresses in Group"));
gtk_box_pack_start(GTK_BOX(hboxh), label, TRUE, TRUE, 0);
- buttonAvail = gtk_button_new_with_label( _( " -> " ) );
+ buttonAvail = gtk_button_new_from_stock(GTK_STOCK_REMOVE);
gtk_box_pack_end(GTK_BOX(hboxh), buttonAvail, FALSE, FALSE, 0);
clist_swin = gtk_scrolled_window_new( NULL, NULL );
hboxh = gtk_hbox_new( FALSE, 0 );
gtk_container_set_border_width( GTK_CONTAINER(hboxh), 4 );
gtk_box_pack_start(GTK_BOX(vboxl), hboxh, FALSE, FALSE, 0);
- buttonGroup = gtk_button_new_with_label( _( " <- " ) );
+ buttonGroup = gtk_button_new_from_stock(GTK_STOCK_ADD);
gtk_box_pack_start(GTK_BOX(hboxh), buttonGroup, FALSE, FALSE, 0);
label = gtk_label_new(_("Available Addresses"));
gtk_box_pack_end(GTK_BOX(hboxh), label, TRUE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(hsbox), statusbar, TRUE, TRUE, BORDER_WIDTH);
/* Button panel */
- gtkut_stock_button_set_create(&hbbox, &ok_btn, GTK_STOCK_OK,
- &cancel_btn, GTK_STOCK_CANCEL,
+ gtkut_stock_button_set_create(&hbbox, &cancel_btn, GTK_STOCK_CANCEL,
+ &ok_btn, GTK_STOCK_OK,
NULL, NULL);
gtk_box_pack_end(GTK_BOX(vbox), hbbox, FALSE, FALSE, 0);
gtk_widget_grab_default(ok_btn);
g_signal_connect(G_OBJECT(clist_group), "button_press_event",
G_CALLBACK(edit_group_list_group_button), NULL);
+ if (!geometry.min_height) {
+ geometry.min_width = 580;
+ geometry.min_height = 340;
+ }
+
+ gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry,
+ GDK_HINT_MIN_SIZE);
+ gtk_widget_set_size_request(window,
+ prefs_common.addressbookeditgroupwin_width,
+ prefs_common.addressbookeditgroupwin_height);
+
groupeditdlg.window = window;
groupeditdlg.ok_btn = ok_btn;
groupeditdlg.cancel_btn = cancel_btn;
groupeditdlg.clist_avail = GTK_CLIST( clist_avail );
if( ! _edit_group_dfl_message_ ) {
- _edit_group_dfl_message_ = _( "Move E-Mail Addresses to or from Group with arrow buttons" );
+ _edit_group_dfl_message_ = _( "Move Email Addresses to or from Group with arrow buttons" );
}
}