Reimplemented from OglGui::StaticText. Reimplemented in OglGui::ScrollBar::ScrollThumb. Definition at line 97 of file Button.h. References DoButtonSelectionEvent(), OglGui::Window::GetParent(), OglGui::Window::GetState(), mIsPressed, OglGui::OglWindow::mOglWnd, OglGui::Window::MouseFunc(), mRepeatMode, mShowCancelState, OglGui::Window::SetState(), and OglGui::RepeatTimer::StartRepeatTime(). Referenced by OglGui::ScrollBar::ScrollThumb::MouseFunc(), OglGui::MenuOnButton::MouseFunc(), and Impala::Application::MediaTable::TableWindowColumn::WindowMouseEvent(). 00098 { 00099 if (!GetState()) return; 00100 00101 Window::MouseFunc( msg, but, state, x, y ); 00102 00103 if (state & (oglAlt|oglShift|oglControl)) 00104 return; 00105 00106 // RvB: Experimental 00107 if (msg == oglMouseWheelUp || msg == oglMouseWheelDown) 00108 GetParent()->MouseFunc(msg, but, state, x, y); 00109 00110 if ((msg == oglMouseDown || msg == oglMouseDblClick) 00111 && (but == oglLeftButton) ) 00112 { 00113 mIsPressed = true; 00114 if (mRepeatMode) 00115 { 00116 StartRepeatTime(); 00117 oglSys.SetAlwaysDraw(mOglWnd, true); 00118 DoButtonSelectionEvent(); 00119 } 00120 } 00121 if (msg == oglMouseMove && (state & oglLeftButton) ) 00122 { 00123 if( (x < 0 || x > mOglWnd->width || y < 0 || y > mOglWnd->height) && 00124 mShowCancelState ) 00125 mIsPressed = false; 00126 else 00127 mIsPressed = true; 00128 if( mShowCancelState ) 00129 SetState( mIsPressed ? 2 : 1 ); 00130 } 00131 if (msg == oglMouseUp) 00132 { 00133 oglSys.SetAlwaysDraw(mOglWnd, false); 00134 oglSys.UpdateSceneFlag(mOglWnd, 1); 00135 if (!mRepeatMode && mIsPressed) 00136 { mIsPressed = false; 00137 DoButtonSelectionEvent(); 00138 } 00139 else 00140 mIsPressed = false; 00141 } 00142 }
Here is the call graph for this function:
|