public QueryWidget (PhotoQuery query, Db db, TagSelectionWidget selector) { tips.Enable (); this.query = query; query.Changed += HandleChanged; Gtk.HSeparator sep = new Gtk.HSeparator (); sep.Show (); this.PackStart (sep, false, false, 0); Gtk.HBox hbox = new Gtk.HBox (); hbox.Show (); this.PackStart (hbox, false, false, 0); label = new Gtk.Label (Catalog.GetString ("Find: ")); label.Show (); label.Ypad = 9; hbox.PackStart (label, false, false, 0); untagged = new Gtk.Label (Catalog.GetString ("Untagged photos")); untagged.Visible = false; hbox.PackStart (untagged, false, false, 0); comma_label = new Gtk.Label (", "); comma_label.Visible = false; hbox.PackStart (comma_label, false, false, 0); rollfilter = new Gtk.Label (Catalog.GetString ("Import roll")); rollfilter.Visible = false; hbox.PackStart (rollfilter, false, false, 0); logic_widget = new LogicWidget (query, db.Tags, selector); logic_widget.Show (); hbox.PackStart (logic_widget, true, true, 0); warning_box = new Gtk.HBox (); warning_box.PackStart (new Gtk.Label (System.String.Empty)); Gtk.Image warning_image = new Gtk.Image ("gtk-info", Gtk.IconSize.Button); warning_image.Show (); warning_box.PackStart (warning_image, false, false, 0); clear_button = new Gtk.Button (); clear_button.Add (new Gtk.Image ("gtk-close", Gtk.IconSize.Button)); clear_button.Clicked += HandleClearButtonClicked; clear_button.Relief = Gtk.ReliefStyle.None; hbox.PackEnd (clear_button, false, false, 0); tips.SetTip (clear_button, Catalog.GetString("Clear search"), null); Gtk.Label warning = new Gtk.Label (Catalog.GetString ("No matching photos found")); warning_box.PackStart (warning, false, false, 0); warning_box.ShowAll (); warning_box.Spacing = 6; warning_box.Visible = false; hbox.PackEnd (warning_box, false, false, 0); warning_box.Visible = false; }
public LogicWidget(PhotoQuery query, TagStore tag_store) : base() { //SetFlag (WidgetFlags.NoWindow); this.query = query; CanFocus = true; Sensitive = true; Literal.Tips = tips; tips.Enable (); Init (); tag_store.ItemsChanged += HandleTagChanged; tag_store.ItemsRemoved += HandleTagDeleted; Show (); logic_widget = this; }
public QueryWidget(PhotoQuery query, Db db) : base(new HBox()) { box = Child as HBox; box.Spacing = 6; box.BorderWidth = 2; tips.Enable (); this.query = query; query.Changed += HandleChanged; label = new Gtk.Label (Catalog.GetString ("Find: ")); label.Show (); label.Ypad = 9; box.PackStart (label, false, false, 0); untagged = new Gtk.Label (Catalog.GetString ("Untagged photos")); untagged.Visible = false; box.PackStart (untagged, false, false, 0); comma1_label = new Gtk.Label (", "); comma1_label.Visible = false; box.PackStart (comma1_label, false, false, 0); rated = new Gtk.Label (Catalog.GetString ("Rated photos")); rated.Visible = false; box.PackStart (rated, false, false, 0); comma2_label = new Gtk.Label (", "); comma2_label.Visible = false; box.PackStart (comma2_label, false, false, 0); // Note for translators: 'Import roll' is no command, it means 'Roll that has been imported' rollfilter = new Gtk.Label (Catalog.GetString ("Import roll")); rollfilter.Visible = false; box.PackStart (rollfilter, false, false, 0); folder_query_widget = new FolderQueryWidget (query); folder_query_widget.Visible = false; box.PackStart (folder_query_widget, false, false, 0); logic_widget = new LogicWidget (query, db.Tags); logic_widget.Show (); box.PackStart (logic_widget, true, true, 0); warning_box = new Gtk.HBox (); warning_box.PackStart (new Gtk.Label (System.String.Empty)); Gtk.Image warning_image = new Gtk.Image ("gtk-info", Gtk.IconSize.Button); warning_image.Show (); warning_box.PackStart (warning_image, false, false, 0); clear_button = new Gtk.Button (); clear_button.Add (new Gtk.Image ("gtk-close", Gtk.IconSize.Button)); clear_button.Clicked += HandleClearButtonClicked; clear_button.Relief = Gtk.ReliefStyle.None; box.PackEnd (clear_button, false, false, 0); tips.SetTip (clear_button, Catalog.GetString("Clear search"), null); refresh_button = new Gtk.Button (); refresh_button.Add (new Gtk.Image ("gtk-refresh", Gtk.IconSize.Button)); refresh_button.Clicked += HandleRefreshButtonClicked; refresh_button.Relief = Gtk.ReliefStyle.None; box.PackEnd (refresh_button, false, false, 0); tips.SetTip (refresh_button, Catalog.GetString("Refresh search"), null); Gtk.Label warning = new Gtk.Label (Catalog.GetString ("No matching photos found")); warning_box.PackStart (warning, false, false, 0); warning_box.ShowAll (); warning_box.Spacing = 6; warning_box.Visible = false; box.PackEnd (warning_box, false, false, 0); warning_box.Visible = false; }