Commit Graph

1718 Commits

Author SHA1 Message Date
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
Vadim Zeitlin
47e2f88166 Avoid unwanted line break in wxDataViewListModel::GetCount() docs.
Using "i.e." in the brief Doxygen comment makes it end it after the second
period and results in truncated brief description and an unwanted line break
in the full description.

Just avoid using periods for now inside the brief description. Maybe a better
solution could be found in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-04 13:19:57 +00:00
Vadim Zeitlin
d6f2b04c72 Remove documentation of non-existent wxTextAttr::CreateFont().
This method doesn't exist (only GetFont() does), so don't document it.

Closes #13372.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-02 19:46:35 +00:00
Vadim Zeitlin
567e5e47ee Improve wxTextCtrl::GetNumberOfLines() unit test and documentation.
First, enable execution of the Lines() wxTextCtrl unit test case under wxOSX
as it passes since the fix in the previous commit.

Do add a test for GetNumberOfLines() that currently doesn't work in the same
way under all platforms -- but with this test we at least can be sure how does
it work exactly where.

Also mention the current discrepancy in this function behaviour in the
documentation.

See #12366.

Fix Lines() wxTextCtrl unit test to pass under wxGTK too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 21:54:15 +00:00
Vadim Zeitlin
75618d57e4 Emphasize that wxStandardPaths must not be created directly.
wxStandardPaths::Get() must be used instead as the correct object to use might
have a different type.

See #11239.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 17:40:00 +00:00
Vadim Zeitlin
6ce832135e Add wxTextCtrl::PositionToCoords() functions for wxMSW and wxGTK.
The new method allows to find the coordinates in pixels of the given character
in a text control.

Closes #13221.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-29 15:11:54 +00:00
Vadim Zeitlin
d298f18ffb Mention wxGTK wxAnimation implementation limitations in the docs.
The native GTK implementation doesn't provide information about the frames
count nor access to individual frames.

See #13365.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-26 21:37:20 +00:00
Vadim Zeitlin
9023040798 Replace wxControlContainer-related macros with wxNavigationEnabled<>.
Simply inherit classes which need to provide TAB navigation among their
children from wxNavigationEnabled<> and remove the now unnecessary
WX_DECLARE_CONTROL_CONTAINER() macros.

Also remove WX_INIT_CONTROL_CONTAINER(), WX_DELEGATE_TO_CONTROL_CONTAINER()
and WX_EVENT_TABLE_CONTROL_CONTAINER() which are not needed neither any more.

And remove the event tables which became empty after removing the last macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:33 +00:00
Vadim Zeitlin
4d98817cfa Add wxNavigationEnabled<> helper for implementing TAB navigation.
Provide a clean, public and documented way to implement proper TAB navigation
for subwindows of a composite control: instead of using various ugly and never
documented WX_XXX_CONTROL_CONTAINER macros it is now enough to simply inherit
from wxNavigationEnabled<BaseClass> to do it.

No real changes in the code as the new class is not used anywhere yet.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:20 +00:00
Vadim Zeitlin
1dfe47d022 Mention that pages can't be added to wxBookCtrl more than once.
Apparently some people expect this to work although it's really not meant to.

See #13209.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 19:36:47 +00:00
Vadim Zeitlin
5d4a050443 Remove mentions of wxCommandEvent from wxThreadEvent documentation.
wxThreadEvent doesn't derive from wxCommandEvent any more so don't say that it
does.

Also fix some grammar/wording.

Closes #13359.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-23 12:01:26 +00:00
Vadim Zeitlin
d38eb01c91 Added customizable wxDocManager::OnMRUFileNotExist() virtual method.
This method can be overridden to customize the previously hard-coded handling
of the case when a file selected from the MRU menu doesn't exist any more: we
used to always remove it from the file history completely. This may, however,
be inappropriate and, in fact, probably never, or very rarely, is the right
thing to do when the file that we failed to open still exists.

So never remove the file from the MRU if we failed to open an existing file
(also don't give an error about it as it should have been already given by
CreateDocument()) and, while we still do it for the non-existent files, allow
to override this behaviour by overriding the new OnMRUFileNotExist() method.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-22 16:16:09 +00:00
Vadim Zeitlin
1ecc323f26 Several corrections to wxDocManager fields documentation.
Remove non-existent wxDocManager::m_flags.

Added correct m_lastDirectory declaration to go with its documentation instead
of the duplicated m_fileHistory documentation.

Better document the default m_maxDocsOpen value.

Put all the documented fields in protected section as they're really protected
and not public.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-22 16:16:06 +00:00
Vadim Zeitlin
90693f47f2 Allow passing the error value to wxStreamBase::Reset().
It can be useful to induce an error on the stream explicitly, e.g. because an
incorrect value was read from it and we want to indicate it to the caller by
setting stream error to wxSTREAM_READ_ERROR.

Allow to do this by passing an optional error value to wxStreamBase::Reset().

Add an example of using the new functionality to the docview sample which
needs it to be able to signal errors while reading the files.

