Integration of OCCT 6.5.0 from SVN
[occt.git] / samples / java / drv / CASCADESamplesJni / CASCADESamplesJni_SelectMgr_SelectableObject_java.cxx
1 //
2 //                     Copyright (C) 1991 - 2000 by  
3 //                      Matra Datavision SA.  All rights reserved.
4 //  
5 //                     Copyright (C) 2001 - 2004 by
6 //                     Open CASCADE SA.  All rights reserved.
7 // 
8 // This file is part of the Open CASCADE Technology software.
9 //
10 // This software may be distributed and/or modified under the terms and
11 // conditions of the Open CASCADE Public License as defined by Open CASCADE SA
12 // and appearing in the file LICENSE included in the packaging of this file.
13 //  
14 // This software is distributed on an "AS IS" basis, without warranty of any
15 // kind, and Open CASCADE SA hereby disclaims all such warranties,
16 // including without limitation, any warranties of merchantability, fitness
17 // for a particular purpose or non-infringement. Please see the License for
18 // the specific terms and conditions governing rights and limitations under the
19 // License.
20
21 #include <CASCADESamplesJni_SelectMgr_SelectableObject.h>
22 #include <SelectMgr_SelectableObject.hxx>
23 #include <jcas.hxx>
24 #include <stdlib.h>
25 #include <Standard_ErrorHandler.hxx>
26 #include <Standard_Failure.hxx>
27 #include <Standard_SStream.hxx>
28
29 #include <Standard_Integer.hxx>
30 #include <SelectMgr_Selection.hxx>
31 #include <Standard_Boolean.hxx>
32 #include <PrsMgr_PresentationManager3d.hxx>
33 #include <SelectMgr_SequenceOfOwner.hxx>
34 #include <Quantity_NameOfColor.hxx>
35 #include <SelectMgr_EntityOwner.hxx>
36 #include <Prs3d_Presentation.hxx>
37
38
39 extern "C" {
40
41
42 JNIEXPORT jint JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_NbPossibleSelection (JNIEnv *env, jobject theobj)
43 {
44 jint thejret;
45
46 jcas_Locking alock(env);
47 {
48 try {
49 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
50  thejret = the_this->NbPossibleSelection();
51
52 }
53 catch (Standard_Failure) {
54   Standard_SStream Err;
55   Err <<   Standard_Failure::Caught(); 
56   Err << (char) 0;
57   jcas_ThrowException(env,Err.str().c_str());
58 }
59 }
60 alock.Release();
61 return thejret;
62 }
63
64
65
66 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_SelectMgr_1SelectableObject_1UpdateSelection_11 (JNIEnv *env, jobject theobj)
67 {
68
69 jcas_Locking alock(env);
70 {
71 try {
72 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
73 the_this->UpdateSelection();
74
75 }
76 catch (Standard_Failure) {
77   Standard_SStream Err;
78   Err <<   Standard_Failure::Caught(); 
79   Err << (char) 0;
80   jcas_ThrowException(env,Err.str().c_str());
81 }
82 }
83 alock.Release();
84
85 }
86
87
88
89 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_SelectMgr_1SelectableObject_1UpdateSelection_12 (JNIEnv *env, jobject theobj, jint aMode)
90 {
91
92 jcas_Locking alock(env);
93 {
94 try {
95 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
96 the_this->UpdateSelection((Standard_Integer) aMode);
97
98 }
99 catch (Standard_Failure) {
100   Standard_SStream Err;
101   Err <<   Standard_Failure::Caught(); 
102   Err << (char) 0;
103   jcas_ThrowException(env,Err.str().c_str());
104 }
105 }
106 alock.Release();
107
108 }
109
110
111
112 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_AddSelection (JNIEnv *env, jobject theobj, jobject aSelection, jint aMode)
113 {
114
115 jcas_Locking alock(env);
116 {
117 try {
118  Handle( SelectMgr_Selection ) the_aSelection;
119  void*                ptr_aSelection = jcas_GetHandle(env,aSelection);
120  
121  if ( ptr_aSelection != NULL ) the_aSelection = *(   (  Handle( SelectMgr_Selection )*  )ptr_aSelection   );
122
123 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
124 the_this->AddSelection(the_aSelection,(Standard_Integer) aMode);
125
126 }
127 catch (Standard_Failure) {
128   Standard_SStream Err;
129   Err <<   Standard_Failure::Caught(); 
130   Err << (char) 0;
131   jcas_ThrowException(env,Err.str().c_str());
132 }
133 }
134 alock.Release();
135
136 }
137
138
139
140 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_ClearSelections (JNIEnv *env, jobject theobj, jboolean update)
141 {
142
143 jcas_Locking alock(env);
144 {
145 try {
146 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
147 the_this->ClearSelections((Standard_Boolean) update);
148
149 }
150 catch (Standard_Failure) {
151   Standard_SStream Err;
152   Err <<   Standard_Failure::Caught(); 
153   Err << (char) 0;
154   jcas_ThrowException(env,Err.str().c_str());
155 }
156 }
157 alock.Release();
158
159 }
160
161
162
163 JNIEXPORT jobject JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_Selection (JNIEnv *env, jobject theobj, jint aMode)
164 {
165 jobject thejret;
166
167 jcas_Locking alock(env);
168 {
169 try {
170 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
171 Handle(SelectMgr_Selection)* theret = new Handle(SelectMgr_Selection);
172 *theret = the_this->Selection((Standard_Integer) aMode);
173 thejret = jcas_CreateObject(env,"CASCADESamplesJni/SelectMgr_Selection",theret);
174
175 }
176 catch (Standard_Failure) {
177   Standard_SStream Err;
178   Err <<   Standard_Failure::Caught(); 
179   Err << (char) 0;
180   jcas_ThrowException(env,Err.str().c_str());
181 }
182 }
183 alock.Release();
184 return thejret;
185 }
186
187
188
189 JNIEXPORT jboolean JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_HasSelection (JNIEnv *env, jobject theobj, jint aMode)
190 {
191 jboolean thejret;
192
193 jcas_Locking alock(env);
194 {
195 try {
196 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
197  thejret = the_this->HasSelection((Standard_Integer) aMode);
198
199 }
200 catch (Standard_Failure) {
201   Standard_SStream Err;
202   Err <<   Standard_Failure::Caught(); 
203   Err << (char) 0;
204   jcas_ThrowException(env,Err.str().c_str());
205 }
206 }
207 alock.Release();
208 return thejret;
209 }
210
211
212
213 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_Init (JNIEnv *env, jobject theobj)
214 {
215
216 jcas_Locking alock(env);
217 {
218 try {
219 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
220 the_this->Init();
221
222 }
223 catch (Standard_Failure) {
224   Standard_SStream Err;
225   Err <<   Standard_Failure::Caught(); 
226   Err << (char) 0;
227   jcas_ThrowException(env,Err.str().c_str());
228 }
229 }
230 alock.Release();
231
232 }
233
234
235
236 JNIEXPORT jboolean JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_More (JNIEnv *env, jobject theobj)
237 {
238 jboolean thejret;
239
240 jcas_Locking alock(env);
241 {
242 try {
243 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
244  thejret = the_this->More();
245
246 }
247 catch (Standard_Failure) {
248   Standard_SStream Err;
249   Err <<   Standard_Failure::Caught(); 
250   Err << (char) 0;
251   jcas_ThrowException(env,Err.str().c_str());
252 }
253 }
254 alock.Release();
255 return thejret;
256 }
257
258
259
260 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_Next (JNIEnv *env, jobject theobj)
261 {
262
263 jcas_Locking alock(env);
264 {
265 try {
266 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
267 the_this->Next();
268
269 }
270 catch (Standard_Failure) {
271   Standard_SStream Err;
272   Err <<   Standard_Failure::Caught(); 
273   Err << (char) 0;
274   jcas_ThrowException(env,Err.str().c_str());
275 }
276 }
277 alock.Release();
278
279 }
280
281
282
283 JNIEXPORT jobject JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_CurrentSelection (JNIEnv *env, jobject theobj)
284 {
285 jobject thejret;
286
287 jcas_Locking alock(env);
288 {
289 try {
290 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
291 Handle(SelectMgr_Selection)* theret = new Handle(SelectMgr_Selection);
292 *theret = the_this->CurrentSelection();
293 thejret = jcas_CreateObject(env,"CASCADESamplesJni/SelectMgr_Selection",theret);
294
295 }
296 catch (Standard_Failure) {
297   Standard_SStream Err;
298   Err <<   Standard_Failure::Caught(); 
299   Err << (char) 0;
300   jcas_ThrowException(env,Err.str().c_str());
301 }
302 }
303 alock.Release();
304 return thejret;
305 }
306
307
308
309 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_ResetLocation (JNIEnv *env, jobject theobj)
310 {
311
312 jcas_Locking alock(env);
313 {
314 try {
315 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
316 the_this->ResetLocation();
317
318 }
319 catch (Standard_Failure) {
320   Standard_SStream Err;
321   Err <<   Standard_Failure::Caught(); 
322   Err << (char) 0;
323   jcas_ThrowException(env,Err.str().c_str());
324 }
325 }
326 alock.Release();
327
328 }
329
330
331
332 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_SelectMgr_1SelectableObject_1UpdateLocation_11 (JNIEnv *env, jobject theobj)
333 {
334
335 jcas_Locking alock(env);
336 {
337 try {
338 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
339 the_this->UpdateLocation();
340
341 }
342 catch (Standard_Failure) {
343   Standard_SStream Err;
344   Err <<   Standard_Failure::Caught(); 
345   Err << (char) 0;
346   jcas_ThrowException(env,Err.str().c_str());
347 }
348 }
349 alock.Release();
350
351 }
352
353
354
355 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_HilightSelected (JNIEnv *env, jobject theobj, jobject PM, jobject Seq)
356 {
357
358 jcas_Locking alock(env);
359 {
360 try {
361  Handle( PrsMgr_PresentationManager3d ) the_PM;
362  void*                ptr_PM = jcas_GetHandle(env,PM);
363  
364  if ( ptr_PM != NULL ) the_PM = *(   (  Handle( PrsMgr_PresentationManager3d )*  )ptr_PM   );
365
366 SelectMgr_SequenceOfOwner* the_Seq = (SelectMgr_SequenceOfOwner*) jcas_GetHandle(env,Seq);
367 if ( the_Seq == NULL ) {
368
369  // The following assumes availability of the default constructor (what may not
370  // always be the case). Therefore explicit exception is thrown if the null
371  // object has been passed.
372  // the_Seq = new SelectMgr_SequenceOfOwner ();
373  // jcas_SetHandle ( env, Seq, the_Seq );
374  jcas_ThrowException (env, "NULL object has been passed while expecting an object manipulated by value");
375
376 }  // end if
377 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
378 the_this->HilightSelected(the_PM,*the_Seq);
379
380 }
381 catch (Standard_Failure) {
382   Standard_SStream Err;
383   Err <<   Standard_Failure::Caught(); 
384   Err << (char) 0;
385   jcas_ThrowException(env,Err.str().c_str());
386 }
387 }
388 alock.Release();
389
390 }
391
392
393
394 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_ClearSelected (JNIEnv *env, jobject theobj)
395 {
396
397 jcas_Locking alock(env);
398 {
399 try {
400 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
401 the_this->ClearSelected();
402
403 }
404 catch (Standard_Failure) {
405   Standard_SStream Err;
406   Err <<   Standard_Failure::Caught(); 
407   Err << (char) 0;
408   jcas_ThrowException(env,Err.str().c_str());
409 }
410 }
411 alock.Release();
412
413 }
414
415
416
417 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_HilightOwnerWithColor (JNIEnv *env, jobject theobj, jobject thePM, jshort theColor, jobject theOwner)
418 {
419
420 jcas_Locking alock(env);
421 {
422 try {
423  Handle( PrsMgr_PresentationManager3d ) the_thePM;
424  void*                ptr_thePM = jcas_GetHandle(env,thePM);
425  
426  if ( ptr_thePM != NULL ) the_thePM = *(   (  Handle( PrsMgr_PresentationManager3d )*  )ptr_thePM   );
427
428  Handle( SelectMgr_EntityOwner ) the_theOwner;
429  void*                ptr_theOwner = jcas_GetHandle(env,theOwner);
430  
431  if ( ptr_theOwner != NULL ) the_theOwner = *(   (  Handle( SelectMgr_EntityOwner )*  )ptr_theOwner   );
432
433 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
434 the_this->HilightOwnerWithColor(the_thePM,(Quantity_NameOfColor) theColor,the_theOwner);
435
436 }
437 catch (Standard_Failure) {
438   Standard_SStream Err;
439   Err <<   Standard_Failure::Caught(); 
440   Err << (char) 0;
441   jcas_ThrowException(env,Err.str().c_str());
442 }
443 }
444 alock.Release();
445
446 }
447
448
449
450 JNIEXPORT jboolean JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_IsAutoHilight (JNIEnv *env, jobject theobj)
451 {
452 jboolean thejret;
453
454 jcas_Locking alock(env);
455 {
456 try {
457 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
458  thejret = the_this->IsAutoHilight();
459
460 }
461 catch (Standard_Failure) {
462   Standard_SStream Err;
463   Err <<   Standard_Failure::Caught(); 
464   Err << (char) 0;
465   jcas_ThrowException(env,Err.str().c_str());
466 }
467 }
468 alock.Release();
469 return thejret;
470 }
471
472
473
474 JNIEXPORT void JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_SetAutoHilight (JNIEnv *env, jobject theobj, jboolean newAutoHilight)
475 {
476
477 jcas_Locking alock(env);
478 {
479 try {
480 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
481 the_this->SetAutoHilight((Standard_Boolean) newAutoHilight);
482
483 }
484 catch (Standard_Failure) {
485   Standard_SStream Err;
486   Err <<   Standard_Failure::Caught(); 
487   Err << (char) 0;
488   jcas_ThrowException(env,Err.str().c_str());
489 }
490 }
491 alock.Release();
492
493 }
494
495
496
497 JNIEXPORT jobject JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_GetHilightPresentation (JNIEnv *env, jobject theobj, jobject TheMgr)
498 {
499 jobject thejret;
500
501 jcas_Locking alock(env);
502 {
503 try {
504  Handle( PrsMgr_PresentationManager3d ) the_TheMgr;
505  void*                ptr_TheMgr = jcas_GetHandle(env,TheMgr);
506  
507  if ( ptr_TheMgr != NULL ) the_TheMgr = *(   (  Handle( PrsMgr_PresentationManager3d )*  )ptr_TheMgr   );
508
509 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
510 Handle(Prs3d_Presentation)* theret = new Handle(Prs3d_Presentation);
511 *theret = the_this->GetHilightPresentation(the_TheMgr);
512 thejret = jcas_CreateObject(env,"CASCADESamplesJni/Prs3d_Presentation",theret);
513
514 }
515 catch (Standard_Failure) {
516   Standard_SStream Err;
517   Err <<   Standard_Failure::Caught(); 
518   Err << (char) 0;
519   jcas_ThrowException(env,Err.str().c_str());
520 }
521 }
522 alock.Release();
523 return thejret;
524 }
525
526
527
528 JNIEXPORT jobject JNICALL Java_CASCADESamplesJni_SelectMgr_1SelectableObject_GetSelectPresentation (JNIEnv *env, jobject theobj, jobject TheMgr)
529 {
530 jobject thejret;
531
532 jcas_Locking alock(env);
533 {
534 try {
535  Handle( PrsMgr_PresentationManager3d ) the_TheMgr;
536  void*                ptr_TheMgr = jcas_GetHandle(env,TheMgr);
537  
538  if ( ptr_TheMgr != NULL ) the_TheMgr = *(   (  Handle( PrsMgr_PresentationManager3d )*  )ptr_TheMgr   );
539
540 Handle(SelectMgr_SelectableObject) the_this = *((Handle(SelectMgr_SelectableObject)*) jcas_GetHandle(env,theobj));
541 Handle(Prs3d_Presentation)* theret = new Handle(Prs3d_Presentation);
542 *theret = the_this->GetSelectPresentation(the_TheMgr);
543 thejret = jcas_CreateObject(env,"CASCADESamplesJni/Prs3d_Presentation",theret);
544
545 }
546 catch (Standard_Failure) {
547   Standard_SStream Err;
548   Err <<   Standard_Failure::Caught(); 
549   Err << (char) 0;
550   jcas_ThrowException(env,Err.str().c_str());
551 }
552 }
553 alock.Release();
554 return thejret;
555 }
556
557
558 }