1 // Copyright (c) 2014 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 #ifndef OcctJni_Window_H
15 #define OcctJni_Window_H
17 #include <Aspect_Window.hxx>
19 //! This class defines dummy window
20 class OcctJni_Window : public Aspect_Window
25 //! Creates a wrapper over existing Window handle
26 OcctJni_Window (const int theWidth, const int theHeight)
27 : myWidth (theWidth), myHeight(theHeight) {}
29 //! Returns native Window handle
30 virtual Aspect_Drawable NativeHandle() const Standard_OVERRIDE { return 0; }
32 //! Returns parent of native Window handle
33 virtual Aspect_Drawable NativeParentHandle() const Standard_OVERRIDE { return 0; }
35 //! Returns nothing on Android
36 virtual Aspect_FBConfig NativeFBConfig() const Standard_OVERRIDE { return 0; }
38 virtual void Destroy() {}
40 //! Opens the window <me>
41 virtual void Map() const Standard_OVERRIDE {}
43 //! Closes the window <me>
44 virtual void Unmap() const Standard_OVERRIDE {}
46 //! Applies the resizing to the window <me>
47 virtual Aspect_TypeOfResize DoResize() Standard_OVERRIDE { return Aspect_TOR_UNKNOWN; }
49 //! Apply the mapping change to the window <me>
50 virtual Standard_Boolean DoMapping() const Standard_OVERRIDE { return Standard_True; }
52 //! Returns True if the window <me> is opened
53 virtual Standard_Boolean IsMapped() const Standard_OVERRIDE { return Standard_True; }
55 //! Returns The Window RATIO equal to the physical WIDTH/HEIGHT dimensions
56 virtual Standard_Real Ratio() const Standard_OVERRIDE { return 1.0; }
58 //! Returns The Window POSITION in PIXEL
59 virtual void Position (Standard_Integer& theX1,
60 Standard_Integer& theY1,
61 Standard_Integer& theX2,
62 Standard_Integer& theY2) const Standard_OVERRIDE
70 //! Set The Window POSITION in PIXEL
71 void SetPosition (const Standard_Integer theX1,
72 const Standard_Integer theY1,
73 const Standard_Integer theX2,
74 const Standard_Integer theY2)
76 myWidth = theX2 - theX1;
77 myHeight = theY2 - theY1;
80 //! Returns The Window SIZE in PIXEL
81 virtual void Size (Standard_Integer& theWidth,
82 Standard_Integer& theHeight) const Standard_OVERRIDE
88 //! Set The Window SIZE in PIXEL
89 void SetSize (const Standard_Integer theWidth,
90 const Standard_Integer theHeight)
103 DEFINE_STANDARD_RTTIEXT(OcctJni_Window,Aspect_Window)
107 DEFINE_STANDARD_HANDLE(OcctJni_Window, Aspect_Window)
109 #endif // OcctJni_Window_H