Krita Source Code Documentation
Loading...
Searching...
No Matches
RulerTabChooser Class Reference

#include <KoRuler_p.h>

+ Inheritance diagram for RulerTabChooser:

Public Member Functions

void mousePressEvent (QMouseEvent *) override
 
void paintEvent (QPaintEvent *) override
 
 RulerTabChooser (QWidget *parent)
 
void setShowTabs (bool showTabs)
 
QTextOption::TabType type ()
 
 ~RulerTabChooser () override
 

Private Attributes

bool m_showTabs:1
 
QTextOption::TabType m_type { QTextOption::LeftTab }
 

Detailed Description

Definition at line 11 of file KoRuler_p.h.

Constructor & Destructor Documentation

◆ RulerTabChooser()

RulerTabChooser::RulerTabChooser ( QWidget * parent)
inline

Definition at line 14 of file KoRuler_p.h.

14: QWidget(parent), m_type(QTextOption::LeftTab), m_showTabs(false) {}
QTextOption::TabType m_type
Definition KoRuler_p.h:24

◆ ~RulerTabChooser()

RulerTabChooser::~RulerTabChooser ( )
inlineoverride

Definition at line 15 of file KoRuler_p.h.

15{}

Member Function Documentation

◆ mousePressEvent()

void RulerTabChooser::mousePressEvent ( QMouseEvent * )
override

Definition at line 39 of file KoRuler.cpp.

40{
41 if (! m_showTabs) {
42 return;
43 }
44
45 switch(m_type) {
46 case QTextOption::LeftTab:
47 m_type = QTextOption::RightTab;
48 break;
49 case QTextOption::RightTab:
50 m_type = QTextOption::CenterTab;
51 break;
52 case QTextOption::CenterTab:
53 m_type = QTextOption::DelimiterTab;
54 break;
55 case QTextOption::DelimiterTab:
56 m_type = QTextOption::LeftTab;
57 break;
58 }
59 update();
60}
bool update(QSpinBox *spinBox)

References m_showTabs, and m_type.

◆ paintEvent()

void RulerTabChooser::paintEvent ( QPaintEvent * )
override

Definition at line 62 of file KoRuler.cpp.

63{
64 if (! m_showTabs) {
65 return;
66 }
67
68 QPainter painter(this);
69 QPolygonF polygon;
70
71 painter.setPen(QPen(palette().color(QPalette::Text), 0));
72 painter.setBrush(palette().color(QPalette::Text));
73 painter.setRenderHint( QPainter::Antialiasing );
74
75 qreal x = 0.5 * width();
76 painter.translate(0,-height()/2+5);
77
78 switch (m_type) {
79 case QTextOption::LeftTab:
80 polygon << QPointF(x+0.5, height() - 8.5)
81 << QPointF(x+6.5, height() - 2.5)
82 << QPointF(x+0.5, height() - 2.5);
83 painter.drawPolygon(polygon);
84 break;
85 case QTextOption::RightTab:
86 polygon << QPointF(x+0.5, height() - 8.5)
87 << QPointF(x-5.5, height() - 2.5)
88 << QPointF(x+0.5, height() - 2.5);
89 painter.drawPolygon(polygon);
90 break;
91 case QTextOption::CenterTab:
92 polygon << QPointF(x+0.5, height() - 8.5)
93 << QPointF(x-5.5, height() - 2.5)
94 << QPointF(x+6.5, height() - 2.5);
95 painter.drawPolygon(polygon);
96 break;
97 case QTextOption::DelimiterTab:
98 polygon << QPointF(x-5.5, height() - 2.5)
99 << QPointF(x+6.5, height() - 2.5);
100 painter.drawPolyline(polygon);
101 polygon << QPointF(x+0.5, height() - 2.5)
102 << QPointF(x+0.5, height() - 8.5);
103 painter.drawPolyline(polygon);
104 break;
105 default:
106 break;
107 }
108}
rgba palette[MAX_PALETTE]
Definition palette.c:35

References m_showTabs, m_type, and palette.

◆ setShowTabs()

void RulerTabChooser::setShowTabs ( bool showTabs)
inline

Definition at line 18 of file KoRuler_p.h.

18{ if (m_showTabs == showTabs) return; m_showTabs = showTabs; update(); }

References m_showTabs.

◆ type()

QTextOption::TabType RulerTabChooser::type ( )
inline

Definition at line 17 of file KoRuler_p.h.

17{return m_type;}

References m_type.

Member Data Documentation

◆ m_showTabs

bool RulerTabChooser::m_showTabs
private

Definition at line 25 of file KoRuler_p.h.

◆ m_type

QTextOption::TabType RulerTabChooser::m_type { QTextOption::LeftTab }
private

Definition at line 24 of file KoRuler_p.h.

24{ QTextOption::LeftTab };

The documentation for this class was generated from the following files: