Skip to content

Commit

Permalink
Сделана вкладка Keyboard в диалоге Настроки редактора. На этой вкладк…
Browse files Browse the repository at this point in the history
…е сделана кнопка вызова диалога настройки кнопок панелей инструментов редактора.
  • Loading branch information
DikBSD committed Jan 9, 2019
1 parent 771a336 commit 3b943b5
Show file tree
Hide file tree
Showing 4 changed files with 143 additions and 2 deletions.
6 changes: 4 additions & 2 deletions app/app.pro
Expand Up @@ -233,7 +233,8 @@ HEADERS = src/main.h \
src/controllers/shortcutSettings/ShortcutSettingsController.h \
src/models/shortcutSettings/ShortcutSettingsModel.h \
src/views/appConfigWindow/AppConfigPage_Keyboard.h \
src/views/shortcutSettings/HotKeyGrabber.h
src/views/shortcutSettings/HotKeyGrabber.h \
src/libraries/wyedit/EditorConfigKeyboard.h

lessThan(QT_MAJOR_VERSION,5) {
HEADERS+=src/libraries/qtSingleApplication/qtsingleapplication.h \
Expand Down Expand Up @@ -362,7 +363,8 @@ SOURCES = src/main.cpp \
src/controllers/shortcutSettings/ShortcutSettingsController.cpp \
src/models/shortcutSettings/ShortcutSettingsModel.cpp \
src/views/appConfigWindow/AppConfigPage_Keyboard.cpp \
src/views/shortcutSettings/HotKeyGrabber.cpp
src/views/shortcutSettings/HotKeyGrabber.cpp \
src/libraries/wyedit/EditorConfigKeyboard.cpp

lessThan(QT_MAJOR_VERSION,5) {
SOURCES+=src/libraries/qtSingleApplication/qtsingleapplication.cpp \
Expand Down
2 changes: 2 additions & 0 deletions app/src/libraries/wyedit/EditorConfigDialog.cpp
Expand Up @@ -7,6 +7,7 @@
#include "EditorConfigDialog.h"
#include "EditorConfigFont.h"
#include "EditorConfigMisc.h"
#include "EditorConfigKeyboard.h"


EditorConfigDialog::EditorConfigDialog(QWidget *parent) : QWidget(parent)
Expand All @@ -16,6 +17,7 @@ EditorConfigDialog::EditorConfigDialog(QWidget *parent) : QWidget(parent)
configDialog->setWindowTitle(tr("Editor settings"));

configDialog->addWidget(new EditorConfigFont(this),tr("Fonts"));
configDialog->addWidget(new EditorConfigKeyboard(this),tr("Keyboard"));
configDialog->addWidget(new EditorConfigMisc(this),tr("Misc"));

configDialog->exec();
Expand Down
86 changes: 86 additions & 0 deletions app/src/libraries/wyedit/EditorConfigKeyboard.cpp
@@ -0,0 +1,86 @@
#include <QWidget>
#include <QBoxLayout>
#include <QGroupBox>
#include <QtDebug>

#include "../../main.h"

#include "EditorConfigKeyboard.h"


EditorConfigKeyboard::EditorConfigKeyboard(QWidget *parent) : ConfigPage(parent)
{
setupUi();
setupSignals();
assembly();
}


EditorConfigKeyboard::~EditorConfigKeyboard()
{

}

void EditorConfigKeyboard::setupUi(void)
{
qDebug() << "Create keyboard config page";

// Кнопка редактирования файла конфигурации распределения кнопок по панелям инструментов редактора
editToolButtonsConfigFile = new QPushButton(this);
editToolButtonsConfigFile->setText(tr("Edit ToolButtons"));
editToolButtonsConfigFile->setSizePolicy(QSizePolicy(QSizePolicy::Maximum, QSizePolicy::Fixed, QSizePolicy::ToolButton));
}


// Связывание сигналов, генерируемых объектами класса и слотов для их обработки
void EditorConfigKeyboard::setupSignals(void)
{
connect(editToolButtonsConfigFile, &QPushButton::clicked,
this, &EditorConfigKeyboard::onClickedEditToolButtonsConfigFile);
}


// Создание жиджетов панели "Keyboard"
void EditorConfigKeyboard::assembly(void)
{
// Группирующая рамка
QGroupBox *toolButtonsBox=new QGroupBox(this);
toolButtonsBox->setTitle(tr("ToolButtons preferences"));

// Вставка виджетов в группирующую рамку
QVBoxLayout *toolButtonsLayout = new QVBoxLayout(this);
toolButtonsLayout->addWidget(editToolButtonsConfigFile);
toolButtonsBox->setLayout(toolButtonsLayout);

// Сборка основного слоя
QVBoxLayout *centralLayout=new QVBoxLayout(this);
centralLayout->addWidget(toolButtonsBox);
centralLayout->addStretch();

// Установка основного слоя
setLayout(centralLayout);
}


// Запуск диалога распределения кнопок по панелям инструментов редактора
void EditorConfigKeyboard::onClickedEditToolButtonsConfigFile(void)
{
// ShortcutSettingsScreen shortcutSettingsScreen;
// shortcutSettingsScreen.setWindowTitle(tr("Keyboard config"));

// shortcutSettingsScreen.exec();
}


// Возвращает признак необходимости перезагрузки MyTetra,
// в зависимости от уровеня сложности вносимых изменений
// 0 - изменения можно делать на лету, перезагрузка MyTetra не нужна
// 1 - для принятия изменений нужна перезагрузка MyTetra
int EditorConfigKeyboard::applyChanges(void)
{
qDebug() << "Apply changes editor misc";

int result = 0;

return result;
}
51 changes: 51 additions & 0 deletions app/src/libraries/wyedit/EditorConfigKeyboard.h
@@ -0,0 +1,51 @@
#ifndef EDITORCONFIGKEYBOARD_H
#define EDITORCONFIGKEYBOARD_H

#include <QWidget>
#include <QLineEdit>
#include <QFontComboBox>
#include <QSpinBox>
#include <QPushButton>
#include <QLabel>
#include <QGroupBox>
#include <QVBoxLayout>

#include "views/appConfigWindow/ConfigPage.h"

class EditorConfig;


class EditorConfigKeyboard : public ConfigPage
{
Q_OBJECT

public:
EditorConfigKeyboard(QWidget *parent = nullptr);
virtual ~EditorConfigKeyboard(void);

int applyChanges(void);

private slots:
void onClickedEditToolButtonsConfigFile(void);

protected:

QPushButton *editToolButtonsConfigFile;

void setupUi(void);
void setupSignals(void);
void assembly(void);

private:

EditorConfig *conf;

QLabel *indentStepLabel;
QLabel *indentStepFlexion;
QSpinBox *indentStep;

};


#endif // EDITORCONFIGKEYBOARD_H

0 comments on commit 3b943b5

Please sign in to comment.