summaryrefslogtreecommitdiff
path: root/src/searches/SavedSearchDialog.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/searches/SavedSearchDialog.vala')
-rw-r--r--src/searches/SavedSearchDialog.vala67
1 files changed, 34 insertions, 33 deletions
diff --git a/src/searches/SavedSearchDialog.vala b/src/searches/SavedSearchDialog.vala
index da7f7db..eb016d3 100644
--- a/src/searches/SavedSearchDialog.vala
+++ b/src/searches/SavedSearchDialog.vala
@@ -1,4 +1,4 @@
-/* Copyright 2011-2014 Yorba Foundation
+/* Copyright 2011-2015 Yorba Foundation
*
* This software is licensed under the GNU LGPL (version 2.1 or later).
* See the COPYING file in this distribution.
@@ -48,13 +48,12 @@ public class SavedSearchDialog {
set_type_combo_box(SearchCondition.SearchType.ANY_TEXT); // Sets default.
type_combo.changed.connect(on_type_changed);
- remove_button = new Gtk.Button();
- remove_button.set_label(" – ");
+ remove_button = new Gtk.Button.from_icon_name("list-remove-symbolic", Gtk.IconSize.BUTTON);
remove_button.button_press_event.connect(on_removed);
align = new Gtk.Alignment(0,0,0,0);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(type_combo, false, false, 0);
box.pack_start(align, false, false, 0);
box.pack_start(new Gtk.Alignment(0,0,0,0), true, true, 0); // Fill space.
@@ -172,6 +171,7 @@ public class SavedSearchDialog {
text_context.append_text(_("ends with"));
text_context.append_text(_("does not contain"));
text_context.append_text(_("is not set"));
+ text_context.append_text(_("is set"));
text_context.set_active(0);
text_context.changed.connect(on_changed);
@@ -180,7 +180,7 @@ public class SavedSearchDialog {
entry.set_activates_default(true);
entry.changed.connect(on_changed);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(text_context, false, false, 0);
box.pack_start(entry, false, false, 0);
box.show_all();
@@ -212,7 +212,9 @@ public class SavedSearchDialog {
}
public override bool is_complete() {
- return entry.text.chomp() != "" || get_text_context() == SearchConditionText.Context.IS_NOT_SET;
+ return entry.text.chomp() != "" ||
+ get_text_context() == SearchConditionText.Context.IS_NOT_SET ||
+ get_text_context() == SearchConditionText.Context.IS_SET;
}
private SearchConditionText.Context get_text_context() {
@@ -220,7 +222,8 @@ public class SavedSearchDialog {
}
private void on_changed() {
- if (get_text_context() == SearchConditionText.Context.IS_NOT_SET) {
+ if (get_text_context() == SearchConditionText.Context.IS_NOT_SET
+ || get_text_context() == SearchConditionText.Context.IS_SET) {
entry.hide();
} else {
entry.show();
@@ -255,7 +258,7 @@ public class SavedSearchDialog {
media_type.set_active(0);
media_type.changed.connect(on_changed);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(media_context, false, false, 0);
box.pack_start(media_type, false, false, 0);
box.show_all();
@@ -317,7 +320,7 @@ public class SavedSearchDialog {
modified_state.set_active(0);
modified_state.changed.connect(on_changed);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(modified_context, false, false, 0);
box.pack_start(modified_state, false, false, 0);
box.show_all();
@@ -372,7 +375,7 @@ public class SavedSearchDialog {
flagged_state.set_active(0);
flagged_state.changed.connect(on_changed);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(new Gtk.Label(_("is")), false, false, 0);
box.pack_start(flagged_state, false, false, 0);
box.show_all();
@@ -437,7 +440,7 @@ public class SavedSearchDialog {
context.set_active(0);
context.changed.connect(on_changed);
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(new Gtk.Label(_("is")), false, false, 0);
box.pack_start(rating, false, false, 0);
box.pack_start(context, false, false, 0);
@@ -512,7 +515,7 @@ public class SavedSearchDialog {
and = new Gtk.Label(_("and"));
- box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 8);
+ box = new Gtk.Box(Gtk.Orientation.HORIZONTAL, 3);
box.pack_start(context, false, false, 0);
box.pack_start(label_one, false, false, 0);
box.pack_start(and, false, false, 0);
@@ -604,14 +607,16 @@ public class SavedSearchDialog {
int orig_month = cal.month;
int orig_year = cal.year;
Gtk.Dialog d = new Gtk.Dialog.with_buttons(null, null,
- Gtk.DialogFlags.MODAL, Gtk.Stock.CANCEL, Gtk.ResponseType.REJECT,
- Gtk.Stock.OK, Gtk.ResponseType.ACCEPT);
+ Gtk.DialogFlags.MODAL, Resources.CANCEL_LABEL, Gtk.ResponseType.REJECT,
+ Resources.OK_LABEL, Gtk.ResponseType.ACCEPT);
d.set_modal(true);
d.set_resizable(false);
d.set_decorated(false);
((Gtk.Box) d.get_content_area()).add(cal);
ulong id_1 = cal.day_selected.connect(()=>{update_date_labels();});
- ulong id_2 = cal.day_selected_double_click.connect(()=>{d.close();});
+ ulong id_2 = cal.day_selected_double_click.connect(()=> {
+ d.response(Gtk.ResponseType.ACCEPT);
+ });
d.show_all();
int res = d.run();
if (res != Gtk.ResponseType.ACCEPT) {
@@ -656,14 +661,7 @@ public class SavedSearchDialog {
// Default is text search.
add_text_search();
row_list.get(0).allow_removal(false);
-
- // Add buttons for new search.
- dialog.add_action_widget(new Gtk.Button.from_stock(Gtk.Stock.CANCEL), Gtk.ResponseType.CANCEL);
- Gtk.Button ok_button = new Gtk.Button.from_stock(Gtk.Stock.OK);
- ok_button.can_default = true;
- dialog.add_action_widget(ok_button, Gtk.ResponseType.OK);
- dialog.set_default_response(Gtk.ResponseType.OK);
-
+
dialog.show_all();
set_valid(false);
}
@@ -673,12 +671,6 @@ public class SavedSearchDialog {
edit_mode = true;
setup_dialog();
- // Add close button.
- Gtk.Button close_button = new Gtk.Button.from_stock(Gtk.Stock.CLOSE);
- close_button.can_default = true;
- dialog.add_action_widget(close_button, Gtk.ResponseType.OK);
- dialog.set_default_response(Gtk.ResponseType.OK);
-
dialog.show_all();
// Load existing search into dialog.
@@ -701,12 +693,21 @@ public class SavedSearchDialog {
// Builds the dialog UI. Doesn't add buttons to the dialog or call dialog.show().
private void setup_dialog() {
builder = AppWindow.create_builder();
-
- dialog = builder.get_object("Search criteria") as Gtk.Dialog;
- dialog.set_parent_window(AppWindow.get_instance().get_parent_window());
+
+ dialog = new Gtk.Dialog.with_buttons(_("Search"),
+ (Gtk.Window) AppWindow.get_instance().get_parent_window(),
+ Gtk.DialogFlags.MODAL |
+ Gtk.DialogFlags.DESTROY_WITH_PARENT |
+ Gtk.DialogFlags.USE_HEADER_BAR,
+ _("Cancel"), Gtk.ResponseType.CANCEL,
+ _("OK"), Gtk.ResponseType.OK,
+ null);
+ dialog.set_resizable(false);
dialog.set_transient_for(AppWindow.get_instance());
+ dialog.set_default_response(Gtk.ResponseType.OK);
dialog.response.connect(on_response);
-
+ dialog.get_content_area().add(builder.get_object("criteria") as Gtk.Widget);
+
add_criteria = builder.get_object("Add search button") as Gtk.Button;
add_criteria.button_press_event.connect(on_add_criteria);