X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3950d49c4f7834b69f1ef2ecb5d17fabbe63d57a..129848c2583e2e6072cd50be63c0ece06f14f908:/interface/utils.h diff --git a/interface/utils.h b/interface/utils.h index ec44158cad..41ca90a8b4 100644 --- a/interface/utils.h +++ b/interface/utils.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: utils.h -// Purpose: interface of wxWindowDisabler +// Purpose: interface of various utility classes and functions // Author: wxWidgets team // RCS-ID: $Id$ // Licence: wxWindows license @@ -10,14 +10,15 @@ @class wxWindowDisabler @wxheader{utils.h} - This class disables all windows of the application (may be with the exception - of one of them) in its constructor and enables them back in its destructor. + This class disables all windows of the application (may be with the + exception of one of them) in its constructor and enables them back in its + destructor. This is useful when you want to indicate to the user that the application is currently busy and cannot respond to user input. @library{wxcore} - @category{FIXME} + @category{misc} @see wxBusyCursor */ @@ -35,13 +36,13 @@ public: wxWindowDisabler(bool disable = true); /** - Disables all top level windows of the applications with the exception of - @a winToSkip if it is not @NULL. + Disables all top level windows of the applications with the exception + of @a winToSkip if it is not @NULL. */ wxWindowDisabler(wxWindow* winToSkip); /** - Reenables back the windows disabled by the constructor. + Reenables the windows disabled by the constructor. */ ~wxWindowDisabler(); }; @@ -52,24 +53,24 @@ public: @class wxBusyCursor @wxheader{utils.h} - This class makes it easy to tell your user that the program is temporarily busy. - Just create a wxBusyCursor object on the stack, and within the current scope, - the hourglass will be shown. + This class makes it easy to tell your user that the program is temporarily + busy. Just create a wxBusyCursor object on the stack, and within the + current scope, the hourglass will be shown. For example: @code wxBusyCursor wait; - for (int i = 0; i 100000; i++) + for (int i = 0; i < 100000; i++) DoACalculation(); @endcode - It works by calling wxBeginBusyCursor() in the constructor, - and wxEndBusyCursor() in the destructor. + It works by calling wxBeginBusyCursor() in the constructor, and + wxEndBusyCursor() in the destructor. @library{wxcore} - @category{FIXME} + @category{misc} @see wxBeginBusyCursor(), wxEndBusyCursor(), wxWindowDisabler */ @@ -89,6 +90,87 @@ public: +/** + @class wxMouseState + @wxheader{utils.h} + + Represents the mouse state. + + The methods of this class generally mirror the corresponding methods of + wxMouseEvent. + + This class is implemented entirely in @, meaning no extra + library needs to be linked to use this class. + + @category{misc} + + @see wxGetMouseState() + */ +class wxMouseState +{ +public: + /** + Default constructor. + */ + wxMouseState(); + + /** + Returns X coordinate of the physical mouse event position. + */ + wxCoord GetX() const; + /** + Returns Y coordinate of the physical mouse event position. + */ + wxCoord GetY() const; + /** + Returns the physical mouse position. + */ + wxPoint GetPosition() const; + + /** + Returns @true if the left mouse button changed to down. + */ + bool LeftDown() const; + /** + Returns @true if the middle mouse button changed to down. + */ + bool MiddleDown() const; + /** + Returns @true if the right mouse button changed to down. + */ + bool RightDown() const; + /** + Returns @true if the first extra button mouse button changed to down. + */ + bool Aux1Down() const; + /** + Returns @true if the second extra button mouse button changed to down. + */ + bool Aux2Down() const; + + /** + Returns @true if the control key is down. + */ + bool ControlDown() const; + /** + Returns @true if the shift key is down. + */ + bool ShiftDown() const; + /** + Returns @true if the alt key is down. + */ + bool AltDown() const; + /** + Returns @true if the meta key is down. + */ + bool MetaDown() const; + /** + Same as MetaDown() under Mac systems, ControlDown() for the others. + */ + bool CmdDown() const; +}; + + // ============================================================================ // Global functions/macros // ============================================================================ @@ -145,7 +227,7 @@ void wxBell(); and can be invoked by Ctrl-Alt-middle clicking on any wxWindow which doesn't otherwise handle this event. - @wxsince{2.9.0} + @since 2.9.0 @header{wx/utils.h} */ @@ -433,7 +515,7 @@ wxString wxStripMenuCodes(const wxString& str, int flags = wxStrip_All); Copies the user's email address into the supplied buffer, by concatenating the values returned by wxGetFullHostName() and wxGetUserId(). - @returns @true if successful, @false otherwise. + @return @true if successful, @false otherwise. @header{wx/utils.h} */ @@ -445,7 +527,7 @@ wxString wxGetEmailAddress(); @param buf Buffer to store the email address in. @param sz Size of the buffer. - @returns @true if successful, @false otherwise. + @return @true if successful, @false otherwise. @header{wx/utils.h} */ @@ -477,7 +559,7 @@ wxString wxGetHomeDir(); SYSTEM_NAME; if this is not found, the entry @b HostName in the wxWidgets section of the WIN.INI file is tried. - @returns The hostname if successful or an empty string otherwise. + @return The hostname if successful or an empty string otherwise. @see wxGetFullHostName() @@ -491,7 +573,7 @@ wxString wxGetHostName(); @param buf Buffer to store the host name in. @param sz Size of the buffer. - @returns @true if successful, @false otherwise. + @return @true if successful, @false otherwise. @header{wx/utils.h} */ @@ -525,7 +607,7 @@ wxString wxGetUserHome(const wxString& user = ""); environment variables USER and LOGNAME; if neither of these is found, the entry @b UserId in the @b wxWidgets section of the WIN.INI file is tried. - @returns The login name if successful or an empty string otherwise. + @return The login name if successful or an empty string otherwise. @see wxGetUserName() @@ -539,7 +621,7 @@ wxString wxGetUserId(); @param buf Buffer to store the login name in. @param sz Size of the buffer. - @returns @true if successful, @false otherwise. + @return @true if successful, @false otherwise. @header{wx/utils.h} */ @@ -552,7 +634,7 @@ bool wxGetUserId(char* buf, int sz); wxWidgets section of the WIN.INI file. If PenWindows is running, the entry Current in the section User of the PENWIN.INI file is used. - @returns The full user name if successful or an empty string otherwise. + @return The full user name if successful or an empty string otherwise. @see wxGetUserId() @@ -566,7 +648,7 @@ wxString wxGetUserName(); @param buf Buffer to store the full user name in. @param sz Size of the buffer. - @returns @true if successful, @false otherwise. + @return @true if successful, @false otherwise. @header{wx/utils.h} */ @@ -868,7 +950,7 @@ bool wxShell(const wxString& command = NULL); @param flags Either wxSHUTDOWN_POWEROFF or wxSHUTDOWN_REBOOT - @returns @true on success, @false if an error occurred. + @return @true on success, @false if an error occurred. @header{wx/utils.h} */