| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/textwrapper.h
 
- // Purpose:     documentation of wxTextWrapper interface
 
- // Author:      Vadim Zeitlin
 
- // Copyright:   (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- /**
 
-     @class wxTextWrapper
 
-     Helps wrap lines of text to given width.
 
-     This is a generic purpose class which can be used to wrap lines of text to
 
-     the specified width. It doesn't do anything by itself but simply calls its
 
-     virtual OnOutputLine() and OnNewLine() methods for each wrapped line of
 
-     text, you need to implement them in your derived class to actually do
 
-     something useful.
 
-     Here is an example function using this class which inserts hard line breaks
 
-     into a string of text at the positions where it would be wrapped:
 
-     
 
-     @code
 
-     wxString WrapText(wxWindow *win, const wxString& text, int widthMax)
 
-     {
 
-         class HardBreakWrapper : public wxTextWrapper
 
-         {
 
-         public:
 
-             HardBreakWrapper(wxWindow *win, const wxString& text, int widthMax)
 
-             {
 
-                 Wrap(win, text, widthMax);
 
-             }
 
-             wxString const& GetWrapped() const { return m_wrapped; }
 
-         protected:
 
-             virtual void OnOutputLine(const wxString& line)
 
-             {
 
-                 m_wrapped += line;
 
-             }
 
-             virtual void OnNewLine()
 
-             {
 
-                 m_wrapped += '\n';
 
-             }
 
-         private:
 
-             wxString m_wrapped;
 
-         };
 
-         HardBreakWrapper wrapper(win, text, widthMax);
 
-         return wrapper.GetWrapped();
 
-     }
 
-     @endcode
 
-     @nolibrary
 
-     @category{gdi}
 
-  */
 
- class wxTextWrapper
 
- {
 
- public:
 
-     /**
 
-         Trivial default constructor.
 
-      */
 
-     wxTextWrapper();
 
-     /**
 
-         Wrap the given text.
 
-         This method will call OnOutputLine() for every line of wrapped text and
 
-         OnNewLine() before the beginning of every new line after the first one
 
-         (so it might be never called at all if the width of entire @a text is
 
-         less than @a widthMax).
 
-         @param win
 
-             A non-@NULL window used for measuring the text extents.
 
-         @param text
 
-             The text to wrap.
 
-         @param widthMax
 
-             Maximal width of each line of text or @c -1 to disable wrapping.
 
-      */
 
-     void Wrap(wxWindow *win, const wxString& text, int widthMax);
 
- protected:
 
-     /**
 
-         Called by Wrap() for each wrapped line of text.
 
-         This method will always be called at least once by Wrap(). Notice that
 
-         @a line may be empty if the text passed to Wrap() was empty itself.
 
-      */
 
-     virtual void OnOutputLine(const wxString& line) = 0;
 
-     /**
 
-         Called at the start of each subsequent line of text by Wrap().
 
-         This method may not be called at all if the entire text passed to
 
-         Wrap() fits into the specified width.
 
-      */
 
-     virtual void OnNewLine();
 
- };
 
 
  |