Also document this method that previously wasn't documented at all.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-22 16:16:00 +00:00
Vadim Zeitlin
2a648479df Add wxDataViewEvent::IsEditCancelled() and support for vetoing edit events.
Currently this is only implemented in the generic wxDataViewCtrl, the native
GTK/OSX ports should be modified to support this later.

Closes #13323.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-19 22:35:53 +00:00
Vadim Zeitlin
2d770c4f82 Added wxGCDC(wxEnhMetaFileDC) ctor too.
Make it possible to create wxGCDC associated with a metafile DC in wxMSW too.

Closes #13326.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-19 22:35:41 +00:00
Vadim Zeitlin
1bf9327b5d Document wxEnhMetaFileDC-related wxGraphics functions.
Closes #13325.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-12 09:13:36 +00:00
Vadim Zeitlin
c3b8a19638 Fix and improve documentation of wxT_2() macro.
Documentation for wxT_2() applied to wxS() instead, fix this. Also correct the
wording and add @since tags.

Closes #13321.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-11 22:49:26 +00:00
Vadim Zeitlin
e96be167e7 Support float, double and file name values in wxGenericValidator.
Currently these values can only be read from/written to wxTextCtrl but support
for other controls (e.g. wxSpinCtrlDouble for float/double) could be added in
the future.

Closes #13304.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-09 23:37:28 +00:00
Vadim Zeitlin
013b02092f Mention that wxNotebook page must be removed before reparenting it.
At least in wxGTK it is necessary to remove the page from the notebook first
as reparenting it doesn't work otherwise currently.

This should ideally be fixed but in the meanwhile at least document it.

See #13305.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-09 23:37:09 +00:00
John Chain
fcd9ed6c37 Added Robin Dunn's explanation on the relationship of wxBitmap and wxImage into interface doxygen section
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-09 18:40:11 +00:00
Vadim Zeitlin
6c0e710f00 Make wxGCDC::GetGraphicsContext() const.
There is no reason for this accessor to not be const and it prevents other
methods using it from being const too, so change this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-07 13:05:16 +00:00
Vadim Zeitlin
bbd783e0b2 No real changes, just remove trailing commas from enum.
wxCompositionMode enum had a trailing comma not allowed by C++ 98 (and which
would result in warnings or errors with g++ pedantic switch).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-02 10:29:14 +00:00
Vadim Zeitlin
fec4e45897 Add wxCOMPOSITION_INVALID mode and use it to simplify the code.
Having an invalid element in wxCompositionMode enum allows to directly return
it from TranslateRasterOp() function instead of needing a separate bool
parameter to indicate that a ROP couldn't be translated.

This also incidentally fixes warnings about possibly uninitialized variables
in optimized g++ builds.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-02 10:29:11 +00:00
Václav Slavík
c1b293bb8d Move wxThreadEvent into wxBase.
For this, it cannot derive from wxCommandEvent. Extracted the bits
from wxCommandEvent useful for passing data between threads into
wxEventBasicPayloadMixin helper class shared by both.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-28 17:24:37 +00:00
Vadim Zeitlin
4db97e24f5 Add support for child documents to docview framework.
Child documents are virtual documents corresponding to parts of their parent
document which can't be saved nor loaded independently of their parent and are
closed when the parent is closed.

This finally makes some use of wxDocument::m_documentParent field which was
always present in the docview code but never used before.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-27 00:09:37 +00:00
Vadim Zeitlin
1e5ad6e1d1 Restore wxPreviewFrame::Initialize(void) and add InitializeWithModality().
The changes of r67619 changed the signature of the virtual Initialize() method
and in doing so broke the existing code overriding it. Avoid this problem by
restoring the old method signature and adding a function with a different name
providing the new functionality.

Also notice in the documentation that there is no real need to override
Initialize() in any case (but this doesn't change the fact that there is
existing code that does do it).

See #13108.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-22 22:58:07 +00:00
Vadim Zeitlin
58daa7b264 Document surprising behaviour of wxDatePickerCtrl::GetRange() in wxMSW.
wxMSW native control always has a built-in lower limit as MSW doesn't support
the dates before the year 1601 so wxDatePickerCtrl::GetRange() always returns
a valid range start, even if SetRange() hadn't been called to set it.

As this can be unexpected, document this behaviour clearly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 22:46:39 +00:00
Vadim Zeitlin
106f0d98f8 Implement wxCalendarCtrl::SetDateRange() in the native GTK version.
While GTK+ doesn't support imposing ranges for dates selection natively, we
can do it ourselves by preventing the user from selecting any date outside of
the currently valid range.

This allows to use ranges under all platforms and not only in wxCalendarCtrl
itself but in wxDatePickerCtrl as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 22:46:36 +00:00
Julian Smart
8c636fd789 Removed header guards
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 13:14:41 +00:00
Vadim Zeitlin
0f4a54a655 Implement wxDataViewCtrl::SetRowHeight() for wxGTK.
Also document that this method can only be used to increase the row height
compared to the default, not to make it smaller.

