* Implement dynamic loading of the Cairo DLL on Windows similar to how it was
done for GDI+. * Enable the use of the wxCairoContext on MSW. * Enable creating a wxGCDC from an exisiting wxGraphicsContext. * Since it's possible for a DLL that is using wx to not be on the PATH nor in the same location as the .exe, change the wxDynamicLibrary::RawLoad method to explicitly look first in the same place as the main wx-using binary. This way it will find DLLs that are in the same folder as the wx-using binary even if that would not be in the normal DLL search path. * Change wxDCImpl and wxDC::GetLogicalScale to be const methods. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -174,6 +174,7 @@ def main(scriptName, args):
|
||||
"mac_framework" : (False, "Install the Mac build as a framework"),
|
||||
"mac_framework_prefix"
|
||||
: (defFwPrefix, "Prefix where the framework should be installed. Default: %s" % defFwPrefix),
|
||||
"cairo" : (False, "Enable dynamicly loading the Cairo lib for wxGraphicsContext on MSW"),
|
||||
"no_config" : (False, "Turn off configure step on autoconf builds"),
|
||||
"config_only" : (False, "Only run the configure step and then exit"),
|
||||
"rebake" : (False, "Regenerate Bakefile and autoconf files"),
|
||||
@@ -182,7 +183,6 @@ def main(scriptName, args):
|
||||
"cocoa" : (False, "Build the old Mac Cooca port."),
|
||||
"osx_cocoa" : (False, "Build the new Cocoa port"),
|
||||
"shared" : (False, "Build wx as a dynamic library"),
|
||||
"cairo" : (False, "Build support for wxCairoContext (always true on GTK+)"),
|
||||
"extra_make" : ("", "Extra args to pass on [n]make's command line."),
|
||||
"features" : ("", "A comma-separated list of wxUSE_XYZ defines on Win, or a list of configure flags on unix."),
|
||||
"verbose" : (False, "Print commands as they are run, (to aid with debugging this script)"),
|
||||
@@ -343,6 +343,8 @@ def main(scriptName, args):
|
||||
flags["wxUSE_UNICODE_MSLU"] = "1"
|
||||
|
||||
if options.cairo:
|
||||
if not os.environ.get("CAIRO_ROOT"):
|
||||
print "WARNING: Expected CAIRO_ROOT set in the environment!"
|
||||
flags["wxUSE_CAIRO"] = "1"
|
||||
|
||||
if options.wxpython:
|
||||
@@ -361,7 +363,7 @@ def main(scriptName, args):
|
||||
|
||||
if VERSION >= (2,9):
|
||||
flags["wxUSE_UIACTIONSIMULATOR"] = "1"
|
||||
|
||||
|
||||
|
||||
mswIncludeDir = os.path.join(wxRootDir, "include", "wx", "msw")
|
||||
setup0File = os.path.join(mswIncludeDir, "setup0.h")
|
||||
@@ -399,8 +401,11 @@ def main(scriptName, args):
|
||||
|
||||
if options.shared:
|
||||
args.append("SHARED=1")
|
||||
|
||||
if options.cairo:
|
||||
args.append("USE_CAIRO=1")
|
||||
args.append(
|
||||
"CPPFLAGS=/I%s" %
|
||||
os.path.join(os.environ.get("CAIRO_ROOT", ""), 'include\\cairo'))
|
||||
|
||||
wxBuilder = builder.MSVCBuilder()
|
||||
|
||||
|
Reference in New Issue
Block a user