* Switch to pure Core Text Implementation, Start extended Font API
* mac fixes
* First msw implementation
* Fixing paste error
* fixing typo
* Rearranging lines to former fallthrough order
* Blind fixes for covering new abstract methods
* Blind gtk implementations
* Fixing according to travis ..
* Removing method defined in base
* formatting adaptions
* Extending the schema definition for new weights
* fixing typo, using wxRound, other fixes according to comments
* changes according to suggestions
* fixing init order, before the init of m_info was overridden by Init()
* redo
* redo
* redo
* Cleanup
Removing obsolete code snippets, proper traces for font names
* Moving common code
Only the Get/SetNumericWeight calls should now be implemented in the native part, the ‚old‘ Get/SetWeight are common code and use the numeric counterparts.
* Updating docs
* commit wa missing changes.txt
* Doc fixes
* Full stops added
This will allow this code to work even when implicit conversion from
"const char*" is disabled in wxString and is already marginally more
efficient even now.
See https://github.com/wxWidgets/wxWidgets/pull/782
Translate all strings in the new GetNodeText() function replacing the
old GetText() which was mostly used for translatable strings before --
except that <item> tag contents didn't use it because it also performed
string unescaping, not wanted for the control items, in addition to
translation.
Replace the old GetText() (while still keeping it for compatibility,
i.e. to avoid breaking any custom XRC handlers using it) with the new
function which is more flexible and can be used for all tags.
No real changes, this is just a refactoring.
Introduce a new type for XRC values imaginatively called just "pair of
integers" which can be used for values not expressed in pixels and hence for
which it doesn't make sense to use dialog units nor to scale them by the DPI.
Use this new type for wxGridBagSizer position and span elements to prevent
them from being changed when using higher than normal DPI.
Closes#17592.
Windows CE doesn't seem to be supported by Microsoft any longer. Last CE
release was in early 2013 and the PocketPC and Smartphone targets supported by
wxWidgets are long gone.
The build files where already removed in an earlier cleanup this commit
removes all files, every #ifdef and all documentation regarding the Windows CE
support.
Closes https://github.com/wxWidgets/wxWidgets/pull/81
Pixel values in XRC can never be correct for high resolution displays, unlike
the pixel values passed to wxWidgets API, which could be already adjusted to
account for the resolution or obtained from resolution-dependent text metrics,
so scale them by the factor appropriate for the current resolution
automatically.
Factor out this code to a reusable ParseValueInPixels() function instead of
repeating it in GetSize() and GetDimension() (and using a hack to reuse it
from GetPosition()).
No real changes, just made some error messages more precise.
This port is not used and is not being worked on, so remove it to reduce the
amount of the code which needs to be updated for every global change.
Also remove tests for VisualAge compiler which isn't used since ages.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.
Closes#16100.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The singleton dtor shouldn't delete the global singleton object, if this were
ever really possible, it would result in an infinite recursion. And even
though it was not (because ms_instance was reset to NULL before destroying the
object pointed by it), this delete was still confusing and unnecessary, so
remove it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This is better than showing them initially and then hiding them if only
because it avoids the unexpected wxEVT_SHOW events being generated.
Closes#15919.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This fixes the DLL build of aui library as it can now be linked without
leaving any unresolved dependencies to the code in xml library (where
wxXmlNode is implemented).
Closes#15686.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Replacement of FUTURE_WXWIN_COMPATIBILITY_3_0 with WXWIN_COMPATIBILITY_3_0 in
r75532 resulted in tons of warnings as all code using wxSOLID and similar
constants now uses the deprecated methods taking int instead of the preferred
ones taking wx{Pen,Brush}Style (and similarly for wxFont{Style,Weight,Family}).
Fix all of them but this also would seem to mean that this change might not be
such a good idea at all.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.
If nothing else, this will make an eventual transition to Git simpler.
Closes#14487.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Split wxXmlResourceHandler into an ABC and the real implementation to allow
referencing the ABC in the core library itself but without pulling in all of
the XRC into it. This also allows defining XRC handlers, which only depend on
this ABC and not the xrc library, in other libraries, such as richtext, as
demonstrated by the now enabled wxRichTextXMLHandler.
Closes#10996.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This allows to construct a font based on the parent window font instead of
either fully specifying all font parameters or basing it on a standard font.
Closes#14632.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This reverts r70556, i.e. removes the scope operators added by it to all
WX_DECLARE_HASH_{MAP,SET} macros, and implements a workaround for the problem
due to the use of empty base class optimization in g++ 4.7 standard library
implementations inside the macros themselves by prepending the hasher and
comparator classes with explicit "struct".
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Add missing wxStandardID enum elements to AddStdXRCID_Records().
Also add blank lines to make the code in this function align with the enum
declaration to make side-by-side comparison easier.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fully qualify the hasher and comparator classes used with
WX_DECLARE_HASH_{SET,MAP} macros as they're used as base classes by the
standard library implementation in g++ 4.7 and using them without the scope
operator results in compilation errors because they're interpreted as being
(inaccessible) base classes and not the global ones.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Parsing code for translating between '_' and '&' didn't properly handle
the case when the input was malformed and '_' wasn't followed by either
another '_' or another character. Added a check to guard against this.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The result of wxString::mb_str() can't be converted to wxScopedCharBuffer in
non-Unicode build but converting it to wxCharBuffer is always fine (though
slightly less efficient).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Only traverse the id hash once in XRCID_Assign() instead of using
RemoveXRCIDEntry() to delete the old entry (which usually doesn't exist so
this traversed the entire hash) followed by XRCID_Lookup() to create a new one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Macros from WX_DECLARE_HASH_SET family could declare an operator->() which
could never be called because it returned a pointer to a non-object (e.g. a
pointer or a primitive type).
Fix this in the same way as for WX_DECLARE_ARRAY macros by adding (badly but
consistently) named _PTR variants of the macros to allow defining the versions
without operator->().
This fixes tons of warnings when building wx with Sun CC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Move it from wxButtonXmlHandler into a reusable wxXmlResourceHandler::
GetDirection() that can used by the other handlers too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Additionally renamed wxOSX' private wxNativePrinterDC::Ok() function to IsOk().
Didn't deprecate the various Ok() functions: given the amount of changes already introduced in 3.0 a trivial one like this seems more suitable for after 3.0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
r60494 accidentally broke this, by adding faster code path for
child-less <object_ref>s. Unfortunately, this made it ignore
<object_ref>s without children, but with attributes overrides.
Fixes#13061.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Attempting to load a resource that couldn't be loaded resulted in
wxXmlResource::Load() returning false for this and _all_the_subsequent_ calls
to it because each call to Load() reattempted to reload all resources,
including the one(s) that failed to load initially.
Instead, try to load just the resource(s) that we should load right now and
ignore all the other ones. Also, don't add entries for the one(s) that we fail
to load.
This fixes the unit test failures in the XRC test case which was affected by
the test checking that XRC couldn't be loaded from garbage that ran before it.
It also makes the code simpler by ensuring that wxXmlResourceDataRecords
elements always have a valid wxXmlDocument associated with them.
Also clean up the code: use wxScopedPtr instead of manually deleting pointers
and reorganize #if checks to be easier to follow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Really fix removing the record from the linked list. This code was modified by
r66064 but was still wrong because the wrong pointer was updated.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix compilation of the new code which relied on implicit conversion of
wxString to "const char *" which is unavailable when wxUSE_STL==1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Define the hash function in a separate function instead of duplicating it in
XRCID_Lookup() and RemoveXRCIDEntry().
The hash function is extremely simplistic and inefficient right now, it should
be replaced with wxStringHash::stringHash().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix bug in linked list processing in RemoveXRCIDEntry() added in r66059: it
incorrectly overwrote the XRC id table entry with the next element in the list
instead of just updating the pointer used during iteration.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Allow to declare ranges of consecutive IDs in XRC by using the "id[n]" syntax.
Show this functionality in the xrc sample and test it in the new unit test.
Also show and test the "object reference" XRC functionality.
Closes#11431.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This function (and the related DoReportError()) doesn't need to modify its
"context" argument so take a const-pointer in it.
See #11431.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This simple helper function doesn't use any wxXmlResourceHandler data as it's
just a trivial wrapper for wxXmlNode::GetAttribute().
Making it static allows, in particular, to call it from const member functions
of wxXmlResourceHandler-derived classes (making it "const" itself would
achieve this too, of course, but it just doesn't need to be non-static).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Let the image list deduce its size from the first bitmap in it. This is better
than the old behaviour of using the standard icon size as it allows to omit
the size from the image lists provided they contain the bitmaps of the same
size.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
No real changes, just replace the code which was working around the absence of
a wxString::ToCDouble() with the call to the real thing now that we have it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775