summaryrefslogtreecommitdiff
diff options
authorMarco Trevisan (Treviño) <mail@3v1n0.net>2013-01-22 21:08:27 +0100
committerMarco Trevisan (Treviño) <mail@3v1n0.net>2013-01-22 21:08:27 +0100
commit93916dbe38ad0cdefb76a5be5353479bee8bd306 (patch)
tree88bdcf81b069f6a97918e45f9e580aaeba8078d1
parent7f7d695b232285c5e2cb365faa2811c1c81f29c7 (diff)
AbstractShortcutModeller: added an abstract shortcut modeller
(bzr r2919.3.50)
-rw-r--r--shortcuts/AbstractShortcutModeller.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/shortcuts/AbstractShortcutModeller.h b/shortcuts/AbstractShortcutModeller.h
new file mode 100644
index 000000000..fd5afa037
--- /dev/null
+++ b/shortcuts/AbstractShortcutModeller.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2013 Canonical Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3, as published
+ * by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranties of
+ * MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * version 3 along with this program. If not, see
+ * <http://www.gnu.org/licenses/>
+ *
+ * Authored by: Marco Trevisan <marco.trevisan@canonical.com>
+ */
+
+#ifndef UNITYSHELL_ABSTRACT_SHORTCUT_MODELLER_H
+#define UNITYSHELL_ABSTRACT_SHORTCUT_MODELLER_H
+
+#include "ShortcutModel.h"
+
+namespace unity
+{
+namespace shortcut
+{
+
+class AbstractModeller : boost::noncopyable
+{
+public:
+ typedef std::shared_ptr<AbstractModeller> Ptr;
+
+ AbstractModeller() {}
+ virtual ~AbstractModeller() {}
+
+ virtual Model::Ptr GetCurrentModel() const = 0;
+
+ sigc::signal<void, Model::Ptr const&> model_changed;
+};
+
+}
+}
+
+#endif