Code

Cleanup of device internal handling and API.
[inkscape.git] / src / device-manager.h
index 1bfb5120c109ea6ddb2ec6a4ea195452143f0a6c..c32a79bfa82e63fe84ebfbb65b230f81e3044423 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * Inkscape::DeviceManager - a view of input devices available.
  *
- * Copyright 2006  Jon A. Cruz  <jon@joncruz.org>
+ * Copyright 2010  Jon A. Cruz  <jon@joncruz.org>
  *
  * Released under GNU GPL, read the file 'COPYING' for more information
  */
@@ -42,7 +42,11 @@ class DeviceManager : public Glib::Object {
 public:
     static DeviceManager& getManager();
 
-    virtual std::list<InputDevice const *> getDevices() = 0;
+    virtual void loadConfig() = 0;
+    virtual void saveConfig() = 0;
+
+    virtual std::list<Glib::RefPtr<InputDevice const> > getDevices() = 0;
+
     virtual sigc::signal<void, const Glib::RefPtr<InputDevice>& > signalDeviceChanged() = 0;
     virtual sigc::signal<void, const Glib::RefPtr<InputDevice>& > signalAxesChanged() = 0;
     virtual sigc::signal<void, const Glib::RefPtr<InputDevice>& > signalButtonsChanged() = 0;
@@ -52,6 +56,10 @@ public:
     virtual void addButton(Glib::ustring const & id, gint button) = 0;
     virtual void setLinkedTo(Glib::ustring const & id, Glib::ustring const& link) = 0;
 
+    virtual void setMode( Glib::ustring const & id, Gdk::InputMode mode ) = 0;
+    virtual void setAxisUse( Glib::ustring const & id, guint index, Gdk::AxisUse use ) = 0;
+    virtual void setKey( Glib::ustring const & id, guint index, guint keyval, Gdk::ModifierType mods ) = 0;
+
 protected:
     DeviceManager();
     virtual ~DeviceManager();