diff options
author | Robert Jonsson <spamatica@gmail.com> | 2010-10-13 19:34:22 +0000 |
---|---|---|
committer | Robert Jonsson <spamatica@gmail.com> | 2010-10-13 19:34:22 +0000 |
commit | 8a2c2824a59d7644e13bc52c9a0ecbd641f21f95 (patch) | |
tree | 064ad3f2bf8daab0ad27b128abd86a9bbdb1e496 /muse2/muse/widgets/combobox.cpp | |
parent | a27706d9629e8b592cca4659f865b70adef24e6d (diff) |
new branch muse2, first checkin
Diffstat (limited to 'muse2/muse/widgets/combobox.cpp')
-rw-r--r-- | muse2/muse/widgets/combobox.cpp | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/muse2/muse/widgets/combobox.cpp b/muse2/muse/widgets/combobox.cpp new file mode 100644 index 00000000..35959636 --- /dev/null +++ b/muse2/muse/widgets/combobox.cpp @@ -0,0 +1,74 @@ +//========================================================= +// MusE +// Linux Music Editor +// $Id: combobox.cpp,v 1.4 2004/05/06 15:08:07 wschweer Exp $ +// (C) Copyright 2004 Werner Schweer (ws@seh.de) +//========================================================= + +#include <q3popupmenu.h> +#include <qcursor.h> +//Added by qt3to4: +#include <QMouseEvent> +#include <Q3Frame> +#include <QLabel> +#include "combobox.h" + +//--------------------------------------------------------- +// ComboBox +//--------------------------------------------------------- + +ComboBox::ComboBox(QWidget* parent, const char* name) + : QLabel(parent, name) + { + _currentItem = 0; + _id = -1; + list = new Q3PopupMenu(0, "comboPopup"); + connect(list, SIGNAL(activated(int)), SLOT(activatedIntern(int))); + setFrameStyle(Q3Frame::Panel | Q3Frame::Raised); + setLineWidth(2); + } + +ComboBox::~ComboBox() + { + delete list; + } + +//--------------------------------------------------------- +// mousePressEvent +//--------------------------------------------------------- + +void ComboBox::mousePressEvent(QMouseEvent*) + { + list->exec(QCursor::pos()); + } + +//--------------------------------------------------------- +// activated +//--------------------------------------------------------- + +void ComboBox::activatedIntern(int n) + { + _currentItem = n; + emit activated(n, _id); + setText(list->text(_currentItem)); + } + +//--------------------------------------------------------- +// setCurrentItem +//--------------------------------------------------------- + +void ComboBox::setCurrentItem(int i) + { + _currentItem = i; + setText(list->text(list->idAt(_currentItem))); + } + +//--------------------------------------------------------- +// insertItem +//--------------------------------------------------------- + +void ComboBox::insertItem(const QString& s, int id, int idx) + { + list->insertItem(s, id, idx); + } + |