findscreen.h

Go to the documentation of this file.
00001 #ifndef _FINDSCREEN_H_
00002 #define _FINDSCREEN_H_
00003 
00004 #include "findtablewidget.h"
00005 
00006 #include <QMap>
00007 #include <QWidget>
00008 
00009 class QLineEdit;
00010 class QPushButton;
00011 class QComboBox;
00012 class QToolButton;
00013 class QHBoxLayout;
00014 class QVBoxLayout;
00015 class QLabel;
00016 class QCheckBox;
00017 
00018 class knowtreemodel;
00019 class TreeItem;
00020 
00021 class findscreen : public QWidget
00022 {
00023  Q_OBJECT
00024 
00025 public:
00026  findscreen(QWidget *parent=0);
00027  virtual ~findscreen(void);
00028 
00029 public slots:
00030  void widget_show(void);
00031  void widget_hide(void);
00032 
00033 private slots:
00034  void enable_find_button(const QString &text);
00035  void find_clicked(void);
00036  
00037  void changed_wordregard(int pos);
00038  void changed_howextract(int pos);
00039  
00040  void changed_find_in_name(int state);
00041  void changed_find_in_author(int state);
00042  void changed_find_in_url(int state);
00043  void changed_find_in_tags(int state);
00044  void changed_find_in_text(int state);
00045  
00046 private:
00047  QLineEdit *findtext;
00048  QPushButton *findstart;
00049  QComboBox *wordregard;
00050  QComboBox *howextract;
00051  QToolButton *closebutton;
00052  
00053  QLabel *wherefindlabel;
00054  QCheckBox *find_in_name;
00055  QCheckBox *find_in_author;
00056  QCheckBox *find_in_url;
00057  QCheckBox *find_in_tags;
00058  QCheckBox *find_in_text;
00059  
00060  QHBoxLayout *toolsline;
00061  QVBoxLayout *placeupclosebutton;
00062  QHBoxLayout *wherefindline;
00063  QVBoxLayout *centrallayout;
00064  
00065  findtablewidget *findtable;
00066  
00067  void setup_toolsline(void);
00068  void assembly_toolsline(void);
00069  
00070  void setup_wherefindline(void);
00071  void assembly_wherefindline(void);
00072  
00073  void setup_ui(void);
00074  void assembly(void);
00075  
00076  void setup_signals(void);
00077  
00078  void changed_find_in_field(QString fieldname, int state);
00079 
00080  void        find_start(void);
00081  void        find_recurse(TreeItem *curritem);
00082  QStringList text_decompose(QString text);
00083  bool        find_in_text_process(const QString& text);
00084  
00085  // Поля, где нужно искать (Заголовок, текст, теги...)
00086  QMap<QString, bool> search_area;
00087 
00088  // Список слов, которые нужно искать
00089  QStringList search_word_list;
00090 };
00091 
00092 #endif  /* _FINDSCREEN_H_ */
00093 

Generated on Mon Feb 2 00:25:34 2009 for mytetra by  doxygen 1.5.1