]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tsamples.tex
Patch #581167
[wxWidgets.git] / docs / latex / wx / tsamples.tex
index a476c6c1a173ba906f1cabdffd4d84f02e5b37b9..e0b674aefd40ecb5fb2cd2fabf8ed563438f37e5 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.
 
+\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
@@ -70,7 +77,7 @@ demonstrating a simple dynamic layout.
 \subsection{Config sample}\label{sampleconfig}
 
 This sample demonstrates the \helpref{wxConfig}{wxconfigbase} classes in a platform
-indenpedent way, i.e. it uses text based files to store a given configuration under
+independent way, i.e. it uses text based files to store a given configuration under
 Unix and uses the Registry under Windows.
 
 See \helpref{wxConfig overview}{wxconfigoverview} for the descriptions of all
@@ -122,16 +129,54 @@ dialogs are described in details in the \helpref{Common dialogs overview}{common
 \subsection{Dialup sample}\label{sampledialup}
 
 This sample shows \helpref{wxDialUpManager}{wxdialupmanager} 
-class. It displays in the status bar the information gathered through itsi
-nterface: in particular, the current connection status (online or offline) and
+class. It displays in the status bar the information gathered through its
+interface: in particular, the current connection status (online or offline) and
 whether the connection is permanent (in which case a string `LAN' appears in
-the thrid status bar field - but note that you may have be on a LAN not
+the third status bar field - but note that you may have be on a LAN not
 connected to the Internet, in which case you will not see this) or not.
 
 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.
 
+\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
@@ -162,27 +207,9 @@ external programs and the sample shows how to do this synchronously (waiting
 until the program terminates) or asynchronously (notification will come later).
 
 It also shows how to capture the output of the child process in both
-synchronous and asynchronous cases.
-
-\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.
+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}.
 
 \subsection{Font sample}\label{samplefont}
 
@@ -192,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.
 
-\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.
@@ -309,6 +298,26 @@ the menu.
 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
@@ -382,12 +391,12 @@ the raw form using the {\tt EVT\_KEY\_UP} and {\tt EVT\_KEY\_DOWN} macros and th
 higher level from using the {\tt EVT\_CHAR} macro. All characters will be logged
 in a log window at the bottom of the main window. By pressing some of the function
 keys, you can test some actions in the text ctrl as well as get statistics on the
-text ctrls, which is useful for testing if these stastitics actually are correct.
+text ctrls, which is useful for testing if these statistics 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
-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.
@@ -430,6 +439,16 @@ in MyFrame::OnUpdateCopyAndCut.
 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