Commit Graph

119 Commits

Author SHA1 Message Date
Vadim Zeitlin
9ae808dc86 Synchronize structure of DrawCheckBox() and GetCheckBoxSize()
Put GTK 3 version first in both functions instead of putting it in the
middle (!) of GTK 2 code in the former one for some reason.

No real changes, the code was just moved around (this commit is best
viewed with "git diff --color-moved").
2019-11-28 02:14:50 +01:00
Ilya Sinitsyn
53ffbf6cf5 Allow ignoring margins in wxRendererNative::GetCheckBoxSize()
Add ability to get the size of the checkbox without any margins by
passing wxCONTROL_CELL flag: this can be useful when the checkbox is
part of some "cell", e.g. wxGrid one, and doesn't need any extra margins
around it.

Currently wxCONTROL_CELL is only really used by wxGTK2 implementation.
2019-11-28 02:14:50 +01:00
Paul Cornett
d85794e87f Remove some unnecessary GTK preprocessor version checks
The contained code no longer uses anything version-specific
2019-11-25 20:54:51 -08:00
Paul Cornett
abaccbc2e2 Fixes for checkbox rendering with GTK3
Size should include border and padding. Margin values seem to be for a checkbox with text
label, so don't include margin. Check mark should be drawn inside border and padding.
2019-11-24 23:31:09 -08:00
Vadim Zeitlin
5488a1438f Globally replace vadim@wxwindows.org with vadim@wxwidgets.org
The old email address is invalid since many years and shouldn't be used
any longer.

No real changes.
2019-04-22 14:12:05 +02:00
Paul Cornett
5ff0d3a458 Improve wxRendererGTK drawing with HiDPI 2018-11-01 00:11:31 -07:00
Tim S
095176f840 Add GDK_WINDOWING_X11 guard for wxGTK/Win32 2018-10-16 16:00:54 -07:00
Vadim Zeitlin
ea71ea1259 Check for non-null window in wxRendererNative::GetCheckBoxSize()
Instead of running normally under some platforms and crashing under MSW
(when using themes) when passing NULL to GetCheckBoxSize(), now
consistently assert and return zero size everywhere.

Closes #18241.
2018-10-11 00:01:00 +02:00
Paul Cornett
e160cb37b6 Remove unused wxWindow parameter 2018-10-08 22:01:05 -07:00
Paul Cornett
5d3d6135e0 Fix wxRenderer for GTK+2 with wxGCDC created from wxMemoryDC
See #18242
2018-10-08 21:47:46 -07:00
Paul Cornett
de1322a02d Fix DrawItemSelectionRect() for focused state 2018-08-11 11:51:49 -07:00
Paul Cornett
102be6a3cc Add GtkStyleContext helper class
Manages ownership of GtkStyleContext and GtkWidgetPath, provides functions
for creating and querying style contexts.
2018-06-05 09:21:25 -07:00
Vadim Zeitlin
c0b0562533 Avoid many -Wparentheses warnings from gtk/gtk.h with gcc8
Add wx/gtk/private/wrapgtk.h wrapping gtk/gtk.h in pragmas disabling
these warnings and include it everywhere instead of directly including
gtk/gtk.h.

Also include wx/gtk/private/gtk2-compat.h from this wrapper header as it
was included by 90% of the files including gtk/gtk.h itself and it seems
to be better and simpler to just always include it.
2018-05-21 12:34:04 +02:00
Paul Cornett
48e6a0c851 Fix drawing header buttons with GTK3 renderer on GTK+ >= 3.20
Lines between columns were missing with default Adwaita theme
2016-12-11 23:25:45 -08:00
Paul Cornett
38246b96a4 Improve appearance of tree item button with GTK3 renderer 2016-12-11 10:54:56 -08:00
Paul Cornett
c5adf1f854 Fix drawing of splitter sash with GTK3 renderer 2016-12-11 09:16:15 -08:00
Paul Cornett
c2b9f650e4 Improve appearance of text control with GTK3 renderer 2016-12-10 21:52:05 -08:00
Paul Cornett
e627970ba6 Fix rendering of check and radio buttons with GTK+ >= 3.20 2016-12-10 21:49:06 -08:00
Paul Cornett
49361b6bb8 Improve appearance of header button with GTK3 renderer
Remove the mysterious insetting by 4. Where that came from I don't know,
but it makes the button look stupid
2016-12-10 18:53:57 -08:00
Vadim Zeitlin
857a8a1ba1 Don't assert in wxRenderer::GetHeaderButtonMargin()
Even if we don't have any way to determine the real margin, don't assert in
this method implementation in wxGTK and wxOSX, but just return 0 instead.

This fixes asserts when trying to fit a column of wxDataViewCtrl, by double
clicking a separator after it, to its contents.

See #13685.
2016-06-16 17:26:38 +02:00
Paul Cornett
ed817dd366 Fix drawing checkbox and radiobutton in checked state with GTK+ >= 3.14, see #17240 2015-11-01 19:46:01 -08:00
Paul Cornett
8b4ae731d3 use wxOVERRIDE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 00:02:23 +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
Paul Cornett
295683b22f add GTK3 implementations for remaining renderer functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 06:32:51 +00:00
Paul Cornett
3cc638ed7f add GTK3-specific code for DrawItemSelectionRect(), fixes drawing selected tree control item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 17:43:34 +00:00
Paul Cornett
9dc44eff02 support for GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 20:39:06 +00:00
Vadim Zeitlin
345c78ca5f Use wxDynamicCast() instead of IsKindOf() checks.
wxDynamicCast() is less verbose (due to the absence of "CLASSINFO") and more
compatible with the standard dynamic_cast<>, so prefer to use it when possible.

