79 layout->setWidget(f++, QFormLayout::FieldRole, message); |
79 layout->setWidget(f++, QFormLayout::FieldRole, message); |
80 |
80 |
81 tabs->addTab(panel, "Configuration"); |
81 tabs->addTab(panel, "Configuration"); |
82 } |
82 } |
83 |
83 |
|
84 void MouseMainWindow::appendAboutLine(QFormLayout* layout, const QString& label, const QString& value, QWidget* parent) { |
|
85 QLabel* labelWidget = new QLabel(label, parent); |
|
86 QLabel* textWidget = new QLabel(value, parent); |
|
87 |
|
88 textWidget->setTextInteractionFlags(Qt::TextInteractionFlag::TextSelectableByMouse | Qt::TextInteractionFlag::TextBrowserInteraction); |
|
89 textWidget->setOpenExternalLinks(true); |
|
90 |
|
91 layout->addRow(labelWidget, textWidget); |
|
92 } |
|
93 |
84 void MouseMainWindow::initAboutPanel() { |
94 void MouseMainWindow::initAboutPanel() { |
85 QWidget* panel = new QWidget(this); |
95 QWidget* panel = new QWidget(this); |
86 QFormLayout* layout = new QFormLayout(panel); |
96 QFormLayout* layout = new QFormLayout(panel); |
87 |
97 |
88 int f = 0; |
98 appendAboutLine(layout, "Program name:", "cadMousePro", panel); |
89 |
99 appendAboutLine(layout, "Description:", "configuration tool for 3DConnexion CadMouse Pro Wireless", panel); |
90 layout->setWidget(f, QFormLayout::LabelRole, new QLabel("Program name:", panel)); |
100 appendAboutLine(layout, "Author:", "Ing. František Kučera (Frantovo.cz, GlobalCode.info)", panel); |
91 layout->setWidget(f++, QFormLayout::FieldRole, new QLabel("cadMousePro", panel)); |
101 appendAboutLine(layout, "License:", "<a href='https://www.gnu.org/licenses/gpl-3.0.html'>GNU GPLv3+</a>", panel); |
92 |
102 appendAboutLine(layout, "Contact and support:", "<a href='https://mouse.globalcode.info/'>https://mouse.globalcode.info/</a>", panel); |
93 layout->setWidget(f, QFormLayout::LabelRole, new QLabel("Description:", panel)); |
103 appendAboutLine(layout, "BTC:", "bc1qmt3qgzcf3a0f0tvnm70zjr0vhlchfyrjtnleqm", panel); |
94 layout->setWidget(f++, QFormLayout::FieldRole, new QLabel("configuration tool for 3DConnexion CadMouse Pro Wireless", panel)); |
104 |
95 |
|
96 layout->setWidget(f, QFormLayout::LabelRole, new QLabel("Author:", panel)); |
|
97 layout->setWidget(f++, QFormLayout::FieldRole, new QLabel("Ing. František Kučera, Frantovo.cz, GlobalCode.info", panel)); |
|
98 |
|
99 layout->setWidget(f, QFormLayout::LabelRole, new QLabel("License:", panel)); |
|
100 layout->setWidget(f++, QFormLayout::FieldRole, new QLabel("GNU GPLv3+", panel)); |
|
101 |
|
102 layout->setWidget(f, QFormLayout::LabelRole, new QLabel("Contact and support:", panel)); |
|
103 layout->setWidget(f++, QFormLayout::FieldRole, new QLabel("https://mouse.globalcode.info/", panel)); |
|
104 |
|
105 tabs->addTab(panel, "About"); |
105 tabs->addTab(panel, "About"); |
106 |
|
107 } |
106 } |
108 |
107 |
109 void MouseMainWindow::refresh() { |
108 void MouseMainWindow::refresh() { |
110 statusProxy->setChecked(proxy->isValid()); |
109 statusProxy->setChecked(proxy->isValid()); |
111 statusDevice->setChecked(proxy->devicePresent()); |
110 statusDevice->setChecked(proxy->devicePresent()); |
112 |
111 |
113 } |
112 } |
114 |
113 |
115 void MouseMainWindow::configure() { |
114 void MouseMainWindow::configure() { |
116 message->setText("…"); |
115 message->setText("…"); |
117 |
116 |
118 int frequency; // TODO: get value from the group |
117 int frequency; // TODO: get value from the group |
119 if (configureFrequency125->isChecked()) frequency = 125; |
118 if (configureFrequency125->isChecked()) frequency = 125; |
120 else if (configureFrequency250->isChecked()) frequency = 250; |
119 else if (configureFrequency250->isChecked()) frequency = 250; |
121 else if (configureFrequency500->isChecked()) frequency = 500; |
120 else if (configureFrequency500->isChecked()) frequency = 500; |
122 else if (configureFrequency1000->isChecked()) frequency = 1000; |
121 else if (configureFrequency1000->isChecked()) frequency = 1000; |