See #12749.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-11 23:56:44 +00:00
Stefan Csomor
3399af21d1 adding default interpolation enum
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 23:05:09 +00:00
Stefan Csomor
a173c81340 fixing test, adding minimal docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 21:44:19 +00:00
Vadim Zeitlin
bbfd454841 Add wxDataViewCtrl::SetRowHeight() and provide its generic implementation.
Allow changing the (fixed) row height without using wxDV_VARIABLE_LINE_HEIGHT
which may slow down the control display too much.

The new method is not implemented for the native GTK and OS X implementations
yet but should be simple to implement there.

See #12749.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 22:49:56 +00:00
Vadim Zeitlin
ffc13495b2 Make wxDECLARE_CLASS synonym of wxDECLARE_ABSTRACT_CLASS.
Previously wxDECLARE_CLASS was a synonym for wxDECLARE_DYNAMIC_CLASS which was
inconsistent with its documentation and wxIMPLEMENT_CLASS that was the same as
wxIMPLEMENT_ABSTRACT_CLASS.

Resolve this in the most backwards compatible and also arguably logical way.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 13:06:17 +00:00
Robin Dunn
eeea3b039e Virtualize StartEditor and add implementations for the ports that can do it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-31 19:36:47 +00:00
Vadim Zeitlin
d3ca848751 Make wxListCtrl sort function take wxIntPtr, not long, arguments.
As the arguments to the sort function contain the client data associated with
the items, they may be pointers and hence of greater size than long in Win64
builds. Use wxIntPtr instead of long everywhere to fix this.

Notice that this doesn't break compatibility for 32 bit code where long can
still be used as it is the same as wxIntPtr there after the previous commit.

Closes #4309.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-13 13:30:03 +00:00
Vadim Zeitlin
aacbb5dc43 Remove duplicated portability warning from wxShowEvent description.
The warning about this event not being generated by all ports was already
present, remove the second copy.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-13 13:29:55 +00:00
Vadim Zeitlin
293a6aaf0a Don't document wxFileSystemWatcher::AddTree() as pure virtual.
It isn't.

See #12847.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-11 15:52:04 +00:00
Václav Slavík
76ba33d39a Clarify that wxFileName::GetPath() appends separator for toplevel dirs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-10 09:58:52 +00:00
Julian Smart
7afd2b58c5 More work on improving wxRTC documentation, copied buffer and control headers to interface folder.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-08 18:29:51 +00:00
Vadim Zeitlin
2b6259fe1c Fix wxFileSystemWatcher usage instructions.
Don't mention the virtual OnXXX() functions which were removed from the final
API.

Also mention AddTree() limitations on non-MSW platforms.

See #12847.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-03 23:31:43 +00:00
Vadim Zeitlin
61490d3b60 Add wxDocManager::GetPageSetupDialogData() accessor.
Allow accessing the print data stored in wxDocManager from outside the class.

Closes #13190.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-03 10:40:23 +00:00
Vadim Zeitlin
6aacfc7320 Allow showing the print preview frame non modally.
Still show the print preview app modally by default, i.e. disabling all the
other windows, but also allow disabling only the preview parent or nothing at
all.

Closes #13108.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-26 22:57:27 +00:00
Vadim Zeitlin
e71508e160 Add wxDC::SetTransformMatrix() and related methods and implement them in wxMSW.
Add support for world transformations to wxDC too. Currently this is
implemented in wxMSW only but could be easily provided in the ports that use
wxGraphicsContext for wxDC implementation later.

Closes #13092.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-23 16:03:10 +00:00
Vadim Zeitlin
15fa4de377 Correct names of parameters in wxAffineMatrix2D documentation.
Some parameters were misnamed in @param paragraphs, fix this.

Closes #13143.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-23 14:53:42 +00:00
Vadim Zeitlin
b22a1070b3 Document that wxTreeCtrl::SelectItem() generates events.
This is another exception to the general rule that program actions don't
generate any events so document it explicitly.

See #13153.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-23 11:17:43 +00:00
Václav Slavík
64c70359a7 Return wxWindow* from wxDataViewCustomRenderer::CreateEditorCtrl().
There's no reason to limit custom editor controls to wxControl, which
would rule out e.g. composite controls or any custom widgets.
Make appropriate changes to related functions and code too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-22 18:25:32 +00:00
Vadim Zeitlin
a0f01cb25c Correct wrong port-specific note in AutoCompleteFileNames() documentation.
This function is only implemented in wxMSW, not wxGTK2.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-17 23:15:04 +00:00
Vadim Zeitlin
c729f16fa5 Implement auto-completion support for wxTextEntry in wxOSX/Cocoa.
Both completing a set of fixed strings and dynamic completion using a custom
completer are supported, although completing the file names remains MSW-only
for now.

Note that, unlike under MSW, auto-completion under Mac is not automatic and
has to be triggered manually by calling complete: method. This is done by
pressing F5 key by default. In the future we should call it automatically on a
timer event to make it more obviously discoverable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-17 23:14:15 +00:00