Initial commit

This commit is contained in:
Jamie Greunbaum
2024-09-17 04:05:32 -04:00
commit b40cb2f692
34 changed files with 2617 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
#include "Widgets/applicationinfowidget.h"
#include "ui_applicationinfowidget.h"
ApplicationInfoWidget::ApplicationInfoWidget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::ApplicationInfoWidget)
{
ui->setupUi(this);
}
ApplicationInfoWidget::~ApplicationInfoWidget()
{
delete ui;
}
void ApplicationInfoWidget::setTextData(const QString &exe,
const QString &path,
const QString &title)
{
ui->editProgramExe->setText(exe);
ui->editProgramPath->setText(path);
ui->editProgramTitle->setText(title);
}
void ApplicationInfoWidget::setTextData(const QString &name,
const QString &exe,
const QString &path,
const QString &title)
{
ui->editProgramName->setText(name);
this->setTextData(exe, path, title);
}
+31
View File
@@ -0,0 +1,31 @@
#ifndef APPLICATIONINFOWIDGET_H
#define APPLICATIONINFOWIDGET_H
#include <QWidget>
namespace Ui {
class ApplicationInfoWidget;
}
class ApplicationInfoWidget : public QWidget
{
Q_OBJECT
public:
explicit ApplicationInfoWidget(QWidget *parent = nullptr);
~ApplicationInfoWidget();
void setTextData(const QString &exe,
const QString &path,
const QString &title);
void setTextData(const QString &name,
const QString &exe,
const QString &path,
const QString &title);
private:
Ui::ApplicationInfoWidget *ui;
};
#endif // APPLICATIONINFOWIDGET_H
+90
View File
@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>ApplicationInfoWidget</class>
<widget class="QWidget" name="ApplicationInfoWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>342</width>
<height>132</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="labelProgramName">
<property name="text">
<string>Name:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="editProgramName"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelProgramExe">
<property name="text">
<string>Executable:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="editProgramExe"/>
</item>
<item row="2" column="0">
<widget class="QLabel" name="labelProgramPath">
<property name="text">
<string>Path:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="editProgramPath"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelProgramTitle">
<property name="text">
<string>Window Title:</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="editProgramTitle"/>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>0</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
+6
View File
@@ -0,0 +1,6 @@
#include "qdialbutton.h"
QDialButton::QDialButton(const quint8 &row, const quint8 &column, QWidget *parent) : QRatioButton(row, column, parent)
{
}
+15
View File
@@ -0,0 +1,15 @@
#ifndef QDIALBUTTON_H
#define QDIALBUTTON_H
#include "qratiobutton.h"
class QDialButton : public QRatioButton
{
Q_OBJECT
public:
QDialButton(const quint8 &row, const quint8 &column, QWidget *parent = nullptr);
};
#endif // QDIALBUTTON_H
+6
View File
@@ -0,0 +1,6 @@
#include "qmacrobutton.h"
QMacroButton::QMacroButton(const quint8 &row, const quint8 &column, QWidget *parent) : QRatioButton(row, column, parent)
{
}
+15
View File
@@ -0,0 +1,15 @@
#ifndef QMACROBUTTON_H
#define QMACROBUTTON_H
#include "qratiobutton.h"
class QMacroButton : public QRatioButton
{
Q_OBJECT
public:
QMacroButton(const quint8 &row, const quint8 &column, QWidget *parent = nullptr);
};
#endif // QMACROBUTTON_H
+25
View File
@@ -0,0 +1,25 @@
#include "qprocesslistitem.h"
#include "QtImprovements/qsettingsplus.h"
QProcessListItem::QProcessListItem(const WindowData &windowData, QListWidget *listview, int type)
: QListWidgetItem(listview, type)
{
this->setFlags(this->flags() | Qt::ItemFlag::ItemIsEditable);
this->windowData = windowData;
this->setText(this->windowData.processName);
}
void QProcessListItem::updateText(const QString &text)
{
const QString &oldText = this->windowData.processName;
QSettings settings = QSettingsPlus::createQSettings();
settings.beginGroup("ApplicationNames");
const QString &value = settings.value(oldText).toString();
settings.setValue(text, value);
this->windowData.importDataFromSetting(value);
}
+22
View File
@@ -0,0 +1,22 @@
#ifndef QPROCESSLISTITEM_H
#define QPROCESSLISTITEM_H
#include <QListWidgetItem>
#include "WindowFinder/windowfinder.h"
class QProcessListItem : public QListWidgetItem
{
public:
explicit QProcessListItem(const WindowData &windowData, QListWidget *listview = nullptr, int type = Type);
void updateText(const QString &text);
WindowData getWindowData() const { return windowData; }
private:
WindowData windowData;
};
#endif // QPROCESSLISTITEM_H
+24
View File
@@ -0,0 +1,24 @@
#include "qratiobutton.h"
QRatioButton::QRatioButton(const quint8 &row, const quint8 &column, QWidget *parent) : QPushButton(parent)
{
this->setCheckable(true);
QSizePolicy sizePolicy(QSizePolicy::Policy::MinimumExpanding, QSizePolicy::Policy::MinimumExpanding);
sizePolicy.setHeightForWidth(true);
this->setSizePolicy(sizePolicy);
this->row = row;
this->column = column;
QObject::connect(this, &QPushButton::pressed, this, &QRatioButton::onButtonPressSignal);
}
int QRatioButton::heightForWidth(int w) const
{
return w;
}
void QRatioButton::onButtonPressSignal()
{
emit this->pressedRowColumn(row, column);
}
+25
View File
@@ -0,0 +1,25 @@
#ifndef QRATIOBUTTON_H
#define QRATIOBUTTON_H
#include <QPushButton>
class QRatioButton : public QPushButton
{
Q_OBJECT
public:
QRatioButton(const quint8 &row, const quint8 &column, QWidget *parent = nullptr);
virtual int heightForWidth(int w) const;
private:
void onButtonPressSignal();
quint8 row = 0;
quint8 column = 0;
signals:
void pressedRowColumn(const quint8 &row, const quint8 &column);
};
#endif // QRATIOBUTTON_H