Commit Graph

108 Commits

Author SHA1 Message Date
iwbnwif
a7fe78eda8 Implement wxSlider ticks support in wxGTK
Tick marks were not available for wxSlider under GTK+ 2 or GTK+ 3
implementations of wxWidgets. However, tick marks have been available
for the GtkScale widget since GTK+ 2 version 2.16.

This change adds similar functionality in relation to tick marks
as was already available in wxMSW builds.

Closes https://github.com/wxWidgets/wxWidgets/pull/1355
2019-07-07 17:04:55 +02: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
Vadim Zeitlin
7a8684a8bd Add RAII wrapper for GTKDisableEvents/GTKEnableEvents() calls
Ensure GTKEnableEvents() is called automatically on scope exit whenever
GTKDisableEvents() is called.

This fixes a couple of potential bugs where GTKEnableEvents() could be not
called if wxCHECK() condition failed and makes the code shorter and safer.
2016-02-06 19:13:35 +01:00
Paul Cornett
8f97969383 add missing GTK3 implementations of GTKGetWindow()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-09 19:53:17 +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
ce7fe42e84 Provide shorter synonyms for wxEVT_XXX constants.
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).

The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.

Closes #10661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Paul Cornett
1897abe1d8 avoid functions deprecated in GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-25 03:41:42 +00:00
Paul Cornett
7fff16b863 Simplify GetDefaultAttributesFromGTKWidget() by passing the widget to use,
rather than a pointer to a function to create the widget


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-25 02:23:34 +00:00
Paul Cornett
907f5902b3 fix object referencing with wxSL_MIN_MAX_LABELS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-19 02:29:24 +00:00
Paul Cornett
8ab7533289 Disconnect all GTK signals referencing a wx object which is being destructed
or which is destroying the associated GTK object


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-17 16:23:18 +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
Paul Cornett
78f89f920d remove unnecessary gtk_widget_show(m_widget) calls, PostCreation() takes care of that
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-29 18:29:31 +00:00
Paul Cornett
ba9eca1aef make sure value label updates even if handle position does not change, fixes #13042
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-02 22:19:44 +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
Stefan Csomor
2895324520 merging back XTI branch part 2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-04 08:31:53 +00:00
Vadim Zeitlin
c0a9fe92fa Implement support for wxSL_<DIR> in wxGTK, show them better in the sample.
Support wxSL_{LEFT,TOP,RIGHT,BOTTOM} in wxGTL version of wxSlider.

Make the display of the orientations in the slider page of the widgets sample
more clear.

Also document wxSL_<DIR> meaning better.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 23:15:27 +00:00
Vadim Zeitlin
eec4500dca No changes, just removed trailing spaces.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 23:15:14 +00:00
Robert Roebling
f050bdbd5b Hide value label explicitly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 18:56:07 +00:00
Robert Roebling
3312ee03a7 Always position value lable left of a vertical slider
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 16:34:56 +00:00
Robert Roebling
c092ed3828 Implement wxSL_VALUE_LABEL and wxSL_MIN_MAX_LABELS for GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-14 10:58:31 +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
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
Paul Cornett
9ff9d30c0a Hold a reference on m_widget for the life of the associated wxWindow object.
This allows removing some ugly hacks, and leaking of GtkWidgets by wxNotebook.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 16:19:23 +00:00
Robert Roebling
908eeca88d GTK+ doesn't like slider with min=max values
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-30 13:17:35 +00:00
Václav Slavík
937013e0fd 1. added wxEvtHandler::SafelyProcessEvent() and wxWindow::HandleWindowEvent() to correctly handle exceptions in even handlers in wxGTK
2. use HandleWindowEvent() everywhere as more obvious and convenient shortcut for GetEventHandler()->ProcessEvent(); also for consistency with wxGTK where it's required

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-29 17:00:58 +00:00
Vadim Zeitlin
3824e0db33 don't compare initial slider position with uninitialized m_pos (modified patch 1818759)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-23 18:16:06 +00:00
Paul Cornett
1d59165194 remove m_blockScrollEvent from wxWindowGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-14 04:26:33 +00:00
Vadim Zeitlin
e8375af8ff remove wxWindow::m_needParent and use GTKNeedsParent() which can be overridden in just wxMenuBar (and not set in each and every wxGTK control)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-23 15:16:06 +00:00
Paul Cornett
a1abca322f Reorganize idle system code.
Installing idle handler from GTK callbacks is no longer necessary.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-19 16:58:07 +00:00
Vadim Zeitlin
28e88942bc use native TAB traversal for GTK+ 2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-26 19:30:20 +00:00
Paul Cornett
ae765fde7b Don't assert on value change which shouldn't occur, but does. Closes bug 1672671
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-03 18:37:08 +00:00
Paul Cornett
559f60efa8 better fix for keeping m_pos in sync
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-12-03 05:13:00 +00:00
Robin Dunn
f20a4018f4 Keep m_pos in sync in SetValue in case the value_changed callback is
not called, such as when the widget is first created.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-07 22:35:33 +00:00
Vadim Zeitlin
ef5c70f96f Many changes:
- Introduced GTKGetWindow() which returns all GdkWindows associated with the
  given wxWindow
