Commit Graph

16685 Commits

Author SHA1 Message Date
Artur Wieczorek
7399fb3428 Optimize wxGenericColourDialog
Variable to hold the size of the custom colour box doesn't need to be a member variable since it's used only locally in wxGenericColourDialog::CalculateMeasurements.
2015-11-02 23:19:09 +01:00
Bryan Petty
0b2263c25d Updated links and mailing list addresses. 2015-10-30 20:06:09 -06:00
Vadim Zeitlin
04a784dfd3 Hide wxSlider labels too when it's hidden in wxOSX
Derive wxSlider from wxCompositeWindow to ensure that Show() (and other
methods) affect the slider labels as well.

Closes #2388.
2015-10-25 18:47:29 +01:00
Vadim Zeitlin
ce3dab46c1 Remove unused headers from wx/osx/slider.h
wx/control.h is already included from wx/slider.h so including it from here is
useless and including wx/slider.h is even worse as it's very confusing because
this header itself is already included from wx/slider.h.

No real changes.
2015-10-25 18:36:39 +01:00
Vadim Zeitlin
065c7b34eb Remove unused wx/osx/treectrl.h
This file is not included anywhere and doesn't seem to be used.
2015-10-25 18:33:06 +01:00
Vadim Zeitlin
a5e36d3124 Remove unused png{hand,read}.h files from wxOSX
These files don't seem to be used anywhere.
2015-10-25 18:31:33 +01:00
Vadim Zeitlin
98bd4f1936 Remove unused helpxxxx.{h,cpp} stub files from wxOSX
These files seem to be left overs from a long, long time ago.
2015-10-25 18:29:47 +01:00
Vadim Zeitlin
3f33ecc773 No changes, just remove redundant "inline" from wxOSX headers
There is no need for them in the methods declared in the class declaration
anyhow, so just remove them.

No real changes.
2015-10-25 18:20:32 +01:00
Vadim Zeitlin
e9b379fe2a Fix TAB navigation inside wxStaticBox in wxOSX
Derive wxStaticBox from wxStaticBoxBase for consistency with the other ports
and to make it derive from wxNavigationEnabled<>, which is necessary for TAB
navigation to work.

Closes #3842.
2015-10-25 18:13:59 +01:00
Tim Stahlhut
fb5d1a002c Fixes for wxQt build under Cygwin
Include the missing headers, notable QtGui/QFont from wx/fontutil.h which uses
a QFont object.

Closes #16750.
2015-10-25 18:00:05 +01:00
Vadim Zeitlin
db966da330 Use explicit dllexport attribute for g++ 4.7 and later
The bug that resulted in creating huge DLLs that took inordinate amounts of
memory and time to link with g++ 4.5 has been fixed in 4.7, so don't export
everything when using it, as this results in even smaller DLLs.

The situation with 4.6 is unknown, so leave behaviour with it unchanged.

See 49d2c0adc3
2015-10-25 13:42:23 +01:00
Vadim Zeitlin
9c1bc3c019 Define LVS_EX_DOUBLEBUFFER ourselves if SDK headers don't do it
This should fix compilation with MinGW after the changes of
2a6e411887 which started using this style.

See #17177.
2015-10-25 13:36:25 +01:00
Andreas Falkenhahn
d45ba8ce62 Add wxTE_{RIGHT,CENTER} support for multiline wxTextCtrl in wxOSX
Just use -[NSTextView setAlignment].

Closes #13702.
2015-10-22 00:06:45 +02:00
Vadim Zeitlin
5e29b26d9e Preserve Win32 last error in wxTlsKey::Get()
::TlsGetValue() resets the last error code which means that the previous last
error is lost, but it shouldn't as we might be in the middle of logging it
with wxLogSysError(). So preserve the last error explicitly.

Closes #17209.
2015-10-16 20:20:42 +02:00
John Roberts
b9b9a30bc7 Don't rely on getting PAGE_CHANGED event in wxOSX wxNotebook
The user code may handle this event, meaning that its handler in wxNotebook
itself is never invoked, but this broke actually changing the pages.

