1 /*******************************************************************************
3 This file is part of mDictionary.
5 mDictionary is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
10 mDictionary is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with mDictionary. If not, see <http://www.gnu.org/licenses/>.
18 Copyright 2010 Comarch S.A.
20 *******************************************************************************/
21 /*! \file DictTypeSelectDialog.h
22 \brief Implements plugin selection dialog
24 \author Mateusz Półrola <mateusz.polrola@comarch.pl>
27 #ifndef DICTTYPESELECTDIALOG_H
28 #define DICTTYPESELECTDIALOG_H
32 #include "../../include/settings.h"
33 #include "../../include/CommonDictInterface.h"
34 #include "DictTypeModel.h"
35 #include <QtDeclarative/QDeclarativeView>
36 #include <QtDeclarative/QDeclarativeContext>
38 #define PLUGIN_ROW_ROLE 99 //TODO remove this
42 Shows a list of loaded dictionaries plugins.
43 Static function addNewdict will return selected plugin.
45 class DictTypeSelectDialog : public QDialog {
48 //! Shows dialog with a list of plugins
50 \param plugins list of loaded plugins
51 \param parent parent widget
52 \return selected plugin, if user cancels dialog it returns 0 (NULL)
54 static CommonDictInterface* addNewDict(
55 QList<CommonDictInterface* > plugins,
58 //! \returns plugin selected by user
59 CommonDictInterface* selectedPlugin();
62 explicit DictTypeSelectDialog(QList<CommonDictInterface* > plugins,
65 void pluginSelected(QListWidgetItem* item);
66 void pluginSelected(int item);
69 QListWidget* pluginsListWidget;
70 QList<CommonDictInterface*> plugins;
71 QVBoxLayout* verticalLayout;
72 CommonDictInterface* _selectedPlugin;
74 QDeclarativeView* qmlView;
75 QDeclarativeContext* ctxt;
79 #endif // DICTTYPESELECTDIALOG_H