mirror of
https://github.com/epasveer/seer.git
synced 2026-08-29 08:34:42 +08:00
Use new QColorButton that has a visible frame.
This commit is contained in:
@@ -133,6 +133,7 @@ set(HEADER_FILES
|
||||
QProcessInfoWidget.h
|
||||
QProgressIndicator.h
|
||||
QColorButton.h
|
||||
QColorSwatch.h
|
||||
QDetachTabWidget.h
|
||||
QZoomChartView.h
|
||||
QZoomChart.h
|
||||
@@ -230,6 +231,7 @@ set(SOURCE_FILES
|
||||
QProcessInfoWidget.cpp
|
||||
QProgressIndicator.cpp
|
||||
QColorButton.cpp
|
||||
QColorSwatch.cpp
|
||||
QDetachTabWidget.cpp
|
||||
QZoomChartView.cpp
|
||||
QZoomChart.cpp
|
||||
|
||||
+15
-22
@@ -4,14 +4,21 @@
|
||||
#include <QtGui/QPainter>
|
||||
#include <QtCore/QDebug>
|
||||
|
||||
QColorButton::QColorButton(QWidget* parent) : QWidget(parent) {
|
||||
QColorButton::QColorButton(QWidget* parent) : QFrame(parent) {
|
||||
|
||||
_color = palette().color(QPalette::Window);
|
||||
// Construct the UI.
|
||||
setupUi(this);
|
||||
|
||||
setColor(palette().color(QPalette::Window));
|
||||
}
|
||||
|
||||
QColorButton::QColorButton(const QColor& color, QWidget* parent) : QWidget(parent) {
|
||||
QColorButton::QColorButton(const QColor& color, QWidget* parent) : QFrame(parent) {
|
||||
|
||||
_color = color;
|
||||
// Construct the UI.
|
||||
setupUi(this);
|
||||
|
||||
// Create color swatch
|
||||
setColor(color);
|
||||
}
|
||||
|
||||
QColorButton::~QColorButton() {
|
||||
@@ -29,31 +36,17 @@ void QColorButton::mouseDoubleClickEvent (QMouseEvent* e) {
|
||||
}
|
||||
}
|
||||
|
||||
void QColorButton::paintEvent(QPaintEvent* e) {
|
||||
|
||||
Q_UNUSED(e)
|
||||
|
||||
// Draw the color to the widget.
|
||||
QPainter painter(this);
|
||||
|
||||
painter.setPen(Qt::NoPen);
|
||||
painter.setBrush(color());
|
||||
painter.drawRect(rect());
|
||||
}
|
||||
|
||||
const QColor& QColorButton::color () {
|
||||
QColor QColorButton::color () const {
|
||||
|
||||
// Return the current color.
|
||||
return _color;
|
||||
return colorSwatch->color();
|
||||
}
|
||||
|
||||
void QColorButton::setColor (const QColor& color) {
|
||||
|
||||
// Save the new color.
|
||||
_color = color;
|
||||
|
||||
// Force it to be redrawn.
|
||||
update();
|
||||
colorSwatch->setColor(color);
|
||||
colorSwatch->update();
|
||||
|
||||
// Notify others that are listening.
|
||||
emit colorChanged();
|
||||
|
||||
+5
-9
@@ -3,9 +3,11 @@
|
||||
#include <QtGui/QMouseEvent>
|
||||
#include <QtGui/QPaintEvent>
|
||||
#include <QtGui/QColor>
|
||||
#include <QtWidgets/QFrame>
|
||||
#include <QtWidgets/QWidget>
|
||||
#include "ui_QColorButton.h"
|
||||
|
||||
class QColorButton : public QWidget {
|
||||
class QColorButton : public QFrame, protected Ui::QColorButtonForm {
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
@@ -14,19 +16,13 @@ class QColorButton : public QWidget {
|
||||
QColorButton(const QColor& color, QWidget* parent = 0);
|
||||
~QColorButton();
|
||||
|
||||
void setColor (const QColor &color);
|
||||
const QColor& color ();
|
||||
void setColor (const QColor& color);
|
||||
QColor color () const;
|
||||
|
||||
signals:
|
||||
void colorChanged ();
|
||||
|
||||
protected:
|
||||
void mouseDoubleClickEvent (QMouseEvent* e);
|
||||
void paintEvent (QPaintEvent* e);
|
||||
|
||||
private slots:
|
||||
|
||||
private:
|
||||
QColor _color;
|
||||
};
|
||||
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>QColorButtonForm</class>
|
||||
<widget class="QFrame" name="QColorButtonForm">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>400</width>
|
||||
<height>300</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Color Button</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QColorSwatch" name="colorSwatch" native="true"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>QColorSwatch</class>
|
||||
<extends>QWidget</extends>
|
||||
<header location="global">QColorSwatch.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -0,0 +1,36 @@
|
||||
#include "QColorSwatch.h"
|
||||
#include <QtGui/QPalette>
|
||||
#include <QtGui/QPainter>
|
||||
#include <QtCore/QDebug>
|
||||
|
||||
QColorSwatch::QColorSwatch(QWidget* parent) : QWidget(parent) {
|
||||
setColor(palette().color(QPalette::Window));
|
||||
}
|
||||
|
||||
QColorSwatch::QColorSwatch(const QColor& color, QWidget* parent) : QWidget(parent) {
|
||||
setColor(color);
|
||||
}
|
||||
|
||||
QColorSwatch::~QColorSwatch() {
|
||||
}
|
||||
|
||||
void QColorSwatch::setColor (const QColor& color) {
|
||||
_color = color;
|
||||
}
|
||||
|
||||
QColor QColorSwatch::color () const {
|
||||
return _color;
|
||||
}
|
||||
|
||||
void QColorSwatch::paintEvent(QPaintEvent* e) {
|
||||
|
||||
Q_UNUSED(e)
|
||||
|
||||
// Draw the color to the widget.
|
||||
QPainter painter(this);
|
||||
|
||||
painter.setPen(Qt::NoPen);
|
||||
painter.setBrush(color());
|
||||
painter.drawRect(rect());
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
#include <QtGui/QPaintEvent>
|
||||
#include <QtGui/QColor>
|
||||
#include <QtWidgets/QFrame>
|
||||
#include <QtWidgets/QWidget>
|
||||
|
||||
class QColorSwatch : public QWidget {
|
||||
|
||||
public:
|
||||
QColorSwatch(QWidget* parent = 0);
|
||||
QColorSwatch(const QColor& color, QWidget* parent = 0);
|
||||
~QColorSwatch();
|
||||
|
||||
void setColor (const QColor& color);
|
||||
QColor color () const;
|
||||
|
||||
protected:
|
||||
void paintEvent (QPaintEvent* e);
|
||||
|
||||
private:
|
||||
QColor _color;
|
||||
};
|
||||
|
||||
@@ -13,6 +13,9 @@ SeerStackDumpSettingsDialog::SeerStackDumpSettingsDialog (QWidget* parent) : QDi
|
||||
// Set up the UI.
|
||||
setupUi(this);
|
||||
|
||||
spHighLightColorButton->setFrameStyle(QFrame::Box|QFrame::Plain);
|
||||
spHighLightColorButton->setLineWidth(1);
|
||||
|
||||
// Setup the widgets
|
||||
setStackPointerExpression("$sp");
|
||||
setStackPointerColor(QColor("lightGray"));
|
||||
|
||||
Reference in New Issue
Block a user