41 #ifndef __MARKETCLIENTASSISTANT_HPP__
42 #define __MARKETCLIENTASSISTANT_HPP__
49 #include <QPushButton>
50 #include <QScrollArea>
51 #include <QTreeWidget>
52 #include <QRadioButton>
54 #include <QTableWidget>
55 #include <QProgressBar>
57 #include <QStandardItemModel>
64 namespace openfluid {
namespace ui {
namespace market {
66 class MarketPackWidget;
77 QVBoxLayout m_SelectionPageBox;
82 QStandardItemModel m_RefURLComboBoxModel;
84 class URLComboColumns :
public QList<QStandardItem*>
90 QStandardItem *mp_Name;
91 QStandardItem *mp_URL;
95 void appendItems() { clear(); append(mp_Name); append(mp_URL); }
98 URLComboColumns m_URLColumns;
102 QTabWidget m_TypesTabs;
105 std::map<openfluid::market::PackageInfo::PackageType,QWidget*> mp_TabPage;
106 std::map<openfluid::market::PackageInfo::PackageType,QVBoxLayout*> mp_TabBox;
109 std::map<openfluid::market::PackageInfo::PackageType,QVBoxLayout*> mp_AvailTypesPacksBox;
110 std::map<openfluid::market::PackageInfo::PackageType,QScrollArea*> mp_AvailTypesPacksSWindow;
113 std::map<openfluid::market::PackageInfo::PackageType,QHBoxLayout*> mp_ActionButtonsBox;
114 std::map<openfluid::market::PackageInfo::PackageType,QPushButton*> mp_SelectAllButton;
115 std::map<openfluid::market::PackageInfo::PackageType,QPushButton*> mp_SelectNoneButton;
116 std::map<openfluid::market::PackageInfo::PackageType,QPushButton*> mp_CommonBuildConfigButton;
119 std::map<openfluid::market::PackageInfo::PackageType,std::list<MarketPackWidget*> > mp_AvailPacksWidgets;
154 QVBoxLayout m_LicensesPageBox;
156 QLabel m_LicensesLabel;
159 QSplitter m_LicensesReviewPaned;
161 QTreeWidget *mp_LicensesTreeView;
163 QTextEdit *mp_LicensesTextView;
166 QScrollArea m_LicensesListSWindow;
167 QScrollArea m_LicensesReviewSWindow;
169 QRadioButton m_LicensesAcceptRadio;
170 QRadioButton m_LicensesDoNotRadio;
178 QVBoxLayout m_InstallPageBox;
180 QTableWidget *mp_InstallTable;
183 class InstallTableColumns
187 enum { ID, TYPE, FORMAT, STATUS};
189 QTableWidgetItem *mp_ID;
190 QTableWidgetItem *mp_Type;
191 QTableWidgetItem *mp_Format;
192 QTableWidgetItem *mp_Status;
194 InstallTableColumns() {}
198 mp_ID->setFlags(mp_ID->flags() ^ Qt::ItemIsEditable);
199 mp_Type->setFlags(mp_Type->flags() ^ Qt::ItemIsEditable);
200 mp_Format->setFlags(mp_Format->flags() ^ Qt::ItemIsEditable);
201 mp_Status->setFlags(mp_Status->flags() ^ Qt::ItemIsEditable);
205 InstallTableColumns m_InstallColumns;
208 QScrollArea m_InstallSWindow;
210 QProgressBar m_InstallProgressBar;
211 QPushButton m_ViewLogButton;
214 void setupSelectionPage();
215 void setupLicensesPage();
216 void setupDownloadPage();
222 void clearAvailPacksTreeview();
227 void updateAvailPacksTreeview();
232 void displayMarketplaceError();
235 void initializeLicencesTreeView();
237 void updateInstallTreeview();
241 int m_InstallationTimeout;
249 void onPrepare(
int Id);
251 void onURLComboChanged(
int RowNumber);
256 void onSelectAllClicked();
261 void onSelectNoneClicked();
266 void onCommonBuildConfigClicked();
276 void onPackageInstallModified();
279 void onLicenseRadioClicked(
bool Checked);
282 void onLicensesTreeviewChanged(QTreeWidgetItem *CurrentItem);
285 void onInstallTimeoutOnce();
287 void onViewLogClicked();
Definition: MarketWizardPage.hpp:50
PackageType
Definition: MarketInfos.hpp:94
Definition: MarketClient.hpp:68
Definition: MarketPackWidget.hpp:59
std::string WareID_t
Definition: WareSignature.hpp:86
Definition: MarketClientAssistant.hpp:69
#define DLLEXPORT
Definition: dllexport.hpp:51