Add Dialog

This commit is contained in:
johanneshilden 2017-09-30 02:40:00 +03:00
parent 56cb620d6f
commit f19cf511d1
9 changed files with 156 additions and 15 deletions

View File

@ -1,14 +1,14 @@
#include "xx/qtmaterialdialog.h"
#include "xx/qtmaterialdialog_p.h"
#include <QStackedLayout>
#include <QGraphicsDropShadowEffect>
#include "qtmaterialdialog.h"
#include "qtmaterialdialog_p.h"
#include <QtWidgets/QStackedLayout>
#include <QtWidgets/QGraphicsDropShadowEffect>
#include <QStateMachine>
#include <QState>
#include <QApplication>
#include <QtWidgets/QApplication>
#include <QPropertyAnimation>
#include <QPainter>
#include "xx/qtmaterialdialog_internal.h"
#include "xxlib/qtmaterialstatetransition.h"
#include "qtmaterialdialog_internal.h"
#include "lib/qtmaterialstatetransition.h"
/*!
* \class QtMaterialDialogPrivate

View File

@ -2,7 +2,7 @@
#define QTMATERIALDIALOG_H
#include <QScopedPointer>
#include "xxlib/qtmaterialoverlaywidget.h"
#include "lib/qtmaterialoverlaywidget.h"
class QLayout;
class QtMaterialDialogPrivate;

View File

@ -1,9 +1,9 @@
#include "xx/qtmaterialdialog_internal.h"
#include "qtmaterialdialog_internal.h"
#include <QPainter>
#include <QPixmap>
#include <QEvent>
#include <QStackedLayout>
#include "xx/qtmaterialdialog.h"
#include <QtWidgets/QStackedLayout>
#include "qtmaterialdialog.h"
/*!
* \class QtMaterialDialogProxy

View File

@ -1,7 +1,7 @@
#ifndef QTMATERIALDIALOG_INTERNAL_H
#define QTMATERIALDIALOG_INTERNAL_H
#include <QWidget>
#include <QtWidgets/QWidget>
class QStackedLayout;
class QtMaterialDialog;

View File

@ -0,0 +1,63 @@
#include "dialogsettingseditor.h"
#include <QVBoxLayout>
#include <QColorDialog>
#include "qtmaterialdialog.h"
DialogSettingsEditor::DialogSettingsEditor(QWidget *parent)
: QWidget(parent),
ui(new Ui::DialogSettingsForm),
m_dialog(new QtMaterialDialog)
{
QVBoxLayout *layout = new QVBoxLayout;
setLayout(layout);
QWidget *widget = new QWidget;
layout->addWidget(widget);
QWidget *canvas = new QWidget;
canvas->setStyleSheet("QWidget { background: white; }");
layout->addWidget(canvas);
ui->setupUi(widget);
layout->setContentsMargins(20, 20, 20, 20);
layout = new QVBoxLayout;
canvas->setLayout(layout);
canvas->setMaximumHeight(300);
layout->addWidget(m_dialog);
layout->setAlignment(m_dialog, Qt::AlignHCenter);
m_dialog->setParent(this);
QWidget *dialogWidget = new QWidget;
QVBoxLayout *dialogWidgetLayout = new QVBoxLayout;
dialogWidget->setLayout(dialogWidgetLayout);
QPushButton *closeButton = new QPushButton("Close");
dialogWidgetLayout->addWidget(closeButton);
QVBoxLayout *dialogLayout = new QVBoxLayout;
m_dialog->setWindowLayout(dialogLayout);
dialogWidget->setMinimumHeight(300);
dialogLayout->addWidget(dialogWidget);
setupForm();
connect(ui->showDialogButton, SIGNAL(pressed()), m_dialog, SLOT(showDialog()));
connect(closeButton, SIGNAL(pressed()), m_dialog, SLOT(hideDialog()));
}
DialogSettingsEditor::~DialogSettingsEditor()
{
delete ui;
}
void DialogSettingsEditor::setupForm()
{
}
void DialogSettingsEditor::updateWidget()
{
}

View File

@ -0,0 +1,26 @@
#ifndef DIALOGSETTINGSEDITOR_H
#define DIALOGSETTINGSEDITOR_H
#include <QWidget>
#include "ui_dialogsettingsform.h"
class QtMaterialDialog;
class DialogSettingsEditor : public QWidget
{
Q_OBJECT
public:
explicit DialogSettingsEditor(QWidget *parent = 0);
~DialogSettingsEditor();
protected slots:
void setupForm();
void updateWidget();
private:
Ui::DialogSettingsForm *const ui;
QtMaterialDialog *const m_dialog;
};
#endif // DIALOGSETTINGSEDITOR_H

View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>DialogSettingsForm</class>
<widget class="QWidget" name="DialogSettingsForm">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>474</width>
<height>387</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>10</x>
<y>70</y>
<width>171</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>TODO</string>
</property>
</widget>
<widget class="QPushButton" name="showDialogButton">
<property name="geometry">
<rect>
<x>50</x>
<y>20</y>
<width>101</width>
<height>22</height>
</rect>
</property>
<property name="text">
<string>Show dialog</string>
</property>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -16,7 +16,8 @@ SOURCES = mainwindow.cpp \
togglesettingseditor.cpp \
textfieldsettingseditor.cpp \
tabssettingseditor.cpp \
snackbarsettingseditor.cpp
snackbarsettingseditor.cpp \
dialogsettingseditor.cpp
HEADERS = mainwindow.h \
avatarsettingseditor.h \
badgesettingseditor.h \
@ -32,7 +33,8 @@ HEADERS = mainwindow.h \
togglesettingseditor.h \
textfieldsettingseditor.h \
tabssettingseditor.h \
snackbarsettingseditor.h
snackbarsettingseditor.h \
dialogsettingseditor.h
LIBS += ../components/libcomponents.a
INCLUDEPATH += ../components/
TARGET = ../examples-exe
@ -54,4 +56,5 @@ FORMS += \
radiobuttonsettingsform.ui \
togglesettingsform.ui \
textfieldsettingsform.ui \
tabssettingsform.ui
tabssettingsform.ui \
dialogsettingsform.ui

View File

@ -17,6 +17,7 @@
#include "textfieldsettingseditor.h"
#include "tabssettingseditor.h"
#include "snackbarsettingseditor.h"
#include "dialogsettingseditor.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
@ -51,11 +52,13 @@ MainWindow::MainWindow(QWidget *parent)
TextFieldSettingsEditor *textField = new TextFieldSettingsEditor;
TabsSettingsEditor *tabs = new TabsSettingsEditor;
SnackbarSettingsEditor *snackbar = new SnackbarSettingsEditor;
DialogSettingsEditor *dialog = new DialogSettingsEditor;
stack->addWidget(avatar);
stack->addWidget(badge);
stack->addWidget(checkbox);
stack->addWidget(circularProgress);
stack->addWidget(dialog);
stack->addWidget(fab);
stack->addWidget(flatButton);
stack->addWidget(iconButton);
@ -72,6 +75,7 @@ MainWindow::MainWindow(QWidget *parent)
list->addItem("Badge");
list->addItem("Checkbox");
list->addItem("Circular Progress");
list->addItem("Dialog");
list->addItem("Floating Action Button");
list->addItem("Flat Button");
list->addItem("Icon Button");