Commit Graph

812 Commits

Author SHA1 Message Date
Vadim Zeitlin
afbf46a317 Implement wxNotificationMessage using libnotify in wxGTK.
Use libnotify -- if detected by configure -- to provide native notifications
in wxGTK. Our API maps to libnotify one in rather straightforward way, we
might consider extending it to cover more of libnotify functionality
(categories, user-defined icons and, especially, actions) later.

Also update the dialogs sample to show another kind of notification and the
documentation to clarify the behaviour of various methods.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-27 15:36:54 +00:00
Vadim Zeitlin
7ce6da52a1 Extract OS X non-GUI event loop in a separate header.
This will allow its reuse from non-wxOSX ports, e.g. wxGTK under OS X.

Closes #14519.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-24 20:45:43 +00:00
Robin Dunn
508bd1654f Install the wx/gtk/dc.h header file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-24 19:12:39 +00:00
Vadim Zeitlin
eff9d7f55a Use wxGTK platform-specific files in wxAdv under OS X.
Closes #14501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-23 15:03:15 +00:00
Vadim Zeitlin
5146904d0f Refactor wxMSW helper functions to allow reuse in wxGTK.
Extract wxMSW-specific part of src/msw/utilsgui.cpp into a new
src/msw/utilswin.cpp file to allow reuse the rest of the former file in wxGTK.

Closes #14424.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-14 20:11:04 +00:00
Vadim Zeitlin
e27f554012 Use the same console event loop in wxBase and wxCore in wxMSW.
Refactor the console event loop code into separate files to untangle it from
the GUI version and ensure that it doesn't depend on the GUI at all. It can
now be defined in the base library and simply reused by the core one.

This also makes the console event loop usable for other ports under Windows,
e.g. wxGTK.

Closes #14426.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-10 23:52:00 +00:00
Vadim Zeitlin
37e8713ee4 Fix problem with most of wxGTK headers not being installed.
GTK2_HDR should also include all the version-independent wxGTK headers.

Closes #14455.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-04 11:45:38 +00:00
Paul Cornett
efaad1f079 remove some unused files from GTK3 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-01 19:10:38 +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
26cdd42d2c Define wxEntry() with WinMain-compatible signature for all Windows ports.
Make wxEntry(HINSTANCE, ...) available in wxGTK under Windows too.

Refactor the headers to allow this and extract Windows-specific wxEntry()
declarations in wx/msw/init.h from wx/msw/app.h for consistency with the
normal wxEntry(int, char**) declared in wx/init.h.

Closes #14423.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 16:33:28 +00:00
Vadim Zeitlin
3dd3049516 Only use Unix/X11-specific files under Unix in wxGTK.
No real changes for now, this is another commit in preparation for wxGTK under
MSW support.

Closes #14394.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-12 21:42:15 +00:00
Vadim Zeitlin
ffa7b75018 Remove private headers from files.bkl.
Private headers are not supposed to be installed because they are only use
when building wxWidgets itself, so don't list them in files.bkl.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 12:29:44 +00:00
Vadim Zeitlin
fcb9299bda Move include/wx/osx/private/objcid.h to include/wx/osx/core.
This header is used by public headers and hence is not really private, move it
to a better place and add it to the list of OSX headers in the bakefile.

Closes #14339.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-26 12:29:39 +00:00
Vadim Zeitlin
0302691e86 Use GTK-based wxWebView when using GTK+, not under Unix.
Test for the GTK+ toolkit, not Unix platform to determine whether GTK+
wxWebView version should be used.

Closes #14273.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-04 20:35:33 +00:00
Vadim Zeitlin
65a2074e9c Remove setup0.h files from the list of headers in bakefile.
These headers don't exist in official distributions as they're renamed to
setup.h in them. Moreover, they don't need to be installed anyhow when using
configure as the real setup.h is installed specially, so there is no real need
to have them in the list of headers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-29 23:17:26 +00:00
Vadim Zeitlin
069358b7cc Implement native tab art for wxAUI in wxGTK.
Use native wxAuiTabArt implementation in wxGTK, it better conforms to the
system style.

Closes #14098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-25 17:56:04 +00:00
Vadim Zeitlin
4758baf5eb Refactor wxAUI: extract wxAuiTabArt in a separate file.
No real changes, just extract wxAuiTabArt into its own file. Also rename
wxAuiDefaultTabArt to wxAuiSimpleTabArt in preparation for having other tab
art classes as the default one.