- Renamed IsOwnGtkWindow() to GTKIsOwnWindow() to avoid confusion with the old
  virtual function (the new one is non-virtual and is implemented in terms of
  GTKGetWindow())
- Refactored/simplified event handlers code in gtk/window.cpp
- Fixed some header guards names (__GTKFOO__ -> _WX_GTK_FOO_H_)
- Added GTKUpdateCursor() which sets the current cursor for all windows
  returned by GTKGetWindow()
- Factored out code from many different classes in wxControl::OnInternalIdle()
  which now updates the cursor, checks for internal focus and sends update UI
  events


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-25 12:59:28 +00:00
Mart Raudsepp
98a0564ea6 [wxGTK] Implement wxSlider::GetLineSize and wxSlider::SetLineSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-27 05:32:01 +00:00
Mart Raudsepp
20c3174dd1 Use GTK casts.
Use gtk_range_get_adjustment instead of GtkRange::adjustment - latter is not documented and therefore not public.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-27 05:17:36 +00:00
Włodzimierz Skiba
23f826bdf9 wxRound() workaround to avoid unexpected compile and link errors on incomplete environments (Tinderbox build fix).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-06 09:09:09 +00:00
Paul Cornett
c918b2cda2 use "event-after" signal to send thumb release event
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-06-08 05:16:25 +00:00
Jouk Jansen
cc57f388d7 Updated OpenVMS compile support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-06-02 06:39:13 +00:00
Paul Cornett
cf26ac62e3 threads fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-31 17:22:38 +00:00
Paul Cornett
12a480c12d gtk slider code simplification and better event determination
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-19 16:57:37 +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
Vadim Zeitlin
848332140b moved wxapp_install_idle_handler and g_isIdle from many cpp files into gtk/private.h (patch 1435529)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-09 13:36:53 +00:00
Vadim Zeitlin
46c48053f4 don't leave evtType uninitialized in gtk_slider_callback() (thanks coverity checker)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-07 18:13:11 +00:00
Mart Raudsepp
afa7bd1eef Remove obsolete GTK1 compatibility macros. Patch #1413458 - Paul Cornett
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-03 20:38:55 +00:00
Mart Raudsepp
9fa72bd2a6 Use g_signal* instead of deprecated gtk_signal*. Use proper casts for the arguments.
Worth norting from the GTK+ docs: "For future usage, direct use of the GSignal API is recommended, this avoids
significant performance hits where GtkArg structures have to be converted into GValues."


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-22 23:28:58 +00:00
Mart Raudsepp
68567a967b Nuke GTK1 from src/gtk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-22 20:29:17 +00:00
Vadim Zeitlin
8e3e14c487 also generate wxEVT_SCROLL_CHANGED as under wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-12-24 02:55:03 +00:00
Vadim Zeitlin
2b0246530d determine the slider event type more precisely (i.e. generate LINE/PAGE UP/DOWN and not only THUMBTRACK always) under GTK2 (bug 1377777); also generate THUMBTRACK/RELEASE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-12-24 02:52:25 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00