annotate widgets/SearchWidget.h @ 282:d9319859a4cf tip

(none)
author benoitrigolleau
date Fri, 31 Oct 2008 11:00:24 +0000
parents a6b881972a62
children
rev   line source
lbajardsilogic@7 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
lbajardsilogic@7 2
lbajardsilogic@7 3 /* Sound Access
lbajardsilogic@7 4 EASAIER client application.
lbajardsilogic@7 5 Silogic 2007. Laure Bajard.
lbajardsilogic@7 6
lbajardsilogic@7 7 This program is free software; you can redistribute it and/or
lbajardsilogic@7 8 modify it under the terms of the GNU General Public License as
lbajardsilogic@7 9 published by the Free Software Foundation; either version 2 of the
lbajardsilogic@7 10 License, or (at your option) any later version. See the file
lbajardsilogic@7 11 COPYING included with this distribution for more information.
lbajardsilogic@7 12 */
lbajardsilogic@7 13
lbajardsilogic@7 14 #ifndef _SEARCH_WIDGET_H_
lbajardsilogic@7 15 #define _SEARCH_WIDGET_H_
lbajardsilogic@7 16
lbajardsilogic@7 17 #include <QWidget>
lbajardsilogic@7 18 #include <QGridLayout>
lbajardsilogic@7 19 #include <QVBoxLayout>
lbajardsilogic@7 20 #include <QStackedLayout>
lbajardsilogic@7 21
lbajardsilogic@7 22 #include <map>
lbajardsilogic@7 23
lbajardsilogic@7 24 #include "data/model/QueryModel.h"
lbajardsilogic@7 25
lbajardsilogic@7 26 #include "widgets/AdvancedToolBox.h"
lbajardsilogic@7 27
lbajardsilogic@7 28 class SearchWidget : public QWidget {
lbajardsilogic@7 29
lbajardsilogic@7 30 Q_OBJECT
lbajardsilogic@7 31 public:
lbajardsilogic@7 32 SearchWidget();
lbajardsilogic@7 33 virtual ~SearchWidget();
lbajardsilogic@7 34
lbajardsilogic@7 35 /*display the widgets of the search tab according the QueryModel*/
lbajardsilogic@7 36 void displayQuerymodel(QueryModel* queryModel);
lbajardsilogic@7 37
lbajardsilogic@7 38 /*add a new theme (music, speech...) to the search tab*/
lbajardsilogic@7 39 void addTheme(const QString &name, const QString &label);
lbajardsilogic@7 40
lbajardsilogic@7 41 /*add a new group of query to the current search theme*/
lbajardsilogic@7 42 void addFieldGroup(const QString &name, const QString &label);
lbajardsilogic@7 43 void endFieldGroup();
lbajardsilogic@7 44
lbajardsilogic@7 45 /*add a query property to the current group and current theme*/
lbajardsilogic@7 46 void addField(const QString &name, QueryThemeModel* curTheme);
lbajardsilogic@7 47
lbajardsilogic@7 48 /* return the name of the active query theme */
lbajardsilogic@7 49 QString getActiveTheme();
lbajardsilogic@7 50
lbajardsilogic@70 51 /*highlight the button of the theme "name"*/
lbajardsilogic@70 52 void highlightThemeButton(QString &name);
lbajardsilogic@70 53
lbajardsilogic@7 54 void reset();
lbajardsilogic@7 55
lbajardsilogic@93 56 virtual void keyPressEvent( QKeyEvent * e);
lbajardsilogic@93 57
lbajardsilogic@7 58 public slots:
lbajardsilogic@7 59 void activeTheme();
lbajardsilogic@228 60
lbajardsilogic@228 61 signals:
lbajardsilogic@228 62 void fileSelected(const QString &);
lbajardsilogic@7 63
lbajardsilogic@7 64 protected:
lbajardsilogic@7 65
lbajardsilogic@7 66 QStackedLayout *m_themesLayout;
lbajardsilogic@7 67 QHBoxLayout *m_buttonLayout; // each button correspond to a theme
lbajardsilogic@7 68
lbajardsilogic@7 69 QPushButton *m_searchButton;
lbajardsilogic@7 70
lbajardsilogic@7 71 AdvancedToolBox *m_curThemeWidget;
lbajardsilogic@7 72 QGridLayout *m_curBoxLayout;
lbajardsilogic@7 73
lbajardsilogic@7 74 std::map<QString, int> m_themes;
lbajardsilogic@7 75
lbajardsilogic@7 76 int m_curBoxRow;
lbajardsilogic@7 77 };
lbajardsilogic@7 78
lbajardsilogic@7 79
lbajardsilogic@7 80 #endif