See #14098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-25 17:55:59 +00:00
Vadim Zeitlin
0e1f8ea4a3 Remove wxMGL port.
The company behind MGL toolkit (SciTech) doesn't exist since several years and
this port is not used by anybody, so remove it to ease maintenance burden.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 14:46:41 +00:00
Vadim Zeitlin
bd362275b8 Remove Palm OS port.
The platform targeted by this port doesn't exist any more and the port never
achieved really working state so remove the code to avoid having to maintain
it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 01:05:28 +00:00
Vadim Zeitlin
fceac6bbfe Provide native implementation of wx{Date,Time}PickerCtrl for wxOSX/Cocoa.
Use NSDatePicker to implement both of these controls. Almost all of
wxDatePickerCtrl styles are not supported in the native version but the basic
functionality does work and looks much better than the generic version (which
is still available as wxDatePickerCtrlGeneric if needed) under Mac.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-20 21:27:14 +00:00
Vadim Zeitlin
c28a4e5fa5 Rename src/generic/timectrl.cpp to timectrlg.cpp.
We can't use the same names for these files with VC6, it doesn't support this
and the project can't be built because of the output object file names
conflict.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-12 14:01:23 +00:00
Vadim Zeitlin
00405b6c68 Rename src/generic/richtooltip.cpp to src/generic/richtooltipg.cpp.
This avoids object file name conflict with src/msw/richtooltip.cpp when using
VC6.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:56:44 +00:00
Vadim Zeitlin
59068d79f7 Extracted private GetTimeZone() to public wxGetTimeZone() function.
Created new wx/time.h header for this function, more time-related functions
will be added to it later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:19 +00:00
Vadim Zeitlin
d8991cbffe Include webview library headers in the list of all headers.
Due to a typo in files.bkl (${...} was used instead of $(...) so the variable
didn't get really dereferenced), the web view headers were not included in the
list of all headers and hence not installed by "make install" under Unix.

Closes #13690.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:49:48 +00:00
Vadim Zeitlin
58cc15871d Add wxEventFilter and related functionality.
Allow defining event filters to globally pre-process all application events
without having to override wxApp::FilterEvent().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-22 13:18:50 +00:00
Vadim Zeitlin
05f4dfa726 Add wx/datetimectrl.h to the wxAdv files list.
Ensure that this header is installed by "make install" as it ought to.

Close #13529.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:19:51 +00:00
Vadim Zeitlin
e520c3f75c Added wxRichToolTip class.
It can be used to show more customizable tooltips than the native wxToolTip
but at the price of using generic implementation in some cases (actually
almost always now, with the exceptions of text control tooltips under MSW).

Extra features include:
 - The balloon-like tooltip form.
 - Possibility to show an icon.
 - Title display in a different form.

More customization could be added later. It should be also possible to fully
implement this class natively under MSW.

Update the dialogs sample to show the rich tooltips in action.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-18 21:57:02 +00:00
Vadim Zeitlin
a82afab363 Implement SetShape() for wxPopupWindow in wxGTK.
Move SetShape() implementation from wxTopLevelWindow to wxNonOwnedWindow so
that wxPopupWindow, which also inherits from the latter, could use it as well.

This makes it possible to have popup windows with irregular shapes in wxGTK as
well as in wxMSW and wxOSX.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-13 12:45:56 +00:00
Vadim Zeitlin
bbcf2821a1 Move SetBackgroundBitmap() from wxPanel to new wxCustomBackgroundWindow.
wxCustomBackgroundWindow is a new class allowing to set a custom bitmap for
the background of any window. The relevant code was mostly moved from wxPanel
to which it was added only recently (before 2.9.2) making it unnecessary to
preserve compatibility.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-11 17:07:43 +00:00
Vadim Zeitlin
5bd0ee9966 Move wxTopLevelWindow::SetShape() down to wxNonOwnedWindow.
Also add wxNonOwnedWindow for wxMSW (which previously simply typedef'd it to
wxWindow) and document this class now that it provides some user-visible
functionality.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-10 10:53:23 +00:00
Vadim Zeitlin
6b9103c67b Added XRC handler for wxTimePickerCtrl.
Add a trivial handler modeled after the existing wxDateCtrlXmlHandler.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-29 13:43:23 +00:00
Vadim Zeitlin
569c7d8ccb Add wxTimePickerCtrl class.
Implement wxTimePickerCtrl natively for MSW and add a generic implementation
(very loosely based on the original class by Paul Breen) for the other
platforms.

Also update the calendar sample to show the new control.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-29 13:43:15 +00:00
Vadim Zeitlin
8957e55ed3 Refactor wxDatePickerCtrl to derive from wxDateTimePickerCtrl.
No real changes, just refactor wxMSW wxDatePickerCtrl to allow sharing code
with the upcoming wxTimePickerCtrl class. Even less changes for the other
platforms where wxDateTimePickerCtrl is trivial.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-29 13:43:02 +00:00
Steve Lamerton
1d156af324 Merge in from trunk r68684 - r69046
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@69047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-10 15:09:22 +00:00
Vadim Zeitlin
d6397a9f35 Add persistence support for wxSplitterWindow.
New wxPersistentSplitter class allows to easily save and restore the splitter
position in config.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-04 23:01:45 +00:00
Vadim Zeitlin
524cb04066 Add new wxTreeListCtrl class.
This is a facade for wxDataViewCtrl allowing to easily work with multi-column
trees, possibly with an optional checkbox in the first column. Its API is very
similar to wxTreeListCtrl and it provides a simple migration path from the
latter.

Add the class itself, documentation for it and minimal unit tests.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-27 14:11:03 +00:00
Dimitri Schoolwerth
f4308cf55f Fixed buttons having no border in wxUniv by default.
Buttons had a border of wxBORDER_NONE resulting in wxButton::DoDraw not drawing the button's border. Fixed by adding wxAnyButton::GetDefaultBorder() for wxUniv which returns wxBORDER_STATIC. Regression since r67931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-25 23:09:00 +00:00
Vadim Zeitlin
ae2047c32a Add XRC handler for wxBannerWindow and a test for it to the xrc sample.
Also document the new XRC format elements.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-22 12:18:56 +00:00
Vadim Zeitlin
ea11bf3abc Add new wxBannerWindow class.
A simple banner showing either a bitmap or some text on gradient background.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-22 12:18:43 +00:00
Vadim Zeitlin
87df1c87e2 Refactor: replace wxTreeItemId and wxDataViewItem with new wxItemId<>.
Add wxItemId<> template which can be used to identify items in different
{tree,list}-like controls, including wxDataViewCtrl (where it replaces, in
backwards compatible way, wxDataViewItem), wxTreeCtrl (where it replaces
wxTreeItemId) and the upcoming wxTreeListCtrl.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-21 14:08:56 +00:00
Vadim Zeitlin
abfdefede3 Add wxWithImages helper mix-in with {Set,Get,Assign}ImageList() methods.
Avoid defining SetImageList() in several different places in wx API as not
only this resulted in (trivial) code duplication but this method also had
different semantics before: it didn't take ownership of the pointer passed to
it in wxTreeCtrl, wxListCtrl and wxBookCtrl and derived classes but did take
its ownership in wxDataViewTreeCtrl and wxRichTextFormattingDialog.

Harmonize this for all the classes now: SetImageList() never takes ownership
while AssignImageList() (which is now available in all classes having
SetImageList()) always does.

Also add convenience wxWithImages::GetImage() helper to avoid (more) code
duplication in wxDataViewTreeCtrl code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-21 14:08:43 +00:00
Steve Lamerton
467d261e9d Rename web library to webview.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-19 10:45:16 +00:00
Steve Lamerton
6b366b9929 Update bakefile for new header names.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-15 12:37:05 +00:00
Steve Lamerton
9f72fa7c2d Add missing bakefile from previous commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-14 12:25:44 +00:00
Steve Lamerton
eafdb19c44 Split wxWebHistoryItem headers out into separate files for each backend. This will allow us to dramatically reduce the amount of code in the GTK history implementation and implement it and OSX history support more cleanly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-31 14:06:33 +00:00
Steve Lamerton
9e3d4a3210 Overhaul wxWebHandler naming to try and make it consistent with the rest of wxWidgets. Split wxWebFileHandler into its own file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 14:22:15 +00:00
Steve Lamerton
906c935a80 Merge in from trunk r67662 to r64801
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-25 16:54:53 +00:00
Vadim Zeitlin
b4354db179 Refactor wxButton and wxToggleButton to derive from wxAnyButton.
Introduce wxAnyButton class, a common base class for wxButton and
wxToggleButton, allowing to reuse the same implementation for them.

This also allows to implement support for bitmaps in wxToggleButton for all
platforms and make wxBitmapToggleButton a trivial subclass of it everywhere,
similarly to wxBitmapButton and wxButton.

Closes #13198.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-14 13:00:42 +00:00
Vadim Zeitlin
218697e27b Don't use native MSW wxHyperlinkCtrl implementation in wxUniv.
Move src/msw/hyperlink.cpp and include/wx/msw/hyperlink.h to
ADVANCED_MSW_NATIVE_SRC/HDR from ADVANCED_MSW_SRC/HDR respectively to ensure
that these files are not used in wxUniv build that uses its own, generic,
versions.

This should fix wxUniv/MSW build as the native files didn't even compile with
wxUniv.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-23 15:26:42 +00:00
Steve Lamerton
8290e3cd91 Rename source files for consistency
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@67755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-16 20:49:54 +00:00