📄 qwt__picker_8cpp-source.html
字号:
<a name="l00766"></a>00766 <span class="keywordtype">int</span> bottom = qwtMin(textRect.bottom(), pickRect().bottom() - margin);<a name="l00767"></a>00767 textRect.moveBottomRight(QPoint(right, bottom));<a name="l00768"></a>00768 <a name="l00769"></a>00769 <span class="keywordtype">int</span> left = qwtMax(textRect.left(), pickRect().left() + margin);<a name="l00770"></a>00770 <span class="keywordtype">int</span> top = qwtMax(textRect.top(), pickRect().top() + margin);<a name="l00771"></a>00771 textRect.moveTopLeft(QPoint(left, top));<a name="l00772"></a>00772 <a name="l00773"></a>00773 <span class="keywordflow">return</span> textRect;<a name="l00774"></a>00774 }<a name="l00775"></a>00775 <a name="l00788"></a><a class="code" href="class_qwt_picker.html#c149f9cb8fb068f31871e1fe450c376e">00788</a> <span class="keywordtype">bool</span> <a class="code" href="class_qwt_picker.html#c149f9cb8fb068f31871e1fe450c376e">QwtPicker::eventFilter</a>(QObject *o, QEvent *e)<a name="l00789"></a>00789 {<a name="l00790"></a>00790 <span class="keywordflow">if</span> ( o && o == <a class="code" href="class_qwt_picker.html#da0c12257e006f0066d22c3eb83f667e">parentWidget</a>() )<a name="l00791"></a>00791 {<a name="l00792"></a>00792 <span class="keywordflow">switch</span>(e->type())<a name="l00793"></a>00793 {<a name="l00794"></a>00794 <span class="keywordflow">case</span> QEvent::Resize:<a name="l00795"></a>00795 {<a name="l00796"></a>00796 <span class="keyword">const</span> QResizeEvent *re = (QResizeEvent *)e;<a name="l00797"></a>00797 <span class="keywordflow">if</span> ( d_data->resizeMode == Stretch )<a name="l00798"></a>00798 <a class="code" href="class_qwt_picker.html#24b0e4bcf6a9b7f41c81ea19305105a8">stretchSelection</a>(re->oldSize(), re->size());<a name="l00799"></a>00799 <a name="l00800"></a>00800 <span class="keywordflow">if</span> ( d_data->rubberBandWidget )<a name="l00801"></a>00801 d_data->rubberBandWidget->resize(re->size());<a name="l00802"></a>00802 <a name="l00803"></a>00803 <span class="keywordflow">if</span> ( d_data->trackerWidget )<a name="l00804"></a>00804 d_data->trackerWidget->resize(re->size());<a name="l00805"></a>00805 <span class="keywordflow">break</span>;<a name="l00806"></a>00806 }<a name="l00807"></a>00807 <span class="keywordflow">case</span> QEvent::Leave:<a name="l00808"></a>00808 <a class="code" href="class_qwt_picker.html#8a2a18f2b98c8524b1d3684df44c24aa">widgetLeaveEvent</a>(e);<a name="l00809"></a>00809 <span class="keywordflow">break</span>;<a name="l00810"></a>00810 <span class="keywordflow">case</span> QEvent::MouseButtonPress:<a name="l00811"></a>00811 <a class="code" href="class_qwt_picker.html#4bfae8da37c3936ae73d4798cca4a3d9">widgetMousePressEvent</a>((QMouseEvent *)e);<a name="l00812"></a>00812 <span class="keywordflow">break</span>;<a name="l00813"></a>00813 <span class="keywordflow">case</span> QEvent::MouseButtonRelease:<a name="l00814"></a>00814 <a class="code" href="class_qwt_picker.html#c009633e005b6290e07b902f2a58e45e">widgetMouseReleaseEvent</a>((QMouseEvent *)e);<a name="l00815"></a>00815 <span class="keywordflow">break</span>;<a name="l00816"></a>00816 <span class="keywordflow">case</span> QEvent::MouseButtonDblClick:<a name="l00817"></a>00817 <a class="code" href="class_qwt_picker.html#f1ffb07c24be57cd4a753b04412b3212">widgetMouseDoubleClickEvent</a>((QMouseEvent *)e);<a name="l00818"></a>00818 <span class="keywordflow">break</span>;<a name="l00819"></a>00819 <span class="keywordflow">case</span> QEvent::MouseMove:<a name="l00820"></a>00820 <a class="code" href="class_qwt_picker.html#88b203109a4d3b26c2e0bee110c56c9d">widgetMouseMoveEvent</a>((QMouseEvent *)e);<a name="l00821"></a>00821 <span class="keywordflow">break</span>;<a name="l00822"></a>00822 <span class="keywordflow">case</span> QEvent::KeyPress:<a name="l00823"></a>00823 <a class="code" href="class_qwt_picker.html#f5bc441b2fc143363563922a3b3c70ae">widgetKeyPressEvent</a>((QKeyEvent *)e);<a name="l00824"></a>00824 <span class="keywordflow">break</span>;<a name="l00825"></a>00825 <span class="keywordflow">case</span> QEvent::KeyRelease:<a name="l00826"></a>00826 <a class="code" href="class_qwt_picker.html#9f2c739a619be794b22a10ede9674a1e">widgetKeyReleaseEvent</a>((QKeyEvent *)e);<a name="l00827"></a>00827 <span class="keywordflow">break</span>;<a name="l00828"></a>00828 <span class="keywordflow">case</span> QEvent::Wheel:<a name="l00829"></a>00829 <a class="code" href="class_qwt_picker.html#f92ffabe291a6254378dc932c5cce0a7">widgetWheelEvent</a>((QWheelEvent *)e);<a name="l00830"></a>00830 <span class="keywordflow">break</span>;<a name="l00831"></a>00831 <span class="keywordflow">default</span>:<a name="l00832"></a>00832 <span class="keywordflow">break</span>;<a name="l00833"></a>00833 }<a name="l00834"></a>00834 }<a name="l00835"></a>00835 <span class="keywordflow">return</span> <span class="keyword">false</span>;<a name="l00836"></a>00836 }<a name="l00837"></a>00837 <a name="l00848"></a><a class="code" href="class_qwt_picker.html#4bfae8da37c3936ae73d4798cca4a3d9">00848</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#4bfae8da37c3936ae73d4798cca4a3d9">QwtPicker::widgetMousePressEvent</a>(QMouseEvent *e)<a name="l00849"></a>00849 {<a name="l00850"></a>00850 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(e);<a name="l00851"></a>00851 }<a name="l00852"></a>00852 <a name="l00862"></a><a class="code" href="class_qwt_picker.html#88b203109a4d3b26c2e0bee110c56c9d">00862</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#88b203109a4d3b26c2e0bee110c56c9d">QwtPicker::widgetMouseMoveEvent</a>(QMouseEvent *e)<a name="l00863"></a>00863 {<a name="l00864"></a>00864 <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_picker.html#0e5cd6fc09ec2f3bfa9a766067b518a6">pickRect</a>().contains(e->pos()) )<a name="l00865"></a>00865 d_data->labelPosition = e->pos();<a name="l00866"></a>00866 <span class="keywordflow">else</span><a name="l00867"></a>00867 d_data->labelPosition = QPoint(-1, -1);<a name="l00868"></a>00868 <a name="l00869"></a>00869 <span class="keywordflow">if</span> ( !<a class="code" href="class_qwt_picker.html#f825f383c74928d1541f139e102983f9">isActive</a>() )<a name="l00870"></a>00870 <a class="code" href="class_qwt_picker.html#03aa9bf28f991473d564a57d1bf3bdcc">updateDisplay</a>();<a name="l00871"></a>00871 <a name="l00872"></a>00872 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(e);<a name="l00873"></a>00873 }<a name="l00874"></a>00874 <a name="l00882"></a><a class="code" href="class_qwt_picker.html#8a2a18f2b98c8524b1d3684df44c24aa">00882</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#8a2a18f2b98c8524b1d3684df44c24aa">QwtPicker::widgetLeaveEvent</a>(QEvent *) <a name="l00883"></a>00883 {<a name="l00884"></a>00884 d_data->labelPosition = QPoint(-1, -1);<a name="l00885"></a>00885 <span class="keywordflow">if</span> ( !<a class="code" href="class_qwt_picker.html#f825f383c74928d1541f139e102983f9">isActive</a>() )<a name="l00886"></a>00886 <a class="code" href="class_qwt_picker.html#03aa9bf28f991473d564a57d1bf3bdcc">updateDisplay</a>();<a name="l00887"></a>00887 }<a name="l00888"></a>00888 <a name="l00899"></a><a class="code" href="class_qwt_picker.html#c009633e005b6290e07b902f2a58e45e">00899</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#c009633e005b6290e07b902f2a58e45e">QwtPicker::widgetMouseReleaseEvent</a>(QMouseEvent *e)<a name="l00900"></a>00900 {<a name="l00901"></a>00901 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(e);<a name="l00902"></a>00902 }<a name="l00903"></a>00903 <a name="l00913"></a><a class="code" href="class_qwt_picker.html#f1ffb07c24be57cd4a753b04412b3212">00913</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#f1ffb07c24be57cd4a753b04412b3212">QwtPicker::widgetMouseDoubleClickEvent</a>(QMouseEvent *me)<a name="l00914"></a>00914 {<a name="l00915"></a>00915 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(me);<a name="l00916"></a>00916 }<a name="l00917"></a>00917 <a name="l00918"></a>00918 <a name="l00928"></a><a class="code" href="class_qwt_picker.html#f92ffabe291a6254378dc932c5cce0a7">00928</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#f92ffabe291a6254378dc932c5cce0a7">QwtPicker::widgetWheelEvent</a>(QWheelEvent *e)<a name="l00929"></a>00929 {<a name="l00930"></a>00930 <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_picker.html#0e5cd6fc09ec2f3bfa9a766067b518a6">pickRect</a>().contains(e->pos()) )<a name="l00931"></a>00931 d_data->labelPosition = e->pos();<a name="l00932"></a>00932 <span class="keywordflow">else</span><a name="l00933"></a>00933 d_data->labelPosition = QPoint(-1, -1);<a name="l00934"></a>00934 <a name="l00935"></a>00935 <a class="code" href="class_qwt_picker.html#03aa9bf28f991473d564a57d1bf3bdcc">updateDisplay</a>();<a name="l00936"></a>00936 <a name="l00937"></a>00937 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(e);<a name="l00938"></a>00938 }<a name="l00939"></a>00939 <a name="l00953"></a><a class="code" href="class_qwt_picker.html#f5bc441b2fc143363563922a3b3c70ae">00953</a> <span class="keywordtype">void</span> <a class="code" href="class_qwt_picker.html#f5bc441b2fc143363563922a3b3c70ae">QwtPicker::widgetKeyPressEvent</a>(QKeyEvent *ke)<a name="l00954"></a>00954 {<a name="l00955"></a>00955 <span class="keywordtype">int</span> dx = 0;<a name="l00956"></a>00956 <span class="keywordtype">int</span> dy = 0;<a name="l00957"></a>00957 <a name="l00958"></a>00958 <span class="keywordtype">int</span> offset = 1;<a name="l00959"></a>00959 <span class="keywordflow">if</span> ( ke->isAutoRepeat() )<a name="l00960"></a>00960 offset = 5;<a name="l00961"></a>00961 <a name="l00962"></a>00962 <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_event_pattern.html#0a727c4369d8535eed5695a2a76b7e79">keyMatch</a>(KeyLeft, ke) )<a name="l00963"></a>00963 dx = -offset;<a name="l00964"></a>00964 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_event_pattern.html#0a727c4369d8535eed5695a2a76b7e79">keyMatch</a>(KeyRight, ke) )<a name="l00965"></a>00965 dx = offset;<a name="l00966"></a>00966 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_event_pattern.html#0a727c4369d8535eed5695a2a76b7e79">keyMatch</a>(KeyUp, ke) )<a name="l00967"></a>00967 dy = -offset;<a name="l00968"></a>00968 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_event_pattern.html#0a727c4369d8535eed5695a2a76b7e79">keyMatch</a>(KeyDown, ke) )<a name="l00969"></a>00969 dy = offset;<a name="l00970"></a>00970 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="class_qwt_event_pattern.html#0a727c4369d8535eed5695a2a76b7e79">keyMatch</a>(KeyAbort, ke) )<a name="l00971"></a>00971 {<a name="l00972"></a>00972 <span class="keywordflow">if</span> ( d_data->stateMachine )<a name="l00973"></a>00973 d_data->stateMachine->reset();<a name="l00974"></a>00974 <a name="l00975"></a>00975 <span class="keywordflow">if</span> (<a class="code" href="class_qwt_picker.html#f825f383c74928d1541f139e102983f9">isActive</a>())<a name="l00976"></a>00976 <a class="code" href="class_qwt_picker.html#d258c518257cf2f52326905a36efb0c4">end</a>(<span class="keyword">false</span>);<a name="l00977"></a>00977 }<a name="l00978"></a>00978 <span class="keywordflow">else</span><a name="l00979"></a>00979 <a class="code" href="class_qwt_picker.html#90f9f3485f054c36c1835931e9a387dd">transition</a>(ke);<a name="l00980"></a>00980 <a name="l00981"></a>00981 <span class="keywordflow">if</span> ( dx != 0 || dy != 0 )<a name="l00982"></a>00982 {<a name="l00983"></a>00983 <span class="keyword">const</span> QRect rect = <a class="code" href="class_qwt_picker.html#0e5cd6fc09ec2f3bfa9a766067b518a6">pickRect</a>();<a name="l00984"></a>00984 <span class="keyword">const</span> QPoint pos = <a class="code" href="class_qwt_picker.html#da0c12257e006f0066d22c3eb83f667e">parentWidget</a>()->mapFromGlobal(QCursor::pos());<a name="l00985"></a>00985 <a name="l00986"></a>00986 <span class="keywordtype">int</span> x = pos.x() + dx;<a name="l00987"></a>00987 x = qwtMax(rect.left(), x);<a name="l00988"></a>00988 x = qwtMin(rect.right(), x);<a name="l00989"></a>00989 <a name="l00990"></a>00990 <span class="keywordtype">int</span> y = pos.y() + dy;<a name="l00991"></a>00991 y = qwtMax(rect
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -