Commit Graph

120 Commits

Author SHA1 Message Date
Maarten Bent
0438ca19c1 Fix implicit-fallthrough warning 2020-12-23 17:03:05 +01:00
PB
f57f214122 Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
Paul Cornett
896512c732 Change fractional point size from float to double
There doesn't seem to be any compelling reason to use float. Using double
is simpler, and avoids otherwise unnecessary float<->double conversions.
2020-04-21 09:00:04 -07:00
Maarten Bent
39ff5b90e5 Replace wxDeprecatedGUIConstants enum values 2018-11-25 21:29:32 +01:00
Vadim Zeitlin
90dd87ee65 Fix wxGTK1 build after wxFont API changes
Implement the new {Get,Set}{FractionalPointSize,NumericWeight} methods.

Also change wxLoadQueryFont() to use wxNativeFontInfo methods as a side
effect, to reduce code duplication and reuse the existing support for
numeric weights and fractional point sizes in wxNativeFontInfo.
2018-09-17 15:24:42 +02:00
Vadim Zeitlin
aff4b82663 Don't assert in wxNativeFontInfo::SetStyle() in wxGTK1
Add missing "break" statement.
2018-09-17 15:24:41 +02:00
Vadim Zeitlin
720e1372e4 Allow leaving the point size unspecified for ports using XLFD
Rather than defaulting to the normal font size, just leave the font size
unspecified as it might result in better font size being chosen.
2018-09-17 15:24:41 +02:00
Vadim Zeitlin
22839b865d Fix bug with point sizes in wxX11 without Pango
XLFD strings specify size in tens of points, so add the missing factor
of 10.
2018-09-17 15:24:41 +02:00
Vadim Zeitlin
ff5766a8fb Move GetWeightClosestToNumericValue() to wxFontInfo too
This is similar to a recent commit which moved float to int point size
conversions to wxFontInfo and is done for the same reasons: wxFont and
wxNativeFontInfo can depend on wxFontInfo, but the converse is not true.

No real changes.
2018-09-17 15:24:41 +02:00
Vadim Zeitlin
7500a999bd Add numeric weights support for ports using XLFD-based fonts
Translate numeric weight to the symbolic name too instead of only doing
it in the other direction in GetNumericWeight().
2018-09-17 15:24:40 +02:00
Vadim Zeitlin
e05a732666 Switch to using float for point size in wxNativeFontInfo
Use float as the fundamental type for the font size and implement
wxNativeFontInfo::{Set,Get}PointSize() as wrappers around the new
{Set,Get}FractionalPointSize().

Update wxNativeFontInfo for all platforms and replace the use of its
SetPointSize() method with SetFractionalPointSize() in wxFont for the
platforms already supporting fractional point sizes (don't change the
others just yet).

