X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=pirkeysetmanager.h;h=aed42ce6d5da7642a1129e098cea9632c404d148;hb=946845241309761b49151cc3c7a597dc4b969961;hp=e610ef620c128a67ef5f01bd5f9d694878ef33f9;hpb=0a6a5445443c6871b41f21bbc6ca0a613a55de0b;p=pierogi diff --git a/pirkeysetmanager.h b/pirkeysetmanager.h index e610ef6..aed42ce 100644 --- a/pirkeysetmanager.h +++ b/pirkeysetmanager.h @@ -1,52 +1,71 @@ #ifndef PIRKEYSETMANAGER_H #define PIRKEYSETMANAGER_H -#include "pirkeysetmetadata.h" -//#include "protocol.h" #include "pirkeynames.h" -//#include "selectionwindow.h" -#include "pirselectkeysetform.h" -#include "pirkeysetwidgetitem.h" +#include "pirmakenames.h" -//#include +#include #include -//#include + +class QObject; +class PIRSelectKeysetForm; +class PIRKeysetWidgetItem; #include +class PIRKeysetMetaData; + +typedef std::map PIRKeysetCollection; -typedef std::map PIRKeysetCollection; +// Maps used to locate metadata using QSettings values: +typedef std::map PIRKeysetNameIndex; +typedef std::map PIRKeysetMakeIndex; class PIRKeysetManager { public: - PIRKeysetManager( - QObject *guiObject); + PIRKeysetManager(); ~PIRKeysetManager(); void populateGuiWidget( - PIRSelectKeysetForm *widget); + PIRSelectKeysetForm *widget) const; + + bool keysetExists( + unsigned int keysetID) const; + + bool findKeysetID( + QString make, + QString name, + unsigned int &id) const; + + PIRKeysetWidgetItem *makeKeysetItem( + QString make, + QString name) const; bool hasKey( - int keysetID, - PIRKeyName name); + unsigned int keysetID, + PIRKeyName name) const; PIRMakeName getMake( - int keysetID); + unsigned int keysetID) const; QString getDisplayName( - int keysetID); + unsigned int keysetID) const; void populateDeviceTypes( PIRKeysetWidgetItem *kwi, - int keysetID); + unsigned int keysetID) const; -private: - // This needs to be improved: void populateKeyset( + QObject *guiObject, + unsigned int keysetID); + +private: + void setupKeyset( PIRKeysetMetaData *keyset); PIRKeysetCollection keysetsInfo; + PIRKeysetMakeIndex makeIndex; // The counter will be used to generate unique ids for each keyset: unsigned int counter;