00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
#ifndef _uflow_hpp_
00026
#define _uflow_hpp_
00027
00028
#include <ubit/uappli.hpp>
00029
#include <ubit/uevent.hpp>
00030
00031
00036 class UFlow {
00037
public:
00038
UFlow(
int flow_id,
class UAppli&,
class UDisp&);
00039
virtual ~
UFlow();
00040
00041
00042
00043
int getID()
const {
return id;}
00044
class UDisp& getDisp()
const {
return disp;}
00045
class UAppli& getAppli()
const {
return disp.
getAppli();}
00046
00047
class UGroup* getBrowsingGroup()
const {
return browsing_group;}
00048 void setBrowsingGroup (
UGroup* grp) {browsing_group = grp;}
00050
00051 class UMenuCtrl&
getMenuCtrl()
const {
return menuCtrl;}
00053
00054 class UTextsel&
getTextsel()
const {
return textsel;}
00056
00057
00058
00059
void setCursor(
class UEvent&,
const class UCursor*);
00060
00061
void winMousePress(
UWin *win,
UEvent&);
00062
void winMouseRelease(
UWin *win,
UEvent&);
00063
void winMouseMove(
UWin *win,
UEvent&);
00064
void winKeyPress(
UWin *win,
UEvent&);
00065
void winKeyRelease(
UWin *win,
UEvent&);
00066
void winLeave(
UWin *win,
UEvent&);
00067
void winDestroy(
UWin *win,
UEvent&);
00068
00069
00070
00071
class UBox* findBox(
const UEvent& e, u_modes,
UView*& found_view);
00072
void boxEnter(
UEvent&, UBox*,
int bstyle);
00073
void boxLeave(
UEvent&);
00074
void boxMousePress(
UEvent&);
00075
void boxMouseRelease(
UEvent&);
00076
void boxMouseMove(
UEvent&);
00077
void boxKeyPress(
UEvent&);
00078
void boxKeyRelease(
UEvent&);
00079
00080
00081
00082
void deleteNotify(
class UView* deleted_view);
00083
void deleteNotify(
class UGroup* deleted_group);
00085
00086
class UWin* retrieveRemPointer(
class UDisp*);
00087
void showRemPointers(
class UEvent&,
int mode = 0);
00088
00089
00090
00091
private:
00092
friend class UAppli;
00093
friend class UCtrl;
00094
00095 UAppli& appli;
00096 UDisp& disp;
00097
const int id;
00098
00099
00100
UEvent lastEnteredEvent, lastPressedEvent;
00101 UCtrl *lastPressed, *lastArmed, *dragSource, *dropTarget;
00102 uptr<UCtrl> inAction;
00103
UView *lastEnteredView;
00104 UBox *lastEnteredBox;
00105
00106 u_count mclickCount;
00107 u_time mclickTime;
00108 u_pos mclickX, mclickY;
00109
00110
00111
const class UCursor* lastCursor;
00112
00113
00114
00115
UGroup* browsing_group;
00116
00117
00118
00119
class UMenuCtrl& menuCtrl;
00120
00121
00122
class UTextsel& textsel;
00123
00124 std::vector<class UWin*> rempointers;
00125 };
00126
00127
00128
#endif
00129
00130