Fix this by doing the page change in the code handling the underlying OS X
event directly.

Closes #17197.
2015-10-13 14:34:02 +02:00
Andreas Falkenhahn
9dd48eab61 Fix wxDataViewCtrl compilation when wxUSE_SPINCTRL==0
Just don't define wxDataViewSpinRenderer in this case.
2015-10-11 17:07:15 +02:00
Vadim Zeitlin
154ebfd1d9 Rename wxBoxSizer::m_minSize to avoid clash with the base class
wxSizer already has m_minSize field, use m_calculatedMinSize for the field of
the derived wxBoxSizer class to avoid confusion, just as wxFlexGridSizer
already did.

Also add a new unit test checking that GetMinSize() still works after this
change.
2015-10-11 01:00:38 +02:00
Paul Cornett
a0173ec13e add compatibility header for older GTK3 versions 2015-10-10 11:38:06 -07:00
Václav Slavík
ec510a0c4b Even more workaround for clang warnings about typeid() side effects.
Even after 5aae7c7387 and
d2c1fce24e clang would still emit the
warning in code using templates via
WX_DECLARE_ANY_VALUE_TYPE(wxAnyValueTypeImpl<T>).

Silence the warning by putting the typeid() expressions into a trivial
helper function with two wxAnyValueType reference arguments, so the
class the macro is used in doesn't come into play (it shouldn't in the
previous version of the code either, but clang apparently thought it
did).

Hopefully really closes #16968.
2015-10-10 09:51:47 +02:00
Vadim Zeitlin
cb83c4e0de Fix wxStandardPaths compilation with gcc after recent changes
Forward declare struct _GUID to allow referencing it in this header without
including the full <windows.h> or even <guiddef.h>.

This fixes compilation with gcc after the changes of
a0fb808087

Closes https://github.com/wxWidgets/wxWidgets/pull/108
2015-10-05 00:50:01 +02:00
Tobias Taschner
4ac0250f90 Fix cell selection drawing in wxDVC on MSW with system theme
Keyboard focus rect when selecting a column was nearly invisible against the
light background. Now the correct theme parts are used when drawing with UX
theme and the old behavior (white focus rect) is used everywhere else.

See #16414
2015-10-04 01:13:27 +02:00
Tobias Taschner
0938141f3e Add Cocoa implementation of wxStandardPaths
Previously wxStandardPathsCF was used for all Mac builds and it used
FSFindFolder() (CoreFoundation) calls in Carbon builds, but many hard coded
values in Cocoa builds. The Cocoa implementation uses NSFileManager and
NSBundle to retrieve the folder locations from the system.

Closes https://github.com/wxWidgets/wxWidgets/pull/89
2015-10-04 01:05:57 +02:00
Tobias Taschner
a0fb808087 Add wxStandardPaths::GetUserDir() to get Desktop, Download etc
All major supported platforms have well defined per-user directories to store
Downloads, Music, Pictures, Videos and the Desktop files. The new method
wxStandardPaths::GetUserDir() allows for a unified way to access these on MSW,
OS X and Unix (if XDG user dirs specification is implemented for the latter).

See https://github.com/wxWidgets/wxWidgets/pull/89
2015-10-04 01:05:23 +02:00
Vadim Zeitlin
02942c1b14 Merge branch 'prewinxp_cleanup' of https://github.com/TcT2k/wxWidgets
Remove the code checking for Windows versions < XP and update the documention
to not mention them any more neither.

Closes https://github.com/wxWidgets/wxWidgets/pull/82
2015-10-04 00:54:05 +02:00
Vadim Zeitlin
de96b0dae7 Implement native wxAuiTabArt for MSW
This wxAuiTabArt implementation uses Windows uxtheme API to draw AUI tabs. A
fallback to generic tab art is implemented for the bottom tabs or if uxtheme
is not available (disabled by user or no manifest file).

