]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tsamples.tex
compilation fix after TRUE/FALSE change
[wxWidgets.git] / docs / latex / wx / tsamples.tex
index 9bc339c8a71ddd1be2ed5ff1fc0db4796cd59af1..19fb0af4e257a14d1edaba6123691a071bfaa09e 100644 (file)
@@ -51,6 +51,13 @@ i.e. a minimal program that doesn't demonstrate anything apart from what is
 needed to write a program that will display a "hello" dialog. This is usually
 a good starting point for learning how to use wxWindows.
 
 needed to write a program that will display a "hello" dialog. This is usually
 a good starting point for learning how to use wxWindows.
 
+\subsection{Art provider sample}\label{sampleartprovider}
+
+The {\tt artprov} sample shows how you can customize the look of standard
+wxWindows dialogs by replacing default bitmaps/icons with your own versions.
+It also shows how you can use wxArtProvider to
+get stock bitmaps for use in your application.
+
 \subsection{Calendar sample}\label{samplecalendar}
 
 This font shows the \helpref{calendar control}{wxcalendarctrl} in action. It
 \subsection{Calendar sample}\label{samplecalendar}
 
 This font shows the \helpref{calendar control}{wxcalendarctrl} in action. It
@@ -132,6 +139,44 @@ Using the menu entries, you may also dial or hang up the line if you have a
 modem attached and (this only makes sense for Windows) list the available
 connections.
 
 modem attached and (this only makes sense for Windows) list the available
 connections.
 
+\subsection{DnD sample}\label{samplednd}
+
+This sample shows both clipboard and drag and drop in action. It is quite non
+trivial and may be safely used as a basis for implementing the clipboard and
+drag and drop operations in a real-life program.
+
+When you run the sample, its screen is split in several parts. On the top,
+there are two listboxes which show the standard derivations of 
+\helpref{wxDropTarget}{wxdroptarget}: 
+\helpref{wxTextDropTarget}{wxtextdroptarget} and 
+\helpref{wxFileDropTarget}{wxfiledroptarget}.
+
+The middle of the sample window is taken by the log window which shows what is
+going on (of course, this only works in debug builds) and may be helpful to see
+the sequence of steps of data transfer.
+
+Finally, the last part is used for dragging text from it to either one of the
+listboxes (only one will accept it) or another application. The last
+functionality available from the main frame is to paste a bitmap from the
+clipboard (or, in the case of Windows version, also a metafile) - it will be
+shown in a new frame.
+
+So far, everything we mentioned was implemented with minimal amount of code
+using standard wxWindows classes. The more advanced features are demonstrated
+if you create a shape frame from the main frame menu. A shape is a geometric
+object which has a position, size and color. It models some
+application-specific data in this sample. A shape object supports its own
+private \helpref{wxDataFormat}{wxdataformat} which means that you may cut and
+paste it or drag and drop (between one and the same or different shapes) from
+one sample instance to another (or the same). However, chances are that no
+other program supports this format and so shapes can also be rendered as
+bitmaps which allows them to be pasted/dropped in many other applications
+(and, under Windows, also as metafiles which are supported by most of Windows
+programs as well - try Write/Wordpad, for example).
+
+Take a look at DnDShapeDataObject class to see how you may use 
+\helpref{wxDataObject}{wxdataobject} to achieve this.
+
 \subsection{Dynamic sample}\label{sampledynamic}
 
 This sample is a very small sample that demonstrates the use of the
 \subsection{Dynamic sample}\label{sampledynamic}
 
 This sample is a very small sample that demonstrates the use of the
@@ -166,26 +211,6 @@ synchronous and asynchronous cases and how to kill the processes with
 \helpref{wxProcess::Kill}{wxprocesskill} and test for their existence with 
 \helpref{wxProcess::Exists}{wxprocessexists}.
 
 \helpref{wxProcess::Kill}{wxprocesskill} and test for their existence with 
 \helpref{wxProcess::Exists}{wxprocessexists}.
 
-\subsection{Scroll subwindow sample}\label{samplescrollsub}
-
-This sample demonstrates the use of the \helpref{wxScrolledWindow}{wxscrolledwindow} 
-class including placing subwindows into it and drawing simple graphics. It uses the 
-\helpref{SetTargetWindow}{wxscrolledwindowsettargetwindow} method and thus the effect
-of scrolling does not show in the scrolled window itself, but in one of its subwindows.
-
-Additionally, this samples demonstrates how to optimize drawing operations in wxWindows,
-in particular using the \helpref{wxWindow::IsExposed}{wxwindowisexposed} method with 
-the aim to prevent unnecessary drawing in the window and thus reducing or removing 
-flicker on screen.
-
-\subsection{Rotate sample}\label{samplerotate}
-
-This is a simple example which demonstrates how to rotate an image with
-the \helpref{wxImage::Rotate}{wximagerotate} method. The rotation can
-be done without interpolation (left mouse button) which will be faster,
-or with interpolation (right mouse button) which is slower but gives
-better results.
-
 \subsection{Font sample}\label{samplefont}
 
 The font sample demonstrates \helpref{wxFont}{wxfont}, 
 \subsection{Font sample}\label{samplefont}
 
 The font sample demonstrates \helpref{wxFont}{wxfont}, 
@@ -194,44 +219,6 @@ The font sample demonstrates \helpref{wxFont}{wxfont},
 available (to wxWindows) on the computer and shows all characters of the
 chosen font as well.
 
 available (to wxWindows) on the computer and shows all characters of the
 chosen font as well.
 
