]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/CustomizedWidgets.h
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / CustomizedWidgets.h
index cb01094446c21f43ab671a3f24857a08cc7d22e2..0741a64e8aa1844db14da9fa7267a67b3102b279 100644 (file)
@@ -6,6 +6,7 @@
  *
  * \author Bo Peng
  * \author Edwin Leuven
+ * \author Jürgen Spitzmüller
  *
  * Full author contact details are available in file CREDITS.
  */
 #ifndef CUSTOMIZEDWIDGETS_H
 #define CUSTOMIZEDWIDGETS_H
 
-#include <QEvent>
-#include <QCloseEvent>
-#include <QLineEdit>
+#include <QLabel>
+#include "KeySequence.h"
 
-/**
- * A lineedit for inputting shortcuts
- */
-class ShortcutLineEdit : public QLineEdit {
-       Q_OBJECT
-public:
-       ShortcutLineEdit(QWidget * parent) : QLineEdit(parent) {}
-protected Q_SLOTS:
-       void keyPressEvent(QKeyEvent * e);
-       bool event(QEvent * e);
-};
+class QEvent;
+class QKeyEvent;
 
+namespace lyx {
+namespace frontend {
 
 /**
-  * A lineedit that displays a hint message when there is no
-  * text and not under focus.
-  */
-class SearchLineEdit : public QLineEdit {
+ * A widget for inputting shortcuts
+ */
+class ShortcutWidget : public QLabel {
        Q_OBJECT
 public:
-       QString const hintMessage() const;
-       SearchLineEdit(QWidget * parent) : QLineEdit(parent) {}
+       ShortcutWidget(QWidget * parent);
+       void reset();
+       bool eventFilter(QObject*, QEvent* e );
+       KeySequence const getKeySequence() const;
+       void setKeySequence(lyx::KeySequence const s);
+       void removeFromSequence();
 protected Q_SLOTS:
-       void focusInEvent(QFocusEvent * e);
-       void focusOutEvent(QFocusEvent * e);
+       bool event(QEvent* e);
+       void keyPressEvent(QKeyEvent * e);
+private:
+       void appendToSequence(QKeyEvent * e);
+       KeySequence keysequence_;
+       bool has_cursor_;
 };
 
+} // namespace frontend
+} // namespace lyx
 
 #endif // CUSTOMIZEDWIDGETS_H