Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ set(PROJECT_SOURCES
src/behaviour.cpp src/behaviour.h src/behaviour.ui
src/mouse.cpp src/mouse.h src/mouse.ui
src/language.cpp src/language.h src/language.ui
src/template.cpp src/template.h src/template.ui
)
set(PROJECT_OTHER_FILES
.github/workflows/build.yml
Expand Down
2 changes: 2 additions & 0 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,6 @@ cmake \
-D ASAN=1 \
-B build

export LABWC_TWEAKS_SHOW_TEMPLATE=1

cmake --build build && build/labwc-tweaks
20 changes: 18 additions & 2 deletions src/maindialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
#include <QtWidgets/QStackedWidget>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include <language.h>
#include <mouse.h>
#include "appearance.h"
#include "behaviour.h"
#include "mouse.h"
#include "language.h"
#include "template.h"

#include <QDebug>
#include <QDir>
Expand Down Expand Up @@ -58,6 +59,12 @@ MainDialog::MainDialog(QWidget *parent) : QDialog(parent)
item3->setIcon(QIcon::fromTheme("preferences-desktop-locale"));
item3->setText(tr("Language & Region"));

if (!qgetenv("LABWC_TWEAKS_SHOW_TEMPLATE").isEmpty()) {
QListWidgetItem *item99 = new QListWidgetItem(list);
item99->setIcon(QIcon::fromTheme("preferences-system"));
item99->setText("Template");
}

QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
Expand All @@ -84,6 +91,11 @@ MainDialog::MainDialog(QWidget *parent) : QDialog(parent)
m_pageLanguage = new Language();
stack->addWidget(m_pageLanguage);

if (!qgetenv("LABWC_TWEAKS_SHOW_TEMPLATE").isEmpty()) {
m_pageTemplate = new Template();
stack->addWidget(m_pageTemplate);
}

horizontalLayout->addWidget(stack);

verticalLayout->addWidget(widget);
Expand Down Expand Up @@ -117,12 +129,16 @@ MainDialog::~MainDialog()
xml_finish();
}

// Init settings and setup UI widgets
void MainDialog::activate()
{
m_pageAppearance->activate();
m_pageBehaviour->activate();
m_pageMouse->activate();
m_pageLanguage->activate();
if (!qgetenv("LABWC_TWEAKS_SHOW_TEMPLATE").isEmpty()) {
m_pageTemplate->activate();
}
}

void MainDialog::onApply()
Expand Down
2 changes: 2 additions & 0 deletions src/maindialog.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ class Appearance;
class Behaviour;
class Mouse;
class Language;
class Template;

class MainDialog : public QDialog
{
Expand All @@ -26,5 +27,6 @@ class MainDialog : public QDialog
Behaviour *m_pageBehaviour;
Mouse *m_pageMouse;
Language *m_pageLanguage;
Template *m_pageTemplate;
};
#endif // MAINDIALOG_H
29 changes: 29 additions & 0 deletions src/template.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#include "template.h"
#include <QStringList>
#include "./ui_template.h"

Template::Template(QWidget *parent) : QWidget(parent), ui(new Ui::pageTemplate)
{
ui->setupUi(this);
}

Template::~Template()
{
delete ui;
}

void Template::activate()
{
QStringList items = { "Foo", "Bar", "Baz" };
ui->comboBox->addItems(items);

for (int i = 0; i < 100; ++i) {
QString text = QString("Label ") + QString::number(i);
ui->groupBox2_gridLayout->addWidget(new QLabel(text));
}
}

void Template::onApply()
{
// No-op
}
25 changes: 25 additions & 0 deletions src/template.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#ifndef TEMPLATE_H
#define TEMPLATE_H
#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui {
class pageTemplate;
}
QT_END_NAMESPACE

class Template : public QWidget
{
Q_OBJECT

public:
Template(QWidget *parent = nullptr);
~Template();

void activate();
void onApply();

private:
Ui::pageTemplate *ui;
};
#endif // TEMPLATE_H
62 changes: 62 additions & 0 deletions src/template.ui
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>pageTemplate</class>
<widget class="QWidget" name="pageTemplate">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QScrollArea" name="scrollArea">
<property name="frameShape">
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<layout class="QGridLayout" name="gridLayout">
<!-- Group Box 1 -->
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox1">
<property name="title">
<string>GroupBox1</string>
</property>
<layout class="QGridLayout" name="groupBox1_gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>ComboBox Test</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="comboBox"/>
</item>
</layout>
</widget>
</item>
<!-- Group Box 2 -->
<item row="1" column="0">
<widget class="QGroupBox" name="groupBox2">
<property name="title">
<string>GroupBox2</string>
</property>
<!-- This grid layout is populated from the template.cpp file -->
<layout class="QGridLayout" name="groupBox2_gridLayout"/>
</widget>
</item>
<!-- Spacer -->
<item row="2" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Orientation::Vertical</enum>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>