Added postregister plugin.

This commit is contained in:
2017-04-25 21:39:47 +02:00
parent dbbf4a0a67
commit af9edeafae
22 changed files with 699 additions and 24 deletions
+40 -17
View File
@@ -42,7 +42,7 @@ MainWindow::MainWindow(QWidget *parent) :
int i = 0;
foreach (IPlugin *plugin, Context::instance().plugins()) {
if (plugin->pluginId() != "CORE")
if (plugin->pluginId() != "CORE" && plugin->showIcon())
{
QToolButton *plugButton = new QToolButton(this);
plugButton->setText(plugin->pluginName());
@@ -81,26 +81,16 @@ void MainWindow::openPlugin()
QVariant var = QObject::sender()->property(PLUGIN_INDEX);
IPlugin *plugin = Context::instance().plugins().at(var.toInt());
for (int i = 0; i < ui->tabWidget->count(); i++) {
if (ui->tabWidget->widget(i)->objectName() == plugin->pluginId()) {
ui->tabWidget->setCurrentIndex(i);
return;
}
}
if (plugin->ui() != NULL)
{
ui->tabWidget->addTab(plugin->ui(), plugin->pluginIcon(), plugin->pluginName());
ui->tabWidget->widget(ui->tabWidget->count() - 1)->setObjectName(plugin->pluginId());
ui->tabWidget->setCurrentIndex(ui->tabWidget->count() - 1);
}
openPlugin(plugin);
}
void MainWindow::on_actionOpen_database_triggered()
{
/*QFileDialog dialog(this);
dialog.setNameFilter(tr("Database Files (*.db)"));
dialog.setWindowTitle(tr("Open Database"));*/
int tabCount = ui->tabWidget->count();
for (int i = 0; i < tabCount; i++)
{
ui->tabWidget->removeTab(0);
}
QString dbFile = QFileDialog::getOpenFileName(this, "Open Database", "", "Database Files (*.db)");
if (!dbFile.isEmpty())
@@ -118,6 +108,12 @@ void MainWindow::on_tabWidget_tabCloseRequested(int index)
void MainWindow::on_actionLogin_triggered()
{
int tabCount = ui->tabWidget->count();
for (int i = 0; i < tabCount; i++)
{
ui->tabWidget->removeTab(0);
}
QSharedPointer<User> u;
Context::instance().setCurrentUser(u);
m_lblUser->setText("");
@@ -144,3 +140,30 @@ void MainWindow::on_actionSettings_triggered()
SettingsForm *settings = new SettingsForm(this);
settings->show();
}
void MainWindow::on_actionPost_register_triggered()
{
IPlugin *plugZipCodes = Context::instance().plugin("POSTREGISTER");
if (plugZipCodes != NULL)
{
openPlugin(plugZipCodes);
}
}
void MainWindow::openPlugin(IPlugin *plugin)
{
for (int i = 0; i < ui->tabWidget->count(); i++) {
if (ui->tabWidget->widget(i)->objectName() == plugin->pluginId()) {
ui->tabWidget->setCurrentIndex(i);
return;
}
}
if (plugin->ui() != NULL)
{
ui->tabWidget->addTab(plugin->ui(), plugin->pluginIcon(), plugin->pluginName());
ui->tabWidget->widget(ui->tabWidget->count() - 1)->setObjectName(plugin->pluginId());
ui->tabWidget->setCurrentIndex(ui->tabWidget->count() - 1);
}
}
+5
View File
@@ -9,6 +9,8 @@
#define PLUGIN_INDEX "plug_index"
class IPlugin;
namespace Ui {
class MainWindow;
}
@@ -33,10 +35,13 @@ private slots:
void on_actionSettings_triggered();
void on_actionPost_register_triggered();
private:
Ui::MainWindow *ui;
LoginDialog *m_loginDialog;
QLabel *m_lblUser;
void openPlugin(IPlugin *plugin);
// QWidget interface
protected:
+13 -1
View File
@@ -60,7 +60,7 @@
<x>0</x>
<y>0</y>
<width>1000</width>
<height>19</height>
<height>20</height>
</rect>
</property>
<widget class="QMenu" name="menuFile">
@@ -72,7 +72,14 @@
<addaction name="separator"/>
<addaction name="actionExit"/>
</widget>
<widget class="QMenu" name="menuRegisters">
<property name="title">
<string>&amp;Registers</string>
</property>
<addaction name="actionPost_register"/>
</widget>
<addaction name="menuFile"/>
<addaction name="menuRegisters"/>
</widget>
<widget class="QToolBar" name="mainToolBar">
<attribute name="toolBarArea">
@@ -116,6 +123,11 @@
<string>Settings</string>
</property>
</action>
<action name="actionPost_register">
<property name="text">
<string>Post register</string>
</property>
</action>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources>