| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*
- * Copyright (c) 2012-2026 Daniele Bartolini et al.
- * SPDX-License-Identifier: GPL-3.0-or-later
- */
- namespace Crown
- {
- public class EntrySearch : Gtk.Box
- {
- public Gtk.SearchEntry _entry;
- public signal void search_changed();
- public EntrySearch()
- {
- Object(orientation: Gtk.Orientation.HORIZONTAL);
- _entry = new Gtk.SearchEntry();
- _entry.focus_in_event.connect(on_focus_in);
- _entry.focus_out_event.connect(on_focus_out);
- _entry.search_changed.connect(() => search_changed());
- this.pack_start(_entry);
- }
- public string text {
- get { return _entry.text; }
- set { _entry.text = value; }
- }
- public void set_placeholder_text(string text)
- {
- _entry.set_placeholder_text(text);
- }
- public bool on_focus_in(Gdk.EventFocus ev)
- {
- var app = (LevelEditorApplication)GLib.Application.get_default();
- app.entry_any_focus_in(_entry);
- return Gdk.EVENT_PROPAGATE;
- }
- public bool on_focus_out(Gdk.EventFocus ef)
- {
- var app = (LevelEditorApplication)GLib.Application.get_default();
- app.entry_any_focus_out(_entry);
- return Gdk.EVENT_PROPAGATE;
- }
- }
- } /* namespace Crown */
|