3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
8 * Full author contact details are available in file CREDITS
14 #pragma implementation
19 #include "lengthcombo.h"
21 #include <qwhatsthis.h>
24 LengthCombo::LengthCombo(QWidget * parent, char * name)
25 : QComboBox(parent, name)
27 // FIXME: check these should all be here, I think not
44 connect(this, SIGNAL(activated(int)),
45 this, SLOT(has_activated(int)));
47 QWhatsThis::add(this, _("FIXME - describe the units."));
51 LyXLength::UNIT LengthCombo::currentLengthItem() const
54 int i = currentItem();
57 case 0: unit = LyXLength::CM; break;
58 case 1: unit = LyXLength::IN; break;
59 case 2: unit = LyXLength::PT; break;
60 case 3: unit = LyXLength::MM; break;
61 case 4: unit = LyXLength::PC; break;
62 case 5: unit = LyXLength::EX; break;
63 case 6: unit = LyXLength::EM; break;
64 case 7: unit = LyXLength::SP; break;
65 case 8: unit = LyXLength::BP; break;
66 case 9: unit = LyXLength::DD; break;
67 case 10: unit = LyXLength::CC; break;
68 case 11: unit = LyXLength::MU; break;
69 case 12: unit = LyXLength::PPW; break;
70 case 13: unit = LyXLength::PCW; break;
71 case 14: unit = LyXLength::PLW; break;
72 // FIXME: LyXLength::PTW ?
78 void LengthCombo::has_activated(int)
80 emit selectionChanged(currentLengthItem());
84 void LengthCombo::setCurrentItem(LyXLength::UNIT unit)
89 case LyXLength::CM: i = 0; break;
90 case LyXLength::IN: i = 1; break;
91 case LyXLength::PT: i = 2; break;
92 case LyXLength::MM: i = 3; break;
93 case LyXLength::PC: i = 4; break;
94 case LyXLength::EX: i = 5; break;
95 case LyXLength::EM: i = 6; break;
96 case LyXLength::SP: i = 7; break;
97 case LyXLength::BP: i = 8; break;
98 case LyXLength::DD: i = 9; break;
99 case LyXLength::CC: i = 10; break;
100 case LyXLength::MU: i = 11; break;
101 case LyXLength::PPW: i = 12; break;
102 case LyXLength::PCW: i = 13; break;
103 case LyXLength::PLW: i = 14; break;
104 // FIXME: LyXLength::PTW ?
106 QComboBox::setCurrentItem(i);