📄 wg__listbox_8cpp-source.html
字号:
00227 {00228 <span class="keywordflow">switch</span> (pKeyMsg-><a class="code" href="classwGui_1_1CKeyboardMessage.html#m2">Key</a>)00229 {00230 <span class="keywordflow">case</span> SDLK_DOWN:00231 {00232 <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> + 1 < <a class="code" href="classwGui_1_1CListBox.html#a8">Size</a>())00233 {00234 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>++;00235 <span class="keywordtype">int</span> diff = <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> - <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>();00236 <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00237 <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a> * (<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() + diff + 1) > (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>) ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>())00238 {00239 <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() + 1);00240 }00241 00242 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00243 bHandled = <span class="keyword">true</span>;00244 }00245 <span class="keywordflow">break</span>;00246 }00247 <span class="keywordflow">case</span> SDLK_UP:00248 {00249 <span class="keywordflow">if</span> ( <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> > 0 )00250 {00251 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>--;00252 <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> < <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>())00253 {00254 <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a6">GetPosition</a>() - 1);00255 }00256 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00257 bHandled = <span class="keyword">true</span>;00258 }00259 <span class="keywordflow">break</span>;00260 }00261 <span class="keywordflow">case</span> SDLK_PAGEDOWN:00262 {00263 <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00264 <span class="keywordtype">int</span> nSize = <a class="code" href="classwGui_1_1CListBox.html#a8">Size</a>() - 1;00265 <span class="keywordtype">int</span> nItemsPerPage = ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>() / <a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a>;00266 <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> + nItemsPerPage < nSize)00267 {00268 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> += nItemsPerPage;00269 }00270 <span class="keywordflow">else</span>00271 {00272 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> = nSize;00273 }00274 <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>);00275 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00276 bHandled=<span class="keyword">true</span>;00277 <span class="keywordflow">break</span>;00278 }00279 <span class="keywordflow">case</span> SDLK_PAGEUP:00280 {00281 <a class="code" href="classwGui_1_1CRect.html">CRect</a> ClientRect(<a class="code" href="classwGui_1_1CWindow.html#a5">GetClientRect</a>());00282 <span class="keywordtype">int</span> nItemsPerPage = ClientRect.<a class="code" href="classwGui_1_1CRect.html#a24">Height</a>() / <a class="code" href="classwGui_1_1CListBox.html#n2">m_iItemHeight</a>;00283 <span class="keywordflow">if</span> (<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> - nItemsPerPage > 0)00284 {00285 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> -= nItemsPerPage;00286 }00287 <span class="keywordflow">else</span>00288 {00289 <a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a> = 0;00290 }00291 <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>-><a class="code" href="classwGui_1_1CScrollBar.html#a5">SetPosition</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>);00292 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00293 bHandled=<span class="keyword">true</span>;00294 <span class="keywordflow">break</span>;00295 }00296 <span class="keywordflow">case</span> SDLK_SPACE:00297 {00298 <span class="keywordflow">if</span> (! <a class="code" href="classwGui_1_1CListBox.html#n4">m_Items</a>.empty())00299 {00300 <a class="code" href="classwGui_1_1CListBox.html#a10">SetSelection</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>, !<a class="code" href="classwGui_1_1CListBox.html#a9">IsSelected</a>(<a class="code" href="classwGui_1_1CListBox.html#n3">m_iFocusedItem</a>));00301 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00302 }00303 bHandled = <span class="keyword">true</span>;00304 <span class="keywordflow">break</span>;00305 }00306 <span class="keywordflow">default</span>:00307 {00308 bHandled=<span class="keyword">false</span>;00309 <span class="keywordflow">break</span>;00310 }00311 }00312 }00313 <span class="keywordflow">break</span>;00314 }00315 <span class="keywordflow">case</span> CMessage::CTRL_VALUECHANGE:00316 <span class="keywordflow">case</span> CMessage::CTRL_VALUECHANGING:00317 {00318 <span class="keywordflow">if</span> (pMessage-><a class="code" href="classwGui_1_1CMessage.html#a4">Source</a>() == <a class="code" href="classwGui_1_1CListBox.html#n1">m_pVScrollbar</a>)00319 {00320 <a class="code" href="classwGui_1_1CWindow.html#a23">StartDrawProc</a>();00321 bHandled = <span class="keyword">true</span>;00322 }00323 <span class="keywordflow">break</span>;00324 }00325 <span class="keywordflow">default</span> :00326 bHandled = CWindow::HandleMessage(pMessage);00327 <span class="keywordflow">break</span>;00328 }00329 }00330 00331 <span class="keywordflow">return</span> bHandled;00332 }00333 00334 }</pre></div><hr><address style="align: right;"><small>Generated on Sat Oct 25 12:43:23 2003 for wGui by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -