Commit Graph

506 Commits

Author SHA1 Message Date
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
46ea442ca2 Added wxNonOwnedWindow::SetShape(wxGraphicsPath).
TODO: Document.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-18 21:56:52 +00:00
Vadim Zeitlin
265dd23241 Don't create a valid wxRegion when using default ctor in wxOSX.
Default constructing a wxRegion created an object that unexpectedly passed
IsOk() test in wxOSX. This was completely unexpected so don't do this and
leave default constructed wxRegion invalid, as in the other ports.

Update DoCombine() to be able to deal with the case of an invalid source
region in a way consistent with the other ports.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-18 21:56:40 +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
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
c559c4b3ef Change wxSound ctor from in-memory data to use size_t/void *.
This constructor previously used int and, especially annoyingly, wxByte* for
the data. Use standard void* for untyped binary data instead.

Also document this ctor as it seems to be implemented in all ports.

Closes #13451.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-21 15:08:02 +00:00
Vadim Zeitlin
aadbdd1699 Remove wxHeaderColumn::SetAsSortKey() and only use SetSortOrder().
The two member functions, SetAsSortKey() and SetSortOrder(), were doing almost
the same thing but differently and the former was only used in the generic
wxDataViewCtrl implementation and not implemented in the native GTK/OS X one.

Remove SetAsSortKey() entirely and only keep UnsetAsSortKey() which is still
needed by generic/MSW wxDataViewCtrl. But only SetSortOrder() should now be
called to indicate that the column is used for sorting.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-21 15:07:46 +00:00
Steve Lamerton
9d2f31db0c Update wxWebView guards to stop backend compilation when wxUSE_WEBVIEW is 0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-12 18:35:39 +00:00
Steve Lamerton
d60b34a413 Update setup files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-11 10:15:28 +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
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
Vadim Zeitlin
fa93d732e2 Harmonize wxDataViewCtrl::GetSelection() behaviour in all ports.
wxDataViewCtrl::GetSelection() now always returns invalid item if more than
a single item is selected in a multi-selection control.

Also add HasSelection() and GetSelectedItemsCount() to allow checking if any
items are selected.

Updated the documentation, all ports and added a test for all these functions.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-22 12:41:19 +00:00
Vadim Zeitlin
040050b8f4 Don't export Objective C interfaces in non-x86_64 builds.
Doing this is unnecessary and results in compilation errors in PPC and x86
builds when using old (4.0.1) version of the compiler.

So make WXEXPORT added in r67575 specific to 64 bit builds.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-22 12:38:36 +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
1871b9facb No changes, just use symbolic NO_IMAGE constant instead of -1 or wxNOT_FOUND.
Existing declarations used -1 in several places to indicate the absence of the
image which wasn't especially clear and was also inconsistent with other
places that used wxNOT_FOUND which didn't make much sense in this context.

Add a new symbolic constant NO_IMAGE in wxWithImages and use it in the classes
deriving from it. This still doesn't help with wx{Tree,List}Ctrl but improves
clarity for the other classes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-21 14:08:49 +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
000a9e77b0 Remove a couple of unused forward declarations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-18 13:29:16 +00:00
Steve Lamerton
6849a4b714 Return true by default under OSX WebKit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-17 13:50:01 +00:00
Steve Lamerton
4d0dddc7ad Rename LoadUrl to LoadURL. This corrects the capitalisation as it is an acronym, and brings it into line with GetCurrentURL.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-17 10:55:59 +00:00
Steve Lamerton
e669ddde23 Const correct the wxWebView api.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-17 10:26:09 +00:00
Steve Lamerton
c13d6ac1ea Rename wxWebHistoryItem to wxWebViewHistoryItem.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-15 12:31:31 +00:00
Steve Lamerton
7d8d6163ad Rename wxWebFileHandler to wxWebViewArchiveHandler, wxWebHandler to wxWebViewHandler. Update the documentation and the sample. Add a constructor taking a wxString to specify the scheme in wxWebViewHandler.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-14 12:15:34 +00:00
Steve Lamerton
5e3e62bc6e Add support for custom scheme handling and virtual file systems to the OSX WebKit implementation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-11 18:56:13 +00:00
Stefan Csomor
59cb255555 fixing osx_cocoa, there's a reason m_peer is private in the base class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-11 08:24:26 +00:00
Steve Lamerton
94e0018723 Merge in from trunk r64802 - r68625
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-10 18:10:42 +00:00
Dimitri Schoolwerth
ee7553e935 Added NSApplicationDelegate's openFiles for wxOSX-Cocoa.
openFiles (available since OS X 10.3) replaces using the openFile method. It allows for more convenient handling of multiple drops and knowing in advance how much files/folders are dropped instead of openFile with which you only get to respond to a single file/folder drop at a time. By default openFiles calls the newly added MacOpenFiles which calls MacOpenFile multiple times, so ordinarily the behaviour is backwards compatible (both on wxOSX Cocoa and Carbon).

