]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/IconPalette.h
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / IconPalette.h
index ed1fb2ae492b5adba6a6c4de410c98d830c449b3..de16fb55e424345bd3cd2fc6af195e2bc61b25ad 100644 (file)
 
 #include <QWidget>
 #include <QMenu>
-#include <QLayout>
-#include "Action.h"
 
-// FIXME: this can go when we move to Qt 4.3
-#define QT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
-
-#if QT_VERSION >= QT_VERSION_CHECK(4, 2, 0)
-#include <QWidgetAction>
-#endif
+class QGridLayout;
 
 namespace lyx {
 namespace frontend {
 
 /**
- * For holding an arbitrary set of icons.
- */
-#if QT_VERSION >= QT_VERSION_CHECK(4, 2, 0)
-
-class IconPalette : public QWidgetAction {
+  * tear-off widget
+  */
+class TearOff : public QWidget {
        Q_OBJECT
 public:
-       IconPalette(QWidget * parent);
-       void addButton(QAction *);
-       QWidget * createWidget(QWidget * parent);
-public Q_SLOTS:
-       void updateParent();
-       void setIconSize(const QSize &);
+       TearOff(QWidget * parent);
+       void enterEvent(QEvent *);
+       void leaveEvent(QEvent *);
+       void mouseReleaseEvent (QMouseEvent *);
 Q_SIGNALS:
-       void enabled(bool);
-       void iconSizeChanged(const QSize &);
+       void tearOff();
+protected:
+       void paintEvent(QPaintEvent *);
 private:
-       QList<QAction *> actions_;
-       QSize size_;
+       bool highlighted_;
 };
 
-#else
 
+/**
+ * For holding an arbitrary set of icons.
+ */
 class IconPalette : public QWidget {
        Q_OBJECT
 public:
        IconPalette(QWidget * parent);
        void addButton(QAction *);
 
-public Q_SLOTS:
-       void updateParent();
-
 Q_SIGNALS:
        void triggered(QAction *);
        void visible(bool);
@@ -70,14 +58,16 @@ protected:
        void paintEvent(QPaintEvent * event);
 
 private Q_SLOTS:
+       void tearOff();
        virtual void clicked(QAction *);
 
 private:
        QGridLayout * layout_;
        QList<QAction *> actions_;
+       bool tornoff_;
+       TearOff * tearoffwidget_; 
 };
 
-#endif // QT_VERSION >= QT_VERSION_CHECK(4, 2, 0)
 
 /**
  * Popup menu for a toolbutton.
@@ -88,7 +78,7 @@ private:
 class ButtonMenu : public QMenu {
        Q_OBJECT
 public:
-       ButtonMenu(const QString & title, QWidget * parent = 0 );
+       ButtonMenu(const QString & title, QWidget * parent);
        void add(QAction *);
 
 public Q_SLOTS: