get_screen_size() added
This commit is contained in:
parent
3c8b047b11
commit
f9d0de0d2a
5 changed files with 16 additions and 0 deletions
|
@ -180,6 +180,10 @@ int _OS::get_screen_count() const {
|
||||||
return OS::get_singleton()->get_screen_count();
|
return OS::get_singleton()->get_screen_count();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Size2 _OS::get_screen_size(int p_screen) const {
|
||||||
|
return OS::get_singleton()->get_screen_size(p_screen);
|
||||||
|
}
|
||||||
|
|
||||||
Point2 _OS::get_window_position() const {
|
Point2 _OS::get_window_position() const {
|
||||||
return OS::get_singleton()->get_window_position();
|
return OS::get_singleton()->get_window_position();
|
||||||
}
|
}
|
||||||
|
@ -661,6 +665,7 @@ void _OS::_bind_methods() {
|
||||||
ObjectTypeDB::bind_method(_MD("get_fullscreen_mode_list","screen"),&_OS::get_fullscreen_mode_list,DEFVAL(0));
|
ObjectTypeDB::bind_method(_MD("get_fullscreen_mode_list","screen"),&_OS::get_fullscreen_mode_list,DEFVAL(0));
|
||||||
|
|
||||||
ObjectTypeDB::bind_method(_MD("get_screen_count"),&_OS::get_screen_count);
|
ObjectTypeDB::bind_method(_MD("get_screen_count"),&_OS::get_screen_count);
|
||||||
|
ObjectTypeDB::bind_method(_MD("get_screen_size"),&_OS::get_screen_size,DEFVAL(0));
|
||||||
ObjectTypeDB::bind_method(_MD("get_window_position"),&_OS::get_window_position);
|
ObjectTypeDB::bind_method(_MD("get_window_position"),&_OS::get_window_position);
|
||||||
ObjectTypeDB::bind_method(_MD("set_window_position"),&_OS::set_window_position);
|
ObjectTypeDB::bind_method(_MD("set_window_position"),&_OS::set_window_position);
|
||||||
ObjectTypeDB::bind_method(_MD("get_window_size"),&_OS::get_window_size);
|
ObjectTypeDB::bind_method(_MD("get_window_size"),&_OS::get_window_size);
|
||||||
|
|
|
@ -109,6 +109,7 @@ public:
|
||||||
Array get_fullscreen_mode_list(int p_screen=0) const;
|
Array get_fullscreen_mode_list(int p_screen=0) const;
|
||||||
|
|
||||||
virtual int get_screen_count() const;
|
virtual int get_screen_count() const;
|
||||||
|
virtual Size2 get_screen_size(int p_screen=0) const;
|
||||||
virtual Point2 get_window_position() const;
|
virtual Point2 get_window_position() const;
|
||||||
virtual void set_window_position(const Point2& p_position);
|
virtual void set_window_position(const Point2& p_position);
|
||||||
virtual Size2 get_window_size() const;
|
virtual Size2 get_window_size() const;
|
||||||
|
|
|
@ -151,6 +151,7 @@ public:
|
||||||
virtual void get_fullscreen_mode_list(List<VideoMode> *p_list,int p_screen=0) const=0;
|
virtual void get_fullscreen_mode_list(List<VideoMode> *p_list,int p_screen=0) const=0;
|
||||||
|
|
||||||
virtual int get_screen_count() const=0;
|
virtual int get_screen_count() const=0;
|
||||||
|
virtual Size2 get_screen_size(int p_screen=0) const=0;
|
||||||
virtual Point2 get_window_position() const=0;
|
virtual Point2 get_window_position() const=0;
|
||||||
virtual void set_window_position(const Point2& p_position)=0;
|
virtual void set_window_position(const Point2& p_position)=0;
|
||||||
virtual Size2 get_window_size() const=0;
|
virtual Size2 get_window_size() const=0;
|
||||||
|
|
|
@ -530,6 +530,14 @@ int OS_X11::get_screen_count() const {
|
||||||
return XScreenCount(x11_display);
|
return XScreenCount(x11_display);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Size2 OS_X11::get_screen_size(int p_screen) const {
|
||||||
|
Window root = XRootWindow(x11_display, p_screen);
|
||||||
|
XWindowAttributes xwa;
|
||||||
|
XGetWindowAttributes(x11_display, root, &xwa);
|
||||||
|
return Size2i(xwa.width, xwa.height);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Point2 OS_X11::get_window_position() const {
|
Point2 OS_X11::get_window_position() const {
|
||||||
int x,y;
|
int x,y;
|
||||||
XWindowAttributes xwa;
|
XWindowAttributes xwa;
|
||||||
|
|
|
@ -218,6 +218,7 @@ public:
|
||||||
virtual void get_fullscreen_mode_list(List<VideoMode> *p_list,int p_screen=0) const;
|
virtual void get_fullscreen_mode_list(List<VideoMode> *p_list,int p_screen=0) const;
|
||||||
|
|
||||||
virtual int get_screen_count() const;
|
virtual int get_screen_count() const;
|
||||||
|
virtual Size2 get_screen_size(int p_screen=0) const;
|
||||||
virtual Point2 get_window_position() const;
|
virtual Point2 get_window_position() const;
|
||||||
virtual void set_window_position(const Point2& p_position);
|
virtual void set_window_position(const Point2& p_position);
|
||||||
virtual Size2 get_window_size() const;
|
virtual Size2 get_window_size() const;
|
||||||
|
|
Loading…
Reference in a new issue