Avoids issues with exceptions. Also remove worthless null pointer checks, the
pointer has already been dereferenced, and GetEventHandler() never returns NULL
This fixes the changes of commit 3543ae0177
which didn't work if any of the globals using wxPreRegisterAnyToVariant() were
instantiated before g_wxAnyValueTypeGlobals itself.
Wrap the global inside a function to ensure that we initialized it before it
is used by wxPreRegisterAnyToVariant() and not after.
* Add 'wxTextFileType m_fileType' to hold the type
* Add 'wxString m_eol' to hold the end of lines string
* Add SetFileType() and GetFileType() to set and get the type
* Add GetEOL() to get the end of lines wxString
* Backwards compatibility preserved by using wxTextFileType_Unix
Change-Id: I3e8547b377e2c4060a3a2d97c299a08ea2c0a376
Signed-off-by: Adrian DC <radian.dc@gmail.com>
Lifetime of wxPrinterDC created in BeginPrint() handler (associated with
"begin-print" signal) is limited to the current print job and therefore
this object should be destroyed when the actual printing is finished.
See #14233.
GetPrintDC() should return a new device context created by the print
dialog, not the duplicate of existing context passed from the caller
(e.g. from wxGtkPrinter) through SetPrintDC(). Therefore SetPrintDC() is
no longer useful and can be removed.
Handle "bitmap" and "bitmapposition" attributes in wxToggleButton XRC handler,
just as it's already done for wxBitmap and wxBitmapToggleButton.
Closes#17850.
Stroke the path of the shape only if pen using in drawing is
non-transparent. Otherwise, the shape would have a visible border even for
transparent pen.
Generic implementation from wxDCImpl doesn't work well with wxPrinterDC
under wxGTK.
(This implementation is adopted from wxCairoContext::GetPartialTextExtents.)
It can happen that an application using wxWidgets doesn't actually use it,
e.g. because it runs in the console mode and doesn't need the GUI stuff. In
this case, g_wxAnyValueTypeGlobals was leaked because the cleanup function of
the module, which is supposed to clean it up, was never executed.
Fix this by making this pointer a smart pointer, thus making sure that the CRT
cleans it up even if we don't. We still do it from the module OnExit() to
account for the possibility of initializing and shutting down the library more
than once.
Ensure that checking for dialog modality in wxEVT_INIT_DIALOG handler returns
true when the dialog is being shown modally in MSW and GTK.
Add a unit test checking that this is the case.
Closes#10385.