initial commit
Signed-off-by: Peter Siegmund <mars3142@noreply.mars3142.dev>
This commit is contained in:
236
libs/wxWidgets-3.3.1/interface/wx/display.h
Normal file
236
libs/wxWidgets-3.3.1/interface/wx/display.h
Normal file
@@ -0,0 +1,236 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: display.h
|
||||
// Purpose: interface of wxDisplay
|
||||
// Author: wxWidgets team
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
@class wxDisplay
|
||||
|
||||
Determines the sizes and locations of displays connected to the system.
|
||||
|
||||
@library{wxcore}
|
||||
@category{cfg}
|
||||
*/
|
||||
class wxDisplay
|
||||
{
|
||||
public:
|
||||
/**
|
||||
Default constructor creating wxDisplay object representing the primary
|
||||
display.
|
||||
*/
|
||||
wxDisplay();
|
||||
|
||||
/**
|
||||
Constructor, setting up a wxDisplay instance with the specified
|
||||
display.
|
||||
|
||||
@param index
|
||||
The index of the display to use. This must be non-negative and
|
||||
lower than the value returned by GetCount().
|
||||
*/
|
||||
explicit wxDisplay(unsigned int index);
|
||||
|
||||
/**
|
||||
Constructor creating the display object associated with the given
|
||||
window.
|
||||
|
||||
This is the most convenient way of finding the display on which the
|
||||
given window is shown while falling back to the default display if it
|
||||
is not shown at all or positioned outside of any display.
|
||||
|
||||
@param window
|
||||
A valid, i.e. non-null, window.
|
||||
|
||||
@see GetFromWindow()
|
||||
|
||||
@since 3.1.2
|
||||
*/
|
||||
explicit wxDisplay(const wxWindow* window);
|
||||
|
||||
/**
|
||||
Destructor.
|
||||
*/
|
||||
~wxDisplay();
|
||||
|
||||
/**
|
||||
Changes the video mode of this display to the mode specified in the
|
||||
mode parameter.
|
||||
|
||||
If wxDefaultVideoMode is passed in as the mode parameter, the defined
|
||||
behaviour is that wxDisplay will reset the video mode to the default
|
||||
mode used by the display. On Windows, the behaviour is normal. However,
|
||||
there are differences on other platforms. On Unix variations using X11
|
||||
extensions it should behave as defined, but some irregularities may
|
||||
occur.
|
||||
*/
|
||||
bool ChangeMode(const wxVideoMode& mode = wxDefaultVideoMode);
|
||||
|
||||
/**
|
||||
Returns the client area of the display. The client area is the part of
|
||||
the display available for the normal (non full screen) windows, usually
|
||||
it is the same as GetGeometry() but it could be less if there is a
|
||||
taskbar (or equivalent) on this display.
|
||||
*/
|
||||
wxRect GetClientArea() const;
|
||||
|
||||
/**
|
||||
Returns the number of connected displays.
|
||||
*/
|
||||
static unsigned int GetCount();
|
||||
|
||||
/**
|
||||
Returns the current video mode that this display is in.
|
||||
*/
|
||||
wxVideoMode GetCurrentMode() const;
|
||||
|
||||
/**
|
||||
Returns the index of the display on which the given point lies, or
|
||||
@c wxNOT_FOUND if the point is not on any connected display.
|
||||
|
||||
@param pt
|
||||
The point to locate.
|
||||
*/
|
||||
static int GetFromPoint(const wxPoint& pt);
|
||||
|
||||
/**
|
||||
Returns the index of the display with biggest intersection with the
|
||||
given rectangle or @c wxNOT_FOUND if the rectangle doesn't intersect
|
||||
any display.
|
||||
|
||||
Note that usually the returned display will be the same display which
|
||||
contains the center of the rectangle, but this is not always the case,
|
||||
as rectangle might be partly visible even if its center is off screen,
|
||||
and in this case GetFromPoint() would returns @c wxNOT_FOUND, but this
|
||||
function would return a valid display.
|
||||
|
||||
@param rect
|
||||
The rectangle to check.
|
||||
|
||||
@since 3.3.0
|
||||
*/
|
||||
static int GetFromRect(const wxRect& rect);
|
||||
|
||||
/**
|
||||
Returns the index of the display on which the given window lies.
|
||||
|
||||
If the window is on more than one display it gets the display that
|
||||
overlaps the window the most.
|
||||
|
||||
Returns @c wxNOT_FOUND if the window is not on any connected display.
|
||||
|
||||
@param win
|
||||
The window to locate.
|
||||
*/
|
||||
static int GetFromWindow(const wxWindow* win);
|
||||
|
||||
/**
|
||||
Returns the bounding rectangle of the display whose index was passed to
|
||||
the constructor.
|
||||
|
||||
@see GetClientArea(), wxDisplaySize()
|
||||
*/
|
||||
wxRect GetGeometry() const;
|
||||
|
||||
/**
|
||||
Fills and returns an array with all the video modes that are supported
|
||||
by this display, or video modes that are supported by this display and
|
||||
match the mode parameter (if mode is not wxDefaultVideoMode).
|
||||
*/
|
||||
wxArrayVideoModes GetModes(const wxVideoMode& mode = wxDefaultVideoMode) const;
|
||||
|
||||
/**
|
||||
Returns the display's name.
|
||||
|
||||
The returned value is currently an empty string under all platforms
|
||||
except MSW.
|
||||
*/
|
||||
wxString GetName() const;
|
||||
|
||||
/**
|
||||
Returns display depth, i.e. number of bits per pixel (0 if unknown)
|
||||
|
||||
@since 3.1.2
|
||||
*/
|
||||
int GetDepth() const;
|
||||
|
||||
/**
|
||||
Returns display resolution in pixels per inch.
|
||||
|
||||
Horizontal and vertical resolution are returned in @c x and @c y
|
||||
components of the wxSize object respectively.
|
||||
|
||||
If the resolution information is not available, returns `wxSize(0, 0)`.
|
||||
|
||||
@since 3.1.2
|
||||
*/
|
||||
wxSize GetPPI() const;
|
||||
|
||||
/**
|
||||
Returns scaling factor used by this display.
|
||||
|
||||
The scaling factor is the ratio between GetPPI() and GetStdPPI()
|
||||
(it is implicitly assumed that this ratio is the same for both
|
||||
horizontal and vertical components).
|
||||
|
||||
@see wxWindow::GetContentScaleFactor(), wxWindow::GetDPIScaleFactor()
|
||||
|
||||
@since 3.1.5
|
||||
*/
|
||||
double GetScaleFactor() const;
|
||||
|
||||
/**
|
||||
Returns default display resolution for the current platform in pixels
|
||||
per inch.
|
||||
|
||||
This function mostly used internally, use GetPPI() to get the actual
|
||||
display resolution.
|
||||
|
||||
Currently the standard PPI is the same in both horizontal and vertical
|
||||
directions on all platforms and its value is 96 everywhere except under
|
||||
Apple devices (those running macOS, iOS, watchOS etc), where it is 72.
|
||||
|
||||
@see GetStdPPI()
|
||||
|
||||
@since 3.1.5
|
||||
*/
|
||||
static int GetStdPPIValue();
|
||||
|
||||
/**
|
||||
Returns default display resolution for the current platform as wxSize.
|
||||
|
||||
This function is equivalent to constructing wxSize object with both
|
||||
components set to GetStdPPIValue().
|
||||
|
||||
@since 3.1.5
|
||||
*/
|
||||
static wxSize GetStdPPI();
|
||||
|
||||
/**
|
||||
Returns @true if the display has not been unplugged yet.
|
||||
|
||||
This function can return @false if the display configuration has
|
||||
changed since this wxDisplay object has been created and either this
|
||||
display is known not to be connected to the system any more (support
|
||||
for detecting this is currently only implemented in wxMSW) or the
|
||||
display status is now unknown (which happens in all the other ports
|
||||
detecting the display configuration changes, e.g. wxOSX).
|
||||
|
||||
A disconnected object is still usable, but all accessor functions
|
||||
return invalid fallback values (e.g. 0 for the width and height) and so
|
||||
such objects are not really useful any more. It is recommended to
|
||||
recreate them when the display configuration changes, which can be done
|
||||
in wxEVT_DISPLAY_CHANGED handler of any top-level window.
|
||||
|
||||
@since 3.3.0
|
||||
*/
|
||||
bool IsConnected() const;
|
||||
|
||||
/**
|
||||
Returns @true if the display is the primary display. The primary
|
||||
display is the one whose index is 0.
|
||||
*/
|
||||
bool IsPrimary() const;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user