qwt__knob_8h_source.html
14.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Qwt User's Guide: qwt_knob.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Qwt User's Guide <span id="projectnumber">6.0.1</span></div>
</td>
</tr>
</tbody>
</table>
</div>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File List</span></a></li>
</ul>
</div>
<div class="header">
<div class="headertitle">
<h1>qwt_knob.h</h1> </div>
</div>
<div class="contents">
<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************</span>
<a name="l00002"></a>00002 <span class="comment"> * Qwt Widget Library</span>
<a name="l00003"></a>00003 <span class="comment"> * Copyright (C) 1997 Josef Wilgen</span>
<a name="l00004"></a>00004 <span class="comment"> * Copyright (C) 2002 Uwe Rathmann</span>
<a name="l00005"></a>00005 <span class="comment"> *</span>
<a name="l00006"></a>00006 <span class="comment"> * This library is free software; you can redistribute it and/or</span>
<a name="l00007"></a>00007 <span class="comment"> * modify it under the terms of the Qwt License, Version 1.0</span>
<a name="l00008"></a>00008 <span class="comment"> *****************************************************************************/</span>
<a name="l00009"></a>00009
<a name="l00010"></a>00010 <span class="preprocessor">#ifndef QWT_KNOB_H</span>
<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define QWT_KNOB_H</span>
<a name="l00012"></a>00012 <span class="preprocessor"></span>
<a name="l00013"></a>00013 <span class="preprocessor">#include "qwt_global.h"</span>
<a name="l00014"></a>00014 <span class="preprocessor">#include "qwt_abstract_slider.h"</span>
<a name="l00015"></a>00015 <span class="preprocessor">#include "qwt_abstract_scale.h"</span>
<a name="l00016"></a>00016
<a name="l00017"></a>00017 <span class="keyword">class </span><a class="code" href="class_qwt_round_scale_draw.html" title="A class for drawing round scales.">QwtRoundScaleDraw</a>;
<a name="l00018"></a>00018
<a name="l00034"></a><a class="code" href="class_qwt_knob.html">00034</a> <span class="keyword">class </span>QWT_EXPORT <a class="code" href="class_qwt_knob.html" title="The Knob Widget.">QwtKnob</a> : <span class="keyword">public</span> <a class="code" href="class_qwt_abstract_slider.html" title="An abstract base class for slider widgets.">QwtAbstractSlider</a>, <span class="keyword">public</span> <a class="code" href="class_qwt_abstract_scale.html" title="An abstract base class for classes containing a scale.">QwtAbstractScale</a>
<a name="l00035"></a>00035 {
<a name="l00036"></a>00036 Q_OBJECT
<a name="l00037"></a>00037
<a name="l00038"></a>00038 Q_ENUMS ( <a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208be" title="Style of the knob surface.">KnobStyle</a> )
<a name="l00039"></a>00039 Q_ENUMS ( <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95" title="Marker type.">MarkerStyle</a> )
<a name="l00040"></a>00040
<a name="l00041"></a>00041 Q_PROPERTY( <a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208be" title="Style of the knob surface.">KnobStyle</a> knobStyle READ knobStyle WRITE setKnobStyle )
<a name="l00042"></a>00042 Q_PROPERTY( <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95" title="Marker type.">MarkerStyle</a> markerStyle READ markerStyle WRITE setMarkerStyle )
<a name="l00043"></a>00043 Q_PROPERTY( <span class="keywordtype">int</span> knobWidth READ knobWidth WRITE setKnobWidth )
<a name="l00044"></a>00044 Q_PROPERTY( <span class="keywordtype">int</span> borderWidth READ borderWidth WRITE setBorderWidth )
<a name="l00045"></a>00045 Q_PROPERTY( <span class="keywordtype">double</span> totalAngle READ totalAngle WRITE setTotalAngle )
<a name="l00046"></a>00046 Q_PROPERTY( <span class="keywordtype">int</span> markerSize READ markerSize WRITE setMarkerSize )
<a name="l00047"></a>00047 Q_PROPERTY( <span class="keywordtype">int</span> borderWidth READ borderWidth WRITE setBorderWidth )
<a name="l00048"></a>00048
<a name="l00049"></a>00049 <span class="keyword">public</span>:
<a name="l00058"></a><a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208be">00058</a> <span class="keyword">enum</span> <a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208be" title="Style of the knob surface.">KnobStyle</a>
<a name="l00059"></a>00059 {
<a name="l00061"></a><a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208bea697dfc29c275b793fbaf8b8136a7c8a1">00061</a> NoStyle = -1,
<a name="l00062"></a>00062
<a name="l00064"></a><a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208bea998504d08713af8a9af0d2cbe0aaf8df">00064</a> <a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208bea998504d08713af8a9af0d2cbe0aaf8df" title="Build a gradient from QPalette::Midlight and QPalette::Button.">Raised</a>,
<a name="l00065"></a>00065
<a name="l00070"></a><a class="code" href="class_qwt_knob.html#addd00357b45752377aec83a3ab7208bea599810d6e366e66eaa7f662f1424e7ed">00070</a> Sunken
<a name="l00071"></a>00071 };
<a name="l00072"></a>00072
<a name="l00081"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95">00081</a> <span class="keyword">enum</span> <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95" title="Marker type.">MarkerStyle</a>
<a name="l00082"></a>00082 {
<a name="l00084"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95af12a242c58b244547abb48ef284246f6">00084</a> NoMarker = -1,
<a name="l00085"></a>00085
<a name="l00087"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a5ccaa93ece2f928a1167b423339826d9">00087</a> <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a5ccaa93ece2f928a1167b423339826d9" title="Paint a single tick in QPalette::ButtonText color.">Tick</a>,
<a name="l00088"></a>00088
<a name="l00090"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a298324d95eafb4e99717a35b81b0b704">00090</a> <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a298324d95eafb4e99717a35b81b0b704" title="Paint a circle in QPalette::ButtonText color.">Dot</a>,
<a name="l00091"></a>00091
<a name="l00096"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a1bf9be6c73beec7768d62f101d81a851">00096</a> <a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a1bf9be6c73beec7768d62f101d81a851">Nub</a>,
<a name="l00097"></a>00097
<a name="l00102"></a><a class="code" href="class_qwt_knob.html#a7254d94e76a74228637931fb75939b95a9ea483f1087c1f6b1ac215b5f146c7c3">00102</a> Notch
<a name="l00103"></a>00103 };
<a name="l00104"></a>00104
<a name="l00105"></a>00105 <span class="keyword">explicit</span> <a class="code" href="class_qwt_knob.html" title="The Knob Widget.">QwtKnob</a>( QWidget* parent = NULL );
<a name="l00106"></a>00106 <span class="keyword">virtual</span> ~<a class="code" href="class_qwt_knob.html" title="The Knob Widget.">QwtKnob</a>();
<a name="l00107"></a>00107
<a name="l00108"></a>00108 <span class="keywordtype">void</span> setKnobWidth( <span class="keywordtype">int</span> w );
<a name="l00109"></a>00109 <span class="keywordtype">int</span> knobWidth() <span class="keyword">const</span>;
<a name="l00110"></a>00110
<a name="l00111"></a>00111 <span class="keywordtype">void</span> setTotalAngle ( <span class="keywordtype">double</span> angle );
<a name="l00112"></a>00112 <span class="keywordtype">double</span> totalAngle() <span class="keyword">const</span>;
<a name="l00113"></a>00113
<a name="l00114"></a>00114 <span class="keywordtype">void</span> setKnobStyle( KnobStyle );
<a name="l00115"></a>00115 KnobStyle knobStyle() <span class="keyword">const</span>;
<a name="l00116"></a>00116
<a name="l00117"></a>00117 <span class="keywordtype">void</span> setBorderWidth( <span class="keywordtype">int</span> bw );
<a name="l00118"></a>00118 <span class="keywordtype">int</span> borderWidth() <span class="keyword">const</span>;
<a name="l00119"></a>00119
<a name="l00120"></a>00120 <span class="keywordtype">void</span> setMarkerStyle( MarkerStyle );
<a name="l00121"></a>00121 MarkerStyle markerStyle() <span class="keyword">const</span>;
<a name="l00122"></a>00122
<a name="l00123"></a>00123 <span class="keywordtype">void</span> setMarkerSize( <span class="keywordtype">int</span> );
<a name="l00124"></a>00124 <span class="keywordtype">int</span> markerSize() <span class="keyword">const</span>;
<a name="l00125"></a>00125
<a name="l00126"></a>00126 <span class="keyword">virtual</span> QSize sizeHint() <span class="keyword">const</span>;
<a name="l00127"></a>00127 <span class="keyword">virtual</span> QSize minimumSizeHint() <span class="keyword">const</span>;
<a name="l00128"></a>00128
<a name="l00129"></a>00129 <span class="keywordtype">void</span> setScaleDraw( <a class="code" href="class_qwt_round_scale_draw.html" title="A class for drawing round scales.">QwtRoundScaleDraw</a> * );
<a name="l00130"></a>00130 <span class="keyword">const</span> <a class="code" href="class_qwt_round_scale_draw.html" title="A class for drawing round scales.">QwtRoundScaleDraw</a> *scaleDraw() <span class="keyword">const</span>;
<a name="l00131"></a>00131 <a class="code" href="class_qwt_round_scale_draw.html" title="A class for drawing round scales.">QwtRoundScaleDraw</a> *scaleDraw();
<a name="l00132"></a>00132
<a name="l00133"></a>00133 <span class="keyword">protected</span>:
<a name="l00134"></a>00134 <span class="keyword">virtual</span> <span class="keywordtype">void</span> paintEvent( QPaintEvent * );
<a name="l00135"></a>00135 <span class="keyword">virtual</span> <span class="keywordtype">void</span> resizeEvent( QResizeEvent * );
<a name="l00136"></a>00136 <span class="keyword">virtual</span> <span class="keywordtype">void</span> changeEvent( QEvent * );
<a name="l00137"></a>00137
<a name="l00138"></a>00138 <span class="keyword">virtual</span> <span class="keywordtype">void</span> drawKnob( QPainter *, <span class="keyword">const</span> QRectF & ) <span class="keyword">const</span>;
<a name="l00139"></a>00139 <span class="keyword">virtual</span> <span class="keywordtype">void</span> drawMarker( QPainter *,
<a name="l00140"></a>00140 <span class="keyword">const</span> QRectF &, <span class="keywordtype">double</span> arc ) <span class="keyword">const</span>;
<a name="l00141"></a>00141
<a name="l00142"></a>00142 <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code" href="class_qwt_abstract_slider.html#a6e26a993536813c2d9846a28f3c27aa7" title="Determine the value corresponding to a specified poind.">getValue</a>( <span class="keyword">const</span> QPoint &p );
<a name="l00143"></a>00143 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_qwt_abstract_slider.html#a4124aa3b1e462d57ea2693214e66da0b" title="Determine what to do when the user presses a mouse button.">getScrollMode</a>( <span class="keyword">const</span> QPoint &,
<a name="l00144"></a>00144 <a class="code" href="class_qwt_abstract_slider.html#ae4c0c4844ac6a35356f3c529a8eae154">QwtAbstractSlider::ScrollMode</a> &, <span class="keywordtype">int</span> &direction ) <span class="keyword">const</span>;
<a name="l00145"></a>00145
<a name="l00146"></a>00146 <span class="keyword">private</span>:
<a name="l00147"></a>00147 <span class="keywordtype">void</span> initKnob();
<a name="l00148"></a>00148 <span class="keywordtype">void</span> layoutKnob( <span class="keywordtype">bool</span> update );
<a name="l00149"></a>00149 <span class="keywordtype">void</span> recalcAngle();
<a name="l00150"></a>00150
<a name="l00151"></a>00151 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_qwt_abstract_slider.html#a2f04dc51e4402b51fef3250bcc99dc7f">valueChange</a>();
<a name="l00152"></a>00152 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_qwt_double_range.html#a3583134a1ac32706aa4742088bb9d4dc" title="Notify a change of the range.">rangeChange</a>();
<a name="l00153"></a>00153 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_qwt_abstract_scale.html#a0dbb7bdc557c0a7b163643e41970ed6a" title="Notify changed scale.">scaleChange</a>();
<a name="l00154"></a>00154
<a name="l00155"></a>00155 <span class="keyword">class </span>PrivateData;
<a name="l00156"></a>00156 PrivateData *d_data;
<a name="l00157"></a>00157 };
<a name="l00158"></a>00158
<a name="l00159"></a>00159 <span class="preprocessor">#endif</span>
</pre></div></div>
</div>
<hr class="footer"/><address class="footer"><small>Generated by 
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
</body>
</html>