Skip to content

Commit

Permalink
Fix up Dialog Window Crash before connecting - Issue #42
Browse files Browse the repository at this point in the history
  • Loading branch information
Fishwaldo committed Jun 9, 2020
1 parent 18f15f4 commit 2665f31
Show file tree
Hide file tree
Showing 8 changed files with 423 additions and 361 deletions.
739 changes: 391 additions & 348 deletions ozwadmin-main/configuration.cpp

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions ozwadmin-main/configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ class Configuration : public QDialog
Q_OBJECT

public:
explicit Configuration(QTOZWOptions *options, QWidget *parent = nullptr);
explicit Configuration(QWidget *parent = nullptr);
~Configuration();
void saveConfiguration();

Expand All @@ -28,8 +28,8 @@ class Configuration : public QDialog
QtTreePropertyBrowser *m_variantEditor;
QtVariantPropertyManager *variantManager;
QtEnumPropertyManager *enumManager;
QTOZWOptions *m_options;
QMap<QString, QtProperty *> m_variantToProperty;
QTOZWOptions *m_options;
};

#endif // CONFIGURATION_H
7 changes: 6 additions & 1 deletion ozwadmin-main/configuration.ui
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,19 @@
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
<number>1</number>
</property>
<widget class="QWidget" name="config_ozw">
<attribute name="title">
<string>OpenZWave</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout"/>
</widget>
<widget class="QWidget" name="config_net">
<attribute name="title">
<string>Network</string>
</attribute>
</widget>
</widget>
</item>
<item>
Expand Down
11 changes: 7 additions & 4 deletions ozwadmin-main/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ MainWindow::MainWindow(QWidget *parent) :
connect(ui->actionOpen, SIGNAL(triggered()), this, SLOT(OpenConnection()));
connect(ui->action_Close, SIGNAL(triggered()), this, SLOT(CloseConnection()));
connect(ui->actionDevice_Database, SIGNAL(triggered()), this, SLOT(OpenDeviceDB()));
connect(ui->action_Configuration, SIGNAL(triggered()), this, SLOT(openConfigWindow()));
connect(ui->action_Preferences, SIGNAL(triggered()), this, SLOT(openPreferencesWindow()));
connect(ui->actionAbout, SIGNAL(triggered()), this, SLOT(openAboutWindow()));
connect(ui->action_AddNode, SIGNAL(triggered()), this, SLOT(addNode()));
connect(ui->action_Delete_Node, SIGNAL(triggered()), this, SLOT(delNode()));
Expand Down Expand Up @@ -162,7 +162,10 @@ void MainWindow::openDefaultWindows() {

ads::CDockWidget *configValueDW = new ads::CDockWidget("Config Values");
configValueDW->setWidget(configValues);
this->ui->menuWindow->addAction(configValueDW->toggleViewAction());
/* OSX thinks this is a Preferences Window, so tell QT to tell it "its not!"" */
QAction *configAction = configValueDW->toggleViewAction();
configAction->setMenuRole(QAction::NoRole);
this->ui->menuWindow->addAction(configAction);
this->m_DockManager->addDockWidget(ads::CenterDockWidgetArea, configValueDW, RightDockWidget);

this->ui->menuWindow->addSeparator();
Expand Down Expand Up @@ -293,8 +296,8 @@ void MainWindow::OpenDeviceDB() {
ddb->show();
}

void MainWindow::openConfigWindow() {
Configuration *cfg = new Configuration(OZWCore::get()->getQTOZWManager()->getOptions(), this);
void MainWindow::openPreferencesWindow() {
Configuration *cfg = new Configuration(this);
cfg->show();
}

Expand Down
2 changes: 1 addition & 1 deletion ozwadmin-main/mainwindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public slots:
void QTOZW_Ready(bool ready);
void openAboutWindow();
void openMetaDataWindow();
void openConfigWindow();
void openPreferencesWindow();
void addNode();
void delNode();
void healNetwork();
Expand Down
9 changes: 6 additions & 3 deletions ozwadmin-main/mainwindow.ui
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
</property>
<addaction name="separator"/>
<addaction name="actionDevice_Database"/>
<addaction name="action_Configuration"/>
<addaction name="action_Preferences"/>
<addaction name="separator"/>
<addaction name="actionE_xit"/>
</widget>
Expand Down Expand Up @@ -76,9 +76,12 @@
<addaction name="actionDevice_Database"/>
</widget>
<widget class="QStatusBar" name="statusBar"/>
<action name="action_Configuration">
<action name="action_Preferences">
<property name="text">
<string>&amp;Configuration</string>
<string>&amp;Preferences</string>
</property>
<property name="toolTip">
<string>Preferences</string>
</property>
</action>
<action name="actionE_xit">
Expand Down
2 changes: 1 addition & 1 deletion ozwadmin-main/ozwadmin-main.pro
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ macx: {
OZWDB.path = Contents/Resources/
QMAKE_BUNDLE_DATA += BUNDLE
QMAKE_BUNDLE_DATA += OZWDB
MakeBundle.commands = $$[QT_HOST_BINS]/macdeployqt ../ozwadmin.app && $$top_srcdir/scripts/macdeployqtfix.py ../ozwadmin.app/Contents/MacOS/ozwadmin $$[QT_INSTALL_PREFIX]
MakeBundle.commands = $$[QT_HOST_BINS]/macdeployqt ../ozwadmin.app -no-strip && $$top_srcdir/scripts/macdeployqtfix.py ../ozwadmin.app/Contents/MacOS/ozwadmin $$[QT_INSTALL_PREFIX]
QMAKE_EXTRA_TARGETS += MakeBundle
QMAKE_POST_LINK += $$MakeBundle.commands
ICON = res/ozw_logo.icns
Expand Down
10 changes: 9 additions & 1 deletion ozwadmin-main/ozwcore.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,11 @@

Q_GLOBAL_STATIC(OZWCore, globalState)


OZWCore::OZWCore(QObject *parent) :
QObject(parent)
QObject(parent),
m_openzwave(nullptr),
m_qtozwmanager(nullptr)
{
}

Expand All @@ -23,11 +26,16 @@ void OZWCore::initilize() {
m_userpath = QFileInfo(settings.value("openzwave/UserPath").toString()).absoluteFilePath();
this->m_openzwave = new QTOpenZwave(this, m_configpath, m_userpath);
this->m_qtozwmanager = this->m_openzwave->GetManager();
qCInfo(ozwadmin) << "OZWCore Initilized" << this->m_openzwave << this->m_qtozwmanager;
}

QTOpenZwave *OZWCore::getQTOZW() {
if (!this->m_openzwave)
qCWarning(ozwadmin) << "QTOpenZWave is not Created!";
return this->m_openzwave;
}
QTOZWManager *OZWCore::getQTOZWManager() {
if (!this->m_qtozwmanager)
qCWarning(ozwadmin) << "QTOZWManager is not created!";
return this->m_qtozwmanager;
}

0 comments on commit 2665f31

Please sign in to comment.