See #14356.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-01 11:01:18 +00:00
Paul Cornett
5ede3d24c8 position expander in center of given rectangle
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-12 16:50:37 +00:00
Paul Cornett
385e8575dd avoid deprecated functions and direct struct access
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-28 06:27:49 +00:00
Dimitri Schoolwerth
4c51a665c6 Fixed various typos.
Applied patch by snowleopard2 fixing a bunch of typos such as misspellings and double words in the documentation. Combined the patch with some local queued typos waiting to be committed as well as adding new typo fixes inspired by the patch.

Function names with American spelling were not changed nor was third-party code touched. The only code changes involve some changes in strings that are translated ("Can not" -> "Cannot").

Closes #13063 (again).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-22 14:17:38 +00:00
Václav Slavík
9aebcb5e44 Add wxRenderer::GetHeaderButtonMargin().
Used for best size calculations of column width.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-30 15:57:32 +00:00
Robert Roebling
e78778c8e2 Add ability to render checkbox in undeterminate state, fixes #12290: wxRendererGTK does not support wx.CONTROL_UNDETERMINED for checkboxes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-29 16:57:09 +00:00
Vadim Zeitlin
526954c596 Globally use "wxWindows licence" consistently.
Use "wxWindows licence" and not "wxWidgets licence" (the latter doesn't
exist) and consistently spell "licence" using British spelling.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:13 +00:00
Vadim Zeitlin
c70ad28733 Don't use tree style to draw focus in DrawItemSelectionRect() in wxGTK.
Using gtk_paint_focus() with a tree widget style did a clearly wrong thing
with Clearlooks theme: instead of drawing a focus rectangle it drew a
background with a shadow overflowing the specified rectangle. This resulted in
junk being left when the selection was changing in wx{List,Tree}Ctrl.

Just use the widgets own style instead as this seems to work just fine. After
this change the code for focus drawing in DrawItemSelectionRect() became
identical to the code of DrawFocusRect() so just call the latter from the
former instead of duplicating its code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-11 10:43:39 +00:00
Vadim Zeitlin
6e6b532c1a Rename wxRendererNative::DrawRadioButton() to DrawRadioBitmap().
This old name function conflicted with the one in wxRenderer in wxUniv and
also was misleading as this function draws only a bitmap and not the entire
wxRadioButton control.

The old workaround for the warnings about the function names conflict was ugly
and unmaintainable, as proven by the fact that wxRenderer method signature
already became different from the wxRendererNative one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-20 00:44:22 +00:00
Francesco Montorsi
191e43fd02 revert r59246; the window parameter was there by purpose (i.e. for consistency with other Get* methods -- even if unused); document what the win parameter does in the various wxRenderer::Get* methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-02 20:09:10 +00:00
Francesco Montorsi
92c32bbee7 deprecated GetCheckBoxSize(wxWindow *) in favour of GetCheckBoxSize() const (the window parameter was unused and not documented)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-01 16:46:49 +00:00
Kevin Ollivier
a2ee194587 Restore DrawRadioButton to the main wxRenderer API, create a method overload for the wxUniv API so that it can coexist with the wxUniv method of the same name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-12 01:06:53 +00:00
Vadim Zeitlin
99c4be6806 rename wxRendererNative::DrawRadioButton() to DrawOptionButton() to avoid conflict with wxUniv function with the same name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-28 13:55:51 +00:00
Francesco Montorsi
b162ccca03 suppress warning about unused win pointer when wxUSE_GRAPHICS_CONTEXT==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-26 18:57:00 +00:00
Robert Roebling
1c1e6b5b50 Don't pretend to be a GtkTreeView where it isn't required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-23 23:40:48 +00:00
Robert Roebling
981a80493a Tried hard to get the selection/focus rectangle drawn right. The GTK+ theme API is beyond repair.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-23 11:37:54 +00:00
Robert Roebling
6f91f3a333 Further header button details
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 14:28:07 +00:00
Robert Roebling
b047e876e0 Further attempts at getting the header buttons right
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 14:09:32 +00:00
Robert Roebling
09e72468cf Use wxCONTROL_SPECIAL to denote first header button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-22 13:53:42 +00:00
Paul Cornett
d81b2f54cc don't use m_backing_window, it can't be drawn on
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-21 16:58:06 +00:00
Kevin Ollivier
02f07b1980 Restore fixes needed for wxRenderer functions to work with wxGCDC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-20 17:37:00 +00:00
Paul Cornett
7e71773004 fix build, remove unused parameter from wxGetGdkWindowForDC()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-13 18:56:25 +00:00
Kevin Ollivier
e413198572 Forward port new wxRenderer methods in 2.8 to trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-13 17:36:27 +00:00
Vadim Zeitlin
e8759560f8 add wxRenderer::GetCheckBoxSize(); refactor wxGTK code to avoid duplication (#9642)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-02 21:51:22 +00:00