优化tools 相关代码

This commit is contained in:
hm
2021-01-07 10:55:02 +08:00
parent 5410b1302f
commit a5beda4906
27 changed files with 190 additions and 826 deletions
+33 -79
View File
@@ -19,26 +19,8 @@ ToolsUI::ToolsUI(QWidget *parent) :
//绑定按键和界面
int w = 120;
int h = 50;
/*
ui->pushButton_Inspector->setFixedSize(w,h);
ui->pushButton_Log->setFixedSize(w,h);
ui->pushButton_Replay->setFixedSize(w,h);
ui->pushButton_Console->setFixedSize(w,h);
ui->pushButton_Servos->setFixedSize(w,h);
ui->PowerSystem->setFixedSize(w,h);
ui->ServoSystem->setFixedSize(w,h);
ui->pushButton_ShowExtern->setFixedSize(w,h);
ui->pushButton_CommandBox->setFixedSize(w,h);
ui->pushButton_Diagram->setFixedSize(w,h);
ui->pushButton_Senser->setFixedSize(w,h);
ui->pushButton_evtol->setFixedSize(w,h);
*/
ui->scrollArea->setFixedWidth(40 + w + ui->scrollArea->verticalScrollBar()->width());
@@ -80,17 +62,17 @@ ToolsUI::ToolsUI(QWidget *parent) :
installTools(index0,ui->pushButton_Inspector,0,QIcon(":/img/warning.png"),tr("Inspector"));
installTools(index1,ui->pushButton_Log,1,QIcon(":/img/warning.png"),tr("index1"));
installTools(index2,ui->pushButton_Replay,2,QIcon(":/img/warning.png"),tr("index2"));
installTools(index3,ui->pushButton_Console,3,QIcon(":/img/warning.png"),tr("index3"));
installTools(index4,ui->pushButton_Servos,4,QIcon(":/img/warning.png"),tr("index4"));
installTools(powersystem,ui->PowerSystem,5,QIcon(":/img/warning.png"),tr("powersystem"));
installTools(servosystem,ui->ServoSystem,6,QIcon(":/img/warning.png"),tr("servosystem"));
installTools(command,ui->pushButton_CommandBox,7,QIcon(":/img/warning.png"),tr("command"));
installTools(diagram,ui->pushButton_Diagram,8,QIcon(":/img/warning.png"),tr("diagram"));
installTools(senser,ui->pushButton_Senser,9,QIcon(":/img/warning.png"),tr("senser"));
installTools(Evtol,ui->pushButton_evtol,10,QIcon(":/img/warning.png"),tr("Evtol"));
installTools(index0, ui->pushButton_Inspector, 0,QIcon(":/img/warning.png"),tr("Inspector"));
installTools(index1, ui->pushButton_Log, 1,QIcon(":/img/warning.png"),tr("Log"));
installTools(index2, ui->pushButton_Replay, 2,QIcon(":/img/warning.png"),tr("Replay"));
installTools(index3, ui->pushButton_Console, 3,QIcon(":/img/warning.png"),tr("Terminal"));
installTools(index4, ui->pushButton_Servos, 4,QIcon(":/img/warning.png"),tr("Servos"));
installTools(powersystem,ui->PowerSystem, 5,QIcon(":/img/warning.png"),tr("PowerSystem"));
installTools(servosystem,ui->ServoSystem, 6,QIcon(":/img/warning.png"),tr("ServoSystem"));
installTools(command, ui->pushButton_CommandBox,7,QIcon(":/img/warning.png"),tr("CommandBox"));
installTools(diagram, ui->pushButton_Diagram, 8,QIcon(":/img/warning.png"),tr("Diagram"));
installTools(senser, ui->pushButton_Senser, 9,QIcon(":/img/warning.png"),tr("Senser"));
installTools(Evtol, ui->pushButton_evtol, 10,QIcon(":/img/warning.png"),tr("Evtol"));
@@ -101,11 +83,15 @@ ToolsUI::ToolsUI(QWidget *parent) :
emit IndexChanged(CurrentIndex);
foreach (QPushButton *b, btnList) {
setPushButtonState(b,state::unSelected);
if(btnList.key(b) == 0)
{
setPushButtonState(b,state::Selected);
}
else
{
setPushButtonState(b,state::unSelected);
}
}
setPushButtonState(ui->pushButton_Inspector,state::Selected);
}
ToolsUI::~ToolsUI()
@@ -135,7 +121,7 @@ void ToolsUI::setPushButtonState(QWidget *w,state s)
}
void ToolsUI::installTools(QWidget *widget,QPushButton *btn, int key,QIcon icon,QString name)
void ToolsUI::installTools(ToolsWidget *widget, QPushButton *btn, int key, QIcon icon, QString name)
{
if(!ToolsList.keys().contains(key))
{
@@ -165,21 +151,20 @@ void ToolsUI::installTools(QWidget *widget,QPushButton *btn, int key,QIcon icon,
void ToolsUI::btnClicked()
{
QObject *obj = sender();
QPushButton *btn = qobject_cast<QPushButton *>(obj);
if(btn)
{
int key = btnList.key(btn);
CurrentIndex = key;
setPushButtonState(btn,
state::Selected);
setPushButtonState(btn,state::Selected);
foreach (QPushButton *b, btnList) {
if(b != btn)
{
setPushButtonState(b,
state::unSelected);
setPushButtonState(b,state::unSelected);
}
}
@@ -192,8 +177,7 @@ void ToolsUI::btnClicked()
void ToolsUI::onTabIndexChanged(const int &index)//界面选择管理
{
foreach (int key, ToolsList.keys()) {
QWidget *w = ToolsList.value(key);
ToolsWidget *w = ToolsList.value(key);
if(index == key)
{
@@ -218,44 +202,14 @@ void ToolsUI::onTabIndexChanged(const int &index)//界面选择管理
void ToolsUI::on_pushButton_ShowExtern_clicked()
{
switch (CurrentIndex) {
case 0:
index0->setFloat();
break;
case 1:
index1->setFloat();
break;
case 2:
index2->setFloat();
break;
case 3:
index3->setFloat();
break;
case 4:
index4->setFloat();
break;
case 5:
powersystem->setFloat();
break;
case 6:
servosystem->setFloat();
break;
case 7:
command->setFloat();
break;
case 8:
diagram->setFloat();
break;
case 9:
senser->setFloat();
break;
case 10:
Evtol->setFloat();
break;
foreach (ToolsWidget *w, ToolsList) {
if(ToolsList.key(w,-1) == CurrentIndex)
{
if(w->parent())
{
w->setFloat();
}
}
}
}