// -*- C++ -*- /** * \file LengthCombo.h * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * * \author John Levon * * Full author contact details are available in file CREDITS. */ #ifndef LENGTHCOMBO_H #define LENGTHCOMBO_H #include #include "Length.h" namespace lyx { namespace frontend { /** * A combo box for selecting Length::UNIT types. */ class LengthCombo : public QComboBox { Q_OBJECT public: LengthCombo(QWidget * parent); /// set the current item from unit void setCurrentItem(lyx::Length::UNIT unit); /// set the current item from length string virtual void setCurrentItem(QString const & item); /// set the current item from int virtual void setCurrentItem(int item); /// get the current item lyx::Length::UNIT currentLengthItem() const; /// enable the widget virtual void setEnabled(bool b); /// use the %-items? void noPercents(); /// Remove EM, EX and MU units void removeFontDependent(); /// remove a unit from the combo void removeUnit(lyx::Length::UNIT unit); /// add a unit to the combo void addUnit(lyx::Length::UNIT unit); protected Q_SLOTS: virtual void hasActivated(int index); Q_SIGNALS: /// the current selection has changed void selectionChanged(lyx::Length::UNIT unit); }; } // namespace frontend } // namespace lyx #endif // LENGTHCOMBO_H