OpenMW
|
00001 #ifndef CSV_FILTER_EDITWIDGET_H 00002 #define CSV_FILTER_EDITWIDGET_H 00003 00004 #include <boost/shared_ptr.hpp> 00005 00006 #include <QLineEdit> 00007 #include <QPalette> 00008 00009 #include "../../model/filter/parser.hpp" 00010 #include "../../model/filter/node.hpp" 00011 00012 class QModelIndex; 00013 00014 namespace CSMWorld 00015 { 00016 class Data; 00017 } 00018 00019 namespace CSVFilter 00020 { 00021 class EditWidget : public QLineEdit 00022 { 00023 Q_OBJECT 00024 00025 CSMFilter::Parser mParser; 00026 QPalette mPalette; 00027 00028 public: 00029 00030 EditWidget (CSMWorld::Data& data, QWidget *parent = 0); 00031 00032 signals: 00033 00034 void filterChanged (boost::shared_ptr<CSMFilter::Node> filter); 00035 00036 private slots: 00037 00038 void textChanged (const QString& text); 00039 00040 void filterDataChanged (const QModelIndex& topLeft, const QModelIndex& bottomRight); 00041 00042 void filterRowsRemoved (const QModelIndex& parent, int start, int end); 00043 00044 void filterRowsInserted (const QModelIndex& parent, int start, int end); 00045 }; 00046 } 00047 00048 #endif