]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tsamples.tex
Some work on GTK focus handling and events.
[wxWidgets.git] / docs / latex / wx / tsamples.tex
index 9bc339c8a71ddd1be2ed5ff1fc0db4796cd59af1..1c449aafac3987e5adf3401b8306148e9e324c2c 100644 (file)
@@ -132,6 +132,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.
 
+\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
@@ -166,26 +204,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}.
 
-\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}, 
@@ -194,44 +212,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.
@@ -311,6 +291,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
@@ -389,7 +389,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
-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.