The openFile instance method has been removed because it doesn't seem to be called anymore: neither when dropping a single file on the application in the dock or Finder nor when passed as a command-line argument.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-09 22:17:12 +00:00
Steve Lamerton
3baf235f60 Use shared pointers to hold wxWebHandlers throughout.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-08 15:12:33 +00:00
Steve Lamerton
94ec73c74c Implement GetSelectedSource for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-06 13:32:40 +00:00
Steve Lamerton
835165d576 Implement SelectAll for OSX WebKit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-06 12:58:26 +00:00
Steve Lamerton
c6ea1fdaf9 Implement GetPageText for the OSX WebKit implementation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-06 12:48:22 +00:00
Steve Lamerton
ef53bf2a7b Implement ClearSelection for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-06 12:20:37 +00:00
Vadim Zeitlin
59f495db65 Implement wxFileType::GetOpenCommand() in wxOSX.
This method used to work in 2.8 but was unimplemented in 2.9.

Restore more or less the old implementation using the data that we already
have in wxMimeTypesManager anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 19:02:26 +00:00
Steve Lamerton
895e112c7c Remove redundant InternalLoadURL method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 18:58:38 +00:00
Steve Lamerton
1f0acb4355 Remove SetPageTitle and GetPageTitle and make GetCurrentTitle actually return the page title.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 18:23:08 +00:00
Steve Lamerton
515fd027c5 Implement GetBackwardHistory, GetForwardHistory and LoadHistoryItem for OSX WebKit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 16:40:46 +00:00
Steve Lamerton
7c36630b57 Add a WebHistory to the OSX WebKit backend and implement ClearHistory.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 13:56:50 +00:00
Steve Lamerton
2f70baea2f Remove now unused GetSelection from the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 13:25:30 +00:00
Steve Lamerton
6368d96506 Add undo / redo support to OSX WebKit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-05 13:17:19 +00:00
Vadim Zeitlin
7112cdd1f3 Add support for wxHELP button to wxMessageDialog.
Implement support for wxHELP for wxMSW, wxGTK and wxOSX/Cocoa (at least when
showing the message box from the main thread, there doesn't seem to be any way
to show more than three buttons with CFUserNotificationDisplayAlert() so
"Help" button is not supported when using it).

This is useful not only on its own, i.e. to allow the user to ask for help,
but also because it brings the total number of buttons supported by the
message dialog to 4, meaning that more choices can be offered to the user
(which is rarely, but not quite never, useful).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-04 22:53:42 +00:00
Steve Lamerton
7bd30a12ad Implement HasSelection for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 09:44:07 +00:00
Steve Lamerton
8ba4faba4d Add EnableHistory support to the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 09:21:47 +00:00
Steve Lamerton
e28cc3ca0a Fix warnings for the OSX WebKit backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 17:57:48 +00:00
Steve Lamerton
fdc255cfe0 Fix compilation for OSX backend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 17:41:14 +00:00
Steve Lamerton
bd7901aaec Add missing lines to setup.h.in. This properly fixes compilation under configure based environments. Also update the include guards for the wxWebHistoryItem files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-01 10:10:20 +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
Vadim Zeitlin
bf8f10225c Get rid of ugly wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST macro.
Replace it with wxWindowWithItems<> template class which takes care of
disambiguating between the two inherited Get/SetClientXXX() versions and use
it as a base class in all clases that previously used the macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:30:08 +00:00
Vadim Zeitlin
c29c95fe24 Resolve ambiguity between GetClientXXX() methods in wxOSX wxComboBox.
Use wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST for wxOSX/Cocoa too, not
only for wxOSX/Carbon. This macro adds methods to explicitly disambiguate
between the two inherited versions of each GetClientXXX() method, the one from
wxItemContainer and the other one from wxEvtHandler.

Closes #11637.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:30:03 +00:00
Steve Lamerton
47943187c1 Tidy up the include guards for the various wxWebView header files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-28 16:58:18 +00:00
Steve Lamerton
eff8f7952e Move the wxWebFileProtocolHandler from the IE backend to the common source, add the RegisterProtocol method to all classes (as a stub in GTK and OSX). Register the file protocol handler in the sample for testing purposes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-28 16:49:48 +00:00