Closes https://github.com/wxWidgets/wxWidgets/pull/105
2015-10-04 00:28:00 +02:00
Tobias Taschner
1a8bcd4d88 Add support for mouse hover state to wxAuiTabArt
This allows wxAuiNotebook to support drawing its tabs differently depending on
whether the mouse is hovering above them or not.

See https://github.com/wxWidgets/wxWidgets/pull/105
2015-10-04 00:27:22 +02:00
Tobias Taschner
44bcc3a723 Add ellipsizeMode parameter to wxRenderNative::DrawItemText()
Instead of the default end ellipsize mode used in the native and generic
implementation, allow specifying the mode with an additional parameter.

Closes https://github.com/wxWidgets/wxWidgets/pull/97
2015-09-28 15:34:08 +02:00
Vadim Zeitlin
9add303f76 Move wxEllipsize{Flags,Mode} to wx/gdicmn.h
This will allow using these constants from other headers without having to
include wx/control.h.

See https://github.com/wxWidgets/wxWidgets/pull/97
2015-09-28 15:23:13 +02:00
Tobias Taschner
6973f13cd1 Remove wxApp::GetShell32Version().
This method was only used for checks for Windows 9x versions of shell32.

See ticket: #17120
2015-09-27 19:08:14 +02:00
Vadim Zeitlin
31473d5ff9 Build fix after removing DOS checks
After removing the "#if ...DOS...", the following #elif also must be adjusted.

See https://github.com/wxWidgets/wxWidgets/pull/100
2015-09-24 15:12:19 +02:00
Tobias Taschner
2eccc1a57d Remove remaining MSDOS support code
The remaining DOS source files where already removed in
26a0a24f38. This removes the remaining __DOS__
and __DJGPP__ (the DOS gcc) code paths.

Closes https://github.com/wxWidgets/wxWidgets/pull/100
2015-09-24 14:38:22 +02:00
Vadim Zeitlin
854fce33a7 Don't disable wxUSE_CRASHREPORT in Win64 builds
Creating minidumps works in 64 bit builds since quite some time (see
603c73dbba), so there is no reason to forcefully
disable it any more.

