Revision 1057 src/summaryview.c
| summaryview.c (revision 1057) | ||
|---|---|---|
| 242 | 242 |
static void summary_search_entry_activated |
| 243 | 243 |
(GtkWidget *entry, |
| 244 | 244 |
SummaryView *summaryview); |
| 245 |
static void summary_search_clear_clicked(GtkWidget *button, |
|
| 246 |
SummaryView *summaryview); |
|
| 245 | 247 |
|
| 246 | 248 |
static gboolean summary_toggle_pressed (GtkWidget *eventbox, |
| 247 | 249 |
GdkEventButton *event, |
| ... | ... | |
| 467 | 469 |
GtkWidget *search_label; |
| 468 | 470 |
GtkWidget *search_entry; |
| 469 | 471 |
GtkTooltips *search_tip; |
| 472 |
GtkWidget *search_vbox; |
|
| 473 |
GtkWidget *search_clear_btn; |
|
| 474 |
GtkWidget *image; |
|
| 470 | 475 |
GtkWidget *scrolledwin; |
| 471 | 476 |
GtkWidget *treeview; |
| 472 | 477 |
GtkTreeStore *store; |
| ... | ... | |
| 490 | 495 |
|
| 491 | 496 |
vbox = gtk_vbox_new(FALSE, 1); |
| 492 | 497 |
|
| 493 |
search_hbox = gtk_hbox_new(FALSE, 4);
|
|
| 498 |
search_hbox = gtk_hbox_new(FALSE, 0);
|
|
| 494 | 499 |
gtk_container_set_border_width(GTK_CONTAINER(search_hbox), 2); |
| 495 | 500 |
gtk_box_pack_start(GTK_BOX(vbox), search_hbox, FALSE, FALSE, 0); |
| 496 | 501 |
|
| ... | ... | |
| 517 | 522 |
#undef COND_MENUITEM_ADD |
| 518 | 523 |
|
| 519 | 524 |
hbox = gtk_hbox_new(FALSE, 0); |
| 520 |
gtk_widget_set_size_request(hbox, 4, -1);
|
|
| 525 |
gtk_widget_set_size_request(hbox, 8, -1);
|
|
| 521 | 526 |
gtk_box_pack_start(GTK_BOX(search_hbox), hbox, FALSE, FALSE, 0); |
| 522 | 527 |
|
| 523 | 528 |
search_label = gtk_label_new(_("Search:"));
|
| 524 | 529 |
gtk_box_pack_start(GTK_BOX(search_hbox), search_label, FALSE, FALSE, 0); |
| 525 | 530 |
|
| 531 |
hbox = gtk_hbox_new(FALSE, 0); |
|
| 532 |
gtk_widget_set_size_request(hbox, 4, -1); |
|
| 533 |
gtk_box_pack_start(GTK_BOX(search_hbox), hbox, FALSE, FALSE, 0); |
|
| 534 |
|
|
| 526 | 535 |
search_entry = gtk_entry_new(); |
| 527 | 536 |
gtk_widget_set_size_request(search_entry, 200, -1); |
| 528 | 537 |
gtk_box_pack_start(GTK_BOX(search_hbox), search_entry, FALSE, FALSE, 0); |
| ... | ... | |
| 536 | 545 |
gtk_tooltips_set_tip(search_tip, search_entry, |
| 537 | 546 |
_("Search for Subject or From"), NULL);
|
| 538 | 547 |
|
| 548 |
hbox = gtk_hbox_new(FALSE, 0); |
|
| 549 |
gtk_widget_set_size_request(hbox, 2, -1); |
|
| 550 |
gtk_box_pack_start(GTK_BOX(search_hbox), hbox, FALSE, FALSE, 0); |
|
| 551 |
|
|
| 552 |
search_vbox = gtk_vbox_new(FALSE, 0); |
|
| 553 |
gtk_box_pack_start(GTK_BOX(search_hbox), search_vbox, FALSE, FALSE, 0); |
|
| 554 |
|
|
| 555 |
search_clear_btn = gtk_button_new(); |
|
| 556 |
gtk_button_set_relief(GTK_BUTTON(search_clear_btn), GTK_RELIEF_NONE); |
|
| 557 |
gtk_widget_set_size_request(search_clear_btn, 20, 20); |
|
| 558 |
image = gtk_image_new_from_stock(GTK_STOCK_CLOSE, |
|
| 559 |
GTK_ICON_SIZE_MENU); |
|
| 560 |
gtk_container_add(GTK_CONTAINER(search_clear_btn), image); |
|
| 561 |
GTK_WIDGET_UNSET_FLAGS(search_clear_btn, GTK_CAN_FOCUS); |
|
| 562 |
gtk_box_pack_start(GTK_BOX(search_vbox), search_clear_btn, |
|
| 563 |
TRUE, FALSE, 0); |
|
| 564 |
g_signal_connect(G_OBJECT(search_clear_btn), "clicked", |
|
| 565 |
G_CALLBACK(summary_search_clear_clicked), summaryview); |
|
| 566 |
|
|
| 539 | 567 |
scrolledwin = gtk_scrolled_window_new(NULL, NULL); |
| 540 | 568 |
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwin), |
| 541 | 569 |
GTK_POLICY_AUTOMATIC, |
| ... | ... | |
| 596 | 624 |
summaryview->filter_menu = filter_menu; |
| 597 | 625 |
summaryview->search_label = search_label; |
| 598 | 626 |
summaryview->search_entry = search_entry; |
| 627 |
summaryview->search_clear_btn = search_clear_btn; |
|
| 599 | 628 |
summaryview->scrolledwin = scrolledwin; |
| 600 | 629 |
summaryview->treeview = treeview; |
| 601 | 630 |
summaryview->store = store; |
| ... | ... | |
| 619 | 648 |
summaryview->reedit_separator = GTK_WIDGET(child->next->data); |
| 620 | 649 |
|
| 621 | 650 |
gtk_widget_show_all(vbox); |
| 651 |
gtk_widget_hide(search_clear_btn); |
|
| 622 | 652 |
|
| 623 | 653 |
return summaryview; |
| 624 | 654 |
} |
| ... | ... | |
| 5063 | 5093 |
main_window_set_toolbar_sensitive(summaryview->mainwin); |
| 5064 | 5094 |
} |
| 5065 | 5095 |
|
| 5096 |
void summary_qsearch_clear_entry(SummaryView *summaryview) |
|
| 5097 |
{
|
|
| 5098 |
gtk_entry_set_text(GTK_ENTRY(summaryview->search_entry), ""); |
|
| 5099 |
summary_qsearch(summaryview); |
|
| 5100 |
} |
|
| 5101 |
|
|
| 5066 | 5102 |
void summary_qsearch(SummaryView *summaryview) |
| 5067 | 5103 |
{
|
| 5068 | 5104 |
FilterCondType type; |
| ... | ... | |
| 5191 | 5227 |
static void summary_search_entry_changed(GtkWidget *entry, |
| 5192 | 5228 |
SummaryView *summaryview) |
| 5193 | 5229 |
{
|
| 5230 |
const gchar *text; |
|
| 5231 |
|
|
| 5232 |
text = gtk_entry_get_text(GTK_ENTRY(entry)); |
|
| 5233 |
if (text && *text != '\0') |
|
| 5234 |
gtk_widget_show(summaryview->search_clear_btn); |
|
| 5235 |
else |
|
| 5236 |
gtk_widget_hide(summaryview->search_clear_btn); |
|
| 5194 | 5237 |
} |
| 5195 | 5238 |
|
| 5196 | 5239 |
static void summary_search_entry_activated(GtkWidget *entry, |
| ... | ... | |
| 5200 | 5243 |
summary_qsearch(summaryview); |
| 5201 | 5244 |
} |
| 5202 | 5245 |
|
| 5246 |
static void summary_search_clear_clicked(GtkWidget *button, |
|
| 5247 |
SummaryView *summaryview) |
|
| 5248 |
{
|
|
| 5249 |
summary_qsearch_clear_entry(summaryview); |
|
| 5250 |
} |
|
| 5251 |
|
|
| 5203 | 5252 |
static gboolean summary_toggle_pressed(GtkWidget *eventbox, |
| 5204 | 5253 |
GdkEventButton *event, |
| 5205 | 5254 |
SummaryView *summaryview) |
Also available in: Unified diff