]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/tipdlg.h
MYcopystring is not required anymore when compat2.8 is off
[wxWidgets.git] / interface / wx / tipdlg.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: tipdlg.h
e54c96f1 3// Purpose: interface of wxTipProvider
23324ae1
FM
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
9/**
10 @class wxTipProvider
7c913512 11
e54c96f1 12 This is the class used together with wxShowTip() function.
23324ae1
FM
13 It must implement wxTipProvider::GetTip function and return the
14 current tip from it (different tip each time it is called).
7c913512 15
23324ae1
FM
16 You will never use this class yourself, but you need it to show startup tips
17 with wxShowTip. Also, if you want to get the tips text from elsewhere than a
18 simple text file, you will want to derive a new class from wxTipProvider and
e54c96f1 19 use it instead of the one returned by wxCreateFileTipProvider().
7c913512 20
23324ae1 21 @library{wxadv}
78e87bf7 22 @category{misc}
7c913512 23
78e87bf7 24 @see @ref overview_tips, ::wxShowTip
23324ae1 25*/
7c913512 26class wxTipProvider
23324ae1
FM
27{
28public:
29 /**
30 Constructor.
3c4f71cc 31
7c913512 32 @param currentTip
4cc4bfaf 33 The starting tip index.
23324ae1
FM
34 */
35 wxTipProvider(size_t currentTip);
36
37 /**
78e87bf7
FM
38 Returns the index of the current tip (i.e. the one which would be returned by GetTip()).
39
7c913512 40 The program usually remembers the value returned by this function after calling
78e87bf7
FM
41 wxShowTip(). Note that it is not the same as the value which was passed to
42 wxShowTip + 1 because the user might have pressed the "Next" button in
43 the tip dialog.
23324ae1 44 */
328f5751 45 size_t GetCurrentTip() const;
23324ae1
FM
46
47 /**
78e87bf7
FM
48 Return the text of the current tip and pass to the next one.
49 This function is pure virtual, it should be implemented in the derived classes.
23324ae1 50 */
da1ed74c 51 virtual wxString GetTip() = 0;
23324ae1
FM
52
53 /**
78e87bf7
FM
54 Returns a modified tip.
55
56 This function will be called immediately after read, and before being check
57 whether it is a comment, an empty string or a string to translate.
58 You can optionally override this in your custom user-derived class
7c913512
FM
59 to optionally to modify the tip as soon as it is read. You can return any
60 modification to the string. If you return wxEmptyString, then this tip is
23324ae1
FM
61 skipped, and the next one is read.
62 */
63 virtual wxString PreProcessTip(const wxString& tip);
64};
65
66
e54c96f1 67
23324ae1
FM
68// ============================================================================
69// Global functions/macros
70// ============================================================================
71
b21126db 72/** @addtogroup group_funcmacro_dialog */
ba2874ff
BP
73//@{
74
23324ae1 75/**
ba2874ff 76 This function creates a wxTipProvider which may be used with wxShowTip().
7c913512
FM
77
78 @param filename
ba2874ff 79 The name of the file containing the tips, one per line.
7c913512 80 @param currentTip
ba2874ff
BP
81 The index of the first tip to show. Normally this index is remembered
82 between the 2 program runs.
83
84 @see @ref overview_tips
7c913512 85
ba2874ff 86 @header{wx/tipdlg.h}
23324ae1 87*/
4cc4bfaf
FM
88wxTipProvider* wxCreateFileTipProvider(const wxString& filename,
89 size_t currentTip);
23324ae1 90
ba2874ff
BP
91/**
92 This function shows a "startup tip" to the user. The return value is the
93 state of the "Show tips at startup" checkbox.
94
95 @param parent
96 The parent window for the modal dialog.
97 @param tipProvider
98 An object which is used to get the text of the tips. It may be created
99 with the wxCreateFileTipProvider() function.
100 @param showAtStartup
101 Should be true if startup tips are shown, false otherwise. This is
102 used as the initial value for "Show tips at startup" checkbox which is
103 shown in the tips dialog.
104
105 @see @ref overview_tips
106
107 @header{wx/tipdlg.h}
108*/
109bool wxShowTip(wxWindow *parent,
110 wxTipProvider *tipProvider,
111 bool showAtStartup = true);
112
113//@}
114