diff --git a/companion/src/appdata.cpp b/companion/src/appdata.cpp
index ec634da4d..1c3e2dae3 100644
--- a/companion/src/appdata.cpp
+++ b/companion/src/appdata.cpp
@@ -490,7 +490,6 @@ bool AppData::snapToClpbrd() { return _snapToClpbrd; }
bool AppData::autoCheckApp() { return _autoCheckApp; }
bool AppData::autoCheckFw() { return _autoCheckFw; }
bool AppData::simuSW() { return _simuSW; }
-bool AppData::enableWizard() { return _enableWizard; }
int AppData::backLight() { return _backLight; }
int AppData::embedSplashes() { return _embedSplashes; }
@@ -499,7 +498,6 @@ int AppData::generalEditTab() { return _generalEditTab; }
int AppData::iconSize() { return _iconSize; }
int AppData::historySize() { return _historySize; }
int AppData::jsCtrl() { return _jsCtrl; }
-int AppData::modelEditTab() { return _modelEditTab; }
int AppData::id() { return _id; }
int AppData::theme() { return _theme; }
int AppData::warningId() { return _warningId; }
@@ -544,7 +542,6 @@ void AppData::snapToClpbrd (const bool x) { store(x, _snapToClpbrd,
void AppData::autoCheckApp (const bool x) { store(x, _autoCheckApp, "startup_check_companion" );}
void AppData::autoCheckFw (const bool x) { store(x, _autoCheckFw, "startup_check_fw" );}
void AppData::simuSW (const bool x) { store(x, _simuSW, "simuSW" );}
-void AppData::enableWizard (const bool x) { store(x, _enableWizard, "wizardEnable" );}
void AppData::backLight (const int x) { store(x, _backLight, "backLight" );}
void AppData::embedSplashes (const int x) { store(x, _embedSplashes, "embedded_splashes" );}
@@ -553,7 +550,6 @@ void AppData::generalEditTab (const int x) { store(x, _generalEditTab,
void AppData::iconSize (const int x) { store(x, _iconSize, "icon_size" );}
void AppData::historySize (const int x) { store(x, _historySize, "history_size" );}
void AppData::jsCtrl (const int x) { store(x, _jsCtrl, "js_ctrl" );}
-void AppData::modelEditTab (const int x) { store(x, _modelEditTab, "modelEditTab" );}
void AppData::id (const int x) { store(x, _id, "profileId" );}
void AppData::theme (const int x) { store(x, _theme, "theme" );}
void AppData::warningId (const int x) { store(x, _warningId, "warningId" );}
@@ -611,12 +607,14 @@ AppData::AppData()
settings.remove("default_mode");
settings.remove("firmware");
settings.remove("lastFw");
+ settings.remove("modelEditTab");
settings.remove("Name");
settings.remove("patchImage");
settings.remove("rename_firmware_files");
settings.remove("sdPath");
settings.remove("SplashFileName");
settings.remove("startup_check_companion9x");
+ settings.remove("wizardEnable");
// Select the new default profile as current profile
id( 0 );
@@ -662,7 +660,6 @@ AppData::AppData()
getset( _autoCheckApp, "startup_check_companion" ,true );
getset( _autoCheckFw, "startup_check_fw" ,true );
getset( _simuSW, "simuSW" ,false );
- getset( _enableWizard, "wizardEnable" ,true );
getset( _backLight, "backLight" ,0 );
getset( _embedSplashes, "embedded_splashes" ,0 );
@@ -671,7 +668,6 @@ AppData::AppData()
getset( _iconSize, "icon_size" ,2 );
getset( _jsCtrl, "js_ctrl" ,0 );
getset( _historySize, "history_size" ,10 );
- getset( _modelEditTab, "modelEditTab" ,0 );
getset( _id, "profileId" ,0 );
getset( _theme, "theme" ,1 );
getset( _warningId, "warningId" ,0 );
diff --git a/companion/src/appdata.h b/companion/src/appdata.h
index 443f6bab2..52cff32c9 100644
--- a/companion/src/appdata.h
+++ b/companion/src/appdata.h
@@ -221,7 +221,6 @@ class AppData: protected CompStoreObj
bool _autoCheckApp;
bool _autoCheckFw;
bool _simuSW;
- bool _enableWizard;
int _backLight;
int _embedSplashes;
@@ -230,7 +229,6 @@ class AppData: protected CompStoreObj
int _iconSize;
int _jsCtrl;
int _historySize;
- int _modelEditTab;
int _id;
int _theme;
int _warningId;
@@ -277,7 +275,6 @@ class AppData: protected CompStoreObj
bool autoCheckApp();
bool autoCheckFw();
bool simuSW();
- bool enableWizard();
int backLight();
int embedSplashes();
@@ -286,7 +283,6 @@ class AppData: protected CompStoreObj
int iconSize();
int historySize();
int jsCtrl();
- int modelEditTab(); // This variable is unused an can be removed
int id();
int theme();
int warningId();
diff --git a/companion/src/apppreferencesdialog.cpp b/companion/src/apppreferencesdialog.cpp
index 17787f9c0..a29752dbe 100644
--- a/companion/src/apppreferencesdialog.cpp
+++ b/companion/src/apppreferencesdialog.cpp
@@ -38,7 +38,6 @@ void appPreferencesDialog::writeValues()
{
g.autoCheckApp(ui->startupCheck_companion9x->isChecked());
g.autoCheckFw(ui->startupCheck_fw->isChecked());
- g.enableWizard(ui->wizardEnable_ChkB->isChecked());
g.showSplash(ui->showSplash->isChecked());
g.simuSW(ui->simuSW->isChecked());
g.historySize(ui->historySize->value());
@@ -101,7 +100,6 @@ void appPreferencesDialog::initSettings()
}
ui->startupCheck_companion9x->setChecked(g.autoCheckApp());
ui->startupCheck_fw->setChecked(g.autoCheckFw());
- ui->wizardEnable_ChkB->setChecked(g.enableWizard());
ui->showSplash->setChecked(g.showSplash());
ui->historySize->setValue(g.historySize());
ui->backLightColor->setCurrentIndex(g.backLight());
diff --git a/companion/src/apppreferencesdialog.ui b/companion/src/apppreferencesdialog.ui
index f5d4b9deb..de381395b 100644
--- a/companion/src/apppreferencesdialog.ui
+++ b/companion/src/apppreferencesdialog.ui
@@ -26,12 +26,21 @@
Edit Settings
+
+ 6
+
+
+ 6
+
+
+ 6
+
+
+ 6
+
2
-
- 6
-
-
@@ -47,450 +56,9 @@
0
-
-
- Application Settings
-
-
-
-
-
-
- Qt::Horizontal
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- Automatic Backup Folder
-
-
-
- -
-
-
-
- 40
- 0
-
-
-
-
- 50
- 16777215
-
-
-
- 15
-
-
- 10
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- User Splash Screens
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
-
- Only show user splash images
-
-
- -
-
- Show user and companion splash images
-
-
-
-
- -
-
-
- Google Earth Executable
-
-
-
- -
-
-
- Automatic check for OpenTX firmware updates
-
-
- true
-
-
-
- -
-
-
-
- 350
- 0
-
-
-
- true
-
-
-
- -
-
-
- Open Folder
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- -
-
-
-
- 350
- 0
-
-
-
- true
-
-
-
- -
-
-
- Find Executable
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Files to keep
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Splash Screen Library
-
-
-
- -
-
-
- Enable automatic backup before writing firmware
-
-
-
- -
-
-
- Open Folder
-
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- -
-
-
- Automatic check for Companion updates
-
-
- true
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- -
-
-
- Offer to use wizard for new models
-
-
- true
-
-
-
- -
-
-
- Show splash screen when Companion starts
-
-
- true
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- true
-
-
- true
-
-
-
-
-
-
-
- Simulator Settings
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Simulator BackLight
-
-
- Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
-
-
- -
-
-
- Enable
-
-
-
- -
-
-
- Open Folder
-
-
- false
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
-
- 100
- 16777215
-
-
-
-
-
- Blue
-
-
- -
-
- Green
-
-
- -
-
- Red
-
-
- -
-
- Orange
-
-
- -
-
- Yellow
-
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Joystick
-
-
-
- -
-
-
- Only capture to clipboard
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- -
-
-
- Calibrate
-
-
-
- -
-
-
- Remember simulator switch values
-
-
-
- -
-
-
- Simulator capture folder
-
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
- -
-
-
- true
-
-
-
- 350
- 0
-
-
-
- true
-
-
-
-
-
- Radio Settings Profile
+ Radio Profile
-
@@ -989,6 +557,437 @@ This is used by the templated to determine which channel goes to what number out
+
+
+ Application Settings
+
+
+ -
+
+
+
+ 350
+ 0
+
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Automatic Backup Folder
+
+
+
+ -
+
+
+
+ 40
+ 0
+
+
+
+
+ 50
+ 16777215
+
+
+
+ 15
+
+
+ 10
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ User Splash Screens
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
-
+
+ Only show user splash images
+
+
+ -
+
+ Show user and companion splash images
+
+
+
+
+ -
+
+
+ Google Earth Executable
+
+
+
+ -
+
+
+ Automatic check for OpenTX firmware updates
+
+
+ true
+
+
+
+ -
+
+
+
+ 350
+ 0
+
+
+
+ true
+
+
+
+ -
+
+
+ Open Folder
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Find Executable
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Files to keep
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Splash Screen Library
+
+
+
+ -
+
+
+ Enable automatic backup before writing firmware
+
+
+
+ -
+
+
+ Open Folder
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Automatic check for Companion updates
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Show splash screen when Companion starts
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ true
+
+
+ true
+
+
+
+
+
+
+
+ Simulator Settings
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Simulator BackLight
+
+
+ Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
+
+
+
+ -
+
+
+ Enable
+
+
+
+ -
+
+
+ Open Folder
+
+
+ false
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+
+ 100
+ 16777215
+
+
+
-
+
+ Blue
+
+
+ -
+
+ Green
+
+
+ -
+
+ Red
+
+
+ -
+
+ Orange
+
+
+ -
+
+ Yellow
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Joystick
+
+
+
+ -
+
+
+ Only capture to clipboard
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ -
+
+
+ Calibrate
+
+
+
+ -
+
+
+ Remember simulator switch values
+
+
+
+ -
+
+
+ Simulator capture folder
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ true
+
+
+
+ 350
+ 0
+
+
+
+ true
+
+
+
+
+
@@ -1001,7 +1000,6 @@ This is used by the templated to determine which channel goes to what number out
showSplash
startupCheck_fw
startupCheck_companion9x
- wizardEnable_ChkB
backupPath
backupPathButton
backupEnable
diff --git a/companion/src/mainwindow.cpp b/companion/src/mainwindow.cpp
index 0f8d36389..3570dbd34 100644
--- a/companion/src/mainwindow.cpp
+++ b/companion/src/mainwindow.cpp
@@ -1750,7 +1750,7 @@ QMenu *MainWindow::createRecentFileMenu()
QMenu *MainWindow::createProfilesMenu()
{
- QMenu *profilesMenu=new QMenu(tr("Radio Settings Profile"));
+ QMenu *profilesMenu=new QMenu(tr("Radio Profile"));
int i;
for ( i = 0; i < MAX_PROFILES; ++i) {
profilesMenu->addAction(profileActs[i]);
@@ -1809,8 +1809,8 @@ void MainWindow::createToolBars()
profileButton->setFocusPolicy(Qt::NoFocus);
profileButton->setMenu(createProfilesMenu());
profileButton->setIcon(CompanionIcon("profiles.png"));
- profileButton->setToolTip(tr("Radio Settings Profile"));
- profileButton->setStatusTip(tr("Show a selection list of radio settings profiles"));
+ profileButton->setToolTip(tr("Radio Profile"));
+ profileButton->setStatusTip(tr("Show a selection list of radio profiles"));
fileToolBar->addWidget(profileButton);
fileToolBar->addAction(editSplashAct);
diff --git a/companion/src/mdichild.cpp b/companion/src/mdichild.cpp
index 9bde8a9f7..aa6dc1a3d 100644
--- a/companion/src/mdichild.cpp
+++ b/companion/src/mdichild.cpp
@@ -110,11 +110,6 @@ void MdiChild::copy()
ui->modelsList->copy();
}
-void MdiChild::openWizard()
-{
- WizardDialog *wizard = new WizardDialog(this);
- wizard->show();
-}
void MdiChild::paste()
{
@@ -152,47 +147,63 @@ void MdiChild::on_SimulateTxButton_clicked()
startSimulation(this, radioData, -1);
}
-void MdiChild::OpenEditWindow()
+void MdiChild::checkAndInitModel( int row )
+{
+ ModelData &model = radioData.models[row - 1];
+ if (model.isempty()) {
+ model.setDefault(row - 1);
+ setModified();
+ }
+}
+
+void MdiChild::generalEdit()
+{
+ GeneralEdit *t = new GeneralEdit(radioData, this);
+ connect(t, SIGNAL(modelValuesChanged()), this, SLOT(setModified()));
+ t->show();
+}
+
+void MdiChild::modelEdit()
{
int row = ui->modelsList->currentRow();
- bool wizard=false;
- if (row) {
- //TODO error checking
- bool isNew = false;
+ if (row == 0){
+ generalEdit();
+ }
+ else {
+ checkAndInitModel( row );
ModelData &model = radioData.models[row - 1];
-
- if (model.isempty()) {
- model.setDefault(row - 1);
- isNew = true; //modeledit - clear mixes, apply first template
- setModified();
- }
- if (isNew) {
- int ret;
- if (g.enableWizard()) {
- ret = QMessageBox::question(this, tr("Companion"), tr("Do you want to use model wizard? "), QMessageBox::Yes | QMessageBox::No);
- if (ret == QMessageBox::Yes) {
- wizard=true;
- } else {
- qSleep(500);
- ret = QMessageBox::question(this, tr("Companion"), tr("Ask this question again ? "), QMessageBox::Yes | QMessageBox::No);
- if (ret == QMessageBox::No) {
- g.enableWizard( false );
- }
- }
- }
- }
- ModelEdit *t = new ModelEdit(radioData, (row - 1), wizard, this);
- // TODO if (isNew && !wizard) t->applyBaseTemplate();
+ ModelEdit *t = new ModelEdit(radioData, (row - 1), false, this);
t->setWindowTitle(tr("Editing model %1: ").arg(row) + model.name);
connect(t, SIGNAL(modified()), this, SLOT(setModified()));
- //t->exec();
t->show();
}
- else {
- GeneralEdit *t = new GeneralEdit(radioData, this);
- connect(t, SIGNAL(modelValuesChanged()), this, SLOT(setModified()));
- t->show();
+}
+
+void MdiChild::wizardEdit()
+{
+ int row = ui->modelsList->currentRow();
+ if (row > 0) {
+ checkAndInitModel(row);
+ WizardDialog *wizard = new WizardDialog(this);
+ wizard->show();
+ }
+}
+
+void MdiChild::openEditWindow()
+{
+ int row = ui->modelsList->currentRow();
+ if (row == 0){
+ generalEdit();
+ }
+ else{
+ ModelData &model = radioData.models[row - 1];
+ if (model.isempty()) {
+ wizardEdit();
+ }
+ else {
+ modelEdit();
+ }
}
}
diff --git a/companion/src/mdichild.h b/companion/src/mdichild.h
index 9aaaa7c2c..1ff1730cc 100644
--- a/companion/src/mdichild.h
+++ b/companion/src/mdichild.h
@@ -89,11 +89,14 @@ private slots:
void qSleep(int ms);
public slots:
- void OpenEditWindow();
+ void checkAndInitModel(int row);
+ void generalEdit();
+ void modelEdit();
+ void wizardEdit();
+ void openEditWindow();
void cut();
void copy();
- void openWizard();
void paste();
void writeEeprom();
void simulate();
diff --git a/companion/src/modelslist.cpp b/companion/src/modelslist.cpp
index 19300c5f8..65996ce51 100644
--- a/companion/src/modelslist.cpp
+++ b/companion/src/modelslist.cpp
@@ -85,7 +85,7 @@ void ModelsListWidget::ShowContextMenu(const QPoint& pos)
bool hasData = mimeData->hasFormat("application/x-companion");
QMenu contextMenu;
- contextMenu.addAction(CompanionIcon("edit.png"), tr("&Edit"),this,SLOT(OpenEditWindow()));
+ contextMenu.addAction(CompanionIcon("edit.png"), tr("&Edit"),this,SLOT(EditModel()));
contextMenu.addAction(CompanionIcon("open.png"), tr("&Restore from backup"),this,SLOT(LoadBackup()));
contextMenu.addAction(CompanionIcon("wizard.png"), tr("&Model Wizard"),this,SLOT(OpenWizard()));
contextMenu.addSeparator();
@@ -103,14 +103,19 @@ void ModelsListWidget::ShowContextMenu(const QPoint& pos)
contextMenu.exec(globalPos);
}
+void ModelsListWidget::EditModel()
+{
+ ((MdiChild *)parent())->modelEdit();
+}
+
void ModelsListWidget::OpenEditWindow()
{
- ((MdiChild *)parent())->OpenEditWindow();
+ ((MdiChild *)parent())->openEditWindow();
}
void ModelsListWidget::OpenWizard()
{
- ((MdiChild *)parent())->openWizard();
+ ((MdiChild *)parent())->wizardEdit();
}
void ModelsListWidget::LoadBackup()
diff --git a/companion/src/modelslist.h b/companion/src/modelslist.h
index 8d6e73e83..b21d4914b 100644
--- a/companion/src/modelslist.h
+++ b/companion/src/modelslist.h
@@ -81,6 +81,7 @@ public slots:
void copy();
void paste();
void print();
+ void EditModel();
void OpenEditWindow();
void LoadBackup();
void OpenWizard();