Note that wxNativeFontInfo::{Get,Set}PointSize() are preserved for
backwards compatibility but shouldn't be used in any code inside the
library itself any more (again, this is not the case yet, but will be
soon).
2018-09-13 19:58:17 +02:00
Stefan Csomor
4580cdb9ad Extending wxFont API & OSX Core Text Implementation (#877)
* 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
2018-09-01 19:42:18 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Paul Cornett
a0f10ec1d6 Implement access to a global toplevel GdkWindow in a way that does not require always having an extra GtkWindow.
And don't use "RootWindow" in the name, it is not a root window in the X11 sense.
Also add wxGetPangoContext() to get access to a PangoContext.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-05 15:53:27 +00:00
Jouk Jansen
b09a481c2e synchronizing the definition of wxLoadQueryNearestFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-03 14:06:40 +00:00
Vadim Zeitlin
d66e7af9aa Don't use deprecated wxBOLD, wxNORMAL and similar constants.
Replace them with wxFONTWEIGHT_BOLD, wxFONTSTYLE_NORMAL or wxFONTWEIGHT_NORMAL
and equivalents in the code of the library itself and in the samples.

Also simplify font construction using wxFontInfo where possible to avoid
specifying these constants at all if they are not needed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-11 14:25:30 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
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
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
35f6f71b19 Don't use ternary operator ?: with wxString and literal strings.
This results in warnings about converting string literal to (non const) C
string.

Also remove the now unneeded calls to c_str() inside wxString::Printf().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-15 12:40:20 +00:00
Vadim Zeitlin
c8723b866e sAlways iInclude wx/encinfo.h from src/unix/fontutil.cpp.
We use wxNativeEncodingInfo in this file, so we always need this header, not
just when not using PCH.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-15 12:40:17 +00:00
Vadim Zeitlin
a349dc1085 Handle underlined and strikethrough attributes in wxGTK native font info.
These attributes were not handled by wxFont::GetNativeFontInfoDesc() as it
only serialized the Pango font description which doesn't support them.

Fix this by handling these attributes explicitly and prepending them to the
Pango font string if necessary.

Closes #14559.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-15 23:17:12 +00:00
Vadim Zeitlin
1b63698581 Use better face names first in wxGTK wxNativeFontInfo::SetFamily().
Try better matches and not the most widespread ones first when building a list
of face names to try for the given family. This gives better results when
these better fonts are indeed available and doesn't change anything if they
are not.

See #14126.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-09 14:24:03 +00:00
Paul Cornett
ab7049776d remove run-time check for now-required GTK 2.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-28 18:06:22 +00:00
Vadim Zeitlin
36cc76505c Use wxStrnicmp() instead of strncasecmp() in wxGTK code.
This fixes compilation under Windows where strncasecmp() is not available --
but portable wxStrnicmp() always is.

Closes #14036.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-23 13:56:14 +00:00
Vadim Zeitlin
e9270aaac8 Also add wxNativeFontInfo::SetStrikethrough() stub for wxGTK2.
This should have been done in r70563 which added the stub to wxGTK1 part only.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-11 16:26:39 +00:00
Vadim Zeitlin
ed7f03bbf3 Add stubs for wxNativeFontInfo::{Get,Set}Strikethrough() to wxGTK.
These functions are not implemented currently (just as their
{Get,Set}Underlined() counterparts) but should still be defined to allow the
code using wxNativeFontInfo to link.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-10 23:34:42 +00:00
Vadim Zeitlin
f48a115976 No real changes, just use const_cast<> instead of C casts.
Replace many comments indicating that the C cast used was really a
const_cast<> with the proper cast itself. There is no reason to not use it any
longer, all the supported compilers understand it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-22 14:17:30 +00:00
Vadim Zeitlin
0b2a860f0d Use wxString methods for UTF-8 conversions in wxX11 code.
Use wxString::utf8_str() and FromUTF8() to convert to and from UTF-8. This is
more efficient than using wxConvUTF8 as the code did before as it avoids the
conversion entirely when wxString uses UTF-8 internally (as it does by default
in wxX11) and also has the advantage of compiling in STL build unlike the old
code.

Closes #12518.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-27 12:48:21 +00:00
Vadim Zeitlin
5276b0a53c Use wxDELETE() and wxDELETEA() when possible.
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.

Closes #9685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-20 18:18:23 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Francesco Montorsi
6aea1e4a70 implement wxNativeFontInfo::SetFamily for wxGTK with the same logic used by wxMSW; remove the now useless m_family from wxGTK's wxFont implementation; better docs for many wxFont functions (don't use typeface term; use the 'face name' one instead) and wxFontFamily
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-12 22:53:26 +00:00
Francesco Montorsi
3a6a00822d add a comment about wxNativeFontInfo::SetFaceName return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-24 23:13:57 +00:00
Francesco Montorsi
c45f5ae8a3 no real change; just reformatting and better comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-16 14:46:00 +00:00
Francesco Montorsi
b5791cc7af add the wxFont(const wxSize& pixelSize, ...) ctor to all ports; add some wxCHECK_MSGs to ensure that the wxSize objects contains non-negative arguments; document that passing zero for the width parameter is allowed; other minor doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-15 16:28:33 +00:00
Vadim Zeitlin
d3b9f782ef don't use annoying and unneeded in C++ casts of NULL to "T *" in all other files neither
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-19 13:55:27 +00:00
Vadim Zeitlin
8d22935dcb unused parameter warning fixes for --disable-all-features build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-11 12:55:43 +00:00
Vadim Zeitlin
ff654490b7 removed all compile- and run-time checks for GTK+ < 2.4; don't include the generic files which are now never used in wxGTK in the build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 22:31:24 +00:00
Vadim Zeitlin
102798af35 compilation fix for switch(wxChar)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-19 01:38:37 +00:00
Vadim Zeitlin
47239bd6b6 wxX11 Unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-16 16:40:12 +00:00
Vadim Zeitlin
30083ad8e7 Support encodings in wxGTK_CONV_BACK() in the same way as we do it in
wxGTK_CONV(), i.e. return the string containing text in ISO-8859-1 encoding
and not UTF-8 if the controls font was set to have ISO-8859-1 encoding


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-02-27 15:41:56 +00:00
Václav Slavík
c3a58b249e enable wxFontMapper in wxDFB port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-22 14:05:07 +00:00
Vadim Zeitlin
29131e8a54 fixed X11 Unicode build compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-19 15:25:59 +00:00
Włodzimierz Skiba
02761f6cd4 Include wx/module.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-31 19:31:43 +00:00
Vadim Zeitlin
85ab460e7d miscellaneous wxFont enhancements (patch 1496606):
- made SetFaceName() bool and return false if the face name is not available
- corrected To/FromUserString() to complement each other


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-29 00:03:36 +00:00
Włodzimierz Skiba
d48d1eaeda Missing app.h include.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-24 17:03:11 +00:00
Vadim Zeitlin
8361f92be8 use wxGtkString instead of manual g_free()s (also fixed free/g_free mismatch)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 21:59:15 +00:00
Vadim Zeitlin
23f4f495a5 pango_font_description_get_family() can return NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 21:48:02 +00:00
Vadim Zeitlin
c23d400420 compilation fix for the last check in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 20:32:46 +00:00
Vadim Zeitlin
7c55c50ea9 clamp the point size of the font to a reaosnable range (second part of patch 1481722)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 20:23:36 +00:00
Włodzimierz Skiba
de6185e212 Include wx/utils.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-02 10:39:23 +00:00