/*************************************************************************** * Copyright (C) 2006 Nicolas Hadacek * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * ***************************************************************************/ #ifndef NUMBER_GUI_H #define NUMBER_GUI_H #include #include #include "common/common/number.h" //----------------------------------------------------------------------------- extern uint maxCharWidth(const TQString &s, const TQFont &font); extern uint maxCharWidth(NumberBase base, const TQFont &font); inline uint maxStringWidth(NumberBase base, uint nbChars, const TQFont &font) { return nbChars * maxCharWidth(base, font); } extern uint maxLabelWidth(NumberBase base, uint nbChars, const TQFont &font); extern TQValidator::State validateNumber(const TQString &s); //----------------------------------------------------------------------------- class NumberLineEdit : public KLineEdit { Q_OBJECT TQ_OBJECT public: NumberLineEdit(TQWidget *tqparent = 0, const char *name = 0); NumberLineEdit(const TQString &text, TQWidget *tqparent = 0, const char *name = 0); uint value(bool *ok = 0) const { return fromAnyLabel(text(), ok); } void setColor(const TQColor &color) { setPaletteForegroundColor(color); } void unsetColor() { unsetPalette(); } private slots: void textChangedSlot(); }; #endif