#include <qhbox.h>
#include <qframe.h>
#include <qgroupbox.h>
+#include <qvalidator.h>
class QLabel;
class QListBox;
class IntegerSpinItem;
class IntegerEditItem;
class FontItem;
+ class FileItem;
class DirListItem;
- enum { Space, Bool, Color, String, Selector, DblSpin, IntSpin, Double, Integer, GroupBox, Font, DirList, User };
+ enum { Space, Bool, Color, String, Selector, DblSpin, IntSpin, Double, Integer, GroupBox, Font, DirList, File, User };
public:
QtxListResourceEdit( QtxResourceMgr*, QWidget* = 0 );
*/
class QtxComboBox;
+class QToolButton;
class QtxListResourceEdit::FontItem : public PrefItem
{
Bold = 0x08,
Italic = 0x10,
Underline = 0x20,
+ Preview = 0x40,
- All = Family | Size | UserSize | Bold | Italic | Underline
+ All = Family | Size | UserSize | Bold | Italic | Underline | Preview
} WidgetFlags;
private slots:
void onActivateFamily( int );
+ void onPreview();
private:
void setFamily( const QString& );
bool myIsSystem;
QtxComboBox *myFamilies, *mySizes;
QCheckBox *myBold, *myItalic, *myUnderline;
+ QToolButton *myPreview;
QMap<QString, QVariant> myProperties;
};
QtxDirListEditor* myDirListEditor; //!< The widget wich implements in GUI the list of directories
};
+/*
+ Class: QtxListResourceEdit::FontItem
+ Descr: GUI implementation of resources font item.
+*/
+
+class QtxComboBox;
+class QToolButton;
+class QFileDialog;
+
+class QtxListResourceEdit::FileItem : public PrefItem
+{
+ Q_OBJECT
+
+private:
+ class FileValidator : public QValidator
+ {
+ public:
+ FileValidator( FileItem*, QObject* );
+ ~FileValidator();
+
+ virtual QValidator::State validate( QString&, int& ) const;
+
+ private:
+ FileItem* myItem;
+ };
+
+public:
+ FileItem( const QString&, QtxResourceEdit*, Item*, QWidget* = 0 );
+ virtual ~FileItem();
+
+ virtual void store();
+ virtual void retrieve();
+
+ virtual QVariant property( const QString& ) const;
+ virtual void setProperty( const QString&, const QVariant& );
+
+ virtual bool isFileCorrect( const QString& ) const;
+
+private slots:
+ void onOpenFile();
+ void onFileSelected( const QString& );
+
+private:
+ uint myFlags;
+ QStringList myFilter;
+ bool myIsExisting;
+ QLineEdit* myFile;
+ QToolButton* myOpenFile;
+ QFileDialog* myFileDlg;
+};
+
+
#endif