Integration of OCCT 6.5.0 from SVN
[occt.git] / samples / java / inc / ISession2D_InteractiveContext.hxx
1 // File generated by CPPExt (Transient)
2 //
3 //                     Copyright (C) 1991,1995 by
4 //  
5 //                      MATRA DATAVISION, FRANCE
6 //  
7 // This software is furnished in accordance with the terms and conditions
8 // of the contract and with the inclusion of the above copyright notice.
9 // This software or any other copy thereof may not be provided or otherwise
10 // be made available to any other person. No title to an ownership of the
11 // software is hereby transferred.
12 //  
13 // At the termination of the contract, the software and all copies of this
14 // software must be deleted.
15 //
16 #ifndef _ISession2D_InteractiveContext_HeaderFile
17 #define _ISession2D_InteractiveContext_HeaderFile
18
19 #ifndef _Standard_HeaderFile
20 #include <Standard.hxx>
21 #endif
22 #ifndef _Handle_ISession2D_InteractiveContext_HeaderFile
23 #include <Handle_ISession2D_InteractiveContext.hxx>
24 #endif
25
26 #ifndef _Handle_V2d_Viewer_HeaderFile
27 #include <Handle_V2d_Viewer.hxx>
28 #endif
29 #ifndef _Handle_PrsMgr_PresentationManager2d_HeaderFile
30 #include <Handle_PrsMgr_PresentationManager2d.hxx>
31 #endif
32 #ifndef _TColStd_MapOfTransient_HeaderFile
33 #include <TColStd_MapOfTransient.hxx>
34 #endif
35 #ifndef _Standard_Integer_HeaderFile
36 #include <Standard_Integer.hxx>
37 #endif
38 #ifndef _Handle_SelectMgr_SelectionManager_HeaderFile
39 #include <Handle_SelectMgr_SelectionManager.hxx>
40 #endif
41 #ifndef _Handle_StdSelect_ViewerSelector2d_HeaderFile
42 #include <Handle_StdSelect_ViewerSelector2d.hxx>
43 #endif
44 #ifndef _Standard_Boolean_HeaderFile
45 #include <Standard_Boolean.hxx>
46 #endif
47 #ifndef _MMgt_TShared_HeaderFile
48 #include <MMgt_TShared.hxx>
49 #endif
50 #ifndef _Handle_AIS_InteractiveObject_HeaderFile
51 #include <Handle_AIS_InteractiveObject.hxx>
52 #endif
53 #ifndef _Handle_V2d_View_HeaderFile
54 #include <Handle_V2d_View.hxx>
55 #endif
56 #ifndef _Handle_Select2D_Projector_HeaderFile
57 #include <Handle_Select2D_Projector.hxx>
58 #endif
59 class V2d_Viewer;
60 class PrsMgr_PresentationManager2d;
61 class SelectMgr_SelectionManager;
62 class StdSelect_ViewerSelector2d;
63 class AIS_InteractiveObject;
64 class V2d_View;
65 class Select2D_Projector;
66 class TColStd_MapOfTransient;
67
68
69 class ISession2D_InteractiveContext : public MMgt_TShared {
70
71 public:
72
73     void* operator new(size_t,void* anAddress) 
74       {
75         return anAddress;
76       }
77     void* operator new(size_t size) 
78       { 
79         return Standard::Allocate(size); 
80       }
81     void  operator delete(void *anAddress) 
82       { 
83         if (anAddress) Standard::Free((Standard_Address&)anAddress); 
84       }
85  // Methods PUBLIC
86  // 
87 Standard_EXPORT ISession2D_InteractiveContext();
88 Standard_EXPORT ISession2D_InteractiveContext(const Handle(V2d_Viewer)& aViewer);
89 Standard_EXPORT virtual  void Initialize(const Handle(V2d_Viewer)& aViewer) ;
90 Standard_EXPORT virtual  void Display(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
91 Standard_EXPORT   void Display(const Handle(AIS_InteractiveObject)& anObject,const Standard_Integer aDisplayMode,const Standard_Integer aSelectionMode,const Standard_Boolean Redraw) ;
92 Standard_EXPORT virtual  void Erase(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
93 Standard_EXPORT virtual  void DisplayAll(const Standard_Boolean Redraw = Standard_True) ;
94 Standard_EXPORT virtual  void EraseAll(const Standard_Boolean Redraw = Standard_True) ;
95 Standard_EXPORT virtual  Standard_Boolean IsDisplayed(const Handle(AIS_InteractiveObject)& anObject,const Standard_Integer aMode = -1) ;
96 Standard_EXPORT virtual  void Redisplay(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True,const Standard_Boolean allmodes = Standard_True) ;
97 Standard_EXPORT virtual  void Clear(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
98 Standard_EXPORT virtual  void Remove(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
99 Standard_EXPORT virtual  void Highlight(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
100 Standard_EXPORT virtual  void Unhighlight(const Handle(AIS_InteractiveObject)& anObject,const Standard_Boolean Redraw = Standard_True) ;
101 Standard_EXPORT virtual  Standard_Boolean IsHilighted(const Handle(AIS_InteractiveObject)& anObject) ;
102 Standard_EXPORT virtual  void Move(const Standard_Integer x1,const Standard_Integer y1,const Handle(V2d_View)& aView) ;
103 Standard_EXPORT virtual  void Move(const Standard_Integer x1,const Standard_Integer y1,const Standard_Integer x2,const Standard_Integer y2,const Handle(V2d_View)& aView) ;
104 Standard_EXPORT virtual  void Pick(const Standard_Boolean MultiSelection = Standard_False) ;
105 Standard_EXPORT   void DisplayAreas() ;
106 Standard_EXPORT   void ClearAreas() ;
107 Standard_EXPORT ~ISession2D_InteractiveContext();
108
109
110
111
112  // Type management
113  //
114  Standard_EXPORT friend Handle_Standard_Type& ISession2D_InteractiveContext_Type_();
115  Standard_EXPORT const Handle(Standard_Type)& DynamicType() const;
116  Standard_EXPORT Standard_Boolean              IsKind(const Handle(Standard_Type)&) const;
117
118 protected:
119
120  // Methods PROTECTED
121  // 
122
123
124  // Fields PROTECTED
125  //
126
127
128 private: 
129
130  // Methods PRIVATE
131  // 
132 Standard_EXPORT   Standard_Boolean NewProjector(const Handle(V2d_View)& aView,Handle(Select2D_Projector)& NewProjector) ;
133 Standard_EXPORT   void ManageDetected(TColStd_MapOfTransient& aNewMapOfDetectedOwner) ;
134 Standard_EXPORT   void GetDefModes(const Handle(AIS_InteractiveObject)& anObject,Standard_Integer& DispMode,Standard_Integer& HiMode,Standard_Integer& SelMode) const;
135
136
137  // Fields PRIVATE
138  //
139 Handle_V2d_Viewer myViewer;
140 Handle_PrsMgr_PresentationManager2d myPrsmgr;
141 TColStd_MapOfTransient myObjects;
142 Standard_Integer myHilightColorIndex;
143 Handle_SelectMgr_SelectionManager mySelectionManager;
144 Handle_StdSelect_ViewerSelector2d mySelector;
145 TColStd_MapOfTransient myMapOfDetectedOwner;
146 TColStd_MapOfTransient myMapOfSelectedOwner;
147 Standard_Boolean IsAreasDisplayed;
148
149
150 };
151
152
153
154
155
156 // other Inline functions and methods (like "C++: function call" methods)
157 //
158
159
160 #endif