// --------------------------------------------------------------------------- // // ----------- void bToolPrintArea::track_draw(){ if(!get_active()){ return; } i2dvertex b; ivx_rect vr=*(_gapp->printMgr()->get_print_area()); get_cur(&b); if(!get_on_drag()){ bGenericUnit* u=_gapp->scaleMgr()->get(); if( (_d_(vr.bottom,b.v,u->conv())<3)&& (_d_(vr.right,b.h,u->conv())<3) ){ set_curs(_cxyresize); } else if((_d_(vr.bottom,b.v,u->conv())<3)&&((vr.left<b.h)&&(b.h<vr.right))){ set_curs(_cyresize); } else if((_d_(vr.right,b.h,u->conv())<3)&&((vr.top<b.v)&&(b.v<vr.bottom))){ set_curs(_cxresize); } else if((_d_(vr.top,b.v,u->conv())<3) || (_d_(vr.left,b.h,u->conv())<3) ){ set_curs(_cmove); } else{ set_curs(); } return; } }
// --------------------------------------------------------------------------- // // ----------- void bToolMove::set_modifiers(int k){ bStdToolGeom::set_modifiers(k); if(!get_active()){ return; } if(is_modifiers(optionKey)){ set_curs(_ccopy); _copy=true; } else{ set_curs(); _copy=false; } _srep=!is_modifiers(shiftKey); }
// --------------------------------------------------------------------------- // // ----------- bool bToolRedraw::set_key(int k){ bool b=false; if(_ec>0){ switch(k){ case kEnterCharCode: case kReturnCharCode: clearTempPathContext(true); validTempPathContext(); if(get_locs()->count()>1){ action(0); } (void)bToolGeomWithJoin::set_key(k); k=0; set_use_locs(false); set_obj(NULL); _ec=0; b=true; set_curs(); break; case kEscapeCharCode: clearTempPathContext(true); validTempPathContext(); (void)bToolGeomWithJoin::set_key(k); k=0; set_use_locs(false); set_obj(NULL); b=true; _ec=0; set_curs(); break; case kBackspaceCharCode: (void)bToolGeomWithJoin::set_key(k); clearTempPathContext(true); update(true); validTempPathContext(); k=0; break; } } (void)bToolGeomWithJoin::set_key(k); return(b); }
// --------------------------------------------------------------------------- // // ----------- void bToolPrintArea::activate(){ bStdToolPres::activate(); switch(_dragmode){ case kPrintAreaDragModeSet: break; case kPrintAreaDragModeMove: set_curs(_cmove); break; case kPrintAreaDragModeBottomResize: set_curs(_cyresize); break; case kPrintAreaDragModeRightResize: set_curs(_cxresize); break; case kPrintAreaDragModeFullResize: set_curs(_cxyresize); break; default: break; } }
void setcurs_end() { int y; #ifdef NO_MENU if (0) #else if (menuheight) #endif y = menuheight; else { y = term_height-1; if (y > 20 && y < 23) y = 20; } set_curs(0, y); fflush(stdout); }
// --------------------------------------------------------------------------- // // ----------- void bToolJustification::set_modifiers(int k){ bStdToolPres::set_modifiers(k); if(!get_active()){ return; } if(is_modifiers(cmdKey)){ set_curs(_cright); _umode=kJustificationUserModeRight; set_use_track(false); set_use_drag(false); } else if(is_modifiers(optionKey)){ set_curs(_cmiddle); _umode=kJustificationUserModeCenter; set_use_track(false); set_use_drag(false); } else if(is_modifiers(controlKey)){ set_curs(_cleft); _umode=kJustificationUserModeLeft; set_use_track(false); set_use_drag(false); } else if(is_modifiers(shiftKey)){ if(_fspc){ set_curs(_cspace); _umode=kJustificationUserModeSpace; set_use_track(true); set_use_drag(true); } else{ set_curs(); _umode=kJustificationUserModeStd; set_use_track(true); set_use_drag(true); } } else{ set_curs(); _umode=kJustificationUserModeStd; if(get_on_drag()){ set_use_track(true); set_use_drag(true); } } }
void setcurs(int x, int y) { x += win_x + margin_x; y += win_y; set_curs(x, y); }
// --------------------------------------------------------------------------- // // ----------- void bToolRedraw::activate(){ bToolGeomWithJoin::activate(); if(_ec>0){ set_curs(_cdrw); } }
// --------------------------------------------------------------------------- // // ----------- void bToolRedraw::clic(CGPoint pt, int count){ i2dvertex br; bGenericType* tp; if(_ec>1){ if(count>1){ if(get_locs()->count()>=1){ action(0); } set_use_locs(false); set_obj(NULL); get_locs()->reset(); _ec=0; set_curs(); } if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); } else{ bToolGeomWithJoin::clic(pt,count); } return; } else if((count>1)&&(_ec==1)){// =Annuler set_use_locs(false); set_obj(NULL); get_locs()->reset(); _ec=0; set_curs(); } if(!get_obj()){ if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); } else{ bToolGeomWithJoin::clic(pt,count); } return; } tp=_gapp->typesMgr()->get(get_obj()->getType()); switch(tp->kind()){ case kBaseKindPolyline: case kBaseKindPolygon: case kBaseKindRaster: if(_ec==0){ set_use_locs(true); if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); } else{ bToolGeomWithJoin::clic(pt,count); } set_use_locs(false); get_clic(&_vxa); _ec++; } else if(_ec==1){ if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); get_clic(&_vxb); if(!eq_ivx2(&_vxa,&_vxb)){ set_clic(&_vxa); set_use_locs(true); _ec++; set_curs(_cdrw); } else{ NSBeep(); } } else{ NSBeep(); } } else{ if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); } else{ bToolGeomWithJoin::clic(pt,count); } _ec++; } break; default: if(get_join(&br)){ bToolGeomWithJoin::clic(br,count); } else{ bToolGeomWithJoin::clic(pt,count); } break; } }