-\subsection{DnD sample}\label{samplednd}
-
-This sample shows both clipboard and drag and drop in action. It is quite non
-trivial and may be safely used as a basis for implementing the clipboard and
-drag and drop operations in a real-life program.
-
-When you run the sample, its screen is split in several parts. On the top,
-there are two listboxes which show the standard derivations of 
-\helpref{wxDropTarget}{wxdroptarget}: 
-\helpref{wxTextDropTarget}{wxtextdroptarget} and 
-\helpref{wxFileDropTarget}{wxfiledroptarget}.
-
-The middle of the sample window is taken by the log window which shows what is
-going on (of course, this only works in debug builds) and may be helpful to see
-the sequence of steps of data transfer.
-
-Finally, the last part is used for dragging text from it to either one of the
-listboxes (only one will accept it) or another application. The last
-functionality available from the main frame is to paste a bitmap from the
-clipboard (or, in the case of Windows version, also a metafile) - it will be
-shown in a new frame.
-
-So far, everything we mentioned was implemented with minimal amount of code
-using standard wxWindows classes. The more advanced features are demonstrated
-if you create a shape frame from the main frame menu. A shape is a geometric
-object which has a position, size and color. It models some
-application-specific data in this sample. A shape object supports its own
-private \helpref{wxDataFormat}{wxdataformat} which means that you may cut and
-paste it or drag and drop (between one and the same or different shapes) from
-one sample instance to another (or the same). However, chances are that no
-other program supports this format and so shapes can also be rendered as
-bitmaps which allows them to be pasted/dropped in many other applications
-(and, under Windows, also as metafiles which are supported by most of Windows
-programs as well - try Write/Wordpad, for example).
-
-Take a look at DnDShapeDataObject class to see how you may use 
-\helpref{wxDataObject}{wxdataobject} to achieve this.
-
 \subsection{Grid sample}\label{samplegrid}
 
 TODO.
 \subsection{Grid sample}\label{samplegrid}
 
 TODO.
@@ -311,6 +298,26 @@ the menu.
 The sample also provides some timings for adding/deleting/sorting a lot of
 (several thousands) controls into the control.
 
 The sample also provides some timings for adding/deleting/sorting a lot of
 (several thousands) controls into the control.
 
+\subsection{Rotate sample}\label{samplerotate}
+
+This is a simple example which demonstrates how to rotate an image with
+the \helpref{wxImage::Rotate}{wximagerotate} method. The rotation can
+be done without interpolation (left mouse button) which will be faster,
+or with interpolation (right mouse button) which is slower but gives
+better results.
+
+\subsection{Scroll subwindow sample}\label{samplescrollsub}
+
+This sample demonstrates the use of the \helpref{wxScrolledWindow}{wxscrolledwindow} 
+class including placing subwindows into it and drawing simple graphics. It uses the 
+\helpref{SetTargetWindow}{wxscrolledwindowsettargetwindow} method and thus the effect
+of scrolling does not show in the scrolled window itself, but in one of its subwindows.
+
+Additionally, this samples demonstrates how to optimize drawing operations in wxWindows,
+in particular using the \helpref{wxWindow::IsExposed}{wxwindowisexposed} method with 
+the aim to prevent unnecessary drawing in the window and thus reducing or removing 
+flicker on screen.
+
 \subsection{Sockets sample}\label{samplesockets}
 
 The sockets sample demonstrates how to use the communication facilities
 \subsection{Sockets sample}\label{samplesockets}
 
 The sockets sample demonstrates how to use the communication facilities
@@ -389,7 +396,7 @@ text ctrls, which is useful for testing if these stastitics actually are correct
 Thirdly, on platforms which support it, the sample will offer to copy text to the 
 \helpref{wxClipboard}{wxclipboard} and to paste text from it. The GTK version will
 use the so called PRIMARY SELECTION, which is the pseudo clipboard under X and
 Thirdly, on platforms which support it, the sample will offer to copy text to the 
 \helpref{wxClipboard}{wxclipboard} and to paste text from it. The GTK version will
 use the so called PRIMARY SELECTION, which is the pseudo clipboard under X and
-best known from pasting text to the XTerm program. 
+best known from pasting text to the XTerm program.
 
 Last not least: some of the text controls have tooltips and the sample also shows
 how tooltips can be centrally disabled and their latency controlled.
 
 Last not least: some of the text controls have tooltips and the sample also shows
 how tooltips can be centrally disabled and their latency controlled.
@@ -432,6 +439,16 @@ in MyFrame::OnUpdateCopyAndCut.
 toolbar.
 \end{itemize}
 
 toolbar.
 \end{itemize}
 
+Some buttons in the main toolbar are check buttons, i.e. they stay checked when
+pressed. On the platforms which support it, the sample also add a combobox
+to the toolbar showing how you can use arbitrary controls and not only buttons
+in it.
+
+If you toggle another toolbar in the sample (using {\tt Ctrl-A}) you will also
+see the radio toolbar buttons in action: the first three buttons form a radio
+group, that is checking any of them automatically unchecks the previously
+checked one.
+
 \subsection{Treectrl sample}\label{sampletreectrl}
 
 This sample demonstrates using \helpref{wxTreeCtrl}{wxtreectrl} class. Here
 \subsection{Treectrl sample}\label{sampletreectrl}
 
 This sample demonstrates using \helpref{wxTreeCtrl}{wxtreectrl} class. Here