Closes #17162.
2015-09-24 14:35:00 +02:00
Vadim Zeitlin
b0be28dae5 Always include sys/types.h from wx/filefn.h
It looks like the preprocessor checks were meant to avoid including this file
under MacOS 9 and all the other platforms should have it, so it should be safe
to include (although it still doesn't define off_t with MSVC, only _off_t).
2015-09-23 00:56:49 +02:00
Vadim Zeitlin
87baba95b8 Remove last traces of Symantec compiler support
Delete a couple of leftover __SYMANTEC__ checks.
2015-09-23 00:54:20 +02:00
Vadim Zeitlin
1e20b249bf Use DLL declarations consistently for wxCollapsibleHeaderCtrl
Export this class and its base classes (to avoid MSVC warnings about using
non-DLL-exported base classes for a DLL-exported one) from core DLL.
2015-09-23 00:52:42 +02:00
Vadim Zeitlin
8a0dc9ecdb Implement wxCollapsibleHeaderCtrlBase::Create()
This method was declared but not implemented, so do implement it and delegate
to it from wxGenericCollapsibleHeaderCtrl::Create().
2015-09-23 00:52:41 +02:00
Vadim Zeitlin
ac02d331e4 Initialize wxHtmlSelectionState::m_bgMode in ctor
Don't leave the variable uninitialized to avoid warnings from static code
analyzer and to ensure that it is never used before being initialized (while
this does seem to be the case already, it's not exactly obvious).
2015-09-23 00:52:40 +02:00
Vadim Zeitlin
dfb60af47f Disable check in wxLongLong::ToLong() for LP64 platforms
The check is redundant there as conversion can never fail and just results in
warnings from static code analyzers.
2015-09-23 00:52:33 +02:00
Tobias Taschner
8282c1be0f Remove Windows CE support
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
2015-09-23 00:52:30 +02:00
Vadim Zeitlin
3545e9d778 Disable OLE support if wxDataObject is disabled in wxMSW
wxDataObject is a basic requirement for too many OLE-related things.

See #17159.
2015-09-20 13:52:20 +02:00
Andreas Falkenhahn
e37842419e Add dependency of generic wxDatePickerCtrl on wxComboCtrl
The generic implementation requires wxComboCtrl, so pull it in if
wxDatePickerCtrl is enabled.

Explicitly testing for the platform here is ugly, as it duplicates the checks
in wx/datectrl.h and will get out of date when/if they're changed there, but
there just doesn't seem to be any other way.

See #17159.
2015-09-20 13:51:04 +02:00
Andreas Falkenhahn
bf41f447bf Check for dependency of wxAnimationCtrl on wxStreams
Disable the compilation of wxAnimationCtrl if stream support was disabled,
it's impossible to load animations without it.

See #17159.
2015-09-20 13:50:01 +02:00
VZ
7e6836e9f5 Merge pull request #95 from TcT2k/collpane_enhancement
Improve wxCollapsiblePane appearance

Provide native look under MSW and improve the generic appearance (which is now also used under OS X) as well.
2015-09-19 19:49:15 +02:00
Tobias Taschner
d35e102007 Remove private wxDisclosureTriangle control.
Remove the private and undocumented control and it's usage in wxGenericCollapsiblePane. The class used a low resolution bitmap which looks bad on high resolution displays. The generic implementation using wxRendererNative::DrawCollapseButton() is better fit even on OS X.
2015-09-19 17:30:33 +02:00
Tobias Taschner
df24d925df Add wxCollapsibleHeaderCtrl widget.
This simple class has a collapsed state which is indicated by a small button and a label. It is now used in the generic implementation of wxCollapsiblePane.

It could be used in more complex layouts than wxCollapsiblePane and is therefore available and documented to the user.
2015-09-19 17:30:32 +02:00
Vadim Zeitlin
e563066c76 Avoid gcc -Wstrict-alias=2 warnings in wxAny
While wxWidgets itself is compiled with -fno-strict-aliasing, the user code
including wx headers can be compiled without it and, worse, even with
-Wstrict-aliasing=2 which would give tons of warnings (two for each
instantiation of the template class) of possibly breaking strict aliasing rule.

Fix this by using a union to cast between two pointers of different types
instead of using a reinterpret cast.
2015-09-19 03:25:57 +02:00
Tobias Taschner
ef5ff89008 Add wxRendererNative::DrawCollapseButton() for use in collapsible pane like controls.
Add a new method that should be used for controls like wxCollapsiblePane.

It is implemented natively for wxMSW (Windows Vista+) and provides a generic fallback for other ports and WinXP.
2015-09-19 00:06:42 +02:00
Tobias Taschner
2fff3cd29f Add wxSystemThemedControl and use it in wxMSW
wxSystemThemedControl allows to use the "system theme" (i.e. the theme used by
the system applications such as file manager and which can, surprisingly, be
different from the default one). Currently it is only implemented for wxMSW
and does nothing under the other platforms.

Use wxSystemThemedControl for wxDataViewCtrl, wxListCtrl and, optionally, if
wxTR_TWIST_BUTTONS style is specified, wxTreeCtrl to give them more native
appearance under MSW.

Closes #16414.
2015-09-17 14:49:13 +02:00
Tobias Taschner
b7a89f8746 Add wxRendererNative::DrawItemText() for list-like controls
Add a new method that should be used for drawing the elements of list-like
controls (i.e. wx{List,Tree,DataView}Ctrl and similar).

Implement it for wxMSW natively and provide a straightforward generic fallback
for the other ports.

See #16414.
2015-09-17 14:49:13 +02:00
Artur Wieczorek
865c8565af Fixed setting colours of wxSlider and wxRadioBox in wxMSW.
Sibling windows (like labels and radio buttons) need to be explicitly
refreshed when foreground or background colour is changed. This is implemented
by invoking newly implemented method wxSubwindows::Refresh every time the
colour of the control is changed.

Note: Setting foreground colour of wxRadioBox still doesn't work correctly
when themes are enabled.

Closes #17142.
2015-09-12 03:01:30 +02:00