
Definition at line 89 of file FXRealSpinDial.cpp.
Public Types | |
| enum | { ID_AUTOSPIN = FXDial::ID_LAST, ID_LAST } |
Public Member Functions | |
| FXRealSpinDialDial (FXComposite *p, FXObject *tgt=NULL, FXSelector sel=0, FXuint opts=DIAL_NORMAL, FXint x=0, FXint y=0, FXint w=0, FXint h=0, FXint pl=DEFAULT_PAD, FXint pr=DEFAULT_PAD, FXint pt=DEFAULT_PAD, FXint pb=DEFAULT_PAD) | |
| Construct a dial widget. | |
| long | onAuto (FXObject *, FXSelector, void *) |
| long | onButtonPress (FXObject *, FXSelector, void *) |
| long | onButtonRelease (FXObject *, FXSelector, void *) |
| long | onKey (FXObject *, FXSelector, void *) |
| long | onMotion (FXObject *, FXSelector, void *) |
| long | onRightButtonPress (FXObject *, FXSelector, void *) |
| long | onRightButtonRelease (FXObject *, FXSelector, void *) |
Protected Member Functions | |
| FXRealSpinDialDial () | |
Private Member Functions | |
| FXRealSpinDialDial (const FXRealSpinDialDial &) | |
| FXRealSpinDialDial & | operator= (const FXRealSpinDialDial &) |
| anonymous enum |
Definition at line 105 of file FXRealSpinDial.cpp.
00105 { 00106 ID_AUTOSPIN=FXDial::ID_LAST, 00107 ID_LAST 00108 };
| FX::FXRealSpinDialDial::FXRealSpinDialDial | ( | ) | [inline, protected] |
| FX::FXRealSpinDialDial::FXRealSpinDialDial | ( | const FXRealSpinDialDial & | ) | [private] |
| FX::FXRealSpinDialDial::FXRealSpinDialDial | ( | FXComposite * | p, | |
| FXObject * | tgt = NULL, |
|||
| FXSelector | sel = 0, |
|||
| FXuint | opts = DIAL_NORMAL, |
|||
| FXint | x = 0, |
|||
| FXint | y = 0, |
|||
| FXint | w = 0, |
|||
| FXint | h = 0, |
|||
| FXint | pl = DEFAULT_PAD, |
|||
| FXint | pr = DEFAULT_PAD, |
|||
| FXint | pt = DEFAULT_PAD, |
|||
| FXint | pb = DEFAULT_PAD | |||
| ) | [inline] |
Construct a dial widget.
Definition at line 112 of file FXRealSpinDial.cpp.
00114 : 00115 FXDial(p,tgt,sel,opts,x,y,w,h,pl,pr,pt,pb) {}
| long FX::FXRealSpinDialDial::onAuto | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
Definition at line 178 of file FXRealSpinDial.cpp.
References ID_AUTOSPIN.
00178 { 00179 getApp()->addTimeout(this,ID_AUTOSPIN,getApp()->getScrollSpeed()); 00180 setValue(getValue()+int((dragpoint-dragpos)/float(5))); 00181 int v = getValue(); 00182 if (target) target->handle(this,FXSEL(SEL_CHANGED,message),&v); 00183 return 1; 00184 }
| long FX::FXRealSpinDialDial::onButtonPress | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
| long FX::FXRealSpinDialDial::onButtonRelease | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
| long FX::FXRealSpinDialDial::onKey | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
| long FX::FXRealSpinDialDial::onMotion | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
Definition at line 186 of file FXRealSpinDial.cpp.
00186 { 00187 if (!isEnabled()) return 0; 00188 if (target && target->handle(this,FXSEL(SEL_MOTION,message),p)) return 1; 00189 00190 FXbool bJump=FALSE; 00191 FXEvent *e = (FXEvent*)p; 00192 if (!(flags&FLAG_PRESSED)) { // not doing clickdrag 00193 dragpos = e->win_y; 00194 } 00195 FXWindow *rootWin= getApp()->getRootWindow(); 00196 FXint x = e->root_x, y = e->root_y; 00197 if (e->root_x >= rootWin->getWidth()-1) { 00198 x-=40; 00199 dragpoint-=40; 00200 bJump=TRUE; 00201 } else if (e->root_x <= 10) { 00202 x+=40; 00203 dragpoint+=40; 00204 bJump=TRUE; 00205 } 00206 if (e->root_y >= rootWin->getHeight()-1) { 00207 y-=40; 00208 dragpoint-=40; 00209 bJump=TRUE; 00210 } else if (e->root_y <= 10) { 00211 y+=40; 00212 dragpoint+=40; 00213 bJump=TRUE; 00214 } 00215 if (bJump) { 00216 rootWin->setCursorPosition(x,y); 00217 return 1; 00218 } else 00219 return FXDial::onMotion(o,s,p); 00220 }
| long FX::FXRealSpinDialDial::onRightButtonPress | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
Definition at line 154 of file FXRealSpinDial.cpp.
References ID_AUTOSPIN.
00154 { 00155 if (isEnabled()) { 00156 grab(); 00157 grabKeyboard(); 00158 //if(target && target->handle(this,FXSEL(SEL_RIGHTBUTTONPRESS,message),ptr)) return 1; 00159 FXEvent *event = (FXEvent*)p; 00160 if (options&DIAL_HORIZONTAL) 00161 dragpoint=event->win_x; 00162 else 00163 dragpoint=event->win_y; 00164 getApp()->addTimeout(this,ID_AUTOSPIN,getApp()->getScrollSpeed()); 00165 } 00166 return 1; 00167 }
| long FX::FXRealSpinDialDial::onRightButtonRelease | ( | FXObject * | o, | |
| FXSelector | s, | |||
| void * | p | |||
| ) |
Definition at line 168 of file FXRealSpinDial.cpp.
References ID_AUTOSPIN.
00168 { 00169 ungrab(); 00170 ungrabKeyboard(); 00171 getApp()->removeTimeout(this,ID_AUTOSPIN); 00172 if (isEnabled()) { 00173 //if(target && target->handle(this,FXSEL(SEL_RIGHTBUTTONRELEASE,message),p)) return 1; 00174 } 00175 return 1; 00176 00177 }
| FXRealSpinDialDial& FX::FXRealSpinDialDial::operator= | ( | const FXRealSpinDialDial & | ) | [private] |
1.5.6