Compare commits

...

3 Commits

Author SHA1 Message Date
SiegfriedSiegert 73c78302b1 add 10 inch portrait mode 2026-09-09 14:22:10 +02:00
SiegfriedSiegert 330dc7c109 set 7 inch portrait mode 2026-09-09 14:04:03 +02:00
SiegfriedSiegert 348fb15508 Ui: support portrait mode 2025-02-19 11:39:08 +01:00
3 changed files with 180 additions and 50 deletions
+68
View File
@@ -12,6 +12,9 @@
#include <QScrollBar> #include <QScrollBar>
#include <QEvent> #include <QEvent>
#include <QScreen>
MainWindow::MainWindow(Worker *worker, QWidget *parent) MainWindow::MainWindow(Worker *worker, QWidget *parent)
: QMainWindow(parent) : QMainWindow(parent)
@@ -30,6 +33,7 @@ MainWindow::MainWindow(Worker *worker, QWidget *parent)
this->statusBar()->setFont(f); this->statusBar()->setFont(f);
ui->setupUi(this); ui->setupUi(this);
checkOrientation();
ui->updateProgress->setRange(0, 100); ui->updateProgress->setRange(0, 100);
ui->updateProgress->reset(); ui->updateProgress->reset();
@@ -98,6 +102,70 @@ MainWindow::~MainWindow() {
delete ui; delete ui;
} }
// ----------------------------- Ui::LAYOUT setting -------------------------------------
void MainWindow::checkOrientation()
{
QScreen *screen = QGuiApplication::primaryScreen();
Qt::ScreenOrientation orientation = screen->orientation();
switch (orientation) {
case Qt::PrimaryOrientation:
this->setLandscapeLayout();
break;
case Qt::LandscapeOrientation:
this->setLandscapeLayout();
break;
case Qt::PortraitOrientation:
this->setPortraitLayout();
break;
case Qt::InvertedLandscapeOrientation:
this->setLandscapeLayout();
break;
case Qt::InvertedPortraitOrientation:
this->setPortraitLayout();
break;
}
this->setPortraitLayout10Inch();
this->currentOrientation = orientation;
}
void MainWindow::setPortraitLayout()
{
// Adjust layout for portrait mode (480x800)
this->setFixedSize(480, 800);
ui->centralwidget->setFixedSize(480, 800);
}
void MainWindow::setPortraitLayout10Inch()
{
// Adjust layout for portrait mode (480x800)
this->setFixedSize(800, 1280);
ui->centralwidget->setFixedSize(800, 1280);
}
void MainWindow::setLandscapeLayout()
{
// Adjust layout for landscape mode (800x480)
/*
this->setFixedSize(800, 480);
ui->centralwidget->setFixedSize(800, 480);
*/
this->setFixedSize(480, 800);
ui->centralwidget->setFixedSize(480, 800);
}
void MainWindow::customEvent(QEvent *event) { void MainWindow::customEvent(QEvent *event) {
if (event->type() == ProgressEvent::type()) { if (event->type() == ProgressEvent::type()) {
ProgressEvent *pevent = (ProgressEvent *)event; ProgressEvent *pevent = (ProgressEvent *)event;
+7
View File
@@ -66,6 +66,13 @@ private:
void onShowMessage(QString, QString); void onShowMessage(QString, QString);
Ui::MainWindow *ui; Ui::MainWindow *ui;
void checkOrientation();
void setPortraitLayout();
void setPortraitLayout10Inch();
void setLandscapeLayout();
Qt::ScreenOrientation currentOrientation;
Worker *m_worker; Worker *m_worker;
int const m_width; int const m_width;
QTimer *m_startTimer; QTimer *m_startTimer;
+105 -50
View File
@@ -7,67 +7,122 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>800</width> <width>800</width>
<height>480</height> <height>1280</height>
</rect> </rect>
</property> </property>
<property name="minimumSize">
<size>
<width>800</width>
<height>1280</height>
</size>
</property>
<property name="font"> <property name="font">
<font> <font>
<family>Source Code Pro</family> <family>Liberation Sans</family>
<pointsize>18</pointsize>
</font> </font>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>MainWindow</string> <string>MainWindow</string>
</property> </property>
<widget class="QWidget" name="centralwidget"> <widget class="QWidget" name="centralwidget">
<widget class="QWidget" name="layoutWidget"> <layout class="QVBoxLayout" name="verticalLayout">
<property name="geometry"> <property name="spacing">
<rect> <number>16</number>
<x>10</x>
<y>10</y>
<width>781</width>
<height>441</height>
</rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout"> <property name="leftMargin">
<item row="3" column="2"> <number>20</number>
<widget class="QPushButton" name="exit"> </property>
<property name="text"> <property name="topMargin">
<string>Exit</string> <number>20</number>
</property> </property>
</widget> <property name="rightMargin">
</item> <number>20</number>
<item row="3" column="1"> </property>
<widget class="QProgressBar" name="updateProgress"> <property name="bottomMargin">
<property name="value"> <number>20</number>
<number>1</number> </property>
</property> <item>
</widget> <layout class="QGridLayout" name="gridLayout" rowstretch="1,0" columnstretch="1,1,0">
</item> <property name="horizontalSpacing">
<item row="0" column="0" rowspan="3" colspan="3"> <number>16</number>
<widget class="QTextEdit" name="updateStatus"> </property>
<property name="enabled"> <property name="verticalSpacing">
<bool>true</bool> <number>16</number>
</property> </property>
<property name="font"> <item row="1" column="2">
<font> <widget class="QPushButton" name="exit">
<family>Misc Fixed</family> <property name="minimumSize">
<pointsize>11</pointsize> <size>
<bold>true</bold> <width>180</width>
</font> <height>80</height>
</property> </size>
<property name="verticalScrollBarPolicy"> </property>
<enum>Qt::ScrollBarAsNeeded</enum> <property name="maximumSize">
</property> <size>
<property name="horizontalScrollBarPolicy"> <width>260</width>
<enum>Qt::ScrollBarAsNeeded</enum> <height>80</height>
</property> </size>
<property name="sizeAdjustPolicy"> </property>
<enum>QAbstractScrollArea::AdjustToContents</enum> <property name="font">
</property> <font>
</widget> <pointsize>22</pointsize>
</item> <weight>75</weight>
</layout> <bold>true</bold>
</widget> </font>
</property>
<property name="text">
<string>Exit</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QProgressBar" name="updateProgress">
<property name="minimumSize">
<size>
<width>0</width>
<height>80</height>
</size>
</property>
<property name="font">
<font>
<pointsize>18</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="value">
<number>1</number>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="0" colspan="3">
<widget class="QTextEdit" name="updateStatus">
<property name="enabled">
<bool>true</bool>
</property>
<property name="font">
<font>
<family>Source Code Pro</family>
<pointsize>18</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAsNeeded</enum>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget> </widget>
</widget> </widget>
<resources/> <resources/>