summaryrefslogtreecommitdiff
path: root/libopie2/opieui
authorzecke <zecke>2004-03-24 00:06:20 (UTC)
committer zecke <zecke>2004-03-24 00:06:20 (UTC)
commitdbde00826e485c509471961a15f95395a81b3b72 (patch) (side-by-side diff)
tree92ac26cc77cb6f9df4c49606b2b791adedb1ba48 /libopie2/opieui
parentc8acbf192ca4aa64ed66306ca872cb3860590b3c (diff)
downloadopie-dbde00826e485c509471961a15f95395a81b3b72.zip
opie-dbde00826e485c509471961a15f95395a81b3b72.tar.gz
opie-dbde00826e485c509471961a15f95395a81b3b72.tar.bz2
Ideas from Mickey. Install eventFilter for a widget as well and then
send a signal
Diffstat (limited to 'libopie2/opieui') (more/less context) (show whitespace changes)
-rw-r--r--libopie2/opieui/okeyconfigwidget.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/libopie2/opieui/okeyconfigwidget.h b/libopie2/opieui/okeyconfigwidget.h
index d76ea46..bcbb579 100644
--- a/libopie2/opieui/okeyconfigwidget.h
+++ b/libopie2/opieui/okeyconfigwidget.h
@@ -6,91 +6,100 @@
#include <qstring.h>
#include <qpixmap.h>
#include <qbytearray.h>
#include <qhbox.h>
#include <qvaluelist.h>
class QKeyEvent;
namespace Opie {
namespace Ui {
class OKeyConfigItem {
friend class OKeyConfigManager;
public:
typedef QValueList<OKeyConfigItem> OKeyConfigItemList;
OKeyConfigItem( const QString& text = QString::null , const QCString& config_key = QCString(),
const QPixmap& symbol = QPixmap(),
int key = 0, int mod = 0,
int default_key = 0, int default_modified = 0 );
~OKeyConfigItem();
QString text()const;
QPixmap pixmap()const;
int key()const;
int modifier()const;
int defaultKey()const;
int defaultModifier()const;
void setText( const QString& text );
void setPixmap( const QPixmap& );
void setKey( int );
void setModied( int );
void setDefaultKey( int );
void setDefaultModifier( int );
bool isConfigured()const;
bool isEmpty()const;
private:
QString m_text;
QCString m_config;
QPixmap m_pix;
int m_key;
int m_mod;
int m_defKey;
int m_defMod;
class Private;
Private *d;
};
class OKeyConfig : public QObject {
Q_OBJECT
public:
OKeyConfig(Opie::Core::OConfig *conf = 0, bool grabkeyboard);
~OKeyConfig();
void load();
void save();
OKeyConfigItem handleKeyEvent( QKeyEvent* );
QString handleKeyEventString( QKeyEvent* );
void addKeyConfig( const OKeyConfigItem& );
void removeKeyConfig( const OKeyConfigItem& );
+
+ void handleWidget( QWidget* );
signals:
void keyConfigChanged( OKeyConfig* );
+ void actionActivated( QWidget*, QKeyEvent*, const OKeyConfigItem& );
private:
OKeyConfigItemList m_keys;
+ QValueList<QWidget*> m_widgets;
+ class Private;
+ Private *d;
};
class OKeyConfigWidget : public QHBox {
Q_OBJECT
public:
enum ChangeMode { Imediate, Queu };
OKeyConfigWidget( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
OKeyConfigWidget( OKeyConfig *, QWidget* parent = 0, const char* = 0, WFlags = 0 );
~OKeyConfigWidget();
void setChangeMode( enum ChangeMode );
ChangeMode changeMode()const;
void reload();
+private:
+ class Private;
+ Private *d;
};
}
}
#endif