diff options
Diffstat (limited to 'attic/muse2-oom/muse2/muse/widgets/nentry.h')
-rw-r--r-- | attic/muse2-oom/muse2/muse/widgets/nentry.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/attic/muse2-oom/muse2/muse/widgets/nentry.h b/attic/muse2-oom/muse2/muse/widgets/nentry.h new file mode 100644 index 00000000..48343b4a --- /dev/null +++ b/attic/muse2-oom/muse2/muse/widgets/nentry.h @@ -0,0 +1,84 @@ +//========================================================= +// MusE +// Linux Music Editor +// $Id: nentry.h,v 1.1.1.1.2.2 2008/05/21 00:28:54 terminator356 Exp $ +// (C) Copyright 1999 Werner Schweer (ws@seh.de) +//========================================================= + +#ifndef __NENTRY_H__ +#define __NENTRY_H__ + +#include <QFrame> + +class QHBoxLayout; +class QLabel; +class QLineEdit; +class QTimer; + +class NentryFilter : public QObject { + Q_OBJECT + + protected: + bool eventFilter(QObject* object, QEvent* event); + public: + NentryFilter(QObject* parent); + }; + +//--------------------------------------------------------- +// Nentry +// numerical entry widget with optional label +//--------------------------------------------------------- + +class Nentry : public QFrame { + Q_OBJECT + + int button; + int starty; + bool drawFrame; + QTimer* timer; + int evx; + int timecount; + QHBoxLayout* layout; + QObject* filter; + QLabel* label; + int lPos; // label Position 0 - left, 1 - right + QWidget* focusW; + + protected: + QLineEdit* edit; + int val; + virtual void incValue(int x) = 0; + virtual void decValue(int x) = 0; + virtual bool setString(int, bool editable = false) = 0; + virtual bool setSValue(const QString&) = 0; + + private slots: + void repeat(); + + protected slots: + void endEdit(); + + public slots: + virtual void setValue(int); + + public: + Nentry(QWidget* parent, const QString& txt = QString(""), + int lPos = 0, bool dark=false); + + int value() const { return val; } + void setFrame(bool); + //void setAlignment(int flag) { edit->setAlignment(flag); } + void setText(const QString& s); + void setSize(int n); + void setDark(); + + void mousePress(QMouseEvent*); + void mouseMove(QMouseEvent*); + void mouseDoubleClick(QMouseEvent*); + void mouseRelease(QMouseEvent*); + void wheel(QWheelEvent*); + bool keyPress(QKeyEvent*); + void setFocusPolicy(Qt::FocusPolicy); + bool contextMenu(QContextMenuEvent*); + }; +#endif |