From 4621d08cdcfbf4848c4fa3d2c2c3c1c0764f9f9c Mon Sep 17 00:00:00 2001 From: laserpants Date: Sat, 19 Mar 2016 16:28:38 +0300 Subject: [PATCH] add a simple frame component used in examples --- examples/about.cpp | 0 examples/about.h | 4 ++++ examples/examplelist.cpp | 0 examples/examplelist.h | 4 ++++ examples/exampleview.cpp | 0 examples/exampleview.h | 4 ++++ examples/flatbuttonexamples.cpp | 0 examples/flatbuttonexamples.h | 4 ++++ examples/frame.cpp | 42 +++++++++++++++++++++++++++++++++ examples/frame.h | 25 ++++++++++++++++++++ 10 files changed, 83 insertions(+) create mode 100644 examples/about.cpp create mode 100644 examples/about.h create mode 100644 examples/examplelist.cpp create mode 100644 examples/examplelist.h create mode 100644 examples/exampleview.cpp create mode 100644 examples/exampleview.h create mode 100644 examples/flatbuttonexamples.cpp create mode 100644 examples/flatbuttonexamples.h create mode 100644 examples/frame.cpp create mode 100644 examples/frame.h diff --git a/examples/about.cpp b/examples/about.cpp new file mode 100644 index 0000000..e69de29 diff --git a/examples/about.h b/examples/about.h new file mode 100644 index 0000000..34143c1 --- /dev/null +++ b/examples/about.h @@ -0,0 +1,4 @@ +#ifndef ABOUT_H +#define ABOUT_H + +#endif // ABOUT_H diff --git a/examples/examplelist.cpp b/examples/examplelist.cpp new file mode 100644 index 0000000..e69de29 diff --git a/examples/examplelist.h b/examples/examplelist.h new file mode 100644 index 0000000..f4e2d83 --- /dev/null +++ b/examples/examplelist.h @@ -0,0 +1,4 @@ +#ifndef EXAMPLELIST_H +#define EXAMPLELIST_H + +#endif // EXAMPLELIST_H diff --git a/examples/exampleview.cpp b/examples/exampleview.cpp new file mode 100644 index 0000000..e69de29 diff --git a/examples/exampleview.h b/examples/exampleview.h new file mode 100644 index 0000000..c800c76 --- /dev/null +++ b/examples/exampleview.h @@ -0,0 +1,4 @@ +#ifndef EXAMPLEVIEW_H +#define EXAMPLEVIEW_H + +#endif // EXAMPLEVIEW_H diff --git a/examples/flatbuttonexamples.cpp b/examples/flatbuttonexamples.cpp new file mode 100644 index 0000000..e69de29 diff --git a/examples/flatbuttonexamples.h b/examples/flatbuttonexamples.h new file mode 100644 index 0000000..f7638a6 --- /dev/null +++ b/examples/flatbuttonexamples.h @@ -0,0 +1,4 @@ +#ifndef FLATBUTTONEXAMPLES_H +#define FLATBUTTONEXAMPLES_H + +#endif // FLATBUTTONEXAMPLES_H diff --git a/examples/frame.cpp b/examples/frame.cpp new file mode 100644 index 0000000..de19221 --- /dev/null +++ b/examples/frame.cpp @@ -0,0 +1,42 @@ +#include +#include +#include +#include "frame.h" + +Frame::Frame(QWidget *parent) + : QWidget(parent), + _edit(new QTextEdit), + _layout(new QHBoxLayout) +{ + setLayout(_layout); + + _layout->addWidget(new QLabel("placeholder")); + + QFont font("monospace"); + font.setPixelSize(12); + + _edit->setTextInteractionFlags(Qt::TextBrowserInteraction); + _edit->setFont(font); + _layout->addWidget(_edit); + + _layout->setStretch(0, 1); + _layout->setStretch(1, 1); + + setMinimumHeight(300); +} + +Frame::~Frame() +{ +} + +void Frame::setCodeSnippet(const QString &snippet) +{ + _edit->setText(snippet); +} + +void Frame::setWidget(QWidget *widget) +{ + QWidget *old = _layout->itemAt(0)->widget(); + _layout->replaceWidget(old, widget); + old->deleteLater(); +} diff --git a/examples/frame.h b/examples/frame.h new file mode 100644 index 0000000..d3a7f14 --- /dev/null +++ b/examples/frame.h @@ -0,0 +1,25 @@ +#ifndef FRAME_H +#define FRAME_H + +#include + +class QTextEdit; +class QHBoxLayout; + +class Frame : public QWidget +{ + Q_OBJECT + +public: + explicit Frame(QWidget *parent = 0); + ~Frame(); + + void setCodeSnippet(const QString &snippet); + void setWidget(QWidget *widget); + +private: + QTextEdit *const _edit; + QHBoxLayout *const _layout; +}; + +#endif // FRAME_H