2
* Copyright (C) 2010 Michal Hruby <michal.mhr@gmail.com>
4
* This library is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
9
* This library is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
14
* You should have received a copy of the GNU Lesser General Public License
15
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
* Authored by Michal Hruby <michal.mhr@gmail.com>
23
public interface Activatable : Object
25
// this property will eventually go away
26
public abstract bool enabled { get; set; default = true; }
28
public abstract void activate ();
29
public abstract void deactivate ();
32
public interface Configurable : Object
34
public abstract Gtk.Widget create_config_widget ();
37
public interface ItemProvider : Activatable
39
public abstract async ResultSet? search (Query query) throws SearchError;
40
public virtual bool handles_query (Query query)
44
public virtual bool handles_empty_query ()
50
public interface ActionProvider : Activatable
52
public abstract ResultSet? find_for_match (ref Query query, Match match);
53
public virtual bool handles_unknown ()