]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tgrid.tex
I like if things compile with --enable-unicode + --enable-mediactrl. Code shamelessly...
[wxWidgets.git] / docs / latex / wx / tgrid.tex
index af721965bd919006fa8f6d0f3dab36f752a2acc9..1b59a8fb2f3a41d2ba28831f686bb36245858dfe 100644 (file)
@@ -1,40 +1,60 @@
 \section{wxGrid classes overview}\label{gridoverview}
 
-wxGrid is a class for displaying and editing tabular information.
+Classes: \helpref{wxGrid}{wxgrid}
 
-To use wxGrid, include the wxgrid.h header file and link with the
-wxGrid library. Create a wxGrid object, or, if you need to override
-some default behaviour, create an object of a class derived from wxGrid.
-You need to call CreateGrid before there are any cells in the grid.
+\subsection{Introduction}\label{introductiontowxgrid}
+wxGrid and its related classes are used for displaying and editing tabular data.
 
-All row and column positions start from zero, and dimensions are in pixels.
+\subsection{Getting started: a simple example}\label{simplewxgridexample}
+For simple applications you need only refer to the wxGrid class in your
+code.  This example shows how you might create a grid in a frame or
+dialog constructor and illustrates some of the formatting functions. 
 
-If you make changes to row or column dimensions, call UpdateDimensions and
-then AdjustScrollbars. If you make changes to the grid appearance (such as
-a change of cell background colour or font), call Refresh for the changes
-to be shown.
-
-\subsection{Example}
+\begin{verbatim}
 
-The following fragment is taken from the file samples/grid/test.cpp. Note the
-call to UpdateDimensions, which is required if the application
-has changed any dimensions such as column width or row height.
-You may also need to call AdjustScrollbars. In this case, AdjustScrollbars
-isn't necessary because it will be called by wxGrid::OnSize which is invoked
-when the window is first displayed.
+    // Create a wxGrid object
+    
+    grid = new wxGrid( this,
+                       -1,
+                       wxPoint( 0, 0 ),
+                       wxSize( 400, 300 ) );
+
+    // Then we call CreateGrid to set the dimensions of the grid
+    // (100 rows and 10 columns in this example)
+    grid->CreateGrid( 100, 10 );
+
+    // We can set the sizes of individual rows and columns
+    // in pixels
+    grid->SetRowSize( 0, 60 );
+    grid->SetColSize( 0, 120 );
+    
+    // And set grid cell contents as strings
+    grid->SetCellValue( 0, 0, "wxGrid is good" );
+
+    // We can specify that some cells are read-only
+    grid->SetCellValue( 0, 3, "This is read-only" );
+    grid->SetReadOnly( 0, 3 );
+
+    // Colours can be specified for grid cell contents
+    grid->SetCellValue(3, 3, "green on grey");
+    grid->SetCellTextColour(3, 3, *wxGREEN);
+    grid->SetCellBackgroundColour(3, 3, *wxLIGHT_GREY);
+
+    // We can specify the some cells will store numeric 
+    // values rather than strings. Here we set grid column 5 
+    // to hold floating point values displayed with width of 6 
+    // and precision of 2
+    grid->SetColFormatFloat(5, 6, 2);
+    grid->SetCellValue(0, 6, "3.1415");
 
-\begin{verbatim}
-  // Make a grid
-  frame->grid = new wxGrid(frame, 0, 0, 400, 400);
-
-  frame->grid->CreateGrid(10, 8);
-  frame->grid->SetColumnWidth(3, 200);
-  frame->grid->SetRowHeight(4, 45);
-  frame->grid->SetCellValue("First cell", 0, 0);
-  frame->grid->SetCellValue("Another cell", 1, 1);
-  frame->grid->SetCellValue("Yet another cell", 2, 2);
-  frame->grid->SetCellTextFont(wxTheFontList->FindOrCreateFont(12, wxROMAN, wxITALIC, wxNORMAL), 0, 0);
-  frame->grid->SetCellTextColour(*wxRED, 1, 1);
-  frame->grid->SetCellBackgroundColour(*wxCYAN, 2, 2);
-  frame->grid->UpdateDimensions();
 \end{verbatim}
+
+\subsection{A more complex example}\label{complexwxgridexample}
+Yet to be written
+
+\subsection{How the wxGrid classes relate to each other}\label{wxgridclassesrelations}
+Yet to be written
+
+\subsection{Keyboard and mouse actions}\label{keyboardandmouseinwxgrid}
+Yet to be written
+