wxGrid with cell editors in C#

Harald Meyer <[email protected]> Thu, 16 Mar 2006 14:00:14 +0100
Newsgroups gmane.comp.lib.wxwindows.wxnet
Message-ID <3A86B68E2AB57947BCE7A7BC4CF7723F37AFB1@exch02k-lautern.klautern.gwi>
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C648F9.90825A1A
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hallo...

... I lately finished an applicability study of wx.NET focussing on =
the
wxGrid wrapper
including cell editors written in C#. I found some errors/missing =
functions.
Maybe my
findings could serve to improve the system.

- constructor EvtHandler(IntPtr) needs to be public since instances of =
this
class are
  required to create a cell editor.
- Access to the control stored in wxGridCellEditor is required.
- I had some problems with delegate virtual_Show probably because of
erroneous casts
  of the bool argument. So, I changed this argument to be of type int =
and
things worked.

Please find attached the files that I changed:
- Grid.cs from the sample tree: an extended version of the grid example
- Grid.cs from the wx.NET tree: changes and added methods
- grid.cxx from the wx_c tree: changed callback and access to the =
control.

Regards
Harald

___________________________
Dr. Harald Meyer auf'm Hofe
Entwicklungsleitung
SIEDA GmbH
Bismarckstra=DFe 2a
D-67655 Kaiserslautern
EMail: [email protected]
http://www.consolve.de
http://www.sieda.com


------_=_NextPart_000_01C648F9.90825A1A
Content-Type: application/octet-stream;
	name="Grid.cs"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="Grid.cs"

//----------------------------------------------------------------------=
-------=0A=
// wx.NET/Samples - Grid.cs=0A=
//=0A=
// wx.NET "grid" sample.=0A=
//=0A=
// Written by Alexander Olk ([email protected])=0A=
// (C) 2004 by Alexander Olk=0A=
// BigGrid extended by Dr. Harald Meyer auf'm Hofe March 2006=0A=
//=0A=
// Licensed under the wxWidgets license, see LICENSE.txt for =
details.=0A=
//=0A=
// $Id: Grid.cs,v 1.5 2004/06/05 11:12:26 olkalex Exp $=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
using System;=0A=
using System.Drawing;=0A=
using System.Collections;=0A=
=0A=
namespace wx.Samples=0A=
{=0A=
	public class GridFrame : Frame=0A=
	{=0A=
		enum Cmd  =0A=
		{=0A=
			ID_TOGGLEROWLABELS =3D 100,=0A=
			ID_TOGGLECOLLABELS,=0A=
			ID_TOGGLEEDIT,=0A=
			ID_TOGGLEROWSIZING,=0A=
			ID_TOGGLECOLSIZING,=0A=
			ID_TOGGLEGRIDSIZING,=0A=
			ID_TOGGLEGRIDLINES,=0A=
			ID_AUTOSIZECOLS,=0A=
			ID_CELLOVERFLOW,=0A=
			ID_RESIZECELL,=0A=
			ID_SETLABELCOLOUR,=0A=
			ID_SETLABELTEXTCOLOUR,=0A=
			ID_SETLABEL_FONT,=0A=
			ID_ROWLABELALIGN,=0A=
			ID_ROWLABELHORIZALIGN,=0A=
			ID_ROWLABELVERTALIGN,=0A=
			ID_COLLABELALIGN,=0A=
			ID_COLLABELHORIZALIGN,=0A=
			ID_COLLABELVERTALIGN,=0A=
			ID_GRIDLINECOLOUR,=0A=
			ID_INSERTROW,=0A=
			ID_INSERTCOL,=0A=
			ID_DELETEROW,=0A=
			ID_DELETECOL,=0A=
			ID_CLEARGRID,=0A=
			ID_CHANGESEL,=0A=
			ID_SELCELLS,=0A=
			ID_SELROWS,=0A=
			ID_SELCOLS,=0A=
			ID_SET_CELL_FG_COLOUR,=0A=
			ID_SET_CELL_BG_COLOUR,=0A=
			ID_ABOUT,=0A=
			ID_VTABLE,=0A=
			ID_BUGS_TABLE,=0A=
			ID_SMALL_GRID,=0A=
			ID_SELECT_UNSELECT,=0A=
			ID_SELECT_ALL,=0A=
			ID_SELECT_ROW,=0A=
			ID_SELECT_COL,=0A=
			ID_SELECT_CELL,=0A=
			ID_DESELECT_ALL,=0A=
			ID_DESELECT_ROW,=0A=
			ID_DESELECT_COL,=0A=
			ID_DESELECT_CELL,=0A=
			=0A=
			ID_SET_HIGHLIGHT_WIDTH,=0A=
			ID_SET_RO_HIGHLIGHT_WIDTH,=0A=
=0A=
			ID_TESTFUNC,=0A=
			ID_EXIT=0A=
		}=0A=
		=0A=
		=
//----------------------------------------------------------------------=
-------=0A=
		=0A=
		private Grid grid;=0A=
		private TextCtrl logWin;=0A=
		private string logBuf;=0A=
		=0A=
		public bool m_addToSel =3D false;=0A=
		=0A=
		public static long s_sizeGrid =3D 10000;=0A=
		=0A=
		=
//----------------------------------------------------------------------=
-------=0A=
		=0A=
		public GridFrame()=0A=
			: base( null, -1, "wxWidgets grid class demo", wxDefaultPosition, =
wxDefaultSize )=0A=
		{=0A=
			Icon =3D new wx.Icon( "../Samples/Grid/mondrian.png" );=0A=
			=0A=
			int gridW =3D 600;=0A=
			int gridH =3D 300;=0A=
			int logW =3D gridW;=0A=
			int logH =3D 100;=0A=
			=0A=
			Menu fileMenu =3D new Menu();=0A=
			fileMenu.Append( (int)Cmd.ID_VTABLE, "&Virtual table test\tCtrl-V" =
);=0A=
			fileMenu.Append( (int)Cmd.ID_BUGS_TABLE, "&Bugs table test\tCtrl-B" =
);=0A=
			fileMenu.Append( (int)Cmd.ID_SMALL_GRID, "&Small Grid test\tCtrl-S" =
);=0A=
			fileMenu.AppendSeparator();=0A=
			fileMenu.Append( (int)Cmd.ID_EXIT, "E&xit\tAlt-X" );=0A=
=0A=
			Menu viewMenu =3D new Menu();=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLEROWLABELS,  "&Row =
labels", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLECOLLABELS,  "&Col =
labels", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLEEDIT,  "&Editable", "" =
);=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLEROWSIZING, "Ro&w =
drag-resize", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLECOLSIZING, "C&ol =
drag-resize", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLEGRIDSIZING, "&Grid =
drag-resize", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_TOGGLEGRIDLINES, "&Grid =
Lines", "" );=0A=
			viewMenu.Append( (int)Cmd.ID_SET_HIGHLIGHT_WIDTH, "&Set Cell =
Highlight Width...", "" );=0A=
			viewMenu.Append( (int)Cmd.ID_SET_RO_HIGHLIGHT_WIDTH, "&Set Cell RO =
Highlight Width...", "" );=0A=
			viewMenu.Append( (int)Cmd.ID_AUTOSIZECOLS, "&Auto-size cols" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_CELLOVERFLOW, "&Overflow =
cells", "" );=0A=
			viewMenu.AppendCheckItem( (int)Cmd.ID_RESIZECELL, "&Resize cell =
(7,1)", "" );=0A=
=0A=
			Menu rowLabelMenu =3D new Menu();=0A=
=0A=
			viewMenu.Append( (int)Cmd.ID_ROWLABELALIGN, "R&ow label alignment", =
rowLabelMenu, "Change alignment of row labels" );=0A=
=0A=
			rowLabelMenu.Append( (int)Cmd.ID_ROWLABELHORIZALIGN, "&Horizontal" =
);=0A=
			rowLabelMenu.Append( (int)Cmd.ID_ROWLABELVERTALIGN, "&Vertical" =
);=0A=
=0A=
			Menu colLabelMenu =3D new Menu();=0A=
=0A=
			viewMenu.Append( (int)Cmd.ID_COLLABELALIGN, "Col l&abel alignment", =
colLabelMenu, "Change alignment of col labels" );=0A=
=0A=
			colLabelMenu.Append( (int)Cmd.ID_COLLABELHORIZALIGN, "&Horizontal" );=
=0A=
			colLabelMenu.Append( (int)Cmd.ID_COLLABELVERTALIGN, "&Vertical" =
);=0A=
=0A=
			Menu colMenu =3D new Menu();=0A=
			colMenu.Append( (int)Cmd.ID_SETLABELCOLOUR, "Set &label colour..." =
);=0A=
			colMenu.Append( (int)Cmd.ID_SETLABELTEXTCOLOUR, "Set label &text =
colour..." );=0A=
			colMenu.Append( (int)Cmd.ID_SETLABEL_FONT, "Set label fo&nt..." =
);=0A=
			colMenu.Append( (int)Cmd.ID_GRIDLINECOLOUR, "&Grid line colour..." =
);=0A=
			colMenu.Append( (int)Cmd.ID_SET_CELL_FG_COLOUR, "Set cell =
&foreground colour..." );=0A=
			colMenu.Append( (int)Cmd.ID_SET_CELL_BG_COLOUR, "Set cell =
&background colour..." );=0A=
=0A=
			Menu editMenu =3D new Menu();=0A=
			editMenu.Append( (int)Cmd.ID_INSERTROW, "Insert &row" );=0A=
			editMenu.Append( (int)Cmd.ID_INSERTCOL, "Insert &column" );=0A=
			editMenu.Append( (int)Cmd.ID_DELETEROW, "Delete selected ro&ws" =
);=0A=
			editMenu.Append( (int)Cmd.ID_DELETECOL, "Delete selected co&ls" =
);=0A=
			editMenu.Append( (int)Cmd.ID_CLEARGRID, "Cl&ear grid cell contents" =
);=0A=
=0A=
			Menu selectMenu =3D new Menu();=0A=
			selectMenu.AppendCheckItem( (int)Cmd.ID_SELECT_UNSELECT, "Add new =
cells to the selection",=0A=
				"When off, old selection is deselected before selecting the new =
cells" );=0A=
			selectMenu.Append( (int)Cmd.ID_SELECT_ALL, "Select all" );=0A=
			selectMenu.Append( (int)Cmd.ID_SELECT_ROW, "Select row 2" );=0A=
			selectMenu.Append( (int)Cmd.ID_SELECT_COL, "Select col 2" );=0A=
			selectMenu.Append( (int)Cmd.ID_SELECT_CELL, "Select cell (3, 1)" =
);=0A=
			selectMenu.Append( (int)Cmd.ID_DESELECT_ALL, "Deselect all" );=0A=
			selectMenu.Append( (int)Cmd.ID_DESELECT_ROW, "Deselect row 2" );=0A=
			selectMenu.Append( (int)Cmd.ID_DESELECT_COL, "Deselect col 2" );=0A=
			selectMenu.Append( (int)Cmd.ID_DESELECT_CELL, "Deselect cell (3, 1)" =
);=0A=
			=0A=
			Menu selectionMenu =3D new Menu();=0A=
			selectMenu.Append( (int)Cmd.ID_CHANGESEL, "Change &selection mode", =
selectionMenu, "Change selection mode" );=0A=
=0A=
			selectionMenu.Append( (int)Cmd.ID_SELCELLS, "Select &Cells" );=0A=
			selectionMenu.Append( (int)Cmd.ID_SELROWS, "Select &Rows" );=0A=
			selectionMenu.Append( (int)Cmd.ID_SELCOLS, "Select C&ols" );=0A=
=0A=
=0A=
			Menu helpMenu =3D new Menu();=0A=
			helpMenu.Append( (int)Cmd.ID_ABOUT, "&About wxGrid demo" );=0A=
=0A=
			wx.MenuBar menuBar =3D new wx.MenuBar();=0A=
			menuBar.Append( fileMenu, "&File" );=0A=
			menuBar.Append( viewMenu, "&View" );=0A=
			menuBar.Append( colMenu,  "&Colours" );=0A=
			menuBar.Append( editMenu, "&Edit" );=0A=
			menuBar.Append( selectMenu, "&Select" );=0A=
			menuBar.Append( helpMenu, "&Help" );=0A=
=0A=
			MenuBar =3D menuBar ;	=0A=
			=0A=
			grid =3D new Grid( this, -1, new Point( 0, 0 ), new Size( 400, 300 ) =
);=0A=
			=0A=
			logWin =3D new TextCtrl( this, -1, "", new Point( 0, gridH + 20 ), =
new Size( logW, logH ), TextCtrl.wxTE_MULTILINE );=0A=
			=0A=
			Log.SetActiveTarget( logWin ); =0A=
			=0A=
			grid.CreateGrid( 0, 0 );=0A=
			grid.AppendRows( 100 );=0A=
			grid.AppendCols( 100 );=0A=
			=0A=
			int ir =3D grid.NumberRows;=0A=
			grid.DeleteRows( 0, ir );=0A=
			grid.AppendRows( ir );=0A=
			=0A=
			grid.SetRowSize( 0, 60 );=0A=
			grid.SetCellValue( 0, 0, "Ctrl+Home\nwill go to\nthis cell" );=0A=
			=0A=
			grid.SetCellValue( 0, 1, "A long piece of text to demonstrate =
wrapping." );=0A=
			grid.SetCellRenderer( 0 , 1, new GridCellAutoWrapStringRenderer() =
);=0A=
			grid.SetCellEditor( 0,  1 , new GridCellAutoWrapStringEditor() );=0A=
=0A=
			grid.SetCellValue( 0, 2, "Blah" );=0A=
			grid.SetCellValue( 0, 3, "Read only" );=0A=
			grid.SetReadOnly( 0, 3 );=0A=
=0A=
			grid.SetCellValue( 0, 4, "Can veto edit this cell" );=0A=
=0A=
			grid.SetCellValue( 0, 5, "Press\nCtrl+arrow\nto skip over\ncells" =
);=0A=
=0A=
			grid.SetRowSize( 99, 60 );=0A=
			grid.SetCellValue( 99, 99, "Ctrl+End\nwill go to\nthis cell" );=0A=
			grid.SetCellValue( 1, 0, "This default cell will overflow into =
neighboring cells, but not if you turn overflow off." );=0A=
=0A=
			grid.SetCellTextColour( 1, 2, Colour.wxRED );=0A=
			grid.SetCellBackgroundColour( 1, 2, Colour.wxGREEN );=0A=
=0A=
			grid.SetCellValue( 1, 4, "I'm in the middle" );=0A=
=0A=
			grid.SetCellValue( 2, 2, "red" );=0A=
=0A=
			grid.SetCellTextColour( 2, 2, Colour.wxRED );=0A=
			grid.SetCellValue( 3, 3, "green on grey" );=0A=
			grid.SetCellTextColour( 3, 3, Colour.wxGREEN );=0A=
			grid.SetCellBackgroundColour( 3, 3, Colour.wxLIGHT_GREY );=0A=
=0A=
			grid.SetCellValue( 4, 4, "a weird looking cell" );=0A=
			grid.SetCellAlignment( 4, 4, (int)Alignment.wxALIGN_CENTRE, =
(int)Alignment.wxALIGN_CENTRE );=0A=
			grid.SetCellRenderer( 4, 4, new MyGridCellRenderer() );=0A=
=0A=
			grid.SetCellValue( 3, 0, "0" );=0A=
			grid.SetCellRenderer( 3, 0, new GridCellBoolRenderer() );=0A=
			grid.SetCellEditor( 3, 0, new GridCellBoolEditor() );	=0A=
			=0A=
			GridCellAttr attr =3D new GridCellAttr();=0A=
			attr.TextColour =3D Colour.wxBLUE;=0A=
			grid.SetColAttr( 5, attr );=0A=
			attr =3D new GridCellAttr();	=0A=
			attr.BackgroundColour =3D Colour.wxRED;=0A=
			grid.SetRowAttr( 5, attr );=0A=
=0A=
			grid.SetCellValue( 2, 4, "a wider column" );=0A=
			grid.SetColSize( 4, 120 );=0A=
			grid.SetColMinimalWidth( 4, 120 );=0A=
=0A=
			grid.SetCellTextColour( 5, 8, Colour.wxGREEN );=0A=
			grid.SetCellValue( 5, 8, "Bg from row attr\nText col from cell attr" =
);=0A=
			grid.SetCellValue( 5, 5, "Bg from row attr Text col from col attr =
and this text is so long that it covers over many many empty cells but =
is broken by one that isn't" );=0A=
=0A=
			grid.SetColFormatFloat( 6 );=0A=
			grid.SetCellValue( 0, 6, "3.1415" );=0A=
			grid.SetCellValue( 1, 6, "1415" );=0A=
			grid.SetCellValue( 2, 6, "12345.67890" );=0A=
=0A=
			grid.SetColFormatFloat( 7, 6, 2 );=0A=
			grid.SetCellValue( 0, 7, "3.1415" );=0A=
			grid.SetCellValue( 1, 7, "1415" );=0A=
			grid.SetCellValue( 2, 7, "12345.67890" );=0A=
=0A=
			string[] choices =3D=0A=
			{=0A=
				"Please select a choice",=0A=
				"This takes two cells",=0A=
				"Another choice"=0A=
			};=0A=
			=0A=
			grid.SetCellEditor( 4, 0, new GridCellChoiceEditor( choices ) );=0A=
			grid.SetCellSize( 4, 0, 1, 2 );=0A=
			grid.SetCellValue( 4, 0, choices[0] );=0A=
			grid.SetCellOverflow( 4, 0, false );=0A=
=0A=
			grid.SetCellSize( 7, 1, 3, 4 );=0A=
			grid.SetCellAlignment( 7, 1, (int)Alignment.wxALIGN_CENTRE, =
(int)Alignment.wxALIGN_CENTRE );=0A=
			grid.SetCellValue( 7, 1, "Big box!" );=0A=
=0A=
			BoxSizer topSizer =3D new BoxSizer( Orientation.wxVERTICAL );=0A=
			topSizer.Add( grid, 1, Stretch.wxEXPAND );=0A=
=0A=
			topSizer.Add( logWin, 0, Stretch.wxEXPAND );=0A=
=0A=
			AutoLayout =3D true;=0A=
			Sizer =3D topSizer ;=0A=
=0A=
			topSizer.Fit( this );=0A=
			topSizer.SetSizeHints( this );=0A=
=0A=
			Centre();=0A=
			SetDefaults();			=0A=
			=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLEROWLABELS,  new EventListener( =
ToggleRowLabels ) );=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLECOLLABELS,  new EventListener( =
ToggleColLabels ) );=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLEEDIT, new EventListener( ToggleEditing ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLEROWSIZING, new EventListener( =
ToggleRowSizing ) );=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLECOLSIZING, new EventListener( =
ToggleColSizing ) );=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLEGRIDSIZING, new EventListener( =
ToggleGridSizing ) );=0A=
			EVT_MENU( (int)Cmd.ID_TOGGLEGRIDLINES, new EventListener( =
ToggleGridLines ) );=0A=
			EVT_MENU( (int)Cmd.ID_AUTOSIZECOLS, new EventListener( AutoSizeCols =
) );=0A=
			EVT_MENU( (int)Cmd.ID_CELLOVERFLOW, new EventListener( CellOverflow =
) );=0A=
			EVT_MENU( (int)Cmd.ID_RESIZECELL, new EventListener( ResizeCell ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SETLABELCOLOUR, new EventListener( =
SetLabelColour ) );=0A=
			EVT_MENU( (int)Cmd.ID_SETLABELTEXTCOLOUR, new EventListener( =
SetLabelTextColour ) );=0A=
			EVT_MENU( (int)Cmd.ID_SETLABEL_FONT, new EventListener( SetLabelFont =
) );=0A=
			EVT_MENU( (int)Cmd.ID_ROWLABELHORIZALIGN, new EventListener( =
SetRowLabelHorizAlignment ) );=0A=
			EVT_MENU( (int)Cmd.ID_ROWLABELVERTALIGN, new EventListener( =
SetRowLabelVertAlignment ) );=0A=
			EVT_MENU( (int)Cmd.ID_COLLABELHORIZALIGN, new EventListener( =
SetColLabelHorizAlignment ) );=0A=
			EVT_MENU( (int)Cmd.ID_COLLABELVERTALIGN, new EventListener( =
SetColLabelVertAlignment ) );=0A=
			EVT_MENU( (int)Cmd.ID_GRIDLINECOLOUR, new EventListener( =
SetGridLineColour ) );=0A=
			EVT_MENU( (int)Cmd.ID_INSERTROW, new EventListener( InsertRow ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_INSERTCOL, new EventListener( InsertCol ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_DELETEROW, new EventListener( =
DeleteSelectedRows ) );=0A=
			EVT_MENU( (int)Cmd.ID_DELETECOL, new EventListener( =
DeleteSelectedCols ) );=0A=
			EVT_MENU( (int)Cmd.ID_CLEARGRID, new EventListener( ClearGrid ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELCELLS,  new EventListener( SelectCells ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELROWS,  new EventListener( SelectRows ) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELCOLS,  new EventListener( SelectCols ) =
);=0A=
			=0A=
			EVT_MENU( (int)Cmd.ID_SET_CELL_FG_COLOUR, new EventListener( =
SetCellFgColour ) );=0A=
			EVT_MENU( (int)Cmd.ID_SET_CELL_BG_COLOUR, new EventListener( =
SetCellBgColour ) );=0A=
			=0A=
			EVT_MENU( (int)Cmd.ID_ABOUT, new EventListener( About ) );=0A=
			EVT_MENU( (int)Cmd.ID_EXIT, new EventListener( OnQuit ) );=0A=
			EVT_MENU( (int)Cmd.ID_VTABLE, new EventListener( OnVTable) );=0A=
			EVT_MENU( (int)Cmd.ID_BUGS_TABLE, new EventListener( OnBugsTable) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SMALL_GRID, new EventListener( OnSmallGrid) =
);=0A=
			=0A=
			EVT_MENU( (int)Cmd.ID_DESELECT_CELL, new EventListener( =
DeselectCell) );=0A=
			EVT_MENU( (int)Cmd.ID_DESELECT_COL, new EventListener( DeselectCol) =
);=0A=
			EVT_MENU( (int)Cmd.ID_DESELECT_ROW, new EventListener( DeselectRow) =
);=0A=
			EVT_MENU( (int)Cmd.ID_DESELECT_ALL, new EventListener( DeselectAll) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELECT_CELL, new EventListener( SelectCell) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELECT_COL, new EventListener( SelectCol) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELECT_ROW, new EventListener( SelectRow) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELECT_ALL, new EventListener( SelectAll) =
);=0A=
			EVT_MENU( (int)Cmd.ID_SELECT_UNSELECT, new EventListener( =
OnAddToSelectToggle) );=0A=
			=0A=
			EVT_MENU( (int)Cmd.ID_SET_HIGHLIGHT_WIDTH, new EventListener( =
OnSetHighlightWidth) );=0A=
			EVT_MENU( (int)Cmd.ID_SET_RO_HIGHLIGHT_WIDTH, new EventListener( =
OnSetROHighlightWidth) );=0A=
			=0A=
			EVT_GRID_LABEL_LEFT_CLICK( new EventListener( OnLabelLeftClick ) =
);=0A=
			EVT_GRID_CELL_LEFT_CLICK( new EventListener( OnCellLeftClick ) );=0A=
			EVT_GRID_ROW_SIZE( new EventListener( OnRowSize ) );=0A=
			EVT_GRID_COL_SIZE( new EventListener( OnColSize ) );=0A=
			EVT_GRID_SELECT_CELL( new EventListener( OnSelectCell ) );=0A=
			EVT_GRID_RANGE_SELECT( new EventListener( OnRangeSelected ) );=0A=
			EVT_GRID_CELL_CHANGE( new EventListener( OnCellValueChanged ) );=0A=
			=0A=
			EVT_GRID_EDITOR_SHOWN( new EventListener( OnEditorShown ) );=0A=
			EVT_GRID_EDITOR_HIDDEN( new EventListener( OnEditorHidden ) );			=0A=
			=0A=
		}=0A=
		=0A=
		public void SetDefaults()=0A=
		{=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLEROWLABELS, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLECOLLABELS, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLEEDIT, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLEROWSIZING, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLECOLSIZING, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLEGRIDSIZING, true );=0A=
			MenuBar.Check( (int)Cmd.ID_TOGGLEGRIDLINES, true );=0A=
			MenuBar.Check( (int)Cmd.ID_CELLOVERFLOW, true );=0A=
		}=0A=
		=0A=
		public void ToggleRowLabels( object sender, Event e )=0A=
		{=0A=
			if ( MenuBar.IsChecked( (int)Cmd.ID_TOGGLEROWLABELS ) )=0A=
			{=0A=
				grid.RowLabelSize =3D grid.DefaultRowLabelSize;=0A=
			}=0A=
			else=0A=
			{=0A=
				grid.RowLabelSize =3D 0;=0A=
			}=0A=
		}=0A=
		=0A=
		public void ToggleColLabels( object sender, Event e )=0A=
		{=0A=
			if ( MenuBar.IsChecked( (int)Cmd.ID_TOGGLECOLLABELS ) )=0A=
			{=0A=
				grid.ColLabelSize =3D grid.DefaultColLabelSize;=0A=
			}=0A=
			else=0A=
			{=0A=
				grid.ColLabelSize =3D 0;=0A=
			}			=0A=
		}=0A=
		=0A=
		public void ToggleEditing( object sender, Event e )=0A=
		{=0A=
			grid.IsEditable =3D MenuBar.IsChecked( (int)Cmd. ID_TOGGLEEDIT );=0A=
		}=0A=
=0A=
		public void ToggleRowSizing( object sender, Event e )=0A=
		{=0A=
			grid.DragRowSizeEnabled =3D MenuBar.IsChecked( =
(int)Cmd.ID_TOGGLEROWSIZING );			=0A=
		}=0A=
=0A=
		public void ToggleColSizing( object sender, Event e )=0A=
		{=0A=
			grid.DragColSizeEnabled =3D MenuBar.IsChecked( =
(int)Cmd.ID_TOGGLECOLSIZING );=0A=
			=0A=
		}=0A=
=0A=
		public void ToggleGridSizing( object sender, Event e )=0A=
		{=0A=
			grid.DragGridSizeEnabled =3D MenuBar.IsChecked( =
(int)Cmd.ID_TOGGLEGRIDSIZING );			=0A=
		}=0A=
=0A=
		public void ToggleGridLines( object sender, Event e )=0A=
		{=0A=
			grid.GridLinesEnabled =3D MenuBar.IsChecked( =
(int)Cmd.ID_TOGGLEGRIDLINES );			=0A=
		}=0A=
=0A=
		public void AutoSizeCols( object sender, Event e )=0A=
		{=0A=
			grid.AutoSizeColumns();=0A=
			grid.Refresh();			=0A=
		}=0A=
=0A=
		public void CellOverflow( object sender, Event e )=0A=
		{=0A=
			CommandEvent ce =3D (CommandEvent) e;=0A=
			grid.DefaultCellOverflow =3D ce.IsChecked;=0A=
			grid.Refresh();=0A=
		}=0A=
=0A=
		public void ResizeCell( object sender, Event e )=0A=
		{=0A=
			CommandEvent ce =3D (CommandEvent) e;=0A=
			=0A=
			if ( ce.IsChecked )=0A=
				grid.SetCellSize( 7, 1, 5, 5 );=0A=
			else=0A=
				grid.SetCellSize( 7, 1, 1, 5 );=0A=
				=0A=
			grid.Refresh();=0A=
		}=0A=
=0A=
		public void SetLabelColour( object sender, Event e )=0A=
		{=0A=
			ColourDialog dlg =3D new ColourDialog( null );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK )=0A=
			{=0A=
				ColourData retData =3D dlg.ColourData;=0A=
				Colour colour =3D retData.Colour;=0A=
=0A=
				grid.LabelBackgroundColour =3D colour;=0A=
			}			=0A=
		}=0A=
		=0A=
		public void SetLabelTextColour( object sender, Event e )=0A=
		{=0A=
			ColourDialog dlg =3D new ColourDialog( null );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK )=0A=
			{=0A=
				ColourData retData =3D dlg.ColourData;=0A=
				Colour colour =3D retData.Colour;=0A=
=0A=
				grid.LabelTextColour =3D colour;=0A=
			}				=0A=
		}		=0A=
		=0A=
		public void SetLabelFont( object sender, Event e )=0A=
		{=0A=
			FontData data =3D new FontData();=0A=
			data.InitialFont =3D grid.LabelFont;=0A=
			=0A=
			FontDialog fd =3D new FontDialog(this, data);=0A=
			=0A=
			if ( fd.ShowModal() =3D=3D wxID_OK )=0A=
			{			=0A=
				Font font =3D fd.FontData.ChosenFont;=0A=
				if ( font.Ok )=0A=
				{=0A=
					grid.LabelFont =3D font;=0A=
				}=0A=
			}=0A=
			=0A=
		}		=0A=
=0A=
		public void SetRowLabelHorizAlignment( object sender, Event e )=0A=
		{=0A=
			int horiz, vert;=0A=
			grid.GetRowLabelAlignment( out horiz, out vert );=0A=
=0A=
			switch ( horiz )=0A=
			{=0A=
				case (int)Alignment.wxALIGN_LEFT:=0A=
					horiz =3D (int)Alignment.wxALIGN_CENTRE;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_CENTRE:=0A=
					horiz =3D (int)Alignment.wxALIGN_RIGHT;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_RIGHT:=0A=
					horiz =3D (int)Alignment.wxALIGN_LEFT;=0A=
				break;=0A=
			}=0A=
=0A=
			grid.SetRowLabelAlignment( horiz, -1 );			=0A=
		}		=0A=
=0A=
		public void SetRowLabelVertAlignment( object sender, Event e )=0A=
		{=0A=
			int horiz, vert;=0A=
			grid.GetRowLabelAlignment( out horiz, out vert );=0A=
=0A=
			switch ( vert )=0A=
			{=0A=
				case (int)Alignment.wxALIGN_TOP:=0A=
					vert =3D (int)Alignment.wxALIGN_CENTRE;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_CENTRE:=0A=
					vert =3D (int)Alignment.wxALIGN_BOTTOM;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_BOTTOM:=0A=
					vert =3D (int)Alignment.wxALIGN_TOP;=0A=
				break;=0A=
			}=0A=
=0A=
			grid.SetRowLabelAlignment( -1, vert );			=0A=
		}		=0A=
=0A=
		public void SetColLabelHorizAlignment( object sender, Event e )=0A=
		{=0A=
			int horiz, vert;=0A=
			grid.GetColLabelAlignment( out horiz, out vert );=0A=
=0A=
			switch ( horiz )=0A=
			{=0A=
				case (int)Alignment.wxALIGN_LEFT:=0A=
					horiz =3D (int)Alignment.wxALIGN_CENTRE;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_CENTRE:=0A=
					horiz =3D (int)Alignment.wxALIGN_RIGHT;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_RIGHT:=0A=
					horiz =3D (int)Alignment.wxALIGN_LEFT;=0A=
				break;=0A=
			}=0A=
=0A=
			grid.SetColLabelAlignment( horiz, -1 );			=0A=
		}		=0A=
=0A=
		public void SetColLabelVertAlignment( object sender, Event e )=0A=
		{=0A=
			int horiz, vert;=0A=
			grid.GetColLabelAlignment( out horiz, out vert );=0A=
=0A=
			switch ( vert )=0A=
			{=0A=
				case (int)Alignment.wxALIGN_TOP:=0A=
					vert =3D (int)Alignment.wxALIGN_CENTRE;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_CENTRE:=0A=
					vert =3D (int)Alignment.wxALIGN_BOTTOM;=0A=
				break;=0A=
=0A=
				case (int)Alignment.wxALIGN_BOTTOM:=0A=
				vert =3D (int)Alignment.wxALIGN_TOP;=0A=
				break;=0A=
			}=0A=
=0A=
			grid.SetColLabelAlignment( -1, vert );			=0A=
		}		=0A=
=0A=
		public void SetGridLineColour( object sender, Event e )=0A=
		{=0A=
			ColourDialog dlg =3D new ColourDialog( null );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK )=0A=
			{=0A=
				ColourData retData =3D dlg.ColourData;=0A=
				Colour colour =3D retData.Colour;=0A=
=0A=
				grid.GridLineColour =3D colour;=0A=
			}							=0A=
		}		=0A=
		=0A=
		public void InsertRow( object sender, Event e )=0A=
		{=0A=
			grid.InsertRows( grid.GridCursorRow, 1 );			=0A=
		}		=0A=
=0A=
		public void InsertCol( object sender, Event e )=0A=
		{=0A=
			grid.InsertCols( grid.GridCursorCol, 1 );=0A=
		}		=0A=
=0A=
		public void DeleteSelectedRows( object sender, Event e )=0A=
		{=0A=
			if ( grid.IsSelection )=0A=
			{=0A=
				grid.BeginBatch();=0A=
				for ( int n =3D 0; n < grid.NumberRows; )=0A=
					if ( grid.IsInSelection( n , 0 ) )=0A=
						grid.DeleteRows( n, 1 );=0A=
					else=0A=
						n++;=0A=
				grid.EndBatch();=0A=
			}			=0A=
		}		=0A=
=0A=
		public void DeleteSelectedCols( object sender, Event e )=0A=
		{=0A=
			if ( grid.IsSelection )=0A=
			{=0A=
				grid.BeginBatch();=0A=
				for ( int n =3D 0; n < grid.NumberCols; )=0A=
					if ( grid.IsInSelection( 0 , n ) )=0A=
						grid.DeleteCols( n, 1 );=0A=
					else=0A=
						n++;=0A=
				grid.EndBatch();=0A=
			}			=0A=
		}		=0A=
		=0A=
		public void ClearGrid( object sender, Event e )=0A=
		{=0A=
			grid.ClearGrid();=0A=
		}		=0A=
		=0A=
		public void SelectCells( object sender, Event e )=0A=
		{=0A=
			grid.SelectionMode =3D GridSelectionMode.wxGridSelectCells;=0A=
		}		=0A=
		=0A=
		public void SelectRows( object sender, Event e )=0A=
		{=0A=
			grid.SelectionMode =3D GridSelectionMode.wxGridSelectRows;=0A=
		}		=0A=
=0A=
		public void SelectCols( object sender, Event e )=0A=
		{=0A=
			grid.SelectionMode =3D GridSelectionMode.wxGridSelectColumns;=0A=
		}		=0A=
=0A=
		public void SetCellFgColour( object sender, Event e )=0A=
		{=0A=
			ColourDialog dlg =3D new ColourDialog( null );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK )=0A=
			{=0A=
				ColourData retData =3D dlg.ColourData;=0A=
				Colour colour =3D retData.Colour;=0A=
=0A=
				if ( colour.Ok() )=0A=
				{=0A=
					grid.DefaultCellTextColour =3D colour;=0A=
					grid.Refresh();=0A=
				}=0A=
			}										=0A=
		}		=0A=
=0A=
		public void SetCellBgColour( object sender, Event e )=0A=
		{=0A=
			ColourDialog dlg =3D new ColourDialog( null );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK )=0A=
			{=0A=
				ColourData retData =3D dlg.ColourData;=0A=
				Colour colour =3D retData.Colour;=0A=
=0A=
				if ( colour.Ok() )=0A=
				{=0A=
					grid.DefaultCellBackgroundColour =3D colour;=0A=
					Rectangle r =3D new Rectangle( 0, 0, grid.Size.Width, =
grid.Size.Height );=0A=
					grid.Refresh( true, r);=0A=
				}=0A=
			}													=0A=
		}		=0A=
	=0A=
		public void About( object sender, Event e )=0A=
		{=0A=
			wx.MessageDialog.ShowModal( "\n\nwxGrid demo \n\n" +=0A=
				"Ported to wx.NET \nby\n" +=0A=
				"Alexander Olk\n\n",=0A=
				"About",=0A=
				Dialog.wxOK );			=0A=
		}		=0A=
=0A=
		public void OnQuit( object sender, Event e )=0A=
		{=0A=
			Close( true );=0A=
		}		=0A=
=0A=
		public void OnVTable( object sender, Event e )=0A=
		{=0A=
			s_sizeGrid =3D GetNumberFromUser( "Size of the table to create",=0A=
                                     "Size: ",=0A=
                                     "wxGridDemo question",=0A=
                                     (int)s_sizeGrid,=0A=
                                     0, 32000, this);=0A=
				=0A=
			if ( s_sizeGrid !=3D -1 )=0A=
			{=0A=
				BigGridFrame win =3D new BigGridFrame( s_sizeGrid );=0A=
				win.Show( true );=0A=
			}=0A=
		}		=0A=
		=0A=
		public void OnBugsTable( object sender, Event e )=0A=
		{=0A=
			BugsGridFrame frame =3D new BugsGridFrame();=0A=
			frame.Show( true );=0A=
		}		=0A=
		=0A=
		public void OnSmallGrid( object sender, Event e )=0A=
		{=0A=
			Frame frame =3D new Frame( null, -1, "A Small Grid", =
wxDefaultPosition, new Size( 640, 480 ) );=0A=
			Panel panel =3D new Panel( frame, -1 );=0A=
			Grid agrid =3D new Grid( panel, -1, new Point( 10, 10 ), new Size( =
400, 400 ), wxWANTS_CHARS | wxSIMPLE_BORDER );=0A=
			agrid.CreateGrid( 3, 3 );=0A=
			frame.Show( true );=0A=
		}		=0A=
		=0A=
		public void DeselectCell( object sender, Event e )=0A=
		{=0A=
			grid.DeselectCell( 3, 1 );=0A=
		}		=0A=
=0A=
		public void DeselectCol( object sender, Event e )=0A=
		{=0A=
			grid.DeselectCol( 2 );=0A=
		}		=0A=
		=0A=
		public void DeselectRow( object sender, Event e )=0A=
		{=0A=
			grid.DeselectRow( 2 );=0A=
		}		=0A=
	=0A=
		public void DeselectAll( object sender, Event e )=0A=
		{=0A=
			grid.ClearSelection();=0A=
		}		=0A=
=0A=
		public void SelectCell( object sender, Event e )=0A=
		{=0A=
			grid.SelectBlock( 3, 1, 3, 1, m_addToSel );=0A=
		}		=0A=
		=0A=
		public void SelectCol( object sender, Event e )=0A=
		{=0A=
			grid.SelectCol( 2, m_addToSel );=0A=
		}		=0A=
		=0A=
		public void SelectRow( object sender, Event e )=0A=
		{=0A=
			grid.SelectRow( 2, m_addToSel );=0A=
		}		=0A=
=0A=
		public void SelectAll( object sender, Event e )=0A=
		{=0A=
			grid.SelectAll();=0A=
		}		=0A=
		=0A=
		public void OnAddToSelectToggle( object sender, Event e )=0A=
		{=0A=
			CommandEvent ce =3D (CommandEvent) e;=0A=
			m_addToSel =3D ce.IsChecked;=0A=
		}		=0A=
=0A=
		public void OnSetHighlightWidth( object sender, Event e )=0A=
		{=0A=
			string[] choices =3D { "0", "1", "2", "3", "4", "5", "6", "7", "8", =
"9", "10" };=0A=
=0A=
			SingleChoiceDialog dlg =3D new SingleChoiceDialog(this, "Choose the =
thickness of the highlight pen:",=0A=
				"Pen Width", choices);=0A=
=0A=
			int current =3D grid.CellHighlightPenWidth;=0A=
			dlg.SetSelection( current );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK ) =0A=
			{=0A=
				grid.CellHighlightPenWidth =3D dlg.GetSelection();=0A=
			}			=0A=
		}		=0A=
=0A=
		public void OnSetROHighlightWidth( object sender, Event e )=0A=
		{=0A=
			string[] choices =3D { "0", "1", "2", "3", "4", "5", "6", "7", "8", =
"9", "10" };=0A=
=0A=
			SingleChoiceDialog dlg =3D new SingleChoiceDialog(this, "Choose the =
thickness of the highlight pen:",=0A=
				"Pen Width", choices);=0A=
=0A=
			int current =3D grid.CellHighlightROPenWidth;=0A=
			dlg.SetSelection( current );=0A=
			if ( dlg.ShowModal() =3D=3D wxID_OK ) =0A=
			{=0A=
				grid.CellHighlightROPenWidth =3D dlg.GetSelection();=0A=
			}			=0A=
		}		=0A=
		=0A=
		public void OnLabelLeftClick( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			=0A=
			if ( ge.Row !=3D -1 )=0A=
			{=0A=
				logBuf =3D "Left click on row label " + ge.Row;=0A=
			}=0A=
			else if ( ge.Col !=3D -1 )=0A=
			{=0A=
				logBuf +=3D "Left click on col label " + ge.Col;=0A=
			}=0A=
			else=0A=
			{=0A=
				logBuf +=3D "Left click on corner label";=0A=
			}=0A=
=0A=
			if ( ge.ShiftDown ) logBuf +=3D " (shift down)";=0A=
			if ( ge.ControlDown ) logBuf +=3D " (control down)";=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			// you must call event skip if you want default grid processing=0A=
			=0A=
			ge.Skip();			=0A=
		}		=0A=
		=0A=
		public void OnCellLeftClick( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			logBuf =3D "Left click at row " + ge.Row + " col " + ge.Col;=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			// you must call event skip if you want default grid processing=0A=
			// (cell highlighting etc.)=0A=
			=0A=
			ge.Skip();			=0A=
		}		=0A=
=0A=
		public void OnRowSize( object sender, Event e )=0A=
		{=0A=
			GridSizeEvent ge =3D (GridSizeEvent) e;=0A=
			logBuf =3D "Resized row " + ge.RowOrCol;=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			ge.Skip();			=0A=
		}		=0A=
		=0A=
		public void OnColSize( object sender, Event e )=0A=
		{=0A=
			GridSizeEvent ge =3D (GridSizeEvent) e;=0A=
			logBuf =3D "Resized col " + ge.RowOrCol;=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			ge.Skip();			=0A=
		}		=0A=
=0A=
		public void OnSelectCell( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			if ( ge.Selecting )=0A=
				logBuf =3D "Selected ";=0A=
			else=0A=
				logBuf =3D "Deselected ";=0A=
				=0A=
			logBuf +=3D "cell at row " + ge.Row +=0A=
				" col " + ge.Col +=0A=
				" ( ControlDown: " + ( ge.ControlDown ? 'T':'F' ) +=0A=
				", ShiftDown: " + (ge.ShiftDown ? 'T':'F') +=0A=
				", AltDown: " + (ge.AltDown ? 'T':'F') +=0A=
				", MetaDown: " + (ge.MetaDown ? 'T':'F') + " )";=0A=
				=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			// you must call Skip() if you want the default processing=0A=
			// to occur in wxGrid=0A=
			ge.Skip();			=0A=
		}		=0A=
		=0A=
		public void OnRangeSelected( object sender, Event e )=0A=
		{=0A=
			GridRangeSelectEvent ge =3D (GridRangeSelectEvent) e;=0A=
			=0A=
			if ( ge.Selecting )=0A=
				logBuf =3D "Selected ";=0A=
			else=0A=
				logBuf =3D "Deselected ";=0A=
				=0A=
			logBuf +=3D "cells from row " + ge.TopRow +=0A=
				" col " + ge.LeftCol +=0A=
				" to row " + ge.BottomRow +=0A=
				" col " + ge.RightCol +=0A=
				" ( ControlDown: " + (ge.ControlDown ? 'T':'F') +=0A=
				", ShiftDown: " + (ge.ShiftDown ? 'T':'F') +=0A=
				", AltDown: " + (ge.AltDown ? 'T':'F') +=0A=
				", MetaDown: " + (ge.MetaDown ? 'T':'F') + " )";=0A=
				=0A=
			Log.LogMessage( logBuf );=0A=
=0A=
			ge.Skip();			=0A=
		}		=0A=
=0A=
		public void OnCellValueChanged( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			=0A=
			logBuf =3D "Value changed for cell at" +=0A=
				" row " + ge.Row +=0A=
				" col " + ge.Col;=0A=
=0A=
				Log.LogMessage( logBuf );=0A=
=0A=
			ge.Skip();			=0A=
		}		=0A=
=0A=
		public void OnEditorShown( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			if ( ( ge.Col =3D=3D 4 ) &&=0A=
				( ge.Row =3D=3D 0 ) &&=0A=
				( wx.MessageDialog.ShowModal( "Are you sure you wish to edit this =
cell",=0A=
						"Checking", Dialog.wxYES_NO ) =3D=3D wxID_NO ) ) =0A=
			{=0A=
=0A=
				ge.Veto();=0A=
				return;=0A=
			}=0A=
			=0A=
			Log.LogMessage( "Cell editor shown." );=0A=
=0A=
			ge.Skip();=0A=
		}		=0A=
=0A=
		public void OnEditorHidden( object sender, Event e )=0A=
		{=0A=
			GridEvent ge =3D (GridEvent) e;=0A=
			if ( ( ge.Col =3D=3D 4 ) &&=0A=
				( ge.Row =3D=3D 0 ) &&=0A=
				( wx.MessageDialog.ShowModal( "Are you sure you wish to finish =
editing this cell",=0A=
						"Checking", Dialog.wxYES_NO ) =3D=3D wxID_NO ) ) =0A=
			{=0A=
=0A=
				ge.Veto();=0A=
				return;=0A=
			}=0A=
=0A=
			Log.LogMessage( "Cell editor hidden." );=0A=
=0A=
			ge.Skip();			=0A=
		}				=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
	=0A=
	public class BugsGridFrame : Frame=0A=
	{=0A=
		public enum Columns=0A=
		{=0A=
			Col_Id,=0A=
			Col_Summary,=0A=
			Col_Severity, =0A=
			Col_Priority,=0A=
			Col_Platform,=0A=
			Col_Opened,=0A=
			Col_Max=0A=
		}=0A=
		=0A=
		public string[] severities =3D=0A=
		{=0A=
			"wishlist",=0A=
			"minor",=0A=
			"normal",=0A=
			"major",=0A=
			"critical"=0A=
		};=0A=
		=0A=
		public BugsGridFrame()=0A=
			: base( null, -1, "Bugs table", wxDefaultPosition, new Size( 500, =
300 ) )=0A=
		{=0A=
			Grid grid =3D new Grid( this, -1, wxDefaultPosition );=0A=
			GridTableBase table =3D new BugsGridTable();=0A=
			table.SetAttrProvider( new MyGridCellAttrProvider() );=0A=
			grid.SetTable(table, true);=0A=
=0A=
			GridCellAttr attrRO    =3D new GridCellAttr();=0A=
			GridCellAttr attrRange =3D new GridCellAttr();=0A=
			GridCellAttr attrCombo =3D new GridCellAttr();=0A=
=0A=
			attrRO.ReadOnly  =3D true;=0A=
			attrRange.Editor =3D new GridCellNumberEditor( 1, 5 );=0A=
			attrCombo.Editor =3D new GridCellChoiceEditor( severities );=0A=
=0A=
			grid.SetColAttr((int)Columns.Col_Id,       attrRO);=0A=
			grid.SetColAttr((int)Columns.Col_Priority, attrRange);=0A=
			grid.SetColAttr((int)Columns.Col_Severity, attrCombo);=0A=
=0A=
			grid.SetMargins(0, 0);=0A=
=0A=
			grid.Fit();=0A=
			ClientSize =3D grid.Size;			=0A=
		}=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
	=0A=
	public class BugsGridTable : GridTableBase=0A=
	{=0A=
		public enum Columns=0A=
		{=0A=
			Col_Id,=0A=
			Col_Summary,=0A=
			Col_Severity,=0A=
			Col_Priority,=0A=
			Col_Platform,=0A=
			Col_Opened,=0A=
			Col_Max=0A=
		}	=0A=
		=0A=
		public enum Severity=0A=
		{=0A=
			Sev_Wish,=0A=
			Sev_Minor,=0A=
			Sev_Normal,=0A=
			Sev_Major,=0A=
			Sev_Critical,=0A=
			Sev_Max=0A=
		}=0A=
		=0A=
		public struct BugsGridData=0A=
		{=0A=
			public int id;=0A=
			public string summary;=0A=
			public Severity severity;=0A=
			public int prio;=0A=
			public string platform;=0A=
			public bool opened;=0A=
			=0A=
            public BugsGridData(int id, string summary, Severity =
severity, =0A=
                                int prio, string platform, bool =
opened)=0A=
			{=0A=
				this.id =3D id;=0A=
				this.summary =3D summary;=0A=
				this.severity =3D severity;=0A=
				this.prio =3D prio;=0A=
				this.platform =3D platform;=0A=
				this.opened =3D opened;=0A=
			}=0A=
		}=0A=
		=0A=
		public static string[] severities =3D=0A=
		{=0A=
			"wishlist",=0A=
			"minor",=0A=
			"normal",=0A=
			"major",=0A=
			"critical"=0A=
		};=0A=
		=0A=
		public static string[] headers =3D=0A=
		{=0A=
			"Id",=0A=
			"Summary",=0A=
			"Severity",=0A=
			"Priority",=0A=
			"Platform",=0A=
			"Opened?"=0A=
		};=0A=
		=0A=
		public static BugsGridData[] gs_dataBugsGrid =3D new =
BugsGridData[4];=0A=
		=0A=
		public BugsGridTable() =0A=
			: base()=0A=
		{=0A=
			gs_dataBugsGrid[0] =3D new BugsGridData( 18, "foo doesn't work", =
Severity.Sev_Major, 1, "wxMSW", true );=0A=
			gs_dataBugsGrid[1] =3D new BugsGridData( 27, "bar crashes", =
Severity.Sev_Critical, 1, "all", false );=0A=
			gs_dataBugsGrid[2] =3D new BugsGridData( 45, "printing is slow", =
Severity.Sev_Minor, 3, "wxMSW", true );=0A=
			gs_dataBugsGrid[3] =3D new BugsGridData( 68, "Rectangle() fails", =
Severity.Sev_Normal, 1, "wxMSW", false );=0A=
		}=0A=
		=0A=
		public override int GetNumberRows()=0A=
		{=0A=
			return gs_dataBugsGrid.Length;=0A=
		}=0A=
		=0A=
		public override int GetNumberCols()=0A=
		{=0A=
			return (int)Columns.Col_Max;=0A=
		}=0A=
		=0A=
		public override bool IsEmptyCell( int row, int col )=0A=
		{=0A=
			return false;=0A=
		}=0A=
		=0A=
		public override string GetValue( int row, int col )=0A=
		{=0A=
			BugsGridData gd =3D gs_dataBugsGrid[row];=0A=
			=0A=
			switch( col )=0A=
			{=0A=
				case (int)Columns.Col_Id:=0A=
				case (int)Columns.Col_Priority:=0A=
				case (int)Columns.Col_Opened:=0A=
					Log.LogError( "unexpected column" );=0A=
				break;=0A=
=0A=
				case (int)Columns.Col_Severity:=0A=
					return severities[(int)gd.severity];=0A=
=0A=
				case (int)Columns.Col_Summary:=0A=
					return gd.summary;=0A=
=0A=
				case (int)Columns.Col_Platform:=0A=
					return gd.platform;=0A=
			}=0A=
=0A=
			return "";				=0A=
		}=0A=
		=0A=
		public override void SetValue( int row, int col, string value)=0A=
		{=0A=
			BugsGridData gd =3D gs_dataBugsGrid[row];=0A=
=0A=
			switch ( col )=0A=
			{=0A=
				case (int)Columns.Col_Id:=0A=
				case (int)Columns.Col_Priority:=0A=
				case (int)Columns.Col_Opened:=0A=
					Log.LogError( "unexpected column" );=0A=
				break;=0A=
=0A=
				case (int)Columns.Col_Severity:=0A=
				{=0A=
					int n;=0A=
					for ( n =3D 0; n < severities.Length; n++ )=0A=
					{=0A=
						if ( severities[n] =3D=3D value )=0A=
						{=0A=
							gd.severity =3D (Severity)n;=0A=
							break;=0A=
						} =0A=
					}=0A=
=0A=
					if ( n =3D=3D severities.Length )=0A=
					{=0A=
						Log.LogWarning( "Invalid severity value '{0}'.", value );=0A=
						gd.severity =3D Severity.Sev_Normal;=0A=
					}=0A=
				}=0A=
				break;=0A=
=0A=
				case (int)Columns.Col_Summary:=0A=
					gd.summary =3D value;=0A=
				break;=0A=
=0A=
				case (int)Columns.Col_Platform:=0A=
					gd.platform =3D value;=0A=
				break;=0A=
			}			=0A=
		}=0A=
		=0A=
		public override string GetColLabelValue( int col )=0A=
		{=0A=
			return headers[col];=0A=
		}=0A=
		=0A=
		public override string GetTypeName( int row, int col )=0A=
		{=0A=
			switch ( col )=0A=
			{=0A=
				case (int)Columns.Col_Id:=0A=
					return "long";=0A=
				=0A=
				case (int)Columns.Col_Priority:=0A=
					return "long";=0A=
=0A=
				case (int)Columns.Col_Severity:=0A=
					return "string:80";=0A=
=0A=
				case (int)Columns.Col_Summary:=0A=
					return "string:80";=0A=
=0A=
				case (int)Columns.Col_Platform:=0A=
					return "choice:all,MSW,GTK,other";=0A=
=0A=
				case (int)Columns.Col_Opened:=0A=
					return "bool";=0A=
			}=0A=
=0A=
			return "";			=0A=
		}=0A=
		=0A=
		public override bool CanGetValueAs( int row, int col, string typeName =
)=0A=
		{=0A=
			if ( typeName =3D=3D "string" )=0A=
			{=0A=
				return true;=0A=
			}=0A=
			else if ( typeName =3D=3D "bool" )=0A=
			{=0A=
				return col =3D=3D (int)Columns.Col_Opened;=0A=
			}=0A=
			else if ( typeName =3D=3D "long" )=0A=
			{=0A=
				return col =3D=3D (int)Columns.Col_Id || col =3D=3D =
(int)Columns.Col_Priority || col =3D=3D (int)Columns.Col_Severity;=0A=
			}=0A=
			else=0A=
			{=0A=
				return false;=0A=
			}			=0A=
		}=0A=
		=0A=
		public override bool CanSetValueAs( int row, int col, string typeName =
)=0A=
		{=0A=
			return CanGetValueAs(row, col, typeName);=0A=
		}=0A=
=0A=
		public override long GetValueAsLong( int row, int col )=0A=
		{=0A=
			BugsGridData gd =3D gs_dataBugsGrid[row];=0A=
			=0A=
			switch ( col )=0A=
			{=0A=
				case (int)Columns.Col_Id:=0A=
					return gd.id;=0A=
=0A=
				case (int)Columns.Col_Priority:=0A=
					return gd.prio;=0A=
=0A=
				case (int)Columns.Col_Severity:=0A=
					return (int)gd.severity;=0A=
=0A=
				default:=0A=
					Log.LogError( "unexpected column" );=0A=
					return -1;=0A=
			}			=0A=
		}=0A=
		=0A=
		public override bool GetValueAsBool( int row, int col )=0A=
		{=0A=
			if ( col =3D=3D (int)Columns.Col_Opened )=0A=
			{=0A=
				return gs_dataBugsGrid[row].opened;=0A=
			}=0A=
			else =0A=
			{=0A=
				Log.LogError( "unexpected column" );=0A=
=0A=
				return false;=0A=
			}			=0A=
		} =0A=
=0A=
		public override void SetValueAsLong( int row, int col, long value =
)=0A=
		{=0A=
			BugsGridData gd =3D gs_dataBugsGrid[row];=0A=
			=0A=
=0A=
			switch ( col )=0A=
			{=0A=
				case (int)Columns.Col_Priority:=0A=
					gd.prio =3D (int)value;=0A=
				break;=0A=
=0A=
				default:=0A=
					Log.LogError( "unexpected column" );=0A=
				break;=0A=
			}			=0A=
		}=0A=
		=0A=
		public override void SetValueAsBool( int row, int col, bool value =
)=0A=
		{=0A=
			if ( col =3D=3D (int)Columns.Col_Opened )=0A=
			{=0A=
				gs_dataBugsGrid[row].opened =3D value;=0A=
			}=0A=
			else=0A=
			{=0A=
				Log.LogError( "unexpected column" );=0A=
			}			=0A=
		}=0A=
	} =0A=
	 =0A=
	=
//---------------------------------------------------------------------=0A=
	=0A=
	public class MyGridCellAttrProvider : GridCellAttrProvider=0A=
	{=0A=
		private GridCellAttr m_attrForOddRows;=0A=
		=0A=
		public MyGridCellAttrProvider()=0A=
		{=0A=
			m_attrForOddRows =3D new GridCellAttr();=0A=
			m_attrForOddRows.BackgroundColour =3D Colour.wxLIGHT_GREY;=0A=
		}=0A=
		=0A=
		public override GridCellAttr GetAttr( int row, int col, =
GridCellAttr.AttrKind kind)=0A=
		{=0A=
		=0A=
			GridCellAttr attr =3D base.GetAttr(row, col, kind);=0A=
=0A=
			if ( ( row % 2 ) > 0 )=0A=
			{=0A=
				if ( attr =3D=3D null )=0A=
				{=0A=
					attr =3D m_attrForOddRows;=0A=
					attr.IncRef();=0A=
				}=0A=
				else=0A=
				{=0A=
					if ( !attr.HasBackgroundColour )=0A=
					{=0A=
						GridCellAttr attrNew =3D attr.Clone();=0A=
						attr.DecRef();=0A=
						attr =3D attrNew;=0A=
						attr.BackgroundColour =3D Colour.wxLIGHT_GREY;=0A=
					}=0A=
				}=0A=
			}=0A=
=0A=
			return attr;			=0A=
		}=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
	=0A=
	public class MyGridCellRenderer : GridCellStringRenderer=0A=
	{=0A=
		public MyGridCellRenderer()=0A=
			: base() {}=0A=
			=0A=
		public override void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected)=0A=
		{=0A=
			Draw(grid, attr, dc, rect, row, col, isSelected);=0A=
			=0A=
			dc.Pen =3D GDIPens.wxGREEN_PEN;=0A=
			dc.Brush =3D GDIBrushes.wxTRANSPARENT_BRUSH;=0A=
			dc.DrawEllipse( rect.X, rect.Y, rect.Width, rect.Height );=0A=
		}=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
=0A=
	public class NumericInput : TextCtrl=0A=
	{=0A=
        int m_max=3Dint.MaxValue;=0A=
		public NumericInput(Window parent, int id, int defaultValue)=0A=
			: base(parent, id, defaultValue.ToString(), wxDefaultPosition, =
wxDefaultSize)=0A=
		{=0A=
			Char +=3D new EventListener( OnChar );=0A=
		}=0A=
=0A=
		public NumericInput(Window parent, int id, int defaultValue, =
System.Drawing.Point pos, System.Drawing.Size size)=0A=
			: base(parent, id, defaultValue.ToString(), pos, size)=0A=
		{=0A=
			Char +=3D new EventListener( OnChar );=0A=
		}=0A=
=0A=
        /** The maximum value.=0A=
         * This might be \c null in case of unconstrained input.=0A=
         * */=0A=
        public int MaxValue { get { return m_max; } set { =
m_max=3Dvalue; } }=0A=
=0A=
		public void OnChar( object sender, Event e )=0A=
		{=0A=
            if (e is KeyEvent)=0A=
            {=0A=
                KeyEvent kev=3D(KeyEvent) e;=0A=
                if (kev.KeyCode >=3D '0' && kev.KeyCode <=3D '9')=0A=
                {=0A=
                    Value=3DValue.Substring(0, (int)InsertionPoint)=0A=
                        +new string((char) kev.KeyCode, 1)=0A=
                        +Value.Substring((int)InsertionPoint);=0A=
                }=0A=
                else if (kev.KeyCode=3D=3D(int)KeyCode.WXK_DELETE=0A=
                    || kev.KeyCode=3D=3D(int)KeyCode.WXK_BACK=0A=
                    || kev.KeyCode >=3D 256)=0A=
                {=0A=
                    kev.Skip();=0A=
                }=0A=
                         =0A=
            }=0A=
		}=0A=
=0A=
        /** Sets and gets the text value.=0A=
         * On setting the value: A value containing non-digits will be =
ignored.=0A=
         * If minimum or maximum is exceeded, either a text =
representation of the=0A=
         * minimum is set or the last digits of the value will be =
selected.=0A=
         * */=0A=
        public string Value=0A=
        {=0A=
            get=0A=
            {=0A=
                long selFrom, selTo;=0A=
                this.GetSelection(out selFrom, out selTo);=0A=
                if (selFrom=3D=3DselTo)=0A=
                    return base.Value;=0A=
                else=0A=
                    return base.Value.Substring(0, (int)selFrom);=0A=
            }=0A=
            set=20
            {=0A=
                string generatedValue=3D"";=0A=
                bool isValueOK=3Dtrue;=0A=
                int posLeqMax=3D-1;=0A=
                int numValue=3D0;=0A=
                for(int pos=3D0; isValueOK && pos < value.Length; =
++pos)=0A=
                {=0A=
                    if (value[pos] >=3D '0' && value[pos] <=3D '9')=0A=
                    {=0A=
                        generatedValue+=3Dnew string(value[pos], 1);=0A=
                        if (posLeqMax < 0)=0A=
                        {=0A=
                            =
numValue=3DConvert.ToInt32(generatedValue);=0A=
                            if (numValue > m_max) posLeqMax=3Dpos;=0A=
                        }=0A=
                    }=0A=
                    else=0A=
                        isValueOK=3Dfalse;=0A=
                }=0A=
                if (isValueOK)=0A=
                {=0A=
                    if (generatedValue.Length =3D=3D 0)=0A=
                    {=0A=
                        base.Value=3D"0";=0A=
                        this.SetInsertionPointEnd();=0A=
                    }=0A=
                    else=0A=
                    {=0A=
                        long oldInsertionPoint=3DInsertionPoint;=0A=
                        base.Value=3DgeneratedValue;=0A=
                        if (posLeqMax >=3D 0)=0A=
                        {=0A=
                            this.SetSelection(posLeqMax, -1);=0A=
                        }=0A=
                        else=0A=
                            InsertionPoint=3DoldInsertionPoint+1;=0A=
                    }=0A=
                }=0A=
            }=0A=
        }=0A=
	}=0A=
=0A=
	public class NumericGridEditor : GridCellEditor=0A=
	{=0A=
		private int m_min;=0A=
	    private int m_max;=0A=
=0A=
        protected NumericInput GetInputCtrl()=0A=
        {=0A=
            return (NumericInput) GetControl();=0A=
        }=0A=
=0A=
		public NumericGridEditor(int min, int max)=0A=
            : base()=0A=
		{=0A=
			m_min=3Dmin;=0A=
			m_max=3Dmax;=0A=
		}=0A=
=0A=
		public override GridCellEditor Clone()=0A=
		{=0A=
			return new NumericGridEditor(m_min, m_max);=0A=
		}=0A=
=0A=
		public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
		{=0A=
			NumericInput ctrl=3Dnew NumericInput(parent, id, m_min);=0A=
            ctrl.MaxValue=3Dm_max;=0A=
            SetControl(ctrl);=0A=
            if (evtHandler!=3Dnull)=0A=
                ctrl.PushEventHandler(evtHandler);=0A=
		}=0A=
=0A=
        public override void StartingKey(KeyEvent e)=0A=
        {=0A=
            if (e.KeyCode >=3D '0' && e.KeyCode <=3D '9')=0A=
            {=0A=
                NumericInput ctrl=3DGetInputCtrl();=0A=
                if (ctrl!=3Dnull)=0A=
                {=0A=
                    ctrl.Value=3Dnew string((char) e.KeyCode, 1);=0A=
                    ctrl.SetInsertionPointEnd();=0A=
                }=0A=
            }=0A=
            else=0A=
                e.Skip();=0A=
        }=0A=
=0A=
		public override void BeginEdit(int row, int col, Grid grid)=0A=
		{=0A=
            NumericInput ctrl=3DGetInputCtrl();=0A=
            ctrl.Value=3Dgrid.GetCellValue(row, col);=0A=
			ctrl.SetFocus();=0A=
			ctrl.SetSelection(-1, -1);=0A=
		}=0A=
=0A=
		public override bool EndEdit(int row, int col, Grid grid)=0A=
		{=0A=
            NumericInput ctrl=3DGetInputCtrl();=0A=
            bool result=3Dctrl.Value !=3D grid.GetCellValue(row, =
col);=0A=
			grid.SetCellValue(row, col, ctrl.Value);=0A=
			return result;=0A=
		}=0A=
=0A=
		public override void Reset()=0A=
		{=0A=
		}=0A=
	}=0A=
=0A=
	=
//---------------------------------------------------------------------=0A=
=0A=
	public class DateAsTextInput : Panel=0A=
	{=0A=
		public DateAsTextInput(Window parent, int id, System.Drawing.Point =
pos, System.Drawing.Size size)=0A=
			: base(parent, id, pos, size)=0A=
		{=0A=
		}=0A=
=0A=
=0A=
	}=0A=
=0A=
	=
//---------------------------------------------------------------------=0A=
=0A=
	public class BigGridFrame : Frame=0A=
	{=0A=
		private Grid m_grid;=0A=
		private BigGridTable m_table;=0A=
		=0A=
		public BigGridFrame(long sizeGrid)=0A=
			: base(null, -1, "Plugin Virtual Table", wxDefaultPosition, new =
Size( 500, 450 ) )=0A=
		{=0A=
			Icon =3D new wx.Icon( "../Samples/Grid/mondrian.png" );=0A=
=0A=
			m_grid =3D new Grid( this, -1, wxDefaultPosition, wxDefaultSize =
);=0A=
			m_grid.SetDefaultRowSize(2*m_grid.GetRowHeight(0), true);=0A=
			m_grid.SetDefaultCellAlignment((int)Alignment.wxALIGN_CENTRE, =
(int)Alignment.wxALIGN_CENTRE );=0A=
			m_grid.RegisterDataType("num8888", new GridCellStringRenderer(), new =
NumericGridEditor(0, 8888));=0A=
			m_grid.SetCellEditor(1, 1, new NumericGridEditor(10, 20));=0A=
			m_table =3D new BigGridTable( sizeGrid );=0A=
			m_grid.SetTable( m_table, true );=0A=
		}=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
=0A=
   //! A simple struct to represent the coordinates in a table.=0A=
   /*! Instances of this class may be used as a key in hashtables.=0A=
   */=0A=
   public struct TableCoordinate=0A=
   {=0A=
      private int m_row;=0A=
      private int m_col;=0A=
      public TableCoordinate(int row, int col)=0A=
      {=0A=
         m_row=3Drow;=0A=
         m_col=3Dcol;=0A=
      }=0A=
=0A=
	   // The row as property.=0A=
	   public int Row=20
	   {=0A=
		   get { return m_row; }=0A=
		   set { m_row=3Dvalue; }=0A=
	   }=0A=
	   // The column as property.=0A=
	   public int Column
	   {=0A=
		   get { return m_col; }=0A=
		   set { m_col=3Dvalue; }=0A=
	   }=0A=
=0A=
      public override bool Equals(object arg)=0A=
      {=0A=
         if (arg is TableCoordinate)=0A=
         {=0A=
            TableCoordinate castedArg=3D(TableCoordinate) arg;=0A=
            return m_row=3D=3DcastedArg.m_row && =
m_col=3D=3DcastedArg.m_col;=0A=
         }=0A=
         else=0A=
            return false;=0A=
      }=0A=
=0A=
	   public override int GetHashCode()=0A=
	   {=0A=
		   return m_row*m_row+m_col;=0A=
	   }=0A=
=0A=
	   public override string ToString()=0A=
	   {=0A=
		   return "(" + m_row + ", " + m_col + ")";=0A=
	   }=0A=
   }=0A=
	=0A=
	public class BigGridTable : GridTableBase=0A=
	{=0A=
		private long m_sizeGrid;=0A=
		//! A dictionary containing all input. Uses TableCoordinate as =
key.=0A=
		private IDictionary m_data;=0A=
=0A=
		//! Display attributes of odd rows. Access via AttrForOddRows().=0A=
		static private GridCellAttr s_attrForOddRows=3Dnull;=0A=
		//! Display attributes of odd rows. Access via AttrForEvenRows().=0A=
		static private GridCellAttr s_attrForEvenRows=3Dnull;=0A=
=0A=
		//! Display attributes of odd rows (currently read only).=0A=
		public GridCellAttr AttrForOddRows=0A=
		{=0A=
			get=0A=
			{=0A=
				if (s_attrForOddRows=3D=3Dnull)=0A=
				{=0A=
					s_attrForOddRows=3Dnew GridCellAttr();=0A=
					s_attrForOddRows.BackgroundColour =3D new Colour(240, 240, =
240);=0A=
				}=0A=
				return s_attrForOddRows;=0A=
			}=0A=
		}=0A=
=0A=
		//! Display attributes of even rows (currently read only).=0A=
		public GridCellAttr AttrForEvenRows=0A=
		{=0A=
			get=0A=
			{=0A=
				if (s_attrForEvenRows=3D=3Dnull)=0A=
				{=0A=
					s_attrForEvenRows=3Dnew GridCellAttr();=0A=
				}=0A=
				return s_attrForEvenRows;=0A=
			}=0A=
		}=0A=
=0A=
		public BigGridTable( long sizeGrid)=0A=
			: base()=0A=
		{=0A=
			m_sizeGrid =3D sizeGrid;=0A=
			m_data=3Dnew Hashtable();=0A=
		}=0A=
		=0A=
		//! Result is the number of all rows with input in this column.=0A=
		public int NoOfInputsCol(int col)=0A=
		{=0A=
			int result=3D0;=0A=
			foreach(TableCoordinate key in m_data.Keys)=0A=
			{=0A=
				if (key.Column=3D=3Dcol) ++result;=0A=
			}=0A=
			return result;=0A=
		}=0A=
=0A=
		//! Result is the number of all columns with input in this row.=0A=
		public int NoOfInputsRow(int row)=0A=
		{=0A=
			int result=3D0;=0A=
			foreach(TableCoordinate key in m_data.Keys)=0A=
			{=0A=
				if (key.Row=3D=3Drow) ++result;=0A=
			}=0A=
			return result;=0A=
		}=0A=
=0A=
		public override int GetNumberRows()=0A=
		{=0A=
			return (int)m_sizeGrid;=0A=
		}=0A=
		=0A=
		public override int GetNumberCols()=0A=
		{=0A=
			return (int)m_sizeGrid;=0A=
		}=0A=
=0A=
		public override string GetColLabelValue(int col)=0A=
		{=0A=
			return col.ToString()+"\n("+NoOfInputsCol(col)+")"+GetTypeName(0, =
col);=0A=
		}=0A=
=0A=
		public override string GetRowLabelValue(int row)=0A=
		{=0A=
			return row.ToString()+"\n("+NoOfInputsRow(row)+")";=0A=
		}=0A=
=0A=
		public override string GetValue( int row, int col )=0A=
		{=0A=
			TableCoordinate coord=3Dnew TableCoordinate(row, col);=0A=
			if (m_data.Contains(coord))=0A=
				return m_data[coord].ToString();=0A=
			else=0A=
				if (row+col > 100)=0A=
					return "";=0A=
				else=0A=
					return coord.ToString();=0A=
		}=0A=
		=0A=
		public override void SetValue( int row, int col, string val )=0A=
		{=0A=
			TableCoordinate coord=3Dnew TableCoordinate(row, col);=0A=
			m_data[coord]=3Dval;=0A=
			GetView().ForceRefresh();=0A=
		}=0A=
		=0A=
		public override string GetTypeName(int row, int col)=0A=
		{=0A=
            if (col%2=3D=3D0) return "num8888";=0A=
            else return "string";=0A=
		}=0A=
=0A=
		public override bool IsEmptyCell( int row, int col )=0A=
		{=0A=
			if (row+col > 100)=0A=
			{=0A=
				return !m_data.Contains(new TableCoordinate(row, col));=0A=
			}=0A=
			else=0A=
				return false;=0A=
		}=0A=
=0A=
		public override GridCellAttr GetAttr(int row, int col, =
GridCellAttr.AttrKind kind)=0A=
		{=0A=
			GridCellAttr attr =3D base.GetAttr(row, col, kind);=0A=
			if ( ( row % 2 ) > 0 )=0A=
			{=0A=
				if ( attr =3D=3D null )=0A=
				{=0A=
					attr =3D AttrForOddRows;=0A=
					attr.IncRef();=0A=
				}=0A=
				else if ( !attr.HasBackgroundColour )=0A=
				{=0A=
					GridCellAttr attrNew =3D attr.Clone();=0A=
					attr.DecRef();=0A=
					attr =3D attrNew;=0A=
				}=0A=
				attr.BackgroundColour =3D AttrForOddRows.BackgroundColour;=0A=
			}=0A=
			if (m_data.Contains(new TableCoordinate(row, col)))=0A=
			{=0A=
				if ( attr =3D=3D null )=0A=
				{=0A=
					attr =3D AttrForEvenRows;=0A=
					attr.IncRef();=0A=
				}=0A=
				else if ( !attr.HasFont )=0A=
				{=0A=
					GridCellAttr attrNew =3D attr.Clone();=0A=
					attr.DecRef();=0A=
					attr =3D attrNew;=0A=
				}=0A=
				Font newFont=3Dnew Font(GetView().Font);=0A=
				newFont.Style=3DFontStyle.wxSLANT;=0A=
				newFont.Weight=3DFontWeight.wxBOLD;=0A=
				newFont.Underlined=3Dfalse;=0A=
				attr.Font=3DnewFont;=0A=
			}=0A=
			return attr;=0A=
		}=0A=
		=0A=
=0A=
		public override bool CanHaveAttributes()=0A=
		{=0A=
			return true;=0A=
		}=0A=
	}=0A=
	=0A=
	=
//---------------------------------------------------------------------=0A=
=0A=
	public class GridApp : wx.App=0A=
	{=0A=
		public override bool OnInit()=0A=
		{=0A=
			GridFrame frame =3D new GridFrame();=0A=
			frame.Show( true );=0A=
=0A=
			return true;=0A=
		}=0A=
=0A=
		=
//---------------------------------------------------------------------=0A=
=0A=
		[STAThread]=0A=
		static void Main()=0A=
		{=0A=
			GridApp app =3D new GridApp();=0A=
			app.Run();=0A=
		}=0A=
	}	=0A=
}=0A=

------_=_NextPart_000_01C648F9.90825A1A
Content-Type: application/octet-stream;
	name="grid.cxx"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="grid.cxx"

//----------------------------------------------------------------------=
-------=0A=
// wx.NET - grid.cxx=0A=
// =0A=
// The wxGrid proxy interface.=0A=
//=0A=
// Written by Bryan Bulten ([email protected])=0A=
// (C) 2003 by Bryan Bulten=0A=
// Licensed under the wxWidgets license, see LICENSE.txt for =
details.=0A=
//=0A=
// $Id: grid.cxx,v 1.12 2004/11/25 20:50:10 olkalex Exp $=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
#include <wx/wx.h>=0A=
#include <wx/grid.h>=0A=
#include <wx/generic/gridctrl.h>=0A=
#include "local_events.h"=0A=
=0A=
#if defined(_WINDOWS)=0A=
#define CALLBACK __stdcall=0A=
#else=0A=
#define CALLBACK=0A=
#endif=0A=
=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridEvent=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridEvent* wxGridEvent_ctor(int id, wxEventType type, wxObject* obj, =
int row, int col, int x, int y, bool sel, bool control, bool shift, =
bool alt, bool meta)=0A=
{=0A=
    return new wxGridEvent(id, type, obj, row, col, x, y, sel, control, =
shift, alt, meta);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridEvent_GetRow(wxGridEvent* self)=0A=
{=0A=
    return self->GetRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridEvent_GetCol(wxGridEvent* self)=0A=
{=0A=
    return self->GetCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEvent_GetPosition(wxGridEvent* self, wxPoint* pt)=0A=
{=0A=
    *pt =3D self->GetPosition();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_Selecting(wxGridEvent* self)=0A=
{=0A=
    return self->Selecting()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_ControlDown(wxGridEvent* self)=0A=
{=0A=
    return self->ControlDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_MetaDown(wxGridEvent* self)=0A=
{=0A=
    return self->MetaDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_ShiftDown(wxGridEvent* self)=0A=
{=0A=
    return self->ShiftDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_AltDown(wxGridEvent* self)=0A=
{=0A=
    return self->AltDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEvent_Veto(wxGridEvent* self)=0A=
{=0A=
    self->Veto();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEvent_Allow(wxGridEvent* self)=0A=
{=0A=
    self->Allow();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridEvent_IsAllowed(wxGridEvent* self)=0A=
{=0A=
    return self->IsAllowed()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridRangeSelectEvent=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridRangeSelectEvent* wxGridRangeSelectEvent_ctor(int id, wxEventType =
type, wxObject* obj, wxGridCellCoords* topLeft, wxGridCellCoords* =
bottomRight, bool sel, bool control, bool shift, bool alt, bool =
meta)=0A=
{=0A=
    return new wxGridRangeSelectEvent(id, type, obj, *topLeft, =
*bottomRight, sel, control, shift, alt, meta);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoords* =
wxGridRangeSelectEvent_GetTopLeftCoords(wxGridRangeSelectEvent* =
self)=0A=
{=0A=
    return new wxGridCellCoords(self->GetTopLeftCoords());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoords* =
wxGridRangeSelectEvent_GetBottomRightCoords(wxGridRangeSelectEvent* =
self)=0A=
{=0A=
    return new wxGridCellCoords(self->GetBottomRightCoords());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridRangeSelectEvent_GetTopRow(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->GetTopRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridRangeSelectEvent_GetBottomRow(wxGridRangeSelectEvent* =
self)=0A=
{=0A=
    return self->GetBottomRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridRangeSelectEvent_GetLeftCol(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->GetLeftCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridRangeSelectEvent_GetRightCol(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->GetRightCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_Selecting(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->Selecting()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_ControlDown(wxGridRangeSelectEvent* =
self)=0A=
{=0A=
    return self->ControlDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_MetaDown(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->MetaDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_ShiftDown(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->ShiftDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_AltDown(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->AltDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridRangeSelectEvent_Veto(wxGridRangeSelectEvent* self)=0A=
{=0A=
    self->Veto();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridRangeSelectEvent_Allow(wxGridRangeSelectEvent* self)=0A=
{=0A=
    self->Allow();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridRangeSelectEvent_IsAllowed(wxGridRangeSelectEvent* self)=0A=
{=0A=
    return self->IsAllowed()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellWorker=0A=
=0A=
typedef void (CALLBACK* Virtual_SetParameters) (wxString*);=0A=
=0A=
class _GridCellWorker : public wxGridCellWorker=0A=
{=0A=
public:=0A=
    _GridCellWorker()=0A=
        : wxGridCellWorker() {}=0A=
=0A=
    void SetParameters(const wxString& params)=0A=
        {=0A=
            return m_SetParameters(new wxString(params));=0A=
        }=0A=
=0A=
    void RegisterVirtual(Virtual_SetParameters setParameters)=0A=
        {=0A=
            m_SetParameters =3D setParameters;=0A=
        }=0A=
=0A=
private:=0A=
    Virtual_SetParameters m_SetParameters;=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellWorker* wxGridCellWorker_ctor()=0A=
{=0A=
    return new _GridCellWorker();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellWorker_RegisterVirtual(_GridCellWorker* self, =
Virtual_SetParameters setParameters)=0A=
{=0A=
    self->RegisterVirtual(setParameters);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellWorker_IncRef(_GridCellWorker* self)=0A=
{=0A=
    self->IncRef();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellWorker_DecRef(_GridCellWorker* self)=0A=
{=0A=
    self->DecRef();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellWorker_SetParameters(_GridCellWorker* self, const char* =
params)=0A=
{=0A=
    self->wxGridCellWorker::SetParameters(wxString(params, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridEditorCreatedEvent=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridEditorCreatedEvent* wxGridEditorCreatedEvent_ctor(int id, =
wxEventType type, wxObject* obj, int row, int col, wxControl* ctrl)=0A=
{=0A=
    return new wxGridEditorCreatedEvent(id, type, obj, row, col, =
ctrl);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridEditorCreatedEvent_GetRow(wxGridEditorCreatedEvent* self)=0A=
{=0A=
    return self->GetRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridEditorCreatedEvent_GetCol(wxGridEditorCreatedEvent* self)=0A=
{=0A=
    return self->GetCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxControl* =
wxGridEditorCreatedEvent_GetControl(wxGridEditorCreatedEvent* self)=0A=
{=0A=
    return self->GetControl();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEditorCreatedEvent_SetRow(wxGridEditorCreatedEvent* self, =
int row)=0A=
{=0A=
    self->SetRow(row);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEditorCreatedEvent_SetCol(wxGridEditorCreatedEvent* self, =
int col)=0A=
{=0A=
    self->SetCol(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridEditorCreatedEvent_SetControl(wxGridEditorCreatedEvent* =
self, wxControl* ctrl)=0A=
{=0A=
    self->SetControl(ctrl);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGrid=0A=
=0A=
class _Grid : public wxGrid=0A=
{=0A=
public:=0A=
	_Grid()=0A=
		: wxGrid() {}=0A=
		=0A=
	_Grid(wxWindow* parent, wxWindowID id, const wxPoint& pos, const =
wxSize& size, long style, const wxString& name)=0A=
		: wxGrid(parent, id, pos, size, style, name) {}=0A=
=0A=
	DECLARE_OBJECTDELETED(_Grid)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGrid* wxGrid_ctor()=0A=
{=0A=
    return new _Grid();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGrid* wxGrid_ctorFull(wxWindow* parent, wxWindowID id, wxPoint* pos, =
wxSize* size, int style, const char* name)=0A=
{=0A=
    return new _Grid(parent, id, *pos, *size, style, wxString(name, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_dtor(wxGrid* self)   =0A=
{=0A=
    delete self;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_CreateGrid(wxGrid* self, int numRows, int numCols, =
wxGrid::wxGridSelectionModes selmode)=0A=
{=0A=
    return self->CreateGrid(numRows, numCols, selmode)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetSelectionMode(wxGrid* self, wxGrid::wxGridSelectionModes =
selmode)=0A=
{=0A=
    self->SetSelectionMode(selmode);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGrid::wxGridSelectionModes wxGrid_GetSelectionMode(wxGrid* self)=0A=
{=0A=
    return self->GetSelectionMode();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetNumberRows(wxGrid* self)=0A=
{=0A=
    return self->GetNumberRows();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetNumberCols(wxGrid* self)=0A=
{=0A=
    return self->GetNumberCols();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ProcessRowLabelMouseEvent(wxGrid* self, wxMouseEvent* =
event)=0A=
{=0A=
    self->ProcessRowLabelMouseEvent(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ProcessColLabelMouseEvent(wxGrid* self, wxMouseEvent* =
event)=0A=
{=0A=
    self->ProcessColLabelMouseEvent(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ProcessCornerLabelMouseEvent(wxGrid* self, wxMouseEvent* =
event)=0A=
{=0A=
    self->ProcessCornerLabelMouseEvent(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ProcessGridCellMouseEvent(wxGrid* self, wxMouseEvent* =
event)=0A=
{=0A=
    self->ProcessGridCellMouseEvent(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridTableBase* wxGrid_GetTable(wxGrid* self)=0A=
{=0A=
    return self->GetTable();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_SetTable(wxGrid* self, wxGridTableBase* table, bool =
takeOwnership, wxGrid::wxGridSelectionModes selmode)=0A=
{=0A=
    return self->SetTable(table, takeOwnership, selmode)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ClearGrid(wxGrid* self)=0A=
{=0A=
    self->ClearGrid();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_InsertRows(wxGrid* self, int pos, int numRows, bool =
updateLabels)=0A=
{=0A=
    return self->InsertRows(pos, numRows, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_AppendRows(wxGrid* self, int numRows, bool updateLabels)=0A=
{=0A=
    return self->AppendRows(numRows, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_DeleteRows(wxGrid* self, int pos, int numRows, bool =
updateLabels)=0A=
{=0A=
    return self->DeleteRows(pos, numRows, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_InsertCols(wxGrid* self, int pos, int numCols, bool =
updateLabels)=0A=
{=0A=
    return self->InsertCols(pos, numCols, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_AppendCols(wxGrid* self, int numCols, bool updateLabels)=0A=
{=0A=
    return self->AppendCols(numCols, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_DeleteCols(wxGrid* self, int pos, int numCols, bool =
updateLabels)=0A=
{=0A=
    return self->DeleteCols(pos, numCols, updateLabels)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DrawGridCellArea(wxGrid* self, wxDC* dc, =
wxGridCellCoordsArray* cells)=0A=
{=0A=
    self->DrawGridCellArea(*dc, *cells);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DrawGridSpace(wxGrid* self, wxDC* dc)=0A=
{=0A=
    self->DrawGridSpace(*dc);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_BeginBatch(wxGrid* self)=0A=
{=0A=
    self->BeginBatch();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EndBatch(wxGrid* self)=0A=
{=0A=
    self->EndBatch();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetBatchCount(wxGrid* self)=0A=
{=0A=
    return self->GetBatchCount();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ForceRefresh(wxGrid* self)=0A=
{=0A=
    self->ForceRefresh();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsEditable(wxGrid* self)=0A=
{=0A=
    return self->IsEditable()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableEditing(wxGrid* self, bool edit)=0A=
{=0A=
    self->EnableEditing(edit);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableCellEditControl(wxGrid* self, bool enable)=0A=
{=0A=
    self->EnableCellEditControl(enable);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DisableCellEditControl(wxGrid* self)=0A=
{=0A=
    self->DisableCellEditControl();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_CanEnableCellControl(wxGrid* self)=0A=
{=0A=
    return self->CanEnableCellControl()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsCellEditControlEnabled(wxGrid* self)=0A=
{=0A=
    return self->IsCellEditControlEnabled()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsCellEditControlShown(wxGrid* self)=0A=
{=0A=
    return self->IsCellEditControlShown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsCurrentCellReadOnly(wxGrid* self)=0A=
{=0A=
    return self->IsCurrentCellReadOnly()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ShowCellEditControl(wxGrid* self)=0A=
{=0A=
    self->ShowCellEditControl();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_HideCellEditControl(wxGrid* self)=0A=
{=0A=
    self->HideCellEditControl();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SaveEditControlValue(wxGrid* self)=0A=
{=0A=
    self->SaveEditControlValue();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_YToRow(wxGrid* self, int y)=0A=
{=0A=
    return self->YToRow(y);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_XToCol(wxGrid* self, int x)=0A=
{=0A=
    return self->XToCol(x);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_YToEdgeOfRow(wxGrid* self, int y)=0A=
{=0A=
    return self->YToEdgeOfRow(y);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_XToEdgeOfCol(wxGrid* self, int x)=0A=
{=0A=
    return self->XToEdgeOfCol(x);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_CellToRect(wxGrid* self, int row, int col, wxRect* rc)=0A=
{=0A=
    *rc =3D self->CellToRect(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetGridCursorRow(wxGrid* self)=0A=
{=0A=
    return self->GetGridCursorRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetGridCursorCol(wxGrid* self)=0A=
{=0A=
    return self->GetGridCursorCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsVisible(wxGrid* self, int row, int col, bool =
wholeCellVisible)=0A=
{=0A=
    return self->IsVisible(row, col, wholeCellVisible)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_MakeCellVisible(wxGrid* self, int row, int col)=0A=
{=0A=
    self->MakeCellVisible(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetGridCursor(wxGrid* self, int row, int col)=0A=
{=0A=
    self->SetGridCursor(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorUp(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorUp(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorDown(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorDown(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorLeft(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorLeft(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorRight(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorRight(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MovePageDown(wxGrid* self)=0A=
{=0A=
    return self->MovePageDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MovePageUp(wxGrid* self)=0A=
{=0A=
    return self->MovePageUp()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorUpBlock(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorUpBlock(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorDownBlock(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorDownBlock(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorLeftBlock(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorLeftBlock(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_MoveCursorRightBlock(wxGrid* self, bool expandSelection)=0A=
{=0A=
    return self->MoveCursorRightBlock(expandSelection)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetDefaultRowLabelSize(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultRowLabelSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetRowLabelSize(wxGrid* self)=0A=
{=0A=
    return self->GetRowLabelSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetDefaultColLabelSize(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultColLabelSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetColLabelSize(wxGrid* self)=0A=
{=0A=
    return self->GetColLabelSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetLabelBackgroundColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetLabelBackgroundColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetLabelTextColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetLabelTextColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGrid_GetLabelFont(wxGrid* self)=0A=
{=0A=
    return new wxFont(self->GetLabelFont());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_GetRowLabelAlignment(wxGrid* self, int* horiz, int* =
vert)=0A=
{=0A=
    self->GetRowLabelAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_GetColLabelAlignment(wxGrid* self, int* horiz, int* =
vert)=0A=
{=0A=
    self->GetColLabelAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGrid_GetRowLabelValue(wxGrid* self, int row)=0A=
{=0A=
    return new wxString(self->GetRowLabelValue(row).c_str());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGrid_GetColLabelValue(wxGrid* self, int col)=0A=
{=0A=
    return new wxString(self->GetColLabelValue(col).c_str());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetGridLineColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetGridLineColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetCellHighlightColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetCellHighlightColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetCellHighlightPenWidth(wxGrid* self)=0A=
{=0A=
    return self->GetCellHighlightPenWidth();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetCellHighlightROPenWidth(wxGrid* self)=0A=
{=0A=
    return self->GetCellHighlightROPenWidth();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowLabelSize(wxGrid* self, int width)=0A=
{=0A=
    self->SetRowLabelSize(width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColLabelSize(wxGrid* self, int height)=0A=
{=0A=
    self->SetColLabelSize(height);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelBackgroundColour(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetLabelBackgroundColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelTextColour(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetLabelTextColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelFont(wxGrid* self, wxFont* font)=0A=
{=0A=
    self->SetLabelFont(*font);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowLabelAlignment(wxGrid* self, int horiz, int vert)=0A=
{=0A=
    self->SetRowLabelAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColLabelAlignment(wxGrid* self, int horiz, int vert)=0A=
{=0A=
    self->SetColLabelAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowLabelValue(wxGrid* self, int row, const char* val)=0A=
{=0A=
    self->SetRowLabelValue(row, wxString(val, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColLabelValue(wxGrid* self, int col, const char* val)=0A=
{=0A=
    self->SetColLabelValue(col, wxString(val, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetGridLineColour(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetGridLineColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellHighlightColour(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetCellHighlightColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellHighlightPenWidth(wxGrid* self, int width)=0A=
{=0A=
    self->SetCellHighlightPenWidth(width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellHighlightROPenWidth(wxGrid* self, int width)=0A=
{=0A=
    self->SetCellHighlightROPenWidth(width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableDragRowSize(wxGrid* self, bool enable)=0A=
{=0A=
    self->EnableDragRowSize(enable);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DisableDragRowSize(wxGrid* self)=0A=
{=0A=
    self->DisableDragRowSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_CanDragRowSize(wxGrid* self)=0A=
{=0A=
    return self->CanDragRowSize()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableDragColSize(wxGrid* self, bool enable)=0A=
{=0A=
    self->EnableDragColSize(enable);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DisableDragColSize(wxGrid* self)=0A=
{=0A=
    self->DisableDragColSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_CanDragColSize(wxGrid* self)=0A=
{=0A=
    return self->CanDragColSize()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableDragGridSize(wxGrid* self, bool enable)=0A=
{=0A=
    self->EnableDragGridSize(enable);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DisableDragGridSize(wxGrid* self)=0A=
{=0A=
    self->DisableDragGridSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_CanDragGridSize(wxGrid* self)=0A=
{=0A=
    return self->CanDragGridSize()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetAttr(wxGrid* self, int row, int col, wxGridCellAttr* =
attr)=0A=
{=0A=
    self->SetAttr(row, col, attr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowAttr(wxGrid* self, int row, wxGridCellAttr* attr)=0A=
{=0A=
    self->SetRowAttr(row, attr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColAttr(wxGrid* self, int col, wxGridCellAttr* attr)=0A=
{=0A=
    self->SetColAttr(col, attr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColFormatBool(wxGrid* self, int col)=0A=
{=0A=
    self->SetColFormatBool(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColFormatNumber(wxGrid* self, int col)=0A=
{=0A=
    self->SetColFormatNumber(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColFormatFloat(wxGrid* self, int col, int width, int =
precision)=0A=
{=0A=
    self->SetColFormatFloat(col, width, precision);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColFormatCustom(wxGrid* self, int col, const char* =
typeName)=0A=
{=0A=
    self->SetColFormatCustom(col, wxString(typeName, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_EnableGridLines(wxGrid* self, bool enable)=0A=
{=0A=
    self->EnableGridLines(enable);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_GridLinesEnabled(wxGrid* self)=0A=
{=0A=
    return self->GridLinesEnabled()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetDefaultRowSize(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultRowSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetRowSize(wxGrid* self, int row)=0A=
{=0A=
    return self->GetRowSize(row);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetDefaultColSize(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultColSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetColSize(wxGrid* self, int col)=0A=
{=0A=
    return self->GetColSize(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetDefaultCellBackgroundColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetDefaultCellBackgroundColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetCellBackgroundColour(wxGrid* self, int row, int =
col)=0A=
{=0A=
    return new wxColour(self->GetCellBackgroundColour(row, col));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetDefaultCellTextColour(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetDefaultCellTextColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetCellTextColour(wxGrid* self, int row, int col)=0A=
{=0A=
    return new wxColour(self->GetCellTextColour(row, col));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGrid_GetDefaultCellFont(wxGrid* self)=0A=
{=0A=
    return new wxFont(self->GetDefaultCellFont());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGrid_GetCellFont(wxGrid* self, int row, int col)=0A=
{=0A=
    return new wxFont(self->GetCellFont(row, col));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_GetDefaultCellAlignment(wxGrid* self, int* horiz, int* =
vert)=0A=
{=0A=
    self->GetDefaultCellAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_GetCellAlignment(wxGrid* self, int row, int col, int* =
horiz, int* vert)=0A=
{=0A=
    self->GetCellAlignment(row, col, horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_GetDefaultCellOverflow(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultCellOverflow()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_GetCellOverflow(wxGrid* self, int row, int col)=0A=
{=0A=
    return self->GetCellOverflow(row, col)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_GetCellSize(wxGrid* self, int row, int col, int* num_rows, =
int* num_cols)=0A=
{=0A=
    self->GetCellSize(row, col, num_rows, num_cols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultRowSize(wxGrid* self, int height, bool =
resizeExistingRows)=0A=
{=0A=
    self->SetDefaultRowSize(height, resizeExistingRows);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowSize(wxGrid* self, int row, int height)=0A=
{=0A=
    self->SetRowSize(row, height);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultColSize(wxGrid* self, int width, bool =
resizeExistingCols)=0A=
{=0A=
    self->SetDefaultColSize(width, resizeExistingCols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColSize(wxGrid* self, int col, int width)=0A=
{=0A=
    self->SetColSize(col, width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_AutoSizeColumn(wxGrid* self, int col, bool setAsMin)=0A=
{=0A=
    self->AutoSizeColumn(col, setAsMin);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_AutoSizeRow(wxGrid* self, int row, bool setAsMin)=0A=
{=0A=
    self->AutoSizeRow(row, setAsMin);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_AutoSizeColumns(wxGrid* self, bool setAsMin)=0A=
{=0A=
    self->AutoSizeColumns(setAsMin);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_AutoSizeRows(wxGrid* self, bool setAsMin)=0A=
{=0A=
    self->AutoSizeRows(setAsMin);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_AutoSize(wxGrid* self)=0A=
{=0A=
    self->AutoSize();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColMinimalWidth(wxGrid* self, int col, int width)=0A=
{=0A=
    self->SetColMinimalWidth(col, width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowMinimalHeight(wxGrid* self, int row, int width)=0A=
{=0A=
    self->SetRowMinimalHeight(row, width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColMinimalAcceptableWidth(wxGrid* self, int width)=0A=
{=0A=
    self->SetColMinimalAcceptableWidth(width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowMinimalAcceptableHeight(wxGrid* self, int width)=0A=
{=0A=
    self->SetRowMinimalAcceptableHeight(width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetColMinimalAcceptableWidth(wxGrid* self)=0A=
{=0A=
    return self->GetColMinimalAcceptableWidth();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetRowMinimalAcceptableHeight(wxGrid* self)=0A=
{=0A=
    return self->GetRowMinimalAcceptableHeight();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultCellBackgroundColour(wxGrid* self, wxColour* =
col)=0A=
{=0A=
    self->SetDefaultCellBackgroundColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultCellTextColour(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetDefaultCellTextColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultCellFont(wxGrid* self, wxFont* font)=0A=
{=0A=
    self->SetDefaultCellFont(*font);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellFont(wxGrid* self, int row, int col, wxFont* =
font)=0A=
{=0A=
    self->SetCellFont(row, col, *font);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultCellAlignment(wxGrid* self, int horiz, int =
vert)=0A=
{=0A=
    self->SetDefaultCellAlignment(horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellAlignmentHV(wxGrid* self, int row, int col, int =
horiz, int vert)=0A=
{=0A=
    self->SetCellAlignment(row, col, horiz, vert);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultCellOverflow(wxGrid* self, bool allow)=0A=
{=0A=
    self->SetDefaultCellOverflow(allow);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellOverflow(wxGrid* self, int row, int col, bool =
allow)=0A=
{=0A=
    self->SetCellOverflow(row, col, allow);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellSize(wxGrid* self, int row, int col, int num_rows, =
int num_cols)=0A=
{=0A=
    self->SetCellSize(row, col, num_rows, num_cols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultRenderer(wxGrid* self, wxGridCellRenderer* =
renderer)=0A=
{=0A=
    self->SetDefaultRenderer(renderer);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellRenderer(wxGrid* self, int row, int col, =
wxGridCellRenderer* renderer)=0A=
{=0A=
    self->SetCellRenderer(row, col, renderer);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGrid_GetDefaultRenderer(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultRenderer();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGrid_GetCellRenderer(wxGrid* self, int row, int =
col)=0A=
{=0A=
    return self->GetCellRenderer(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDefaultEditor(wxGrid* self, wxGridCellEditor* editor)=0A=
{=0A=
    self->SetDefaultEditor(editor);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellEditor(wxGrid* self, int row, int col, =
wxGridCellEditor* editor)=0A=
{=0A=
    self->SetCellEditor(row, col, editor);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGrid_GetDefaultEditor(wxGrid* self)=0A=
{=0A=
    return self->GetDefaultEditor();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGrid_GetCellEditor(wxGrid* self, int row, int =
col)=0A=
{=0A=
    return self->GetCellEditor(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGrid_GetCellValue(wxGrid* self, int row, int col)=0A=
{=0A=
    return new wxString(self->GetCellValue(row, col));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellValue(wxGrid* self, int row, int col, const char* =
s)=0A=
{=0A=
    self->SetCellValue(row, col, wxString(s, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsReadOnly(wxGrid* self, int row, int col)=0A=
{=0A=
    return self->IsReadOnly(row, col)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetReadOnly(wxGrid* self, int row, int col, bool =
isReadOnly)=0A=
{=0A=
    self->SetReadOnly(row, col, isReadOnly);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SelectRow(wxGrid* self, int row, bool addToSelected)=0A=
{=0A=
    self->SelectRow(row, addToSelected);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SelectCol(wxGrid* self, int col, bool addToSelected)=0A=
{=0A=
    self->SelectCol(col, addToSelected);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SelectBlock(wxGrid* self, int topRow, int leftCol, int =
bottomRow, int rightCol, bool addToSelected)=0A=
{=0A=
    self->SelectBlock(topRow, leftCol, bottomRow, rightCol, =
addToSelected);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SelectAll(wxGrid* self)=0A=
{=0A=
    self->SelectAll();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsSelection(wxGrid* self)=0A=
{=0A=
    return self->IsSelection()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DeselectRow(wxGrid* self, int row)=0A=
{=0A=
    self->DeselectRow(row);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DeselectCol(wxGrid* self, int col)=0A=
{=0A=
    self->DeselectCol(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_DeselectCell(wxGrid* self, int row, int col)=0A=
{=0A=
    self->DeselectCell(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_ClearSelection(wxGrid* self)=0A=
{=0A=
    self->ClearSelection();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_IsInSelection(wxGrid* self, int row, int col)=0A=
{=0A=
    return self->IsInSelection(row, col)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
#if 0=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoordsArray* wxGrid_GetSelectedCells(wxGrid* self)=0A=
{=0A=
    return self->GetSelectedCells();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoordsArray* wxGrid_GetSelectionBlockTopLeft(wxGrid* self)=0A=
{=0A=
    return self->GetSelectionBlockTopLeft();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoordsArray* wxGrid_GetSelectionBlockBottomRight(wxGrid* =
self)=0A=
{=0A=
    return self->GetSelectionBlockBottomRight();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxArrayInt* wxGrid_GetSelectedRows(wxGrid* self)=0A=
{=0A=
    return self->GetSelectedRows();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxArrayInt* wxGrid_GetSelectedCols(wxGrid* self)=0A=
{=0A=
    return self->GetSelectedCols();=0A=
}=0A=
#endif=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_BlockToDeviceRect(wxGrid* self, wxGridCellCoords * topLeft, =
wxGridCellCoords * bottomRight, wxRect* rc)=0A=
{=0A=
    *rc =3D self->BlockToDeviceRect(*topLeft, *bottomRight);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetSelectionBackground(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetSelectionBackground());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGrid_GetSelectionForeground(wxGrid* self)=0A=
{=0A=
    return new wxColour(self->GetSelectionForeground());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetSelectionBackground(wxGrid* self, wxColour* c)=0A=
{=0A=
    self->SetSelectionBackground(*c);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetSelectionForeground(wxGrid* self, wxColour* c)=0A=
{=0A=
    self->SetSelectionForeground(*c);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_RegisterDataType(wxGrid* self, const char* typeName, =
wxGridCellRenderer* renderer, wxGridCellEditor* editor)=0A=
{=0A=
    self->RegisterDataType(wxString(typeName, wxConvUTF8), renderer, =
editor);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGrid_GetDefaultEditorForCell(wxGrid* self, int row, =
int col)=0A=
{=0A=
    return self->GetDefaultEditorForCell(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGrid_GetDefaultRendererForCell(wxGrid* self, int =
row, int col)=0A=
{=0A=
    return self->GetDefaultRendererForCell(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGrid_GetDefaultEditorForType(wxGrid* self, const =
char* typeName)=0A=
{=0A=
    return self->GetDefaultEditorForType(wxString(typeName, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGrid_GetDefaultRendererForType(wxGrid* self, =
const char* typeName)=0A=
{=0A=
    return self->GetDefaultRendererForType(wxString(typeName, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetMargins(wxGrid* self, int extraWidth, int =
extraHeight)=0A=
{=0A=
    self->SetMargins(extraWidth, extraHeight);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxWindow* wxGrid_GetGridWindow(wxGrid* self)=0A=
{=0A=
    return self->GetGridWindow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxWindow* wxGrid_GetGridRowLabelWindow(wxGrid* self)=0A=
{=0A=
    return self->GetGridRowLabelWindow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxWindow* wxGrid_GetGridColLabelWindow(wxGrid* self)=0A=
{=0A=
    return self->GetGridColLabelWindow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxWindow* wxGrid_GetGridCornerLabelWindow(wxGrid* self)=0A=
{=0A=
    return self->GetGridCornerLabelWindow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
#if 0=0A=
extern "C" WXEXPORT=0A=
wxGrid* wxGrid_ctor(wxWindow* parent, int x, int y, int w, int h, int =
style, char* name)=0A=
{=0A=
    if (name =3D=3D NULL)=0A=
        name =3D &wxPanelNameStr;=0A=
=0A=
    return new wxGrid(parent, x, y, w, h, style, wxString(name, =
wxConvUTF8));=0A=
}=0A=
#endif=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_UpdateDimensions(wxGrid* self)=0A=
{=0A=
    self->UpdateDimensions();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetRows(wxGrid* self)=0A=
{=0A=
    return self->GetRows();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetCols(wxGrid* self)=0A=
{=0A=
    return self->GetCols();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetCursorRow(wxGrid* self)=0A=
{=0A=
    return self->GetCursorRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetCursorColumn(wxGrid* self)=0A=
{=0A=
    return self->GetCursorColumn();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetScrollPosX(wxGrid* self)=0A=
{=0A=
    return self->GetScrollPosX();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetScrollPosY(wxGrid* self)=0A=
{=0A=
    return self->GetScrollPosY();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetScrollX(wxGrid* self, int x)=0A=
{=0A=
    self->SetScrollX(x);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetScrollY(wxGrid* self, int y)=0A=
{=0A=
    self->SetScrollY(y);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetColumnWidth(wxGrid* self, int col, int width)=0A=
{=0A=
    self->SetColumnWidth(col, width);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetColumnWidth(wxGrid* self, int col)=0A=
{=0A=
    return self->GetColumnWidth(col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetRowHeight(wxGrid* self, int row, int height)=0A=
{=0A=
    self->SetRowHeight(row, height);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetViewHeight(wxGrid* self)=0A=
{=0A=
    return self->GetViewHeight();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetViewWidth(wxGrid* self)=0A=
{=0A=
    return self->GetViewWidth();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelSize(wxGrid* self, int orientation, int sz)=0A=
{=0A=
    self->SetLabelSize(orientation, sz);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetLabelSize(wxGrid* self, int orientation)=0A=
{=0A=
    return self->GetLabelSize(orientation);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelAlignment(wxGrid* self, int orientation, int =
align)=0A=
{=0A=
    self->SetLabelAlignment(orientation, align);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetLabelAlignment(wxGrid* self, int orientation, int =
align)=0A=
{=0A=
    return self->GetLabelAlignment(orientation, align);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetLabelValue(wxGrid* self, int orientation, const char* =
val, int pos)=0A=
{=0A=
    self->SetLabelValue(orientation, wxString(val, wxConvUTF8), =
pos);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGrid_GetLabelValue(wxGrid* self, int orientation, int =
pos)=0A=
{=0A=
    return new wxString(self->GetLabelValue(orientation, pos));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGrid_GetCellTextFontGrid(wxGrid* self)=0A=
{=0A=
    return new wxFont(self->GetCellTextFont());=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGrid_GetCellTextFont(wxGrid* self, int row, int col)=0A=
{=0A=
    return new wxFont(self->GetCellTextFont(row, col));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellTextFontGrid(wxGrid* self, wxFont* fnt)=0A=
{=0A=
    self->SetCellTextFont(*fnt);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellTextFont(wxGrid* self, wxFont* fnt, int row, int =
col)=0A=
{=0A=
    self->SetCellTextFont(*fnt, row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellTextColour(wxGrid* self, int row, int col, wxColour* =
val)=0A=
{=0A=
    self->SetCellTextColour(row, col, *val);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellTextColourGrid(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetCellTextColour(*col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellBackgroundColourGrid(wxGrid* self, wxColour* col)=0A=
{=0A=
    self->SetCellBackgroundColour(*col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellBackgroundColour(wxGrid* self, int row, int col, =
wxColour* colour)=0A=
{=0A=
    self->SetCellBackgroundColour(row, col, *colour);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_GetEditable(wxGrid* self)=0A=
{=0A=
    return self->GetEditable()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetEditable(wxGrid* self, bool edit)=0A=
{=0A=
    self->SetEditable(edit);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGrid_GetEditInPlace(wxGrid* self)=0A=
{=0A=
    return self->GetEditInPlace()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellAlignment(wxGrid* self, int align, int row, int =
col)=0A=
{=0A=
    self->SetCellAlignment(align, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellAlignmentGrid(wxGrid* self, int align)=0A=
{=0A=
    self->SetCellAlignment(align);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetCellBitmap(wxGrid* self, wxBitmap* bitmap, int row, int =
col)=0A=
{=0A=
    self->SetCellBitmap(bitmap, row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_SetDividerPen(wxGrid* self, wxPen* pen)=0A=
{=0A=
    self->SetDividerPen(*pen);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxPen* wxGrid_GetDividerPen(wxGrid* self)=0A=
{=0A=
    return &(self->GetDividerPen());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGrid_OnActivate(wxGrid* self, bool active)=0A=
{=0A=
    self->OnActivate(active);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGrid_GetRowHeight(wxGrid* self, int row)=0A=
{=0A=
    return self->GetRowHeight(row);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellCoords=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellCoords* wxGridCellCoords_ctor()=0A=
{=0A=
    return new wxGridCellCoords();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellCoords_dtor(wxGridCellCoords* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridCellCoords_GetRow(wxGridCellCoords* self)=0A=
{=0A=
    return self->GetRow();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellCoords_SetRow(wxGridCellCoords* self, int n)=0A=
{=0A=
    self->SetRow(n);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridCellCoords_GetCol(wxGridCellCoords* self)=0A=
{=0A=
    return self->GetCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellCoords_SetCol(wxGridCellCoords* self, int n)=0A=
{=0A=
    self->SetCol(n);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellCoords_Set(wxGridCellCoords* self, int row, int col)=0A=
{=0A=
    self->Set(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellAttr=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridCellAttr_ctor(wxColour* colText, wxColour* =
colBack, wxFont* font, int hAlign, int vAlign)=0A=
{=0A=
    return new wxGridCellAttr(*colText, *colBack, *font, hAlign, =
vAlign);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridCellAttr_ctor2()=0A=
{=0A=
    return new wxGridCellAttr();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridCellAttr_ctor3(wxGridCellAttr* attrDefault)=0A=
{=0A=
    return new wxGridCellAttr(attrDefault);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridCellAttr_Clone(wxGridCellAttr* self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_MergeWith(wxGridCellAttr* self, wxGridCellAttr* =
mergefrom)=0A=
{=0A=
    self->MergeWith(mergefrom);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_IncRef(wxGridCellAttr* self)=0A=
{=0A=
    self->IncRef();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_DecRef(wxGridCellAttr* self)=0A=
{=0A=
    self->DecRef();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetTextColour(wxGridCellAttr* self, wxColour* =
colText)=0A=
{=0A=
    self->SetTextColour(*colText);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetBackgroundColour(wxGridCellAttr* self, wxColour* =
colBack)=0A=
{=0A=
    self->SetBackgroundColour(*colBack);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetFont(wxGridCellAttr* self, wxFont* font)=0A=
{=0A=
    self->SetFont(*font);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetAlignment(wxGridCellAttr* self, int hAlign, int =
vAlign)=0A=
{=0A=
    self->SetAlignment(hAlign, vAlign);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetSize(wxGridCellAttr* self, int num_rows, int =
num_cols)=0A=
{=0A=
    self->SetSize(num_rows, num_cols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetOverflow(wxGridCellAttr* self, bool allow)=0A=
{=0A=
    self->SetOverflow(allow);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetReadOnly(wxGridCellAttr* self, bool =
isReadOnly)=0A=
{=0A=
    self->SetReadOnly(isReadOnly);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetRenderer(wxGridCellAttr* self, =
wxGridCellRenderer* renderer)=0A=
{=0A=
    self->SetRenderer(renderer);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetEditor(wxGridCellAttr* self, wxGridCellEditor* =
editor)=0A=
{=0A=
    self->SetEditor(editor);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasTextColour(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasTextColour()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasBackgroundColour(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasBackgroundColour()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasFont(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasFont()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasAlignment(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasAlignment()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasRenderer(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasRenderer()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasEditor(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasEditor()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_HasReadWriteMode(wxGridCellAttr* self)=0A=
{=0A=
    return self->HasReadWriteMode()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGridCellAttr_GetTextColour(wxGridCellAttr* self)=0A=
{=0A=
    return new wxColour(self->GetTextColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxColour* wxGridCellAttr_GetBackgroundColour(wxGridCellAttr* self)=0A=
{=0A=
    return new wxColour(self->GetBackgroundColour());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxFont* wxGridCellAttr_GetFont(wxGridCellAttr* self)=0A=
{=0A=
    return new wxFont(self->GetFont());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_GetAlignment(wxGridCellAttr* self, int* hAlign, =
int* vAlign)=0A=
{=0A=
    self->GetAlignment(hAlign, vAlign);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_GetSize(wxGridCellAttr* self, int* num_rows, int* =
num_cols)=0A=
{=0A=
    self->GetSize(num_rows, num_cols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_GetOverflow(wxGridCellAttr* self)=0A=
{=0A=
    return self->GetOverflow()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGridCellAttr_GetRenderer(wxGridCellAttr* self, =
wxGrid* grid, int row, int col)=0A=
{=0A=
    return self->GetRenderer(grid, row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellAttr_GetEditor(wxGridCellAttr* self, =
wxGrid* grid, int row, int col)=0A=
{=0A=
    return self->GetEditor(grid, row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellAttr_IsReadOnly(wxGridCellAttr* self)=0A=
{=0A=
    return self->IsReadOnly()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttr_SetDefAttr(wxGridCellAttr* self, wxGridCellAttr* =
defAttr)=0A=
{=0A=
    self->SetDefAttr(defAttr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridSizeEvent=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridSizeEvent* wxGridSizeEvent_ctor()=0A=
{=0A=
    return new wxGridSizeEvent();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridSizeEvent* wxGridSizeEvent_ctorParam(int id, wxEventType type, =
wxObject* obj, int rowOrCol, int x, int y, bool control, bool shift, =
bool alt, bool meta)=0A=
{=0A=
    return new wxGridSizeEvent(id, type, obj, rowOrCol, x, y, control, =
shift, alt, meta);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridSizeEvent_GetRowOrCol(wxGridSizeEvent* self)=0A=
{=0A=
    return self->GetRowOrCol();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridSizeEvent_GetPosition(wxGridSizeEvent* self, wxPoint* pt)=0A=
{=0A=
    *pt =3D self->GetPosition();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridSizeEvent_ControlDown(wxGridSizeEvent* self)=0A=
{=0A=
    return self->ControlDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridSizeEvent_MetaDown(wxGridSizeEvent* self)=0A=
{=0A=
    return self->MetaDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridSizeEvent_ShiftDown(wxGridSizeEvent* self)=0A=
{=0A=
    return self->ShiftDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridSizeEvent_AltDown(wxGridSizeEvent* self)=0A=
{=0A=
    return self->AltDown()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridSizeEvent_Veto(wxGridSizeEvent* self)=0A=
{=0A=
    self->Veto();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridSizeEvent_Allow(wxGridSizeEvent* self)=0A=
{=0A=
    self->Allow();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridSizeEvent_IsAllowed(wxGridSizeEvent* self)=0A=
{=0A=
    return self->IsAllowed()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellEditor=0A=
=0A=
typedef void (CALLBACK* Virtual_Create) (wxWindow*, wxWindowID id, =
wxEvtHandler*);=0A=
typedef void (CALLBACK* Virtual_BeginEdit) (int, int, wxGrid*);=0A=
typedef bool (CALLBACK* Virtual_EndEdit) (int, int, wxGrid*);=0A=
typedef void (CALLBACK* Virtual_Reset) ();=0A=
typedef wxGridCellEditor* (CALLBACK* Virtual_Clone) ();=0A=
typedef void (CALLBACK* Virtual_SetSize) (wxRect*);=0A=
typedef void (CALLBACK* Virtual_Show) (int, wxGridCellAttr*);=0A=
typedef void (CALLBACK* Virtual_PaintBackground) (wxRect*, =
wxGridCellAttr*);=0A=
typedef bool (CALLBACK* Virtual_IsAcceptedKey) (wxKeyEvent*);=0A=
typedef void (CALLBACK* Virtual_StartingKey) (wxKeyEvent*);=0A=
typedef void (CALLBACK* Virtual_StartingClick) ();=0A=
typedef void (CALLBACK* Virtual_HandleReturn) (wxKeyEvent*);=0A=
typedef void (CALLBACK* Virtual_Destroy) ();=0A=
typedef char* (CALLBACK* Virtual_GetValue) ();=0A=
=0A=
class _GridCellEditor : public wxGridCellEditor=0A=
{=0A=
public:=0A=
    _GridCellEditor()=0A=
        : wxGridCellEditor() {}=0A=
        =0A=
    void Create(wxWindow* parent, wxWindowID id, wxEvtHandler* =
evtHandler)=0A=
        { return m_Create(parent, id, evtHandler); }=0A=
=0A=
    void BeginEdit(int row, int col, wxGrid* grid)=0A=
        { return m_BeginEdit(row, col, grid); }=0A=
        =0A=
    bool EndEdit(int row, int col, wxGrid* grid)=0A=
        { return m_EndEdit(row, col, grid); }=0A=
            =0A=
    void Reset()=0A=
        { return m_Reset(); }=0A=
        =0A=
    wxGridCellEditor* Clone() const=0A=
        { return m_Clone(); }=0A=
    =0A=
    void SetSize(const wxRect& rect)=0A=
        { return m_SetSize(new wxRect(rect));}=0A=
    =0A=
    void Show(bool show, wxGridCellAttr* attr)=0A=
    { if (m_Show) m_Show((int)show, attr); else =
wxGridCellEditor::Show(show, attr);}=0A=
    =0A=
    void PaintBackground(const wxRect& rectCell, wxGridCellAttr* =
attr)=0A=
        { return m_PaintBackground(new wxRect(rectCell), attr);}=0A=
    =0A=
    bool IsAcceptedKey(wxKeyEvent& event)=0A=
        { return m_IsAcceptedKey(new wxKeyEvent(event));}=0A=
    =0A=
    void StartingKey(wxKeyEvent& event)=0A=
        { return m_StartingKey(new wxKeyEvent(event));}=0A=
    =0A=
    void StartingClick()=0A=
        { return m_StartingClick();}=0A=
    =0A=
    void HandleReturn(wxKeyEvent& event)=0A=
        { return m_HandleReturn(new wxKeyEvent(event));}=0A=
    =0A=
    void Destroy()=0A=
        { return m_Destroy();}=0A=
        =0A=
    wxString GetValue() const=0A=
        { return wxString(m_GetValue(), wxConvUTF8);}=0A=
=0A=
    void RegisterVirtual(Virtual_Create create,=0A=
                            Virtual_BeginEdit beginEdit,=0A=
                            Virtual_EndEdit endEdit,=0A=
                            Virtual_Reset reset,=0A=
                            Virtual_Clone clone,=0A=
                            Virtual_SetSize setSize,=0A=
                            Virtual_Show show,=0A=
                            Virtual_PaintBackground paintBackground,=0A=
                            Virtual_IsAcceptedKey isAcceptedKey,=0A=
                            Virtual_StartingKey startingKey,=0A=
                            Virtual_StartingClick startingClick,=0A=
                            Virtual_HandleReturn handleReturn,=0A=
                            Virtual_Destroy destroy,=0A=
                            Virtual_GetValue getValue)=0A=
    {=0A=
        m_Create =3D create;=0A=
        m_BeginEdit =3D beginEdit;=0A=
        m_EndEdit =3D endEdit;=0A=
        m_Reset =3D reset;=0A=
        m_Clone =3D clone;=0A=
        m_SetSize =3D setSize;=0A=
        m_Show =3D show;=0A=
        m_PaintBackground =3D paintBackground;=0A=
        m_IsAcceptedKey =3D isAcceptedKey;=0A=
        m_StartingKey =3D startingKey;=0A=
        m_StartingClick =3D startingClick;=0A=
        m_HandleReturn =3D handleReturn;=0A=
        m_Destroy =3D destroy;=0A=
        m_GetValue =3D getValue;=0A=
    }=0A=
    =0A=
private:=0A=
    Virtual_Create m_Create;=0A=
    Virtual_BeginEdit m_BeginEdit;=0A=
    Virtual_EndEdit m_EndEdit;=0A=
    Virtual_Reset m_Reset;=0A=
    Virtual_Clone m_Clone;=0A=
    Virtual_SetSize m_SetSize;=0A=
    Virtual_Show m_Show;=0A=
    Virtual_PaintBackground m_PaintBackground;=0A=
    Virtual_IsAcceptedKey m_IsAcceptedKey;=0A=
    Virtual_StartingKey m_StartingKey;=0A=
    Virtual_StartingClick m_StartingClick;=0A=
    Virtual_HandleReturn m_HandleReturn;=0A=
    Virtual_Destroy m_Destroy;=0A=
    Virtual_GetValue m_GetValue;=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_RegisterVirtual(_GridCellEditor* self, =
Virtual_Create create,=0A=
                        Virtual_BeginEdit beginEdit,=0A=
                        Virtual_EndEdit endEdit,=0A=
                        Virtual_Reset reset,=0A=
                        Virtual_Clone clone,=0A=
                        Virtual_SetSize setSize,=0A=
                        Virtual_Show show,=0A=
                        Virtual_PaintBackground paintBackground,=0A=
                        Virtual_IsAcceptedKey isAcceptedKey,=0A=
                        Virtual_StartingKey startingKey,=0A=
                        Virtual_StartingClick startingClick,=0A=
                        Virtual_HandleReturn handleReturn,=0A=
                        Virtual_Destroy destroy,=0A=
                        Virtual_GetValue getvalue)=0A=
{=0A=
    self->RegisterVirtual(create, beginEdit, endEdit, reset, clone,=0A=
                setSize, show, paintBackground, isAcceptedKey, =
startingKey,=0A=
                startingClick, handleReturn, destroy, getvalue);=0A=
}=0A=
=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellEditor_ctor()=0A=
{=0A=
    return new _GridCellEditor();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_dtor(_GridCellEditor* self)=0A=
{=0A=
    if (self !=3D NULL)=0A=
    	delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_Create(_GridCellEditor* self, wxWindow* parent, =
wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    return self->wxGridCellEditor::Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellEditor_IsCreated(_GridCellEditor* self)=0A=
{=0A=
    return self->IsCreated()?1:0;=0A=
}=0A=
=0A=
// HMaH: Missing methods for read/write access to the control.=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_SetControl(_GridCellEditor* self, wxControl* =
control)=0A=
{=0A=
    self->SetControl(control);=0A=
}=0A=
=0A=
// HMaH: Missing methods for read/write access to the control.=0A=
extern "C" WXEXPORT=0A=
wxControl* wxGridCellEditor_GetControl(_GridCellEditor* self)=0A=
{=0A=
    return self->GetControl();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellEditor_IsAcceptedKey(_GridCellEditor* self, wxKeyEvent* =
event)=0A=
{=0A=
    return self->wxGridCellEditor::IsAcceptedKey(*event)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_SetSize(_GridCellEditor* self, wxRect* rect)=0A=
{=0A=
    self->wxGridCellEditor::SetSize(*rect);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_Show(_GridCellEditor* self, bool show, =
wxGridCellAttr* attr)=0A=
{=0A=
    self->wxGridCellEditor::Show(show, attr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_PaintBackground(_GridCellEditor* self, wxRect* =
rectCell, wxGridCellAttr* attr)=0A=
{=0A=
    self->wxGridCellEditor::PaintBackground(*rectCell, attr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_StartingKey(_GridCellEditor* self, wxKeyEvent* =
event)=0A=
{=0A=
    self->wxGridCellEditor::StartingKey(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_StartingClick(_GridCellEditor* self)=0A=
{=0A=
    self->wxGridCellEditor::StartingClick();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_HandleReturn(_GridCellEditor* self, wxKeyEvent* =
event)=0A=
{=0A=
    self->wxGridCellEditor::HandleReturn(*event);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellEditor_Destroy(_GridCellEditor* self)=0A=
{=0A=
    self->wxGridCellEditor::Destroy();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridTableBase...=0A=
=0A=
typedef int (CALLBACK* Virtual_GetNumberRows) ();=0A=
typedef int (CALLBACK* Virtual_GetNumberCols) ();=0A=
typedef bool (CALLBACK* Virtual_IsEmptyCell) (int, int);=0A=
typedef char* (CALLBACK* Virtual_GetValue2) (int, int);=0A=
typedef void (CALLBACK* Virtual_SetValue) (int, int, wxString*);=0A=
typedef bool (CALLBACK* Virtual_CanGetValueAs) (int, int, =
wxString*);=0A=
typedef long (CALLBACK* Virtual_GetValueAsLong) (int, int);=0A=
typedef double (CALLBACK* Virtual_GetValueAsDouble) (int, int);=0A=
typedef void (CALLBACK* Virtual_SetValueAsLong) (int, int, long);=0A=
typedef void (CALLBACK* Virtual_SetValueAsDouble) (int, int, =
double);=0A=
typedef void (CALLBACK* Virtual_SetValueAsBool) (int, int, bool);=0A=
typedef void* (CALLBACK* Virtual_GetValueAsCustom) (int, int, =
wxString*);=0A=
typedef void (CALLBACK* Virtual_SetValueAsCustom) (int, int, wxString*, =
void*);=0A=
typedef char* (CALLBACK* Virtual_GetColLabelValue) (int);=0A=
typedef void (CALLBACK* Virtual_SetView) (wxGrid*);=0A=
typedef wxGrid* (CALLBACK* Virtual_GetView) ();=0A=
typedef void (CALLBACK* Virtual_Clear) ();=0A=
typedef bool (CALLBACK* Virtual_InsertRows) (int, int);=0A=
typedef bool (CALLBACK* Virtual_AppendRows) (int);=0A=
typedef void (CALLBACK* Virtual_SetRowLabelValue) (int, wxString*);=0A=
typedef void (CALLBACK* Virtual_SetAttrProvider) =
(wxGridCellAttrProvider*);=0A=
typedef wxGridCellAttrProvider* (CALLBACK* Virtual_GetAttrProvider) =
();=0A=
typedef bool (CALLBACK* Virtual_CanHaveAttributes) ();=0A=
typedef wxGridCellAttr* (CALLBACK* Virtual_GetAttr) (int, int, =
wxGridCellAttr::wxAttrKind);=0A=
typedef void (CALLBACK* Virtual_SetAttr) (wxGridCellAttr*, int, =
int);=0A=
typedef void (CALLBACK* Virtual_SetRowAttr) (wxGridCellAttr*, int);=0A=
=0A=
class _GridTableBase : public wxGridTableBase=0A=
{=0A=
public:=0A=
    _GridTableBase()=0A=
        : wxGridTableBase() {}=0A=
=0A=
    int GetNumberRows()=0A=
        { return m_GetNumberRows();}=0A=
=0A=
    int GetNumberCols()=0A=
        { return m_GetNumberCols();}=0A=
=0A=
    bool IsEmptyCell(int row, int col)=0A=
        { return m_IsEmptyCell(row, col);}=0A=
=0A=
    wxString GetValue(int row, int col)=0A=
        { return wxString(m_GetValue(row, col), wxConvUTF8);}=0A=
=0A=
    void SetValue(int row, int col, const wxString& value)=0A=
        { m_SetValue(row, col, new wxString(value));}=0A=
    =0A=
    wxString GetTypeName(int row, int col)=0A=
        { return wxString(m_GetTypeName(row, col), wxConvUTF8);}=0A=
    =0A=
    bool CanGetValueAs(int row, int col, const wxString& typeName)=0A=
        { return m_CanGetValueAs(row, col, new wxString(typeName)); =
}=0A=
    =0A=
    bool CanSetValueAs(int row, int col, const wxString& typeName)=0A=
        { return m_CanSetValueAs(row, col, new wxString(typeName)); =
}=0A=
    =0A=
    long GetValueAsLong(int row, int col)=0A=
        { return m_GetValueAsLong(row, col);}=0A=
    =0A=
    double GetValueAsDouble(int row, int col)=0A=
        { return m_GetValueAsDouble(row, col); }=0A=
    =0A=
    bool GetValueAsBool(int row, int col)=0A=
        { return m_GetValueAsBool(row, col);}=0A=
    =0A=
    void SetValueAsLong(int row, int col, long value)=0A=
        { return m_SetValueAsLong(row, col, value);}=0A=
    =0A=
    void SetValueAsDouble(int row, int col, double value)=0A=
        { return m_SetValueAsDouble(row, col, value);}=0A=
    =0A=
    void SetValueAsBool(int row, int col, bool value)=0A=
        { return m_SetValueAsBool(row, col, value);}=0A=
    =0A=
    void* GetValueAsCustom(int row, int col, const wxString& =
typeName)=0A=
        { return m_GetValueAsCustom(row, col, new =
wxString(typeName));}=0A=
    =0A=
    void SetValueAsCustom(int row, int col, const wxString& typeName, =
void* value)=0A=
        { return m_SetValueAsCustom(row, col, new wxString(typeName), =
value);}=0A=
    =0A=
    void SetView(wxGrid* grid)=0A=
        { return m_SetView(grid);}=0A=
    =0A=
    wxGrid* GetView()=0A=
        { return m_GetView();}=0A=
    =0A=
    void Clear()=0A=
        { return m_Clear();}=0A=
    =0A=
    bool InsertRows(size_t pos, size_t numRows)=0A=
        { return m_InsertRows(pos, numRows);}=0A=
    =0A=
    bool AppendRows(size_t numRows)=0A=
        { return m_AppendRows(numRows);}=0A=
    =0A=
    bool DeleteRows(size_t pos, size_t numRows)=0A=
        { return m_DeleteRows(pos, numRows);}=0A=
    =0A=
    bool InsertCols(size_t pos, size_t numCols)=0A=
        { return m_InsertCols(pos, numCols);}=0A=
    =0A=
    bool AppendCols(size_t numCols)=0A=
        { return m_AppendCols(numCols);}=0A=
    =0A=
    bool DeleteCols(size_t pos, size_t numCols)=0A=
        { return m_DeleteCols(pos, numCols);}=0A=
    =0A=
    wxString GetRowLabelValue(int col)=0A=
        { return wxString(m_GetRowLabelValue(col), wxConvUTF8);}=0A=
    =0A=
    wxString GetColLabelValue(int col)=0A=
        { return wxString(m_GetColLabelValue(col), wxConvUTF8);}=0A=
    =0A=
    void SetRowLabelValue(int row, const wxString& value)=0A=
        { return m_SetRowLabelValue(row, new wxString(value));}=0A=
    =0A=
    void SetColLabelValue(int row, const wxString& value)=0A=
        { return m_SetColLabelValue(row, new wxString(value));}=0A=
    =0A=
    void SetAttrProvider(wxGridCellAttrProvider* attrProvider)=0A=
        { return m_SetAttrProvider(attrProvider);}=0A=
    =0A=
    wxGridCellAttrProvider* GetAttrProvider()=0A=
        { return m_GetAttrProvider(); }=0A=
    =0A=
    bool CanHaveAttributes()=0A=
        { return m_CanHaveAttributes();}=0A=
    =0A=
    wxGridCellAttr* GetAttr(int row, int col, =
wxGridCellAttr::wxAttrKind kind)=0A=
        { return m_GetAttr(row, col, kind);}=0A=
    =0A=
    void SetAttr(wxGridCellAttr* attr, int row, int col)=0A=
        { return m_SetAttr(attr, row, col); }=0A=
    =0A=
    void SetRowAttr(wxGridCellAttr* attr, int row)=0A=
        { return m_SetRowAttr(attr, row); }=0A=
    =0A=
    void SetColAttr(wxGridCellAttr* attr, int col)=0A=
        { return m_SetColAttr(attr, col); }=0A=
=0A=
    void RegisterVirtual(Virtual_GetNumberRows getNumberRows,=0A=
            Virtual_GetNumberCols getNumberCols,=0A=
            Virtual_IsEmptyCell isEmptyCell,=0A=
            Virtual_GetValue2 getValue,=0A=
            Virtual_SetValue setValue,=0A=
            Virtual_GetValue2 getTypeName,=0A=
            Virtual_CanGetValueAs canGetValueAs,=0A=
            Virtual_CanGetValueAs canSetValueAs,=0A=
            Virtual_GetValueAsLong getValueAsLong,=0A=
            Virtual_GetValueAsDouble getValueAsDouble,=0A=
            Virtual_IsEmptyCell getValueAsBool,=0A=
            Virtual_SetValueAsLong setValueAsLong,=0A=
            Virtual_SetValueAsDouble setValueAsDouble,=0A=
            Virtual_SetValueAsBool setValueAsBool,=0A=
            Virtual_GetValueAsCustom getValueAsCustom,=0A=
            Virtual_SetValueAsCustom setValueAsCustom,=0A=
            Virtual_SetView setView,=0A=
            Virtual_GetView getView,=0A=
            Virtual_Clear clear,=0A=
            Virtual_InsertRows insertRows,=0A=
            Virtual_AppendRows appendRows,=0A=
            Virtual_InsertRows deleteRows,=0A=
            Virtual_InsertRows insertCols,=0A=
            Virtual_AppendRows appendCols,=0A=
            Virtual_InsertRows deleteCols,=0A=
            Virtual_GetColLabelValue getRowLabelValue,=0A=
            Virtual_GetColLabelValue getColLabelValue,=0A=
            Virtual_SetRowLabelValue setRowLabelValue,=0A=
            Virtual_SetRowLabelValue setColLabelValue,=0A=
            Virtual_SetAttrProvider setAttrProvider,=0A=
            Virtual_GetAttrProvider getAttrProvider,=0A=
            Virtual_CanHaveAttributes canHaveAttributes,=0A=
            Virtual_GetAttr getAttr,=0A=
            Virtual_SetAttr setAttr,=0A=
            Virtual_SetRowAttr setRowAttr,=0A=
            Virtual_SetRowAttr setColAttr)=0A=
        {=0A=
            m_GetNumberRows =3D getNumberRows;=0A=
            m_GetNumberCols =3D getNumberCols;=0A=
            m_IsEmptyCell =3D isEmptyCell;=0A=
            m_GetValue =3D getValue;=0A=
            m_SetValue =3D setValue;=0A=
            m_GetTypeName =3D getTypeName;=0A=
            m_CanGetValueAs =3D canGetValueAs;=0A=
            m_CanSetValueAs =3D canSetValueAs;=0A=
            m_GetValueAsLong =3D getValueAsLong;=0A=
            m_GetValueAsDouble =3D getValueAsDouble;=0A=
            m_GetValueAsBool =3D getValueAsBool;=0A=
            m_SetValueAsLong =3D setValueAsLong;=0A=
            m_SetValueAsDouble =3D setValueAsDouble;=0A=
            m_SetValueAsBool =3D setValueAsBool;=0A=
            m_GetValueAsCustom =3D getValueAsCustom;=0A=
            m_SetValueAsCustom =3D setValueAsCustom;=0A=
            m_GetColLabelValue =3D getColLabelValue;=0A=
            m_SetView =3D setView;=0A=
            m_GetView =3D getView;=0A=
            m_Clear =3D clear;=0A=
            m_InsertRows =3D insertRows;=0A=
            m_AppendRows =3D appendRows;=0A=
            m_DeleteRows =3D deleteRows;=0A=
            m_InsertCols =3D insertCols;=0A=
            m_AppendCols =3D appendCols;=0A=
            m_DeleteCols =3D deleteCols;=0A=
            m_GetRowLabelValue =3D getRowLabelValue;=0A=
            m_SetRowLabelValue =3D setRowLabelValue;=0A=
            m_SetColLabelValue =3D setColLabelValue;=0A=
            m_SetAttrProvider =3D setAttrProvider;=0A=
            m_GetAttrProvider =3D getAttrProvider;=0A=
            m_CanHaveAttributes =3D canHaveAttributes;=0A=
            m_GetAttr =3D getAttr;=0A=
            m_SetAttr =3D setAttr;=0A=
            m_SetRowAttr =3D setRowAttr;=0A=
            m_SetColAttr =3D setColAttr;=0A=
        }=0A=
=0A=
private:=0A=
    Virtual_GetNumberRows m_GetNumberRows;=0A=
    Virtual_GetNumberCols m_GetNumberCols;=0A=
    Virtual_IsEmptyCell m_IsEmptyCell;=0A=
    Virtual_GetValue2 m_GetValue;=0A=
    Virtual_SetValue m_SetValue;=0A=
    Virtual_GetValue2 m_GetTypeName;=0A=
    Virtual_CanGetValueAs m_CanGetValueAs;=0A=
    Virtual_CanGetValueAs m_CanSetValueAs;=0A=
    Virtual_GetValueAsLong m_GetValueAsLong;=0A=
    Virtual_GetValueAsDouble m_GetValueAsDouble;=0A=
    Virtual_IsEmptyCell m_GetValueAsBool;=0A=
    Virtual_SetValueAsLong m_SetValueAsLong;=0A=
    Virtual_SetValueAsDouble m_SetValueAsDouble;=0A=
    Virtual_SetValueAsBool m_SetValueAsBool;=0A=
    Virtual_GetValueAsCustom m_GetValueAsCustom;=0A=
    Virtual_SetValueAsCustom m_SetValueAsCustom;=0A=
    Virtual_GetColLabelValue m_GetColLabelValue;=0A=
    Virtual_SetView m_SetView;=0A=
    Virtual_GetView m_GetView;=0A=
    Virtual_Clear m_Clear;=0A=
    Virtual_InsertRows m_InsertRows;=0A=
    Virtual_AppendRows m_AppendRows;=0A=
    Virtual_InsertRows m_DeleteRows;=0A=
    Virtual_InsertRows m_InsertCols;=0A=
    Virtual_AppendRows m_AppendCols;=0A=
    Virtual_InsertRows m_DeleteCols;=0A=
    Virtual_GetColLabelValue m_GetRowLabelValue;=0A=
    Virtual_SetRowLabelValue m_SetRowLabelValue;=0A=
    Virtual_SetRowLabelValue m_SetColLabelValue;=0A=
    Virtual_SetAttrProvider m_SetAttrProvider;=0A=
    Virtual_GetAttrProvider m_GetAttrProvider;=0A=
    Virtual_CanHaveAttributes m_CanHaveAttributes;=0A=
    Virtual_GetAttr m_GetAttr;=0A=
    Virtual_SetAttr m_SetAttr;=0A=
    Virtual_SetRowAttr m_SetRowAttr;=0A=
    Virtual_SetRowAttr m_SetColAttr;=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridTableBase* wxGridTableBase_ctor()=0A=
{=0A=
    return new _GridTableBase();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_RegisterVirtual(_GridTableBase* self, =
Virtual_GetNumberRows getNumberRows,=0A=
            Virtual_GetNumberCols getNumberCols,=0A=
            Virtual_IsEmptyCell isEmptyCell,=0A=
            Virtual_GetValue2 getValue,=0A=
            Virtual_SetValue setValue,=0A=
            Virtual_GetValue2 getTypeName,=0A=
            Virtual_CanGetValueAs canGetValueAs,=0A=
            Virtual_CanGetValueAs canSetValueAs,=0A=
            Virtual_GetValueAsLong getValueAsLong,=0A=
            Virtual_GetValueAsDouble getValueAsDouble,=0A=
            Virtual_IsEmptyCell getValueAsBool,=0A=
            Virtual_SetValueAsLong setValueAsLong,=0A=
            Virtual_SetValueAsDouble setValueAsDouble,=0A=
            Virtual_SetValueAsBool setValueAsBool,=0A=
            Virtual_GetValueAsCustom getValueAsCustom,=0A=
            Virtual_SetValueAsCustom setValueAsCustom,=0A=
            Virtual_SetView setView,=0A=
            Virtual_GetView getView,=0A=
            Virtual_Clear clear,=0A=
            Virtual_InsertRows insertRows,=0A=
            Virtual_AppendRows appendRows,=0A=
            Virtual_InsertRows deleteRows,=0A=
            Virtual_InsertRows insertCols,=0A=
            Virtual_AppendRows appendCols,=0A=
            Virtual_InsertRows deleteCols,=0A=
            Virtual_GetColLabelValue getRowLabelValue,=0A=
            Virtual_GetColLabelValue getColLabelValue,=0A=
            Virtual_SetRowLabelValue setRowLabelValue,=0A=
            Virtual_SetRowLabelValue setColLabelValue,=0A=
            Virtual_SetAttrProvider setAttrProvider,=0A=
            Virtual_GetAttrProvider getAttrProvider,=0A=
            Virtual_CanHaveAttributes canHaveAttributes,=0A=
            Virtual_GetAttr getAttr,=0A=
            Virtual_SetAttr setAttr,=0A=
            Virtual_SetRowAttr setRowAttr,=0A=
            Virtual_SetRowAttr setColAttr)=0A=
{=0A=
    self->RegisterVirtual(getNumberRows, getNumberCols, isEmptyCell, =
getValue, setValue, getTypeName,=0A=
        canGetValueAs, canSetValueAs, getValueAsLong, getValueAsDouble, =
getValueAsBool,=0A=
        setValueAsLong, setValueAsDouble, setValueAsBool, =
getValueAsCustom, setValueAsCustom,=0A=
        setView, getView, clear, insertRows, appendRows, deleteRows,=0A=
        insertCols, appendCols, deleteCols, getRowLabelValue, =
getColLabelValue, setRowLabelValue,=0A=
        setColLabelValue, setAttrProvider, getAttrProvider, =
canHaveAttributes, getAttr,=0A=
        setAttr, setRowAttr, setColAttr);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGridTableBase_GetTypeName(_GridTableBase* self, int row, =
int col)=0A=
{=0A=
    return new wxString(self->wxGridTableBase::GetTypeName(row, =
col).c_str());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_CanGetValueAs(_GridTableBase* self, int row, int =
col, const char* typeName)=0A=
{=0A=
    return self->wxGridTableBase::CanGetValueAs(row, col, =
wxString(typeName, wxConvUTF8))?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_CanSetValueAs(_GridTableBase* self, int row, int =
col, const char* typeName)=0A=
{=0A=
    return self->wxGridTableBase::CanSetValueAs(row, col, =
wxString(typeName, wxConvUTF8))?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
long wxGridTableBase_GetValueAsLong(_GridTableBase* self, int row, int =
col)=0A=
{=0A=
    return self->wxGridTableBase::GetValueAsLong(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
double wxGridTableBase_GetValueAsDouble(_GridTableBase* self, int row, =
int col)=0A=
{=0A=
    return self->wxGridTableBase::GetValueAsDouble(row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_GetValueAsBool(_GridTableBase* self, int row, int =
col)=0A=
{=0A=
    return self->wxGridTableBase::GetValueAsBool(row, col)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetValueAsLong(_GridTableBase* self, int row, int =
col, long value)=0A=
{=0A=
    self->wxGridTableBase::SetValueAsLong(row, col, value);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetValueAsDouble(_GridTableBase* self, int row, =
int col, double value)=0A=
{=0A=
    self->wxGridTableBase::SetValueAsDouble(row, col, value);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetValueAsBool(_GridTableBase* self, int row, int =
col, bool value)=0A=
{=0A=
    self->wxGridTableBase::SetValueAsBool(row, col, value);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void* wxGridTableBase_GetValueAsCustom(_GridTableBase* self, int row, =
int col, const char* typeName)=0A=
{=0A=
    return self->wxGridTableBase::GetValueAsCustom(row, col, =
wxString(typeName, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetValueAsCustom(_GridTableBase* self, int row, =
int col, const char* typeName, void* value)=0A=
{=0A=
    self->wxGridTableBase::SetValueAsCustom(row, col, wxString(typeName,=
 wxConvUTF8), value);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetView(_GridTableBase* self, wxGrid* grid)=0A=
{=0A=
    self->wxGridTableBase::SetView(grid);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGrid* wxGridTableBase_GetView(_GridTableBase* self)=0A=
{=0A=
    return self->wxGridTableBase::GetView();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_Clear(_GridTableBase* self)=0A=
{=0A=
    self->wxGridTableBase::Clear();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_InsertRows(_GridTableBase* self, int pos, int =
numRows)=0A=
{=0A=
    return self->wxGridTableBase::InsertRows(pos, numRows)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_AppendRows(_GridTableBase* self, int numRows)=0A=
{=0A=
    return self->wxGridTableBase::AppendRows(numRows)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_DeleteRows(_GridTableBase* self, int pos, int =
numRows)=0A=
{=0A=
    return self->wxGridTableBase::DeleteRows(pos, numRows)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_InsertCols(_GridTableBase* self, int pos, int =
numCols)=0A=
{=0A=
    return self->wxGridTableBase::InsertCols(pos, numCols)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_AppendCols(_GridTableBase* self, int numCols)=0A=
{=0A=
    return self->wxGridTableBase::AppendCols(numCols)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_DeleteCols(_GridTableBase* self, int pos, int =
numCols)=0A=
{=0A=
    return self->wxGridTableBase::DeleteCols(pos, numCols)?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGridTableBase_GetRowLabelValue(_GridTableBase* self, int =
row)=0A=
{=0A=
    return new =
wxString(self->wxGridTableBase::GetRowLabelValue(row).c_str());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxString* wxGridTableBase_GetColLabelValue(_GridTableBase* self, int =
col)=0A=
{=0A=
    return new =
wxString(self->wxGridTableBase::GetColLabelValue(col).c_str());=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetRowLabelValue(_GridTableBase* self, int row, =
const char* value)=0A=
{=0A=
    self->wxGridTableBase::SetRowLabelValue(row,  wxString(value, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetColLabelValue(_GridTableBase* self, int col, =
const char* value)=0A=
{=0A=
    self->wxGridTableBase::SetColLabelValue(col,  wxString(value, =
wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetAttrProvider(_GridTableBase* self, =
wxGridCellAttrProvider* attrProvider)=0A=
{=0A=
    self->wxGridTableBase::SetAttrProvider(attrProvider);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttrProvider* wxGridTableBase_GetAttrProvider(_GridTableBase* =
self)=0A=
{=0A=
    return self->wxGridTableBase::GetAttrProvider();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridTableBase_CanHaveAttributes(_GridTableBase* self)=0A=
{=0A=
    return self->wxGridTableBase::CanHaveAttributes()?1:0;=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridTableBase_GetAttr(_GridTableBase* self, int row, =
int col, wxGridCellAttr::wxAttrKind kind)=0A=
{=0A=
    return self->wxGridTableBase::GetAttr(row, col, kind);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetAttr(_GridTableBase* self, wxGridCellAttr* =
attr, int row, int col)=0A=
{=0A=
    self->wxGridTableBase::SetAttr(attr, row, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetRowAttr(_GridTableBase* self, wxGridCellAttr* =
attr, int row)=0A=
{=0A=
    self->wxGridTableBase::SetRowAttr(attr, row);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridTableBase_SetColAttr(_GridTableBase* self, wxGridCellAttr* =
attr, int col)=0A=
{=0A=
    self->wxGridTableBase::SetColAttr(attr, col);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellTextEditor=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellTextEditor* wxGridCellTextEditor_ctor()=0A=
{=0A=
    return new wxGridCellTextEditor();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_dtor(wxGridCellTextEditor* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_Create(wxGridCellTextEditor* self, wxWindow* =
parent, wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    self->Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_SetSize(wxGridCellTextEditor* self, wxRect* =
rect)=0A=
{=0A=
    self->SetSize(*rect);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_PaintBackground(wxGridCellTextEditor* self, =
wxRect* rectCell, wxGridCellAttr* attr)=0A=
{=0A=
    self->PaintBackground(*rectCell, attr);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellTextEditor_IsAcceptedKey(wxGridCellTextEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->IsAcceptedKey(*event)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_BeginEdit(wxGridCellTextEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->BeginEdit(row, col, grid);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellTextEditor_EndEdit(wxGridCellTextEditor* self, int row, =
int col, wxGrid* grid)=0A=
{=0A=
    return self->EndEdit(row, col, grid)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_Reset(wxGridCellTextEditor* self)=0A=
{=0A=
    return self->Reset();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_StartingKey(wxGridCellTextEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->StartingKey(*event);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellTextEditor_SetParameters(wxGridCellTextEditor* self, =
const char * params)=0A=
{=0A=
    self->SetParameters(wxString(params, wxConvUTF8));=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellTextEditor_Clone(wxGridCellTextEditor* =
self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellAttrProvider=0A=
=0A=
class _GridCellAttrProvider : public wxGridCellAttrProvider=0A=
{=0A=
public:=0A=
    _GridCellAttrProvider()=0A=
        : wxGridCellAttrProvider() {}=0A=
        =0A=
    wxGridCellAttr* GetAttr(int row, int col, =
wxGridCellAttr::wxAttrKind kind)=0A=
        { return m_GetAttr(row, col, kind);}=0A=
    =0A=
    void SetAttr(wxGridCellAttr* attr, int row, int col)=0A=
        { return m_SetAttr(attr, row, col); }=0A=
    =0A=
    void SetRowAttr(wxGridCellAttr* attr, int row)=0A=
        { return m_SetRowAttr(attr, row); }=0A=
    =0A=
    void SetColAttr(wxGridCellAttr* attr, int col)=0A=
        { return m_SetColAttr(attr, col); } =0A=
=0A=
    void RegisterVirtual(Virtual_GetAttr getAttr,=0A=
        Virtual_SetAttr setAttr,=0A=
        Virtual_SetRowAttr setRowAttr,=0A=
        Virtual_SetRowAttr setColAttr)=0A=
        {=0A=
            m_GetAttr =3D getAttr;=0A=
            m_SetAttr =3D setAttr;=0A=
            m_SetRowAttr =3D setRowAttr;=0A=
            m_SetColAttr =3D setColAttr;=0A=
        }=0A=
=0A=
private:=0A=
    Virtual_GetAttr m_GetAttr;=0A=
    Virtual_SetAttr m_SetAttr;=0A=
    Virtual_SetRowAttr m_SetRowAttr;=0A=
    Virtual_SetRowAttr m_SetColAttr;=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttrProvider* wxGridCellAttrProvider_ctor()=0A=
{=0A=
    return new _GridCellAttrProvider();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_dtor(_GridCellAttrProvider* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_RegisterVirtual(_GridCellAttrProvider* =
self, =0A=
    Virtual_GetAttr getAttr,=0A=
    Virtual_SetAttr setAttr,=0A=
    Virtual_SetRowAttr setRowAttr,=0A=
    Virtual_SetRowAttr setColAttr)=0A=
{=0A=
    self->RegisterVirtual(getAttr, setAttr, setRowAttr, setColAttr);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellAttr* wxGridCellAttrProvider_GetAttr(_GridCellAttrProvider* =
self, int row, int col, wxGridCellAttr::wxAttrKind kind)=0A=
{=0A=
    return self->wxGridCellAttrProvider::GetAttr(row, col, kind);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_SetAttr(_GridCellAttrProvider* self, =
wxGridCellAttr* attr, int row, int col)=0A=
{=0A=
    self->wxGridCellAttrProvider::SetAttr(attr, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_SetRowAttr(_GridCellAttrProvider* self, =
wxGridCellAttr* attr, int row)=0A=
{=0A=
    self->wxGridCellAttrProvider::SetRowAttr(attr, row);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_SetColAttr(_GridCellAttrProvider* self, =
wxGridCellAttr* attr, int col)=0A=
{=0A=
    self->wxGridCellAttrProvider::SetColAttr(attr, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_UpdateAttrRows(_GridCellAttrProvider* self, =
int pos, int numRows)=0A=
{=0A=
    self->UpdateAttrRows(pos, numRows);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellAttrProvider_UpdateAttrCols(_GridCellAttrProvider* self, =
int pos, int numCols)=0A=
{=0A=
    self->UpdateAttrCols(pos, numCols);=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellNumberEditor=0A=
=0A=
class _GridCellNumberEditor : public wxGridCellNumberEditor=0A=
{=0A=
public:=0A=
	_GridCellNumberEditor(int min, int max)=0A=
		: wxGridCellNumberEditor(min, max) {}=0A=
=0A=
	DECLARE_DISPOSABLE(_GridCellNumberEditor)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellNumberEditor* wxGridCellNumberEditor_ctor(int min, int =
max)=0A=
{=0A=
    return new _GridCellNumberEditor(min, max);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_dtor(wxGridCellNumberEditor* self)=0A=
{=0A=
    if (self !=3D NULL)=0A=
    	delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_RegisterDisposable(_GridCellNumberEditor* =
self, Virtual_Dispose onDispose)=0A=
{=0A=
	self->RegisterDispose(onDispose);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_Create(wxGridCellNumberEditor* self, =
wxWindow* parent, wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    self->Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellNumberEditor_IsAcceptedKey(wxGridCellNumberEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->IsAcceptedKey(*event)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_BeginEdit(wxGridCellNumberEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->BeginEdit(row, col, grid);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellNumberEditor_EndEdit(wxGridCellNumberEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->EndEdit(row, col, grid)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_Reset(wxGridCellNumberEditor* self)=0A=
{=0A=
    return self->Reset();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_StartingKey(wxGridCellNumberEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->StartingKey(*event);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberEditor_SetParameters(wxGridCellNumberEditor* self, =
const char * params)=0A=
{=0A=
    self->SetParameters(wxString(params, wxConvUTF8));=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellNumberEditor_Clone(wxGridCellNumberEditor* =
self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellFloatEditor=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellFloatEditor* wxGridCellFloatEditor_ctor(int width, int =
precision)=0A=
{=0A=
    return new wxGridCellFloatEditor(width, precision);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_dtor(wxGridCellFloatEditor* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_Create(wxGridCellFloatEditor* self, =
wxWindow* parent, wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    self->Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellFloatEditor_IsAcceptedKey(wxGridCellFloatEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->IsAcceptedKey(*event)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_BeginEdit(wxGridCellFloatEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->BeginEdit(row, col, grid);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellFloatEditor_EndEdit(wxGridCellFloatEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->EndEdit(row, col, grid)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_Reset(wxGridCellFloatEditor* self)=0A=
{=0A=
    return self->Reset();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_StartingKey(wxGridCellFloatEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->StartingKey(*event);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatEditor_SetParameters(wxGridCellFloatEditor* self, =
const char * params)=0A=
{=0A=
    self->SetParameters(wxString(params, wxConvUTF8));=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellFloatEditor_Clone(wxGridCellFloatEditor* =
self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellBoolEditor=0A=
=0A=
class _GridCellBoolEditor : public wxGridCellBoolEditor=0A=
{=0A=
public:=0A=
	_GridCellBoolEditor()=0A=
		: wxGridCellBoolEditor() {}=0A=
=0A=
	DECLARE_DISPOSABLE(_GridCellBoolEditor)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellBoolEditor* wxGridCellBoolEditor_ctor()=0A=
{=0A=
    return new _GridCellBoolEditor();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_dtor(wxGridCellBoolEditor* self)=0A=
{=0A=
    if (self !=3D NULL)=0A=
    	delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_RegisterDisposable(_GridCellBoolEditor* self, =
Virtual_Dispose onDispose)=0A=
{=0A=
	self->RegisterDispose(onDispose);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_Create(wxGridCellBoolEditor* self, wxWindow* =
parent, wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    self->Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_SetSize(wxGridCellBoolEditor* self, wxRect* =
rect)=0A=
{=0A=
    self->SetSize(*rect);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellBoolEditor_IsAcceptedKey(wxGridCellBoolEditor* self, =
wxKeyEvent* event)=0A=
{=0A=
    return self->IsAcceptedKey(*event)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_BeginEdit(wxGridCellBoolEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    self->BeginEdit(row, col, grid);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellBoolEditor_EndEdit(wxGridCellBoolEditor* self, int row, =
int col, wxGrid* grid)=0A=
{=0A=
    return self->EndEdit(row, col, grid)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_Reset(wxGridCellBoolEditor* self)=0A=
{=0A=
    return self->Reset();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolEditor_StartingClick(wxGridCellFloatEditor* self)=0A=
{=0A=
    return self->StartingClick();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellBoolEditor_Clone(wxGridCellBoolEditor* =
self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellChoiceEditor=0A=
=0A=
class _GridCellChoiceEditor : public wxGridCellChoiceEditor=0A=
{=0A=
public:=0A=
	_GridCellChoiceEditor(size_t count, const wxString choices[], bool =
allowOthers)=0A=
		: wxGridCellChoiceEditor(count, choices, allowOthers) {}=0A=
=0A=
	DECLARE_DISPOSABLE(_GridCellChoiceEditor)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellChoiceEditor* wxGridCellChoiceEditor_ctor(int n, char* =
choices[], bool allowOthers)=0A=
{=0A=
    wxString *pchoices =3D new wxString[n];=0A=
    for (int i =3D 0; i < n; ++i)=0A=
    {=0A=
        pchoices[i] =3D wxString(choices[i], wxConvUTF8);=0A=
        }=0A=
=0A=
    return new _GridCellChoiceEditor(n, pchoices, allowOthers);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_dtor(wxGridCellChoiceEditor* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_RegisterDisposable(_GridCellChoiceEditor* =
self, Virtual_Dispose onDispose)=0A=
{=0A=
	self->RegisterDispose(onDispose);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_Create(wxGridCellChoiceEditor* self, =
wxWindow* parent, wxWindowID id, wxEvtHandler* evtHandler)=0A=
{=0A=
    self->Create(parent, id, evtHandler);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_PaintBackground(wxGridCellChoiceEditor* =
self, wxRect* rect, wxGridCellAttr* attr)=0A=
{=0A=
    self->PaintBackground(*rect, attr);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_BeginEdit(wxGridCellChoiceEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->BeginEdit(row, col, grid);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
bool wxGridCellChoiceEditor_EndEdit(wxGridCellChoiceEditor* self, int =
row, int col, wxGrid* grid)=0A=
{=0A=
    return self->EndEdit(row, col, grid)?1:0;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_Reset(wxGridCellChoiceEditor* self)=0A=
{=0A=
    return self->Reset();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellChoiceEditor_SetParameters(wxGridCellChoiceEditor* self, =
const char * params)=0A=
{=0A=
    self->SetParameters(wxString(params, wxConvUTF8));=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellEditor* wxGridCellChoiceEditor_Clone(wxGridCellChoiceEditor* =
self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellStringRenderer=0A=
=0A=
class _GridCellStringRenderer : public wxGridCellStringRenderer=0A=
{=0A=
public:=0A=
	_GridCellStringRenderer()=0A=
		: wxGridCellStringRenderer() {}=0A=
=0A=
	DECLARE_DISPOSABLE(_GridCellStringRenderer)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellStringRenderer* wxGridCellStringRenderer_ctor()=0A=
{=0A=
    return new _GridCellStringRenderer();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellStringRenderer_dtor(wxGridCellStringRenderer* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void =
wxGridCellStringRenderer_RegisterDisposable(_GridCellStringRenderer* =
self, Virtual_Dispose onDispose)=0A=
{=0A=
	self->RegisterDispose(onDispose);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellStringRenderer_Draw(wxGridCellStringRenderer* self, =
wxGrid* grid, wxGridCellAttr* attr,=0A=
                wxDC* dc, wxRect* rect, int row, int col, bool =
isSelected)=0A=
{=0A=
    self->Draw(*grid, *attr, *dc, *rect, row, col, isSelected);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellStringRenderer_GetBestSize(wxGridCellStringRenderer* =
self, wxGrid *grid, wxGridCellAttr *attr,=0A=
                wxDC* dc, int row, int col, wxSize* size)=0A=
{=0A=
    *size =3D self->GetBestSize(*grid, *attr, *dc, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* =
wxGridCellStringRenderer_Clone(wxGridCellStringRenderer* self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellNumberRenderer=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellNumberRenderer* wxGridCellNumberRenderer_ctor()=0A=
{=0A=
    return new wxGridCellNumberRenderer();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberRenderer_dtor(wxGridCellNumberRenderer* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberRenderer_Draw(wxGridCellNumberRenderer* self, =
wxGrid* grid, wxGridCellAttr* attr,=0A=
                wxDC* dc, wxRect* rect, int row, int col, bool =
isSelected)=0A=
{=0A=
    self->Draw(*grid, *attr, *dc, *rect, row, col, isSelected);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellNumberRenderer_GetBestSize(wxGridCellNumberRenderer* =
self, wxGrid *grid, wxGridCellAttr *attr,=0A=
                wxDC* dc, int row, int col, wxSize* size)=0A=
{=0A=
    *size =3D self->GetBestSize(*grid, *attr, *dc, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* =
wxGridCellNumberRenderer_Clone(wxGridCellNumberRenderer* self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellFloatRenderer=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellFloatRenderer* wxGridCellFloatRenderer_ctor(int width, int =
precision)=0A=
{=0A=
    return new wxGridCellFloatRenderer(width, precision);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_dtor(wxGridCellFloatRenderer* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_Draw(wxGridCellFloatRenderer* self, =
wxGrid* grid, wxGridCellAttr* attr,=0A=
                wxDC* dc, wxRect* rect, int row, int col, bool =
isSelected)=0A=
{=0A=
    self->Draw(*grid, *attr, *dc, *rect, row, col, isSelected);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_GetBestSize(wxGridCellFloatRenderer* self, =
wxGrid *grid, wxGridCellAttr *attr,=0A=
                wxDC* dc, int row, int col, wxSize* size)=0A=
{=0A=
    *size =3D self->GetBestSize(*grid, *attr, *dc, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* =
wxGridCellFloatRenderer_Clone(wxGridCellFloatRenderer* self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridCellFloatRenderer_GetWidth(wxGridCellFloatRenderer* self)=0A=
{=0A=
    return self->GetWidth();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_SetWidth(wxGridCellFloatRenderer* self, =
int width)=0A=
{=0A=
    self->SetWidth(width);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
int wxGridCellFloatRenderer_GetPrecision(wxGridCellFloatRenderer* =
self)=0A=
{=0A=
    return self->GetPrecision();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_SetPrecision(wxGridCellFloatRenderer* =
self, int precision)=0A=
{=0A=
    self->SetPrecision(precision);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellFloatRenderer_SetParameters(wxGridCellFloatRenderer* =
self, const char* params)=0A=
{=0A=
    self->SetParameters(wxString(params, wxConvUTF8));=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellBoolRenderer=0A=
=0A=
class _GridCellBoolRenderer : public wxGridCellBoolRenderer=0A=
{=0A=
public:=0A=
	_GridCellBoolRenderer()=0A=
		: wxGridCellBoolRenderer() {}=0A=
=0A=
	DECLARE_DISPOSABLE(_GridCellBoolRenderer)=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellBoolRenderer* wxGridCellBoolRenderer_ctor()=0A=
{=0A=
    return new _GridCellBoolRenderer();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolRenderer_dtor(wxGridCellBoolRenderer* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolRenderer_RegisterDisposable(_GridCellBoolRenderer* =
self, Virtual_Dispose onDispose)=0A=
{=0A=
	self->RegisterDispose(onDispose);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolRenderer_Draw(wxGridCellBoolRenderer* self, wxGrid* =
grid, wxGridCellAttr* attr,=0A=
                wxDC* dc, wxRect* rect, int row, int col, bool =
isSelected)=0A=
{=0A=
    self->Draw(*grid, *attr, *dc, *rect, row, col, isSelected);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellBoolRenderer_GetBestSize(wxGridCellBoolRenderer* self, =
wxGrid *grid, wxGridCellAttr *attr,=0A=
                wxDC* dc, int row, int col, wxSize* size)=0A=
{=0A=
    *size =3D self->GetBestSize(*grid, *attr, *dc, row, col);=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* =
wxGridCellBoolRenderer_Clone(wxGridCellBoolRenderer* self)=0A=
{=0A=
    return self->Clone();=0A=
}=0A=
=0A=
//----------------------------------------------------------------------=
-------=0A=
// wxGridCellRenderer=0A=
=0A=
typedef void (CALLBACK* Virtual_Draw) (wxGrid*, wxGridCellAttr*, wxDC*, =
wxRect*, int, int, bool);=0A=
typedef wxSize* (CALLBACK* Virtual_GetBestSize) (wxGrid*, =
wxGridCellAttr*, wxDC*, int, int);=0A=
typedef wxGridCellRenderer* (CALLBACK* Virtual_RendererClone) ();=0A=
=0A=
class _GridCellRenderer : public wxGridCellRenderer=0A=
{=0A=
public:=0A=
    _GridCellRenderer()=0A=
        : wxGridCellRenderer() {}=0A=
        =0A=
    void Draw(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, const =
wxRect& rect, int row, int col, bool isSelected)=0A=
        { =0A=
            return m_Draw(&grid, &attr, &dc, new wxRect(rect), row, =
col, isSelected);=0A=
        }=0A=
    =0A=
    wxSize GetBestSize(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, =
int row, int col)=0A=
        { return wxSize(*m_GetBestSize(&grid, &attr, &dc, row, =
col));}=0A=
    =0A=
    wxGridCellRenderer* Clone() const=0A=
        { return m_Clone();}=0A=
=0A=
    void RegisterVirtual(Virtual_Draw draw,=0A=
        Virtual_GetBestSize getBestSize,=0A=
        Virtual_RendererClone clone)=0A=
        {=0A=
            m_Draw =3D draw;=0A=
            m_GetBestSize =3D getBestSize;=0A=
            m_Clone =3D clone;=0A=
        }=0A=
=0A=
private:=0A=
    Virtual_Draw m_Draw;=0A=
    Virtual_GetBestSize m_GetBestSize;=0A=
    Virtual_RendererClone m_Clone;=0A=
};=0A=
=0A=
extern "C" WXEXPORT=0A=
wxGridCellRenderer* wxGridCellRenderer_ctor()=0A=
{=0A=
    return new _GridCellRenderer();=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellRenderer_dtor(_GridCellRenderer* self)=0A=
{=0A=
	if (self !=3D NULL)=0A=
		delete self;=0A=
}=0A=
=0A=
extern "C" WXEXPORT=0A=
void wxGridCellRenderer_RegisterVirtual(_GridCellRenderer* self, =0A=
        Virtual_Draw draw,=0A=
        Virtual_GetBestSize getBestSize,=0A=
        Virtual_RendererClone clone)=0A=
{=0A=
    self->RegisterVirtual(draw, getBestSize, clone);=0A=
}=0A=

------_=_NextPart_000_01C648F9.90825A1A
Content-Type: application/octet-stream;
	name="Grid.cs"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="Grid.cs"

//----------------------------------------------------------------------=
-------=0A=
// wx.NET - Grid.cs=0A=
//=0A=
// The wxGrid wrapper class.=0A=
//=0A=
// Written by Bryan Bulten ([email protected])=0A=
// (C) 2003 by Bryan Bulten=0A=
// Licensed under the wxWidgets license, see LICENSE.txt for =
details.=0A=
//=0A=
// $Id: Grid.cs,v 1.17 2004/11/26 21:39:52 olkalex Exp $=0A=
//----------------------------------------------------------------------=
-------=0A=
=0A=
using System;=0A=
using System.Runtime.InteropServices;=0A=
using System.Drawing;=0A=
=0A=
namespace wx=0A=
{=0A=
    public enum GridSelectionMode=0A=
    {=0A=
        wxGridSelectCells,=0A=
        wxGridSelectRows,=0A=
        wxGridSelectColumns=0A=
    }=0A=
=0A=
    public class GridEvent : Event =0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr wxGridEvent_ctor(int =
id, int type, IntPtr obj, int row, int col, int x, int y, bool sel, =
bool control, bool shift, bool alt, bool meta);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridEvent_GetRow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridEvent_GetCol(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridEvent_GetPosition(IntPtr self, ref Point pt);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridEvent_Selecting(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridEvent_ControlDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridEvent_MetaDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridEvent_ShiftDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridEvent_AltDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void wxGridEvent_Veto(IntPtr =
self);=0A=
        [DllImport("wx-c")] static extern void wxGridEvent_Allow(IntPtr =
self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridEvent_IsAllowed(IntPtr self);      =0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public GridEvent(IntPtr wxObject)=0A=
            : base(wxObject) { }=0A=
=0A=
        public GridEvent(int id, int type, Object obj, int row, int =
col, int x, int y, bool sel, bool control, bool shift, bool alt, bool =
meta)=0A=
            : this(wxGridEvent_ctor(id, type, Object.SafePtr(obj), row, =
col, x, y, sel, control, shift, alt, meta)) { }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public int Row=0A=
        {=0A=
            get { return wxGridEvent_GetRow(wxObject); }=0A=
        }=0A=
=0A=
        public int Col=0A=
        {=0A=
            get { return wxGridEvent_GetCol(wxObject); }=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public Point Position=0A=
        {=0A=
            get { =0A=
                Point pt =3D new Point();=0A=
                wxGridEvent_GetPosition(wxObject, ref pt);=0A=
                return pt;=0A=
            }=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public bool Selecting=0A=
        {=0A=
            get { return wxGridEvent_Selecting(wxObject); }=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public bool ControlDown=0A=
        {=0A=
            get { return wxGridEvent_ControlDown(wxObject); }=0A=
        }=0A=
=0A=
        public bool MetaDown=0A=
        {=0A=
            get { return wxGridEvent_MetaDown(wxObject); }=0A=
        }=0A=
=0A=
        public bool ShiftDown=0A=
        {=0A=
            get { return wxGridEvent_ShiftDown(wxObject); }=0A=
        }=0A=
=0A=
            public bool AltDown=0A=
            {=0A=
                get { return wxGridEvent_AltDown(wxObject); }=0A=
            }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------     =0A=
        =0A=
        public void Veto()=0A=
        {=0A=
            wxGridEvent_Veto(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void Allow()=0A=
        {=0A=
            wxGridEvent_Allow(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool Allowed=0A=
        {=0A=
            get { return wxGridEvent_IsAllowed(wxObject); }=0A=
        }               =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public abstract class GridCellEditor : GridCellWorker=0A=
    {=0A=
        private delegate void Virtual_Create(IntPtr parent, int id, =
IntPtr evtHandler);=0A=
        private delegate void Virtual_BeginEdit(int row, int col, =
IntPtr grid);=0A=
        private delegate bool Virtual_EndEdit(int row, int col, IntPtr =
grid);=0A=
        private delegate void Virtual_Reset();=0A=
        private delegate IntPtr Virtual_Clone();=0A=
        private delegate void Virtual_SetSize(IntPtr rect);=0A=
        private delegate void Virtual_Show(int show, IntPtr attr);=0A=
        private delegate void Virtual_PaintBackground(IntPtr rect, =
IntPtr attr);=0A=
        private delegate bool Virtual_IsAcceptedKey(IntPtr evt);=0A=
        private delegate void Virtual_StartingKey(IntPtr evt);=0A=
        private delegate void Virtual_StartingClick();=0A=
        private delegate void Virtual_HandleReturn(IntPtr evt);=0A=
        private delegate void Virtual_Destroy();=0A=
        private delegate string Virtual_GetValue();=0A=
=0A=
        private Virtual_Create virtual_Create;=0A=
        private Virtual_BeginEdit virtual_BeginEdit;=0A=
        private Virtual_EndEdit virtual_EndEdit;=0A=
        private Virtual_Reset virtual_Reset;=0A=
        private Virtual_Clone virtual_Clone;=0A=
        private Virtual_SetSize virtual_SetSize;=0A=
        private Virtual_Show virtual_Show;=0A=
        private Virtual_PaintBackground virtual_PaintBackground;=0A=
        private Virtual_IsAcceptedKey virtual_IsAcceptedKey;=0A=
        private Virtual_StartingKey virtual_StartingKey;=0A=
        private Virtual_StartingClick virtual_StartingClick;=0A=
        private Virtual_HandleReturn virtual_HandleReturn;=0A=
        private Virtual_Destroy virtual_Destroy;=0A=
        private Virtual_GetValue virtual_GetValue;=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellEditor_ctor();=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellEditor_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellEditor_RegisterVirtual(IntPtr self, =0A=
            Virtual_Create create, =0A=
            Virtual_BeginEdit beginEdit, =0A=
            Virtual_EndEdit endEdit, =0A=
            Virtual_Reset reset, =0A=
            Virtual_Clone clone,=0A=
            Virtual_SetSize setSize,=0A=
            Virtual_Show show,=0A=
            Virtual_PaintBackground paintBackground,=0A=
            Virtual_IsAcceptedKey isAcceptedKey,=0A=
            Virtual_StartingKey startingKey,=0A=
            Virtual_StartingClick startingClick,=0A=
            Virtual_HandleReturn handleReturn,=0A=
            Virtual_Destroy destroy,=0A=
            Virtual_GetValue getvalue);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellEditor_IsCreated(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_SetSize(IntPtr self, ref Rectangle rect);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_Show(IntPtr self, bool show, IntPtr attr);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_PaintBackground(IntPtr self, ref Rectangle rectCell, =
IntPtr attr);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellEditor_IsAcceptedKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_StartingKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_StartingClick(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_HandleReturn(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_Destroy(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellEditor_GetValue(IntPtr self);=0A=
        // HMaH: missing access to the control.=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellEditor_SetControl(IntPtr self, IntPtr control);=0A=
        // HMaH: missing access to the control.=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellEditor_GetControl(IntPtr self);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridCellEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
            =0A=
        public GridCellEditor()=0A=
            : this(wxGridCellEditor_ctor(), true) =0A=
        {=0A=
            virtual_Create =3D new Virtual_Create(DoCreate);=0A=
            virtual_BeginEdit =3D new =
Virtual_BeginEdit(DoBeginEdit);=0A=
            virtual_EndEdit =3D new Virtual_EndEdit(DoEndEdit);=0A=
            virtual_Reset =3D new Virtual_Reset(Reset);=0A=
            virtual_Clone =3D new Virtual_Clone(DoClone);=0A=
            virtual_SetSize =3D new Virtual_SetSize(DoSetSize);=0A=
            virtual_Show =3D new Virtual_Show(DoShow);=0A=
            virtual_PaintBackground =3D new =
Virtual_PaintBackground(DoPaintBackground);=0A=
            virtual_IsAcceptedKey =3D new =
Virtual_IsAcceptedKey(DoIsAcceptedKey);=0A=
            virtual_StartingKey =3D new =
Virtual_StartingKey(DoStartingKey);=0A=
            virtual_StartingClick =3D new =
Virtual_StartingClick(StartingClick);=0A=
            virtual_HandleReturn =3D new =
Virtual_HandleReturn(DoHandleReturn);=0A=
            virtual_Destroy =3D new Virtual_Destroy(Destroy);=0A=
            virtual_GetValue =3D new Virtual_GetValue(GetValue);=0A=
=0A=
            wxGridCellEditor_RegisterVirtual(wxObject, =
virtual_Create,=0A=
                    virtual_BeginEdit,=0A=
                    virtual_EndEdit,=0A=
                    virtual_Reset,=0A=
                    virtual_Clone,=0A=
                    virtual_SetSize,=0A=
                    virtual_Show,=0A=
                    virtual_PaintBackground,=0A=
                    virtual_IsAcceptedKey,=0A=
                    virtual_StartingKey,=0A=
                    virtual_StartingClick,=0A=
                    virtual_HandleReturn,=0A=
                    virtual_Destroy,=0A=
                    virtual_GetValue);                                  =
  =0A=
        }=0A=
=0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
            =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public bool IsCreated=0A=
        {=0A=
            get { return wxGridCellEditor_IsCreated(wxObject); }=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoCreate(IntPtr parent, int id, IntPtr =
evtHandler)=0A=
        {=0A=
            // The parent of the grid is typically a native control =
(the grid control).=0A=
            // So, most probably a wrapper instance has to be generated =
here.=0A=
            Create((Window)Object.FindObject(parent, typeof(Window)), =
id, (EvtHandler)Object.FindObject(evtHandler, typeof(EvtHandler)));=0A=
        }=0A=
    =0A=
        /** HMaH: Do not forget to set the generated control =
(SetControl())=0A=
         * */=0A=
        public abstract void Create(Window parent, int id, EvtHandler =
evtHandler);=0A=
    =0A=
        /** HMaH: Sets the control to be raised on edit a cell.=0A=
         * Setting this is a prerequisite for several methods and shall =
be done in Create().=0A=
         * */=0A=
        public void SetControl(Control control)=0A=
        {=0A=
            wxGridCellEditor_SetControl(wxObject, =
Object.SafePtr(control));=0A=
        }=0A=
=0A=
        /** HMaH: Gets the control that is used for editing cells.=0A=
         * Note: This only works if the control has been generated from =
the wx.net side.=0A=
         * If this editor is a native implementation like for instance =
GridCellTextEditor,=0A=
         * this method returns \c null.=0A=
         * */=0A=
        public Control GetControl()=0A=
        {=0A=
            return (Control) =
Object.FindObject(wxGridCellEditor_GetControl(wxObject));=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetSize(IntPtr rect)=0A=
        {=0A=
            SetSize(new wxRect(rect));=0A=
        }=0A=
    =0A=
        public virtual void SetSize(Rectangle rectArg)=0A=
        {=0A=
            Rectangle rect=3DrectArg;=0A=
            wxGridCellEditor_SetSize(wxObject, ref rect);=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoShow(int show, IntPtr attr)=0A=
        {=0A=
            Show(show=3D=3D0?false:true, (GridCellAttr)FindObject(attr, =
typeof(GridCellAttr)));=0A=
        }=0A=
=0A=
        public virtual void Show(bool show, GridCellAttr attr)=0A=
        {=0A=
            wxGridCellEditor_Show(wxObject, show, =
Object.SafePtr(attr));=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoPaintBackground(IntPtr rectCell, IntPtr attr)=0A=
        {=0A=
            PaintBackground(new wxRect(rectCell), =
(GridCellAttr)Object.FindObject(attr, typeof(GridCellAttr)));=0A=
        }=0A=
=0A=
        public virtual void PaintBackground(Rectangle rectCell, =
GridCellAttr attr)=0A=
        {=0A=
            wxGridCellEditor_PaintBackground(wxObject, ref rectCell, =
Object.SafePtr(attr));=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoBeginEdit(int row, int col, IntPtr grid)=0A=
        {=0A=
            BeginEdit(row, col, (Grid)Object.FindObject(grid, =
typeof(Grid)));=0A=
        }=0A=
    =0A=
        public abstract void BeginEdit(int row, int col, Grid grid);=0A=
        =0A=
        private bool DoEndEdit(int row, int col, IntPtr grid)=0A=
        {=0A=
            return EndEdit(row, col, (Grid)Object.FindObject(grid, =
typeof(Grid)));=0A=
        }=0A=
        =0A=
        public abstract bool EndEdit(int row, int col, Grid grid);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public abstract void Reset();=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private bool DoIsAcceptedKey(IntPtr evt)=0A=
        {=0A=
            // HMaH: This should be a key event. Previously: An =
Event.=0A=
            return IsAcceptedKey((KeyEvent)Object.FindObject(evt, =
typeof(KeyEvent)));=0A=
        }=0A=
        =0A=
        public virtual bool IsAcceptedKey(KeyEvent evt)=0A=
        {=0A=
            return wxGridCellEditor_IsAcceptedKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
        =0A=
        private void DoStartingKey(IntPtr evt)=0A=
        {=0A=
            // HMaH: This should be a key event. Previously: An =
Event.=0A=
            StartingKey((KeyEvent)Object.FindObject(evt, =
typeof(KeyEvent)));=0A=
        }=0A=
    =0A=
        public virtual void StartingKey(KeyEvent evt)=0A=
        {=0A=
            wxGridCellEditor_StartingKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public virtual void StartingClick()=0A=
        {=0A=
            wxGridCellEditor_StartingClick(wxObject);=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoHandleReturn(IntPtr evt)=0A=
        {=0A=
            HandleReturn((KeyEvent)Object.FindObject(evt, =
typeof(Event)));=0A=
        }=0A=
=0A=
        public virtual void HandleReturn(KeyEvent evt)=0A=
        {=0A=
            wxGridCellEditor_HandleReturn(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public virtual void Destroy()=0A=
        {=0A=
            wxGridCellEditor_Destroy(wxObject);=0A=
        }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoClone()=0A=
        {=0A=
            return Object.SafePtr(Clone());=0A=
        }=0A=
        =0A=
        public abstract GridCellEditor Clone();=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
            public virtual string GetValue()=0A=
        {=0A=
            return new wxString(wxGridCellEditor_GetValue(wxObject), =
true);=0A=
        }=0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellTextEditor : GridCellEditor=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellTextEditor_ctor();=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_Create(IntPtr self, IntPtr parent, int id, IntPtr =
evtHandler);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_SetSize(IntPtr self, ref Rectangle rect);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_PaintBackground(IntPtr self, ref Rectangle =
rectCell, IntPtr attr);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellTextEditor_IsAcceptedKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_BeginEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellTextEditor_EndEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_Reset(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_StartingKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellTextEditor_SetParameters(IntPtr self, string parameter);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellTextEditor_Clone(IntPtr self);=0A=
    =0A=
        public GridCellTextEditor()=0A=
            : this(wxGridCellTextEditor_ctor(), true) { }=0A=
=0A=
        public GridCellTextEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
        { =0A=
            this.wxObject =3D wxObject;=0A=
        }=0A=
    =0A=
        internal GridCellTextEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
        { =0A=
            this.memOwn =3D memOwn;=0A=
            this.wxObject =3D wxObject;=0A=
        }=0A=
    =0A=
        =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellTextEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellTextEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
=0A=
        public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
        {=0A=
            wxGridCellTextEditor_Create(wxObject, =
Object.SafePtr(parent), id, Object.SafePtr(evtHandler));=0A=
        }=0A=
=0A=
        public override void SetSize(Rectangle rect)=0A=
        {=0A=
            wxGridCellTextEditor_SetSize(wxObject, ref rect);=0A=
        }=0A=
=0A=
        public override void PaintBackground(Rectangle rectCell, =
GridCellAttr attr)=0A=
        {=0A=
            wxGridCellTextEditor_PaintBackground(wxObject, ref =
rectCell, Object.SafePtr(attr));=0A=
        }=0A=
=0A=
        public override bool IsAcceptedKey(KeyEvent evt)=0A=
        {=0A=
            return wxGridCellTextEditor_IsAcceptedKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void BeginEdit(int row, int col, Grid grid)=0A=
        {=0A=
            wxGridCellTextEditor_BeginEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override bool EndEdit(int row, int col, Grid grid)=0A=
        {=0A=
            return wxGridCellTextEditor_EndEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override void Reset()=0A=
        {=0A=
            wxGridCellTextEditor_Reset(wxObject);=0A=
        }=0A=
=0A=
        public override void StartingKey(KeyEvent evt)=0A=
        {=0A=
            wxGridCellTextEditor_StartingKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void SetParameters(string parameter)=0A=
        {=0A=
            wxGridCellTextEditor_SetParameters(wxObject, parameter);=0A=
        }=0A=
=0A=
        public override GridCellEditor Clone()=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellTextEditor_Clone(wxObject), =
typeof(GridCellEditor));=0A=
        }=0A=
    }=0A=
=0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public class GridCellNumberEditor : GridCellTextEditor=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellNumberEditor_ctor(int min, int max);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_RegisterDisposable(IntPtr self, Virtual_Dispose =
onDispose);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_Create(IntPtr self, IntPtr parent, int id, =
IntPtr evtHandler);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellNumberEditor_IsAcceptedKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_BeginEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellNumberEditor_EndEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_Reset(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_StartingKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberEditor_SetParameters(IntPtr self, string parameter);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellNumberEditor_Clone(IntPtr self);=0A=
    =0A=
        public GridCellNumberEditor()=0A=
            : this(-1, -1) { }=0A=
=0A=
        public GridCellNumberEditor(int min)=0A=
            : this(min, -1) { }=0A=
=0A=
        public GridCellNumberEditor(int min, int max)=0A=
            : this(wxGridCellNumberEditor_ctor(min, max), true) =0A=
    { =0A=
        virtual_Dispose =3D new Virtual_Dispose(VirtualDispose);=0A=
        wxGridCellNumberEditor_RegisterDisposable(wxObject, =
virtual_Dispose);=0A=
    }=0A=
=0A=
        public GridCellNumberEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellNumberEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellNumberEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellNumberEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
=0A=
        public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
        {=0A=
            wxGridCellNumberEditor_Create(wxObject, =
Object.SafePtr(parent), id, Object.SafePtr(evtHandler));=0A=
        }=0A=
=0A=
        public override bool IsAcceptedKey(KeyEvent evt)=0A=
        {=0A=
            return wxGridCellNumberEditor_IsAcceptedKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void BeginEdit(int row, int col, Grid grid)=0A=
        {=0A=
            wxGridCellNumberEditor_BeginEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override bool EndEdit(int row, int col, Grid grid)=0A=
        {=0A=
            return wxGridCellNumberEditor_EndEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override void Reset()=0A=
        {=0A=
            wxGridCellNumberEditor_Reset(wxObject);=0A=
        }=0A=
=0A=
        public override void StartingKey(KeyEvent evt)=0A=
        {=0A=
            wxGridCellNumberEditor_StartingKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void SetParameters(string parameter)=0A=
        {=0A=
            wxGridCellNumberEditor_SetParameters(wxObject, =
parameter);=0A=
        }=0A=
=0A=
        public override GridCellEditor Clone()=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellNumberEditor_Clone(wxObject), =
typeof(GridCellEditor));=0A=
        }=0A=
    }=0A=
=0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public class GridCellFloatEditor : GridCellTextEditor=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellFloatEditor_ctor(int width, int precision);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_Create(IntPtr self, IntPtr parent, int id, IntPtr =
evtHandler);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellFloatEditor_IsAcceptedKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_BeginEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellFloatEditor_EndEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_Reset(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_StartingKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatEditor_SetParameters(IntPtr self, string parameter);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellFloatEditor_Clone(IntPtr self);=0A=
    =0A=
        public GridCellFloatEditor()=0A=
            : this(-1, -1) { }=0A=
=0A=
        public GridCellFloatEditor(int width)=0A=
            : this(width, -1) { }=0A=
=0A=
        public GridCellFloatEditor(int width, int precision)=0A=
            : this(wxGridCellFloatEditor_ctor(width, precision), true) =
{ }=0A=
=0A=
        public GridCellFloatEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellFloatEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellFloatEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellFloatEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
=0A=
        public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
        {=0A=
            wxGridCellFloatEditor_Create(wxObject, =
Object.SafePtr(parent), id, Object.SafePtr(evtHandler));=0A=
        }=0A=
=0A=
        public override bool IsAcceptedKey(KeyEvent evt)=0A=
        {=0A=
            return wxGridCellFloatEditor_IsAcceptedKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void BeginEdit(int row, int col, Grid grid)=0A=
        {=0A=
            wxGridCellFloatEditor_BeginEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override bool EndEdit(int row, int col, Grid grid)=0A=
        {=0A=
            return wxGridCellFloatEditor_EndEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
=0A=
        public override void Reset()=0A=
        {=0A=
            wxGridCellFloatEditor_Reset(wxObject);=0A=
        }=0A=
=0A=
        public override void StartingKey(KeyEvent evt)=0A=
        {=0A=
            wxGridCellFloatEditor_StartingKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void SetParameters(string parameter)=0A=
        {=0A=
            wxGridCellFloatEditor_SetParameters(wxObject, =
parameter);=0A=
        }=0A=
=0A=
        public override GridCellEditor Clone()=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellFloatEditor_Clone(wxObject), =
typeof(GridCellEditor));=0A=
        }=0A=
    }=0A=
=0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellBoolEditor : GridCellEditor=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellBoolEditor_ctor();=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_RegisterDisposable(IntPtr self, Virtual_Dispose =
onDispose);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_Create(IntPtr self, IntPtr parent, int id, IntPtr =
evtHandler);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_SetSize(IntPtr self, ref Rectangle rect);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellBoolEditor_IsAcceptedKey(IntPtr self, IntPtr evt);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_BeginEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellBoolEditor_EndEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_Reset(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolEditor_StartingClick(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellBoolEditor_Clone(IntPtr self);=0A=
    =0A=
        public GridCellBoolEditor()=0A=
            : this(wxGridCellBoolEditor_ctor(), true) =0A=
    { =0A=
        virtual_Dispose =3D new Virtual_Dispose(VirtualDispose);=0A=
        wxGridCellBoolEditor_RegisterDisposable(wxObject, =
virtual_Dispose);=0A=
    }=0A=
=0A=
        public GridCellBoolEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellBoolEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellBoolEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellBoolEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
=0A=
        public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
        {=0A=
            wxGridCellBoolEditor_Create(wxObject, =
Object.SafePtr(parent), id, Object.SafePtr(evtHandler));=0A=
        }=0A=
=0A=
        public override void SetSize(Rectangle rect)=0A=
        {=0A=
            wxGridCellBoolEditor_SetSize(wxObject, ref rect);=0A=
        }=0A=
=0A=
        public override bool IsAcceptedKey(KeyEvent evt)=0A=
        {=0A=
            return wxGridCellBoolEditor_IsAcceptedKey(wxObject, =
Object.SafePtr(evt));=0A=
        }=0A=
=0A=
        public override void BeginEdit(int row, int col, Grid grid)=0A=
        {=0A=
            wxGridCellBoolEditor_BeginEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
        =0A=
        public override bool EndEdit(int row, int col, Grid grid)=0A=
        {=0A=
            return wxGridCellBoolEditor_EndEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
        =0A=
        public override void Reset()=0A=
        {=0A=
            wxGridCellBoolEditor_Reset(wxObject);=0A=
        }=0A=
=0A=
        public override void StartingClick()=0A=
        {=0A=
            wxGridCellBoolEditor_StartingClick(wxObject);=0A=
        }=0A=
        =0A=
        public override GridCellEditor Clone()=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellBoolEditor_Clone(wxObject), =
typeof(GridCellEditor));=0A=
        }       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellChoiceEditor : GridCellEditor=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellChoiceEditor_ctor(int n, string[] choices, bool =
allowOthers);=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_dtor(IntPtr self);=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_RegisterDisposable(IntPtr self, Virtual_Dispose =
onDispose);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_Create(IntPtr self, IntPtr parent, int id, =
IntPtr evtHandler);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_PaintBackground(IntPtr self, ref Rectangle =
rectCell, IntPtr attr);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_BeginEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridCellChoiceEditor_EndEdit(IntPtr self, int row, int col, IntPtr =
grid);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_Reset(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellChoiceEditor_SetParameters(IntPtr self, string parameter);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellChoiceEditor_Clone(IntPtr self);=0A=
    =0A=
        public GridCellChoiceEditor()=0A=
            : this(null, false) { }=0A=
        =0A=
        public GridCellChoiceEditor(string[] choices)=0A=
            : this(choices, false) { }=0A=
        =0A=
        public GridCellChoiceEditor(string[] choices, bool =
allowOthers)=0A=
            : this(wxGridCellChoiceEditor_ctor(choices.Length, choices, =
allowOthers), true) =0A=
    { =0A=
        virtual_Dispose =3D new Virtual_Dispose(VirtualDispose);=0A=
        wxGridCellChoiceEditor_RegisterDisposable(wxObject, =
virtual_Dispose);=0A=
    }=0A=
=0A=
        public GridCellChoiceEditor(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellChoiceEditor(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellChoiceEditor_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellChoiceEditor() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
=0A=
        public override void Create(Window parent, int id, EvtHandler =
evtHandler)=0A=
        {=0A=
            wxGridCellChoiceEditor_Create(wxObject, =
Object.SafePtr(parent), id, Object.SafePtr(evtHandler));=0A=
        }=0A=
=0A=
        public override void PaintBackground(Rectangle rectCell, =
GridCellAttr attr)=0A=
        {=0A=
            wxGridCellChoiceEditor_PaintBackground(wxObject, ref =
rectCell, Object.SafePtr(attr));=0A=
        }=0A=
=0A=
        public override void BeginEdit(int row, int col, Grid grid)=0A=
        {=0A=
            wxGridCellChoiceEditor_BeginEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
        =0A=
        public override bool EndEdit(int row, int col, Grid grid)=0A=
        {=0A=
            return wxGridCellChoiceEditor_EndEdit(wxObject, row, col, =
Object.SafePtr(grid));=0A=
        }=0A=
        =0A=
        public override void Reset()=0A=
        {=0A=
            wxGridCellChoiceEditor_Reset(wxObject);=0A=
        }=0A=
=0A=
        public override void SetParameters(string parameter)=0A=
        {=0A=
            wxGridCellChoiceEditor_SetParameters(wxObject, =
parameter);=0A=
        }=0A=
=0A=
        public override GridCellEditor Clone()=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellChoiceEditor_Clone(wxObject), =
typeof(GridCellEditor));=0A=
        }       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public class GridRangeSelectEvent : Event=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridRangeSelectEvent_ctor(int id, int type, IntPtr obj, IntPtr =
topLeft, IntPtr bottomRight, bool sel, bool control, bool shift, bool =
alt, bool meta);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridRangeSelectEvent_GetTopLeftCoords(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridRangeSelectEvent_GetBottomRightCoords(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int =
wxGridRangeSelectEvent_GetTopRow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int =
wxGridRangeSelectEvent_GetBottomRow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int =
wxGridRangeSelectEvent_GetLeftCol(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int =
wxGridRangeSelectEvent_GetRightCol(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_Selecting(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_ControlDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_MetaDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_ShiftDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_AltDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridRangeSelectEvent_Veto(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridRangeSelectEvent_Allow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridRangeSelectEvent_IsAllowed(IntPtr self);       =0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridRangeSelectEvent(IntPtr wxObject)=0A=
            : base(wxObject) { }=0A=
    =0A=
        public GridRangeSelectEvent(int id, int type, Object obj, =
GridCellCoords topLeft, GridCellCoords bottomRight, bool sel, bool =
control, bool shift, bool alt, bool meta)=0A=
            : base(wxGridRangeSelectEvent_ctor(id, type, =
Object.SafePtr(obj), Object.SafePtr(topLeft), =
Object.SafePtr(bottomRight), sel, control, shift, alt, meta)) { }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridCellCoords TopLeftCoords=0A=
        {=0A=
            get { return new =
GridCellCoords(wxGridRangeSelectEvent_GetTopLeftCoords(wxObject)); }=0A=
        }=0A=
    =0A=
        public GridCellCoords BottomRightCoords=0A=
        {=0A=
            get { return new =
GridCellCoords(wxGridRangeSelectEvent_GetBottomRightCoords(wxObject)); =
}=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public int TopRow=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_GetTopRow(wxObject); =
}=0A=
        }=0A=
    =0A=
        public int BottomRow=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_GetBottomRow(wxObject); =
}=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public int LeftCol=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_GetLeftCol(wxObject); =
}=0A=
        }=0A=
    =0A=
        public int RightCol=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_GetRightCol(wxObject); =
}=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public bool Selecting=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_Selecting(wxObject); =
}=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public bool ControlDown=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_ControlDown(wxObject); =
}=0A=
        }=0A=
    =0A=
        public bool MetaDown=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_MetaDown(wxObject); =
}=0A=
        }=0A=
    =0A=
        public bool ShiftDown=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_ShiftDown(wxObject); =
}=0A=
        }=0A=
    =0A=
        public bool AltDown=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_AltDown(wxObject); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------     =0A=
        =0A=
        public void Veto()=0A=
        {=0A=
            wxGridRangeSelectEvent_Veto(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void Allow()=0A=
        {=0A=
            wxGridRangeSelectEvent_Allow(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool Allowed=0A=
        {=0A=
            get { return wxGridRangeSelectEvent_IsAllowed(wxObject); =
}=0A=
        }                       =0A=
    }=0A=
=0A=
    public class GridCellWorker : Object //ClientData=0A=
    {=0A=
        private delegate void Virtual_SetParameters(IntPtr param);=0A=
=0A=
        private Virtual_SetParameters virtual_SetParameters;=0A=
    =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellWorker_ctor();=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellWorker_RegisterVirtual(IntPtr self, Virtual_SetParameters =
setParameters);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellWorker_IncRef(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellWorker_DecRef(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellWorker_SetParameters(IntPtr self, string parms);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridCellWorker(IntPtr wxObject) =0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellWorker(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
        public GridCellWorker()=0A=
            : this(wxGridCellWorker_ctor(), true) =0A=
        { =0A=
            virtual_SetParameters =3D new =
Virtual_SetParameters(DoSetParameters);=0A=
            wxGridCellWorker_RegisterVirtual(wxObject, =
virtual_SetParameters);=0A=
        }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                memOwn =3D false;=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellWorker() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void IncRef()=0A=
        {=0A=
            wxGridCellWorker_IncRef(wxObject);=0A=
        }=0A=
        =0A=
        public void DecRef()=0A=
        {=0A=
            wxGridCellWorker_DecRef(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetParameters(IntPtr param)=0A=
        {=0A=
            SetParameters(new wxString(param));=0A=
        }=0A=
        =0A=
        public virtual void SetParameters(string param)=0A=
        {=0A=
            wxGridCellWorker_SetParameters(wxObject, param);=0A=
        }=0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public class GridEditorCreatedEvent : CommandEvent =0A=
    {=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGridEditorCreatedEvent_ctor(int id, int type, IntPtr obj, int row, =
int col, IntPtr ctrl);=0A=
            [DllImport("wx-c")] static extern int    =
wxGridEditorCreatedEvent_GetRow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGridEditorCreatedEvent_GetCol(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGridEditorCreatedEvent_GetControl(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGridEditorCreatedEvent_SetRow(IntPtr self, int row);=0A=
            [DllImport("wx-c")] static extern void   =
wxGridEditorCreatedEvent_SetCol(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGridEditorCreatedEvent_SetControl(IntPtr self, IntPtr ctrl);=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridEditorCreatedEvent(IntPtr wxObject)=0A=
            : base(wxObject) { } =0A=
    =0A=
            public GridEditorCreatedEvent(int id, int type, Object obj, =
int row, int col, Control ctrl)=0A=
            : this(wxGridEditorCreatedEvent_ctor(id, type, =
Object.SafePtr(obj), row, col, Object.SafePtr(ctrl))) { }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int Row=0A=
            {=0A=
            get { return wxGridEditorCreatedEvent_GetRow(wxObject); =
}=0A=
            set { wxGridEditorCreatedEvent_SetRow(wxObject, value); =
}=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int Col=0A=
            {=0A=
            get { return wxGridEditorCreatedEvent_GetCol(wxObject); =
}=0A=
            set { wxGridEditorCreatedEvent_SetCol(wxObject, value); =
}=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Control Control=0A=
            {=0A=
            get { return =
(Control)FindObject(wxGridEditorCreatedEvent_GetControl(wxObject), =
typeof(Control)); }=0A=
            set { wxGridEditorCreatedEvent_SetControl(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public class Grid : ScrolledWindow=0A=
    {=0A=
            [DllImport("wx-c")] static extern IntPtr wxGrid_ctor();=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_ctorFull(IntPtr parent, int id, ref Point pos, ref Size size, =
uint style, string name);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_CreateGrid(IntPtr self, int numRows, int numCols,  int =
selmode);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetSelectionMode(IntPtr self, int selmode);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetNumberRows(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetNumberCols(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetTable(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_SetTable(IntPtr self, IntPtr table, bool takeOwnership, int =
select);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_ClearGrid(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_InsertRows(IntPtr self, int pos, int numRows, bool =
updateLabels);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_AppendRows(IntPtr self, int numRows, bool updateLabels);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_DeleteRows(IntPtr self, int pos, int numRows, bool =
updateLabels);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_InsertCols(IntPtr self, int pos, int numCols, bool =
updateLabels);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_AppendCols(IntPtr self, int numCols, bool updateLabels);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_DeleteCols(IntPtr self, int pos, int numCols, bool =
updateLabels);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_BeginBatch(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EndBatch(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetBatchCount(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_ForceRefresh(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsEditable(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableEditing(IntPtr self, bool edit);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableCellEditControl(IntPtr self, bool enable);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DisableCellEditControl(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_CanEnableCellControl(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsCellEditControlEnabled(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsCellEditControlShown(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsCurrentCellReadOnly(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_ShowCellEditControl(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_HideCellEditControl(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SaveEditControlValue(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_YToRow(IntPtr self, int y);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_XToCol(IntPtr self, int x);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_YToEdgeOfRow(IntPtr self, int y);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_XToEdgeOfCol(IntPtr self, int x);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_CellToRect(IntPtr self, int row, int col, ref Rectangle =
rect);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetGridCursorRow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetGridCursorCol(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsVisible(IntPtr self, int row, int col, bool =
wholeCellVisible);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_MakeCellVisible(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetGridCursor(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorUp(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorDown(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorLeft(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorRight(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MovePageDown(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MovePageUp(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorUpBlock(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorDownBlock(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorLeftBlock(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_MoveCursorRightBlock(IntPtr self, bool expandSelection);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetDefaultRowLabelSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetRowLabelSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetDefaultColLabelSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetColLabelSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetLabelBackgroundColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetLabelTextColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetLabelFont(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_GetRowLabelAlignment(IntPtr self, out int horiz, out int =
vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_GetColLabelAlignment(IntPtr self, out int horiz, out int =
vert);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetRowLabelValue(IntPtr self, int row);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetColLabelValue(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetGridLineColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellHighlightColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetCellHighlightPenWidth(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetCellHighlightROPenWidth(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowLabelSize(IntPtr self, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColLabelSize(IntPtr self, int height);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelBackgroundColour(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelTextColour(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelFont(IntPtr self, IntPtr fnt);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowLabelAlignment(IntPtr self, int horiz, int vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColLabelAlignment(IntPtr self, int horiz, int vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowLabelValue(IntPtr self, int row, string val);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColLabelValue(IntPtr self, int col, string val);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetGridLineColour(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellHighlightColour(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellHighlightPenWidth(IntPtr self, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellHighlightROPenWidth(IntPtr self, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableDragRowSize(IntPtr self, bool enable);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DisableDragRowSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_CanDragRowSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableDragColSize(IntPtr self, bool enable);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DisableDragColSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_CanDragColSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableDragGridSize(IntPtr self, bool enable);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DisableDragGridSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_CanDragGridSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetAttr(IntPtr self, int row, int col, IntPtr attr);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowAttr(IntPtr self, int row, IntPtr attr);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColAttr(IntPtr self, int col, IntPtr attr);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColFormatBool(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColFormatNumber(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColFormatFloat(IntPtr self, int col, int width, int =
precision);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColFormatCustom(IntPtr self, int col, string typeName);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_EnableGridLines(IntPtr self, bool enable);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_GridLinesEnabled(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetDefaultRowSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetRowSize(IntPtr self, int row);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetDefaultColSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetColSize(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultCellBackgroundColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellBackgroundColour(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultCellTextColour(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellTextColour(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultCellFont(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellFont(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_GetDefaultCellAlignment(IntPtr self, ref int horiz, ref int =
vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_GetCellAlignment(IntPtr self, int row, int col, ref int horiz, =
ref int vert);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_GetDefaultCellOverflow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_GetCellOverflow(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_GetCellSize(IntPtr self, int row, int col, ref int num_rows, ref =
int num_cols);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultRowSize(IntPtr self, int height, bool =
resizeExistingRows);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowSize(IntPtr self, int row, int height);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultColSize(IntPtr self, int width, bool =
resizeExistingCols);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColSize(IntPtr self, int col, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_AutoSizeColumn(IntPtr self, int col, bool setAsMin);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_AutoSizeRow(IntPtr self, int row, bool setAsMin);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_AutoSizeColumns(IntPtr self, bool setAsMin);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_AutoSizeRows(IntPtr self, bool setAsMin);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_AutoSize(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColMinimalWidth(IntPtr self, int col, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowMinimalHeight(IntPtr self, int row, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColMinimalAcceptableWidth(IntPtr self, int width);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowMinimalAcceptableHeight(IntPtr self, int width);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetColMinimalAcceptableWidth(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetRowMinimalAcceptableHeight(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   wxGrid_SetDefaultCe=
llBackgroundColour(IntPtr self, IntPtr wxColour);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultCellTextColour(IntPtr self, IntPtr wxColour);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultCellFont(IntPtr self, IntPtr wxFont);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellFont(IntPtr self, int row, int col, IntPtr wxFont );=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultCellAlignment(IntPtr self, int horiz, int vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellAlignmentHV(IntPtr self, int row, int col, int horiz, int =
vert);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultCellOverflow(IntPtr self, bool allow);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellOverflow(IntPtr self, int row, int col, bool allow);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellSize(IntPtr self, int row, int col, int num_rows, int =
num_cols);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultRenderer(IntPtr self, IntPtr renderer);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellRenderer(IntPtr self, int row, int col, IntPtr =
renderer);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultRenderer(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellRenderer(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDefaultEditor(IntPtr self, IntPtr editor);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellEditor(IntPtr self, int row, int col, IntPtr editor);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultEditor(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellEditor(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellValue(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellValue(IntPtr self, int row, int col, string s);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsReadOnly(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetReadOnly(IntPtr self, int row, int col, bool isReadOnly);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SelectRow(IntPtr self, int row, bool addToSelected);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SelectCol(IntPtr self, int col, bool addToSelected);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SelectBlock(IntPtr self, int topRow, int leftCol, int bottomRow, =
int rightCol, bool addToSelected);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SelectAll(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsSelection(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DeselectRow(IntPtr self, int row);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DeselectCol(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_DeselectCell(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_ClearSelection(IntPtr self);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_IsInSelection(IntPtr self, int row, int col);=0A=
            //[DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectedCells(IntPtr self);=0A=
            //[DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectionBlockTopLeft(IntPtr self);=0A=
            //[DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectionBlockBottomRight(IntPtr self);=0A=
            //[DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectedRows(IntPtr self);=0A=
            //[DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectedCols(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_BlockToDeviceRect(IntPtr self, IntPtr topLeft, IntPtr =
bottomRight, ref Rectangle rect);=0A=
            [DllImport("wx-c")] static extern IntPtr wxGrid_GetSelection=
Background(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetSelectionForeground(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetSelectionBackground(IntPtr self, IntPtr c);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetSelectionForeground(IntPtr self, IntPtr c);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_RegisterDataType(IntPtr self, string typeName, IntPtr renderer, =
IntPtr editor);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultEditorForCell(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultRendererForCell(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultEditorForType(IntPtr self, string typeName);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDefaultRendererForType(IntPtr self, string typeName);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetMargins(IntPtr self, int extraWidth, int extraHeight);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetGridWindow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetGridRowLabelWindow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetGridColLabelWindow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetGridCornerLabelWindow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_UpdateDimensions(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetRows(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetCols(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetCursorRow(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetCursorColumn(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetScrollPosX(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetScrollPosY(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetScrollX(IntPtr self, int x);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetScrollY(IntPtr self, int y);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetColumnWidth(IntPtr self, int col, int width);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetColumnWidth(IntPtr self, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetRowHeight(IntPtr self, int row, int height);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetViewHeight(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetViewWidth(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelSize(IntPtr self, int orientation, int sz);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetLabelSize(IntPtr self, int orientation);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelAlignment(IntPtr self, int orientation, int align);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetLabelAlignment(IntPtr self, int orientation, int align);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetLabelValue(IntPtr self, int orientation, string val, int =
pos);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetLabelValue(IntPtr self, int orientation, int pos);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellTextFontGrid(IntPtr self);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetCellTextFont(IntPtr self, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellTextFontGrid(IntPtr self, IntPtr fnt);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellTextFont(IntPtr self, IntPtr fnt, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellTextColour(IntPtr self, int row, int col, IntPtr val);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellTextColourGrid(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellBackgroundColourGrid(IntPtr self, IntPtr col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellBackgroundColour(IntPtr self, int row, int col, IntPtr =
colour);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_GetEditable(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetEditable(IntPtr self, bool edit);=0A=
            [DllImport("wx-c")] static extern bool   =
wxGrid_GetEditInPlace(IntPtr self);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellAlignment(IntPtr self, int align, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellAlignmentGrid(IntPtr self, int align);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetCellBitmap(IntPtr self, IntPtr bitmap, int row, int col);=0A=
            [DllImport("wx-c")] static extern void   =
wxGrid_SetDividerPen(IntPtr self, IntPtr pen);=0A=
            [DllImport("wx-c")] static extern IntPtr =
wxGrid_GetDividerPen(IntPtr self);=0A=
            [DllImport("wx-c")] static extern int    =
wxGrid_GetRowHeight(IntPtr self, int row);=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public Grid(IntPtr wxObject)=0A=
            : base(wxObject) { }=0A=
=0A=
        public Grid()=0A=
            : this(wxGrid_ctor()) { }=0A=
=0A=
        public Grid(Window parent, int id)=0A=
            : this(parent, id, wxDefaultPosition, wxDefaultSize, =
wxWANTS_CHARS, "grid") { }=0A=
        =0A=
        public Grid(Window parent, int id, Point pos)=0A=
            : this(parent, id, pos, wxDefaultSize, wxWANTS_CHARS, =
"grid") { }=0A=
        =0A=
        public Grid(Window parent, int id, Point pos, Size size)=0A=
            : this(parent, id, pos, size, wxWANTS_CHARS, "grid") { }=0A=
        =0A=
        public Grid(Window parent, int id, Point pos, Size size, long =
style)=0A=
            : this(parent, id, pos, size, style, "grid") { }=0A=
=0A=
        public Grid(Window parent, int id, Point pos, Size size, long =
style, string name)=0A=
            : this(wxGrid_ctorFull(Object.SafePtr(parent), id, ref pos, =
ref size, (uint)style, name)) { }=0A=
=0A=
        //public  Grid(Window parent, int x, int y, int w, int h, long =
style, string name)=0A=
        //    : base(wxGrid_ctor(Object.SafePtr(parent), x, y, w, h, =
style, name)) { }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
    // ctors with self created id=0A=
    =0A=
    public Grid(Window parent)=0A=
            : this(parent, Window.UniqueID, wxDefaultPosition, =
wxDefaultSize, wxWANTS_CHARS, "grid") { }=0A=
        =0A=
        public Grid(Window parent, Point pos)=0A=
            : this(parent, Window.UniqueID, pos, wxDefaultSize, =
wxWANTS_CHARS, "grid") { }=0A=
        =0A=
        public Grid(Window parent, Point pos, Size size)=0A=
            : this(parent, Window.UniqueID, pos, size, wxWANTS_CHARS, =
"grid") { }=0A=
        =0A=
        public Grid(Window parent, Point pos, Size size, long style)=0A=
            : this(parent, Window.UniqueID, pos, size, style, "grid") { =
}=0A=
=0A=
        public Grid(Window parent, Point pos, Size size, long style, =
string name)=0A=
        : this(parent, Window.UniqueID, pos, size, style, name) {}=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public bool CreateGrid(int numRows, int numCols)=0A=
        { return CreateGrid(numRows, numCols, =
GridSelectionMode.wxGridSelectCells); }=0A=
=0A=
            public bool CreateGrid(int numRows, int numCols, =
GridSelectionMode selmode)=0A=
            {=0A=
            return wxGrid_CreateGrid(wxObject, numRows, numCols, =
(int)selmode);=0A=
            }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
            public GridSelectionMode SelectionMode=0A=
            {=0A=
            set { wxGrid_SetSelectionMode(wxObject, (int)value); }=0A=
            //get { return wxGrid_GetSelectionMode(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
=0A=
            public int NumberRows=0A=
            {=0A=
            get { return wxGrid_GetNumberRows(wxObject); }=0A=
            }=0A=
    =0A=
            public int NumberCols=0A=
            {=0A=
            get { return wxGrid_GetNumberCols(wxObject); }=0A=
            }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
            public GridTableBase Table=0A=
            {=0A=
            get { return =
(GridTableBase)FindObject(wxGrid_GetTable(wxObject), =
typeof(GridTableBase)); }=0A=
            }=0A=
        =0A=
        public bool SetTable(GridTableBase table)=0A=
        {=0A=
            return SetTable(table, false, =
GridSelectionMode.wxGridSelectCells ); =0A=
        }=0A=
        =0A=
        public bool SetTable(GridTableBase table, bool =
takeOwnerShip)=0A=
        {=0A=
            return SetTable(table, takeOwnerShip, =
GridSelectionMode.wxGridSelectCells);=0A=
        }=0A=
    =0A=
            public bool SetTable(GridTableBase table, bool =
takeOwnership, GridSelectionMode select)=0A=
            {=0A=
            return wxGrid_SetTable(wxObject, Object.SafePtr(table), =
takeOwnership, (int)select);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void ClearGrid()=0A=
            {=0A=
            wxGrid_ClearGrid(wxObject);=0A=
            }=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool InsertRows()=0A=
        {=0A=
            return InsertRows(0, 1, true);=0A=
        }=0A=
        =0A=
        public bool InsertRows(int pos)=0A=
        {=0A=
            return InsertRows(pos, 1, true);=0A=
        }=0A=
        =0A=
        public bool InsertRows(int pos, int numRows)=0A=
        {=0A=
            return InsertRows(pos, numRows, true);=0A=
        }   =0A=
    =0A=
            public bool InsertRows(int pos, int numRows, bool =
updateLabels)=0A=
            {=0A=
            return wxGrid_InsertRows(wxObject, pos, numRows, =
updateLabels);=0A=
        }=0A=
        =0A=
        public bool AppendRows()=0A=
        {=0A=
            return AppendRows(1, true);=0A=
        }=0A=
        =0A=
        public bool AppendRows(int numRows)=0A=
        {=0A=
            return AppendRows(numRows, true);=0A=
        }=0A=
    =0A=
            public bool AppendRows(int numRows, bool updateLabels)=0A=
            {=0A=
            return wxGrid_AppendRows(wxObject, numRows, =
updateLabels);=0A=
            }=0A=
        =0A=
        public bool DeleteRows()=0A=
        {=0A=
            return DeleteRows(0, 1, true);=0A=
        }=0A=
        =0A=
        public bool DeleteRows(int pos)=0A=
        {=0A=
            return DeleteRows(pos, 1, true);=0A=
        }=0A=
        =0A=
        public bool DeleteRows(int pos, int numRows)=0A=
        {=0A=
            return DeleteRows(pos, numRows, true);=0A=
        }=0A=
    =0A=
            public bool DeleteRows(int pos, int numRows, bool =
updateLabels)=0A=
            {=0A=
            return wxGrid_DeleteRows(wxObject, pos, numRows, =
updateLabels);=0A=
            }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public bool InsertCols()=0A=
        {=0A=
            return InsertCols(0, 1, true);=0A=
        }=0A=
        =0A=
        public bool InsertCols(int pos)=0A=
        {=0A=
            return InsertCols(pos, 1, true);=0A=
        }=0A=
        =0A=
        public bool InsertCols(int pos, int numRows)=0A=
        {=0A=
            return InsertCols(pos, numRows, true);=0A=
        }   =0A=
    =0A=
            public bool InsertCols(int pos, int numCols, bool =
updateLabels)=0A=
            {=0A=
            return wxGrid_InsertCols(wxObject, pos, numCols, =
updateLabels);=0A=
            }=0A=
        =0A=
        public bool AppendCols()=0A=
        {=0A=
            return AppendCols(1, true);=0A=
        }=0A=
        =0A=
        public bool AppendCols(int numCols)=0A=
        {=0A=
            return AppendCols(numCols, true);=0A=
        }=0A=
    =0A=
            public bool AppendCols(int numCols, bool updateLabels)=0A=
            {=0A=
            return wxGrid_AppendCols(wxObject, numCols, =
updateLabels);=0A=
            }=0A=
        =0A=
        public bool DeleteCols()=0A=
        {=0A=
            return DeleteCols(0, 1, true);=0A=
        }=0A=
        =0A=
        public bool DeleteCols(int pos)=0A=
        {=0A=
            return DeleteCols(pos, 1, true);=0A=
        }=0A=
        =0A=
        public bool DeleteCols(int pos, int numRows)=0A=
        {=0A=
            return DeleteCols(pos, numRows, true);=0A=
        }=0A=
    =0A=
            public bool DeleteCols(int pos, int numCols, bool =
updateLabels)=0A=
            {=0A=
            return wxGrid_DeleteCols(wxObject, pos, numCols, =
updateLabels);=0A=
            }=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void BeginBatch()=0A=
            {=0A=
            wxGrid_BeginBatch(wxObject);=0A=
            }=0A=
    =0A=
            public void EndBatch()=0A=
            {=0A=
            wxGrid_EndBatch(wxObject);=0A=
            }=0A=
    =0A=
            public int BatchCount=0A=
            {=0A=
            get { return wxGrid_GetBatchCount(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void ForceRefresh()=0A=
            {=0A=
            wxGrid_ForceRefresh(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsEditable=0A=
            {=0A=
            get { return wxGrid_IsEditable(wxObject); }=0A=
            set { wxGrid_EnableEditing(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool CellEditControlEnabled=0A=
            {=0A=
            set { wxGrid_EnableCellEditControl(wxObject, value); }=0A=
            get { return wxGrid_IsCellEditControlEnabled(wxObject); =
}=0A=
            }=0A=
    =0A=
            public void DisableCellEditControl()=0A=
            {=0A=
            wxGrid_DisableCellEditControl(wxObject);=0A=
            }=0A=
    =0A=
            public bool CanEnableCellControl=0A=
            {=0A=
            get { return wxGrid_CanEnableCellControl(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsCellEditControlShown=0A=
            {=0A=
            get { return wxGrid_IsCellEditControlShown(wxObject); }=0A=
            }=0A=
    =0A=
            public bool IsCurrentCellReadOnly=0A=
            {=0A=
            get { return wxGrid_IsCurrentCellReadOnly(wxObject); }=0A=
            }=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void ShowCellEditControl()=0A=
            {=0A=
            wxGrid_ShowCellEditControl(wxObject);=0A=
            }=0A=
    =0A=
            public void HideCellEditControl()=0A=
            {=0A=
            wxGrid_HideCellEditControl(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SaveEditControlValue()=0A=
            {=0A=
            wxGrid_SaveEditControlValue(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            /*public void XYToCell(int x, int y,  GridCellCoords )=0A=
            {=0A=
                    wxGrid_XYToCell(wxObject, x, y, =
Object.SafePtr(GridCellCoords ));=0A=
            }*/=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int YToRow(int y)=0A=
            {=0A=
            return wxGrid_YToRow(wxObject, y);=0A=
            }=0A=
    =0A=
            public int XToCol(int x)=0A=
            {=0A=
            return wxGrid_XToCol(wxObject, x);=0A=
            }=0A=
    =0A=
            public int YToEdgeOfRow(int y)=0A=
            {=0A=
            return wxGrid_YToEdgeOfRow(wxObject, y);=0A=
            }=0A=
    =0A=
            public int XToEdgeOfCol(int x)=0A=
            {=0A=
            return wxGrid_XToEdgeOfCol(wxObject, x);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Rectangle CellToRect(int row, int col)=0A=
            {=0A=
            Rectangle rect =3D new Rectangle();=0A=
            wxGrid_CellToRect(wxObject, row, col, ref rect);=0A=
            return rect;=0A=
            }=0A=
    =0A=
            //----------------------------------------------------------=
-------------------=0A=
    =0A=
            public int GridCursorRow=0A=
            {=0A=
            get { return wxGrid_GetGridCursorRow(wxObject); }=0A=
            }=0A=
    =0A=
            public int GridCursorCol=0A=
            {=0A=
            get { return wxGrid_GetGridCursorCol(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsVisible(int row, int col, bool =
wholeCellVisible)=0A=
            {=0A=
            return wxGrid_IsVisible(wxObject, row, col, =
wholeCellVisible);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void MakeCellVisible(int row, int col)=0A=
            {=0A=
            wxGrid_MakeCellVisible(wxObject, row, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetGridCursor(int row, int col)=0A=
            {=0A=
            wxGrid_SetGridCursor(wxObject, row, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool MoveCursorUp(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorUp(wxObject, expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorDown(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorDown(wxObject, expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorLeft(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorLeft(wxObject, expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorRight(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorRight(wxObject, =
expandSelection);=0A=
            }=0A=
    =0A=
            public bool MovePageDown()=0A=
            {=0A=
            return wxGrid_MovePageDown(wxObject);=0A=
            }=0A=
    =0A=
            public bool MovePageUp()=0A=
            {=0A=
            return wxGrid_MovePageUp(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool MoveCursorUpBlock(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorUpBlock(wxObject, =
expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorDownBlock(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorDownBlock(wxObject, =
expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorLeftBlock(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorLeftBlock(wxObject, =
expandSelection);=0A=
            }=0A=
    =0A=
            public bool MoveCursorRightBlock(bool expandSelection)=0A=
            {=0A=
            return wxGrid_MoveCursorRightBlock(wxObject, =
expandSelection);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int DefaultRowLabelSize=0A=
            {=0A=
            get { return wxGrid_GetDefaultRowLabelSize(wxObject); }=0A=
            }=0A=
    =0A=
            public int RowLabelSize=0A=
            {=0A=
            get { return wxGrid_GetRowLabelSize(wxObject); }=0A=
            set { wxGrid_SetRowLabelSize(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int DefaultColLabelSize=0A=
            {=0A=
            get { return wxGrid_GetDefaultColLabelSize(wxObject); }=0A=
            }=0A=
    =0A=
            public int ColLabelSize=0A=
            {=0A=
            get { return wxGrid_GetColLabelSize(wxObject); }=0A=
            set { wxGrid_SetColLabelSize(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour LabelBackgroundColour=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetLabelBackgroundColour(wxObject), true); }=0A=
            set { wxGrid_SetLabelBackgroundColour(wxObject, Object.SafeP=
tr(value)); }=0A=
            }=0A=
    =0A=
            public Colour LabelTextColour=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetLabelTextColour(wxObject), true); }=0A=
            set { wxGrid_SetLabelTextColour(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Font LabelFont=0A=
            {=0A=
            get { return new Font(wxGrid_GetLabelFont(wxObject)); }=0A=
            set { wxGrid_SetLabelFont(wxObject, Object.SafePtr(value)); =
}=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void GetRowLabelAlignment(out int horiz, out int =
vert)=0A=
            {=0A=
            wxGrid_GetRowLabelAlignment(wxObject, out horiz, out =
vert);=0A=
            }=0A=
    =0A=
            public void GetColLabelAlignment(out int horiz, out int =
vert)=0A=
            {=0A=
            wxGrid_GetColLabelAlignment(wxObject, out horiz, out =
vert);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public string GetRowLabelValue(int row)=0A=
            {=0A=
            return new wxString(wxGrid_GetRowLabelValue(wxObject, row), =
true);=0A=
            }=0A=
    =0A=
            public string GetColLabelValue(int col)=0A=
            {=0A=
            return new wxString(wxGrid_GetColLabelValue(wxObject, col), =
true);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour GridLineColour=0A=
            {=0A=
            get { return new Colour(wxGrid_GetGridLineColour(wxObject), =
true); }=0A=
            set { wxGrid_SetGridLineColour(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour CellHighlightColour=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetCellHighlightColour(wxObject), true); }=0A=
            set { wxGrid_SetCellHighlightColour(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int CellHighlightPenWidth=0A=
            {=0A=
            get { return wxGrid_GetCellHighlightPenWidth(wxObject); =
}=0A=
            set { wxGrid_SetCellHighlightPenWidth(wxObject, value); =
}=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int CellHighlightROPenWidth=0A=
            {=0A=
            get { return wxGrid_GetCellHighlightROPenWidth(wxObject); =
}=0A=
            set { wxGrid_SetCellHighlightROPenWidth(wxObject, value); =
}=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetRowLabelAlignment(int horiz, int vert)=0A=
            {=0A=
            wxGrid_SetRowLabelAlignment(wxObject, horiz, vert);=0A=
            }=0A=
    =0A=
            public void SetColLabelAlignment(int horiz, int vert)=0A=
            {=0A=
            wxGrid_SetColLabelAlignment(wxObject, horiz, vert);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetRowLabelValue(int row, string str)=0A=
            {=0A=
            wxGrid_SetRowLabelValue(wxObject, row, str);=0A=
            }=0A=
    =0A=
            public void SetColLabelValue(int col, string str)=0A=
            {=0A=
            wxGrid_SetColLabelValue(wxObject, col, str);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool DragRowSizeEnabled=0A=
            {=0A=
            set { wxGrid_EnableDragRowSize(wxObject, value); }=0A=
            get { return wxGrid_CanDragRowSize(wxObject); }=0A=
            }=0A=
    =0A=
            public void DisableDragRowSize()=0A=
            {=0A=
            wxGrid_DisableDragRowSize(wxObject);=0A=
            }=0A=
    =0A=
            //----------------------------------------------------------=
-------------------=0A=
    =0A=
            public bool DragColSizeEnabled=0A=
            {=0A=
            set { wxGrid_EnableDragColSize(wxObject, value); }=0A=
            get { return wxGrid_CanDragColSize(wxObject); }=0A=
            }=0A=
    =0A=
            public void DisableDragColSize()=0A=
            {=0A=
            wxGrid_DisableDragColSize(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool DragGridSizeEnabled=0A=
            {=0A=
            set { wxGrid_EnableDragGridSize(wxObject, value); }=0A=
            get { return wxGrid_CanDragGridSize(wxObject); }=0A=
            }=0A=
    =0A=
            public void DisableDragGridSize()=0A=
            {=0A=
            wxGrid_DisableDragGridSize(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetAttr(int row, int col, GridCellAttr attr)=0A=
            {=0A=
            wxGrid_SetAttr(wxObject, row, col, =
Object.SafePtr(attr));=0A=
            }=0A=
    =0A=
            public void SetRowAttr(int row, GridCellAttr attr)=0A=
            {=0A=
            wxGrid_SetRowAttr(wxObject, row, Object.SafePtr(attr));=0A=
            }=0A=
    =0A=
            public void SetColAttr(int col, GridCellAttr attr)=0A=
            {=0A=
            wxGrid_SetColAttr(wxObject, col, Object.SafePtr(attr));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int ColFormatBool=0A=
            {=0A=
            set { wxGrid_SetColFormatBool(wxObject, value); }=0A=
            }=0A=
    =0A=
            public int ColFormatNumber=0A=
            {=0A=
            set { wxGrid_SetColFormatNumber(wxObject, value); }=0A=
            }=0A=
        =0A=
        public void SetColFormatFloat(int col)=0A=
        {=0A=
            SetColFormatFloat(col, -1, -1);=0A=
        }=0A=
        =0A=
        public void SetColFormatFloat(int col, int width)=0A=
        {=0A=
            SetColFormatFloat(col, width, -1);=0A=
        }=0A=
    =0A=
            public void SetColFormatFloat(int col, int width, int =
precision)=0A=
            {=0A=
            wxGrid_SetColFormatFloat(wxObject, col, width, =
precision);=0A=
            }=0A=
    =0A=
            public void SetColFormatCustom(int col, string typeName)=0A=
            {=0A=
            wxGrid_SetColFormatCustom(wxObject, col, typeName);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool GridLinesEnabled=0A=
            {=0A=
            set { wxGrid_EnableGridLines(wxObject, value); } =0A=
            get { return wxGrid_GridLinesEnabled(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int DefaultRowSize=0A=
            {=0A=
            get { return wxGrid_GetDefaultRowSize(wxObject); }=0A=
            }=0A=
    =0A=
            public int GetRowSize(int row)=0A=
            {=0A=
            return wxGrid_GetRowSize(wxObject, row);=0A=
            }=0A=
    =0A=
            public int DefaultColSize=0A=
            {=0A=
            get { return wxGrid_GetDefaultColSize(wxObject); }=0A=
            }=0A=
    =0A=
            public int GetColSize(int col)=0A=
            {=0A=
            return wxGrid_GetColSize(wxObject, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour DefaultCellBackgroundColour=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetDefaultCellBackgroundColour(wxObject), true); }=0A=
            set { wxGrid_SetDefaultCellBackgroundColour(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            public Colour DefaultCellTextColour=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetDefaultCellTextColour(wxObject), true); }=0A=
            set { wxGrid_SetDefaultCellTextColour(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Font DefaultCellFont=0A=
            {=0A=
            get { return new Font(wxGrid_GetDefaultCellFont(wxObject)); =
}=0A=
            set { wxGrid_SetDefaultCellFont(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            public Font GetCellFont(int row, int col)=0A=
            {=0A=
            return new Font(wxGrid_GetCellFont(wxObject, row, col));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void GetDefaultCellAlignment(ref int horiz, ref int =
vert)=0A=
            {=0A=
            wxGrid_GetDefaultCellAlignment(wxObject, ref horiz, ref =
vert);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void GetCellAlignment(int row, int col, ref int =
horiz, ref int vert)=0A=
            {=0A=
            wxGrid_GetCellAlignment(wxObject, row, col, ref horiz, ref =
vert);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool DefaultCellOverflow=0A=
            {=0A=
            get { return wxGrid_GetDefaultCellOverflow(wxObject); }=0A=
            set { wxGrid_SetDefaultCellOverflow(wxObject, value); }=0A=
            }=0A=
    =0A=
            public bool GetCellOverflow(int row, int col)=0A=
            {=0A=
            return wxGrid_GetCellOverflow(wxObject, row, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void GetCellSize(int row, int col, ref int num_rows, =
ref int num_cols)=0A=
            {=0A=
            wxGrid_GetCellSize(wxObject, row, col, ref num_rows, ref =
num_cols);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetDefaultRowSize(int height, bool =
resizeExistingRows)=0A=
            {=0A=
            wxGrid_SetDefaultRowSize(wxObject, height, =
resizeExistingRows);=0A=
            }=0A=
    =0A=
            public void SetRowSize(int row, int height)=0A=
            {=0A=
            wxGrid_SetRowSize(wxObject, row, height);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetDefaultColSize(int width, bool =
resizeExistingCols)=0A=
            {=0A=
            wxGrid_SetDefaultColSize(wxObject, width, =
resizeExistingCols);=0A=
            }=0A=
    =0A=
            public void SetColSize(int col, int width)=0A=
            {=0A=
            wxGrid_SetColSize(wxObject, col, width);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void AutoSizeColumn(int col, bool setAsMin)=0A=
            {=0A=
            wxGrid_AutoSizeColumn(wxObject, col, setAsMin);=0A=
            }=0A=
    =0A=
            public void AutoSizeRow(int row, bool setAsMin)=0A=
            {=0A=
            wxGrid_AutoSizeRow(wxObject, row, setAsMin);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void AutoSizeColumns()=0A=
        {=0A=
            AutoSizeColumns(true);=0A=
        }=0A=
    =0A=
            public void AutoSizeColumns(bool setAsMin)=0A=
            {=0A=
            wxGrid_AutoSizeColumns(wxObject, setAsMin);=0A=
            }=0A=
        =0A=
        public void AutoSizeRows()=0A=
        {=0A=
            AutoSizeRows(true);=0A=
        }=0A=
    =0A=
            public void AutoSizeRows(bool setAsMin)=0A=
            {=0A=
            wxGrid_AutoSizeRows(wxObject, setAsMin);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void AutoSize()=0A=
            {=0A=
            wxGrid_AutoSize(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetColMinimalWidth(int col, int width)=0A=
            {=0A=
            wxGrid_SetColMinimalWidth(wxObject, col, width);=0A=
            }=0A=
    =0A=
            public void SetRowMinimalHeight(int row, int width)=0A=
            {=0A=
            wxGrid_SetRowMinimalHeight(wxObject, row, width);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int ColMinimalAcceptableWidth=0A=
            {=0A=
            set { wxGrid_SetColMinimalAcceptableWidth(wxObject, value); =
}=0A=
            get { return wxGrid_GetColMinimalAcceptableWidth(wxObject); =
}=0A=
            }=0A=
    =0A=
            public int RowMinimalAcceptableHeight=0A=
            {=0A=
            set { wxGrid_SetRowMinimalAcceptableHeight(wxObject, =
value); }=0A=
            get { return =
wxGrid_GetRowMinimalAcceptableHeight(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellFont(int row, int col, Font fnt)=0A=
            {=0A=
            wxGrid_SetCellFont(wxObject, row, col, =
Object.SafePtr(fnt));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetDefaultCellAlignment(int horiz, int vert)=0A=
            {=0A=
            wxGrid_SetDefaultCellAlignment(wxObject, horiz, vert);=0A=
            }=0A=
    =0A=
            public void SetCellAlignment(int row, int col, int horiz, =
int vert)=0A=
            {=0A=
            wxGrid_SetCellAlignmentHV(wxObject, row, col, horiz, =
vert);=0A=
            }=0A=
    =0A=
            public void SetCellOverflow(int row, int col, bool =
allow)=0A=
            {=0A=
            wxGrid_SetCellOverflow(wxObject, row, col, allow);=0A=
            }=0A=
    =0A=
            public void SetCellSize(int row, int col, int num_rows, int =
num_cols)=0A=
            {=0A=
            wxGrid_SetCellSize(wxObject, row, col, num_rows, =
num_cols);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellRenderer DefaultRenderer=0A=
            {=0A=
            set { wxGrid_SetDefaultRenderer(wxObject, =
Object.SafePtr(value)); }=0A=
            //get { return wxGrid_GetDefaultRenderer(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellRenderer(int row, int col, =
GridCellRenderer renderer)=0A=
            {=0A=
            wxGrid_SetCellRenderer(wxObject, row, col, =
Object.SafePtr(renderer));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellRenderer GetCellRenderer(int row, int =
col)=0A=
            {=0A=
                    return =
(GridCellRenderer)Object.FindObject(wxGrid_GetCellRenderer(wxObject, =
row, col), typeof(GridCellRenderer));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellEditor DefaultEditor=0A=
            {=0A=
                set { wxGrid_SetDefaultEditor(wxObject, =
Object.SafePtr(value)); }=0A=
                get { return =
(GridCellEditor)Object.FindObject(wxGrid_GetDefaultEditor(wxObject), =
typeof(GridCellEditor)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellEditor(int row, int col, GridCellEditor =
editor)=0A=
            {=0A=
                wxGrid_SetCellEditor(wxObject, row, col, =
Object.SafePtr(editor));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellEditor GetCellEditor(int row, int col)=0A=
            {=0A=
                return =
(GridCellEditor)Object.FindObject(wxGrid_GetCellEditor(wxObject, row, =
col), typeof(GridCellEditor));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public string GetCellValue(int row, int col)=0A=
            {=0A=
                return new wxString(wxGrid_GetCellValue(wxObject, row, =
col), true);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellValue(int row, int col, string s)=0A=
            {=0A=
                wxGrid_SetCellValue(wxObject, row, col, s);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsReadOnly(int row, int col)=0A=
            {=0A=
                return wxGrid_IsReadOnly(wxObject, row, col);=0A=
            }=0A=
        =0A=
        public void SetReadOnly(int row, int col)=0A=
        {=0A=
            SetReadOnly(row, col, true);=0A=
        }=0A=
    =0A=
            public void SetReadOnly(int row, int col, bool =
isReadOnly)=0A=
            {=0A=
            wxGrid_SetReadOnly(wxObject, row, col, isReadOnly);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SelectRow(int row, bool addToSelected)=0A=
            {=0A=
            wxGrid_SelectRow(wxObject, row, addToSelected);=0A=
            }=0A=
    =0A=
            public void SelectCol(int col, bool addToSelected)=0A=
            {=0A=
            wxGrid_SelectCol(wxObject, col, addToSelected);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SelectBlock(int topRow, int leftCol, int =
bottomRow, int rightCol, bool addToSelected)=0A=
            {=0A=
            wxGrid_SelectBlock(wxObject, topRow, leftCol, bottomRow, =
rightCol, addToSelected);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SelectAll()=0A=
            {=0A=
            wxGrid_SelectAll(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsSelection=0A=
            {=0A=
            get { return wxGrid_IsSelection(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void DeselectRow(int row)=0A=
            {=0A=
            wxGrid_DeselectRow(wxObject, row);=0A=
            }=0A=
    =0A=
            public void DeselectCol(int col)=0A=
            {=0A=
            wxGrid_DeselectCol(wxObject, col);=0A=
            }=0A=
    =0A=
            public void DeselectCell(int row, int col)=0A=
            {=0A=
            wxGrid_DeselectCell(wxObject, row, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void ClearSelection()=0A=
            {=0A=
            wxGrid_ClearSelection(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool IsInSelection(int row, int col)=0A=
            {=0A=
            return wxGrid_IsInSelection(wxObject, row, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
=0A=
#if NOT_IMPLEMENTED=0A=
            public GridCellCoordsArray GetSelectedCells()=0A=
        {=0A=
            return wxGrid_GetSelectedCells(wxObject);=0A=
            }=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellCoordsArray GetSelectionBlockTopLeft()=0A=
            {=0A=
            return wxGrid_GetSelectionBlockTopLeft(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellCoordsArray =
GetSelectionBlockBottomRight()=0A=
            {=0A=
            return wxGrid_GetSelectionBlockBottomRight(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public ArrayInt GetSelectedRows()=0A=
            {=0A=
            return wxGrid_GetSelectedRows(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public ArrayInt GetSelectedCols()=0A=
            {=0A=
            return wxGrid_GetSelectedCols(wxObject);=0A=
            }=0A=
#endif=0A=
=0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Rectangle BlockToDeviceRect(GridCellCoords topLeft, =
GridCellCoords bottomRight)=0A=
            {=0A=
            Rectangle rect =3D new Rectangle();=0A=
            wxGrid_BlockToDeviceRect(wxObject, Object.SafePtr(topLeft), =
Object.SafePtr(bottomRight), ref rect);=0A=
            return rect;=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour SelectionBackground=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetSelectionBackground(wxObject), true); }=0A=
            set { wxGrid_SetSelectionBackground(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour SelectionForeground=0A=
            {=0A=
            get { return new =
Colour(wxGrid_GetSelectionForeground(wxObject), true); }=0A=
            set { wxGrid_SetSelectionForeground(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void RegisterDataType(string typeName, =
GridCellRenderer renderer, GridCellEditor editor)=0A=
            {=0A=
            wxGrid_RegisterDataType(wxObject, typeName, =
Object.SafePtr(renderer), Object.SafePtr(editor));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellEditor GetDefaultEditorForCell(int row, int =
col)=0A=
            {=0A=
            return =
(GridCellEditor)Object.FindObject(wxGrid_GetDefaultEditorForCell(wxObjec=
t, row, col), typeof(GridCellEditor));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellRenderer GetDefaultRendererForCell(int row, =
int col)=0A=
            {=0A=
                    return =
(GridCellRenderer)Object.FindObject(wxGrid_GetDefaultRendererForCell(wxO=
bject, row, col), typeof(GridCellRenderer));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellEditor GetDefaultEditorForType(string =
typeName)=0A=
            {=0A=
            return =
(GridCellEditor)Object.FindObject(wxGrid_GetDefaultEditorForType(wxObjec=
t, typeName), typeof(GridCellEditor));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public GridCellRenderer GetDefaultRendererForType(string =
typeName)=0A=
            {=0A=
                    return =
(GridCellRenderer)Object.FindObject(wxGrid_GetDefaultRendererForType(wxO=
bject, typeName), typeof(GridCellRenderer));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetMargins(int extraWidth, int extraHeight)=0A=
            {=0A=
            wxGrid_SetMargins(wxObject, extraWidth, extraHeight);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Window GridWindow=0A=
            {=0A=
            get { return =
(Window)FindObject(wxGrid_GetGridWindow(wxObject)); }=0A=
            }=0A=
    =0A=
            public Window GridRowLabelWindow=0A=
            {=0A=
            get { return =
(Window)FindObject(wxGrid_GetGridRowLabelWindow(wxObject)); }=0A=
            }=0A=
    =0A=
            public Window GridColLabelWindow=0A=
            {=0A=
            get { return =
(Window)FindObject(wxGrid_GetGridColLabelWindow(wxObject)); }=0A=
            }=0A=
    =0A=
            public Window GridCornerLabelWindow=0A=
            {=0A=
            get { return =
(Window)FindObject(wxGrid_GetGridCornerLabelWindow(wxObject)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void UpdateDimensions()=0A=
            {=0A=
            wxGrid_UpdateDimensions(wxObject);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int Rows=0A=
            {=0A=
            get { return wxGrid_GetRows(wxObject); }=0A=
            }=0A=
    =0A=
            public int Cols=0A=
            {=0A=
            get { return wxGrid_GetCols(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int CursorRow=0A=
            {=0A=
            get { return wxGrid_GetCursorRow(wxObject); }=0A=
            }=0A=
    =0A=
            public int CursorColumn=0A=
            {=0A=
            get { return wxGrid_GetCursorColumn(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int ScrollPosX=0A=
            {=0A=
            get { return wxGrid_GetScrollPosX(wxObject); }=0A=
            set { wxGrid_SetScrollX(wxObject, value); }=0A=
            }=0A=
    =0A=
            public int ScrollPosY=0A=
            {=0A=
            get { return wxGrid_GetScrollPosY(wxObject); }=0A=
            set { wxGrid_SetScrollY(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetColumnWidth(int col, int width)=0A=
            {=0A=
            wxGrid_SetColumnWidth(wxObject, col, width);=0A=
            }=0A=
    =0A=
            public int GetColumnWidth(int col)=0A=
            {=0A=
            return wxGrid_GetColumnWidth(wxObject, col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetRowHeight(int row, int height)=0A=
            {=0A=
            wxGrid_SetRowHeight(wxObject, row, height);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int ViewHeight=0A=
            {=0A=
            get{ return wxGrid_GetViewHeight(wxObject); }=0A=
            }=0A=
    =0A=
            public int ViewWidth=0A=
            {=0A=
            get { return wxGrid_GetViewWidth(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetLabelSize(int orientation, int sz)=0A=
            {=0A=
            wxGrid_SetLabelSize(wxObject, orientation, sz);=0A=
            }=0A=
    =0A=
            public int GetLabelSize(int orientation)=0A=
            {=0A=
            return wxGrid_GetLabelSize(wxObject, orientation);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetLabelAlignment(int orientation, int =
align)=0A=
            {=0A=
            wxGrid_SetLabelAlignment(wxObject, orientation, align);=0A=
            }=0A=
    =0A=
            public int GetLabelAlignment(int orientation, int align)=0A=
            {=0A=
            return wxGrid_GetLabelAlignment(wxObject, orientation, =
align);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetLabelValue(int orientation, string val, int =
pos)=0A=
            {=0A=
            wxGrid_SetLabelValue(wxObject, orientation, val, pos);=0A=
            }=0A=
    =0A=
            public string GetLabelValue(int orientation, int pos)=0A=
            {=0A=
            return new wxString(wxGrid_GetLabelValue(wxObject, =
orientation, pos), true);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Font CellTextFont=0A=
            {=0A=
            get { return new =
Font(wxGrid_GetCellTextFontGrid(wxObject)); }=0A=
            set { wxGrid_SetCellTextFontGrid(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Font GetCellTextFont(int row, int col)=0A=
            {=0A=
            return new Font(wxGrid_GetCellTextFont(wxObject, row, =
col));=0A=
            }=0A=
    =0A=
            public void SetCellTextFont(Font fnt, int row, int col)=0A=
            {=0A=
            wxGrid_SetCellTextFont(wxObject, Object.SafePtr(fnt), row, =
col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellTextColour(int row, int col, Colour =
val)=0A=
            {=0A=
            wxGrid_SetCellTextColour(wxObject, row, col, =
Object.SafePtr(val));=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour CellTextColour=0A=
            {=0A=
            set { wxGrid_SetCellTextColourGrid(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
                =0A=
            public Colour GetCellTextColour(int row, int col)=0A=
            {=0A=
            return new Colour(wxGrid_GetCellTextColour(wxObject, row, =
col), true); =0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Colour CellBackgroundColour=0A=
            {=0A=
            set { wxGrid_SetCellBackgroundColourGrid(wxObject, =
Object.SafePtr(value)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellBackgroundColour(int row, int col, =
Colour colour)=0A=
            {=0A=
            wxGrid_SetCellBackgroundColour(wxObject, row, col, =
Object.SafePtr(colour));=0A=
            }=0A=
    =0A=
            public Colour GetCellBackgroundColour(int row, int col)=0A=
            {=0A=
            return new Colour(wxGrid_GetCellBackgroundColour(wxObject, =
row, col), true); =0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool Editable=0A=
            {=0A=
            get { return wxGrid_GetEditable(wxObject); }=0A=
            set { wxGrid_SetEditable(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public bool EditInPlace=0A=
            {=0A=
            get { return wxGrid_GetEditInPlace(wxObject); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellAlignment(int align, int row, int =
col)=0A=
            {=0A=
            wxGrid_SetCellAlignment(wxObject, align, row, col);=0A=
            }=0A=
    =0A=
            public int CellAlignment=0A=
            {=0A=
            set { wxGrid_SetCellAlignmentGrid(wxObject, value); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public void SetCellBitmap(Bitmap bitmap, int row, int =
col)=0A=
            {=0A=
            wxGrid_SetCellBitmap(wxObject, Object.SafePtr(bitmap), row, =
col);=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public Pen DividerPen=0A=
            {=0A=
            set { wxGrid_SetDividerPen(wxObject, =
Object.SafePtr(value)); }=0A=
            get { return new Pen(wxGrid_GetDividerPen(wxObject)); }=0A=
            }=0A=
    =0A=
            =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
            public int GetRowHeight(int row)=0A=
            {=0A=
            return wxGrid_GetRowHeight(wxObject, row);=0A=
            }=0A=
=0A=
        =
//----------------------------------------------------------------------=
-------=0A=
=0A=
        public event EventListener CellLeftClick=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_CELL_LEFT_CLICK, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener CellRightClick=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_CELL_RIGHT_CLICK, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener CellLeftDoubleClick=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_CELL_LEFT_DCLICK, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener CellRightDoubleClick=0A=
        {=0A=
            add { =
AddCommandListener(Event.wxEVT_GRID_CELL_RIGHT_DCLICK, ID, value, =
this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener LabelLeftClick=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_LABEL_LEFT_CLICK, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener LabelRightClick=0A=
        {=0A=
            add { =
AddCommandListener(Event.wxEVT_GRID_LABEL_RIGHT_CLICK, ID, value, =
this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener LabelLeftDoubleClick=0A=
        {=0A=
            add { =
AddCommandListener(Event.wxEVT_GRID_LABEL_LEFT_DCLICK, ID, value, =
this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener LabelRightDoubleClick=0A=
        {=0A=
            add { =
AddCommandListener(Event.wxEVT_GRID_LABEL_RIGHT_DCLICK, ID, value, =
this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener RowSize=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_ROW_SIZE, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener ColumnSize=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_COL_SIZE, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener RangeSelect=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_RANGE_SELECT, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener CellChange=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_CELL_CHANGE, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener SelectCell=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_SELECT_CELL, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener EditorShown=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_EDITOR_SHOWN, ID, =
value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener EditorHidden=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_EDITOR_HIDDEN, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
=0A=
        public event EventListener EditorCreate=0A=
        {=0A=
            add { AddCommandListener(Event.wxEVT_GRID_EDITOR_CREATED, =
ID, value, this); }=0A=
            remove { RemoveHandler(value, this); }=0A=
        }=0A=
    }=0A=
=0A=
    public class GridCellCoords : Object=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellCoords_ctor();=0A=
    [DllImport("wx-c")] static extern void   =
wxGridCellCoords_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridCellCoords_GetRow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellCoords_SetRow(IntPtr self, int n);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridCellCoords_GetCol(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellCoords_SetCol(IntPtr self, int n);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellCoords_Set(IntPtr self, int row, int col);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridCellCoords(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellCoords(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
        public GridCellCoords()=0A=
            : this(wxGridCellCoords_ctor(), true) { }=0A=
    =0A=
        public GridCellCoords(int r, int c)=0A=
            : this()=0A=
        {=0A=
            Set(r, c);=0A=
        }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellCoords_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellCoords() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public int Row=0A=
        {=0A=
            set { wxGridCellCoords_SetRow(wxObject, value); }=0A=
            get { return wxGridCellCoords_GetRow(wxObject); }=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public int Col=0A=
        {=0A=
            set { wxGridCellCoords_SetCol(wxObject, value); }=0A=
            get { return wxGridCellCoords_GetCol(wxObject); }=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public void Set(int row, int col)=0A=
        {=0A=
            wxGridCellCoords_Set(wxObject, row, col);=0A=
        }=0A=
    }=0A=
=0A=
    public class GridCellAttr : Object=0A=
    {=0A=
        public enum AttrKind=0A=
        {=0A=
            Any, Default, Cell, Row, Col, Merged=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_ctor(IntPtr colText, IntPtr colBack, IntPtr font, int =
hAlign, int vAlign);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_ctor2();=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_ctor3(IntPtr attrDefault);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_Clone(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_MergeWith(IntPtr self, IntPtr mergefrom);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_IncRef(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_DecRef(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetTextColour(IntPtr self, IntPtr colText);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetBackgroundColour(IntPtr self, IntPtr colBack);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetFont(IntPtr self, IntPtr font);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetAlignment(IntPtr self, int hAlign, int vAlign);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetSize(IntPtr self, int num_rows, int num_cols);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetOverflow(IntPtr self, bool allow);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetReadOnly(IntPtr self, bool isReadOnly);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetRenderer(IntPtr self, IntPtr renderer);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetEditor(IntPtr self, IntPtr editor);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasTextColour(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasBackgroundColour(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasFont(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasAlignment(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasRenderer(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   wxGridCellAttr_HasEdito=
r(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_HasReadWriteMode(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_GetTextColour(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_GetBackgroundColour(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_GetFont(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_GetAlignment(IntPtr self, ref int hAlign, ref int =
vAlign);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_GetSize(IntPtr self, ref int num_rows, ref int =
num_cols);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_GetOverflow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_GetRenderer(IntPtr self, IntPtr grid, int row, int =
col);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttr_GetEditor(IntPtr self, IntPtr grid, int row, int =
col);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridCellAttr_IsReadOnly(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridCellAttr_SetDefAttr(IntPtr self, IntPtr defAttr);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridCellAttr(IntPtr wxObject) =0A=
            : base(wxObject) =0A=
         { =0A=
            this.wxObject =3D wxObject;=0A=
         }=0A=
    =0A=
        internal GridCellAttr(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
         { =0A=
            this.memOwn =3D memOwn;=0A=
            this.wxObject =3D wxObject;=0A=
         }=0A=
            =0A=
        public GridCellAttr()=0A=
            : this(wxGridCellAttr_ctor2(), true) { }=0A=
            =0A=
        public GridCellAttr(GridCellAttr attrDefault)=0A=
            : this(wxGridCellAttr_ctor3(Object.SafePtr(attrDefault)), =
true) { }=0A=
    =0A=
        public GridCellAttr(Colour colText, Colour colBack, Font font, =
int hAlign, int vAlign)=0A=
            : this(wxGridCellAttr_ctor(Object.SafePtr(colText), =
Object.SafePtr(colBack), Object.SafePtr(font), hAlign, vAlign), true) { =
}=0A=
        =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellAttr() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridCellAttr Clone()=0A=
        {=0A=
            return new GridCellAttr(wxGridCellAttr_Clone(wxObject));=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public void MergeWith(GridCellAttr mergefrom)=0A=
        {=0A=
            wxGridCellAttr_MergeWith(wxObject, =
Object.SafePtr(mergefrom));=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public void IncRef()=0A=
        {=0A=
            wxGridCellAttr_IncRef(wxObject);=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public void DecRef()=0A=
        {=0A=
            wxGridCellAttr_DecRef(wxObject);=0A=
        }=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public Colour TextColour=0A=
        {=0A=
            set { wxGridCellAttr_SetTextColour(wxObject, =
Object.SafePtr(value)); }=0A=
            get { return new =
Colour(wxGridCellAttr_GetTextColour(wxObject), true); }=0A=
        }=0A=
    =0A=
        //--------------------------------------------------------------=
---------------=0A=
        =0A=
        public Colour BackgroundColour=0A=
        {=0A=
            set { wxGridCellAttr_SetBackgroundColour(wxObject, =
Object.SafePtr(value)); }=0A=
            get { return new =
Colour(wxGridCellAttr_GetBackgroundColour(wxObject), true); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public Font Font=0A=
        {=0A=
            set { wxGridCellAttr_SetFont(wxObject, =
Object.SafePtr(value)); }=0A=
            get { return new Font(wxGridCellAttr_GetFont(wxObject)); =
}=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void SetAlignment(int hAlign, int vAlign)=0A=
        {=0A=
            wxGridCellAttr_SetAlignment(wxObject, hAlign, vAlign);=0A=
        }=0A=
        =0A=
        public void GetAlignment(ref int hAlign, ref int vAlign)=0A=
        {=0A=
            wxGridCellAttr_GetAlignment(wxObject, ref hAlign, ref =
vAlign);=0A=
        }=0A=
        =0A=
        public void SetSize(int num_rows, int num_cols)=0A=
        {=0A=
            wxGridCellAttr_SetSize(wxObject, num_rows, num_cols);=0A=
        }=0A=
        =0A=
        public void GetSize(ref int num_rows, ref int num_cols)=0A=
        {=0A=
            wxGridCellAttr_GetSize(wxObject, ref num_rows, ref =
num_cols);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool Overflow=0A=
        {=0A=
            set { wxGridCellAttr_SetOverflow(wxObject, value); }=0A=
            get { return wxGridCellAttr_GetOverflow(wxObject); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool ReadOnly=0A=
        {=0A=
            set { wxGridCellAttr_SetReadOnly(wxObject, value); }=0A=
            get { return wxGridCellAttr_IsReadOnly(wxObject); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void SetRenderer(GridCellRenderer renderer)=0A=
        {=0A=
            wxGridCellAttr_SetRenderer(wxObject, =
Object.SafePtr(renderer));=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridCellEditor Editor=0A=
        {=0A=
            set { wxGridCellAttr_SetEditor(wxObject, =
Object.SafePtr(value)); }=0A=
        }=0A=
        =0A=
        public GridCellEditor GetEditor(Grid grid, int row, int col)=0A=
        {=0A=
            return =
(GridCellEditor)FindObject(wxGridCellAttr_GetEditor(wxObject, =
Object.SafePtr(grid), row, col), typeof(GridCellEditor));=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool HasTextColour=0A=
        {=0A=
            get { return wxGridCellAttr_HasTextColour(wxObject); }=0A=
        }=0A=
        =0A=
        public bool HasBackgroundColour=0A=
        {=0A=
            get { return wxGridCellAttr_HasBackgroundColour(wxObject); =
}=0A=
        }=0A=
        =0A=
        public bool HasFont=0A=
        {=0A=
            get { return wxGridCellAttr_HasFont(wxObject); }=0A=
        }=0A=
        =0A=
        public bool HasAlignment=0A=
        {=0A=
            get { return wxGridCellAttr_HasAlignment(wxObject); }=0A=
        }=0A=
        =0A=
        public bool HasRenderer=0A=
        {=0A=
            get { return wxGridCellAttr_HasRenderer(wxObject); }=0A=
        }=0A=
        =0A=
        public bool HasEditor=0A=
        {=0A=
            get { return wxGridCellAttr_HasEditor(wxObject); }=0A=
        }=0A=
        =0A=
        public bool HasReadWriteMode=0A=
        {=0A=
            get { return wxGridCellAttr_HasReadWriteMode(wxObject); =
}=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridCellRenderer GetRenderer(Grid grid, int row, int =
col)=0A=
        {=0A=
            return =
(GridCellRenderer)FindObject(wxGridCellAttr_GetRenderer(wxObject, =
Object.SafePtr(grid), row, col), typeof(GridCellRenderer));=0A=
        }=0A=
        =0A=
        //--------------------------------------------------------------=
---------------=0A=
        =0A=
        public GridCellAttr DefAttr=0A=
        {=0A=
            set { wxGridCellAttr_SetDefAttr(wxObject, =
Object.SafePtr(value)); }=0A=
        }=0A=
    }=0A=
=0A=
    public class GridSizeEvent : Event =0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridSizeEvent_ctor();=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridSizeEvent_ctorParam(int id, int type, IntPtr obj, int rowOrCol, =
int x, int y, bool control, bool shift, bool alt, bool meta);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridSizeEvent_GetRowOrCol(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridSizeEvent_GetPosition(IntPtr self, ref Point pt);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridSizeEvent_ControlDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridSizeEvent_MetaDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridSizeEvent_ShiftDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridSizeEvent_AltDown(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridSizeEvent_Veto(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridSizeEvent_Allow(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool =
wxGridSizeEvent_IsAllowed(IntPtr self);          =0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridSizeEvent(IntPtr wxObject) =0A=
            : base(wxObject) { }=0A=
        =0A=
        public GridSizeEvent()=0A=
            : this(wxGridSizeEvent_ctor()) { }=0A=
        =0A=
        public GridSizeEvent(int id, int type, Object obj, int =
rowOrCol, int x, int y, bool control, bool shift, bool alt, bool =
meta)=0A=
            : this(wxGridSizeEvent_ctorParam(id, type, =
Object.SafePtr(obj), rowOrCol, x, y, control, shift, alt, meta)) { }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public int RowOrCol=0A=
        {=0A=
            get { return wxGridSizeEvent_GetRowOrCol(wxObject); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public Point Position=0A=
        {=0A=
            get { =0A=
                Point pt =3D new Point();=0A=
                wxGridSizeEvent_GetPosition(wxObject, ref pt); =0A=
                return pt;=0A=
            }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool ControlDown=0A=
        {=0A=
            get { return wxGridSizeEvent_ControlDown(wxObject); }=0A=
        }=0A=
    =0A=
        public bool MetaDown=0A=
        {=0A=
            get { return wxGridSizeEvent_MetaDown(wxObject); }=0A=
        }=0A=
        =0A=
        public bool ShiftDown=0A=
        {=0A=
            get { return wxGridSizeEvent_ShiftDown(wxObject); }=0A=
        }=0A=
        =0A=
        public bool AltDown=0A=
        {=0A=
            get { return wxGridSizeEvent_AltDown(wxObject); }=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------     =0A=
        =0A=
        public void Veto()=0A=
        {=0A=
            wxGridSizeEvent_Veto(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void Allow()=0A=
        {=0A=
            wxGridSizeEvent_Allow(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public bool Allowed=0A=
        {=0A=
            get { return wxGridSizeEvent_IsAllowed(wxObject); }=0A=
        }                       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
=0A=
    public abstract class GridCellRenderer : GridCellWorker=0A=
    {=0A=
        private delegate void Virtual_Draw(IntPtr grid, IntPtr attr, =
IntPtr dc, IntPtr rect, int row, int col, bool isSelected);=0A=
        private delegate IntPtr Virtual_GetBestSize(IntPtr grid, IntPtr =
attr, IntPtr dc, int row, int col);=0A=
        private delegate IntPtr Virtual_RendererClone();=0A=
=0A=
        private Virtual_Draw virtual_Draw;=0A=
        private Virtual_GetBestSize virtual_GetBestSize;=0A=
        private Virtual_RendererClone virtual_RendererClone;=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellRenderer_ctor();=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellRenderer_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellRenderer_RegisterVirtual(IntPtr self, Virtual_Draw draw, =
Virtual_GetBestSize getBestSize, Virtual_RendererClone clone);=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridCellRenderer()=0A=
            : this(wxGridCellRenderer_ctor(), true) =0A=
        {=0A=
            virtual_Draw =3D new Virtual_Draw(DoDraw);=0A=
            virtual_GetBestSize =3D new =
Virtual_GetBestSize(DoGetBestSize);=0A=
            virtual_RendererClone =3D new =
Virtual_RendererClone(DoClone);=0A=
=0A=
            wxGridCellRenderer_RegisterVirtual(wxObject,=0A=
                virtual_Draw,=0A=
                virtual_GetBestSize,=0A=
                virtual_RendererClone);=0A=
        }=0A=
        =0A=
        public GridCellRenderer(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellRenderer(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellRenderer_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellRenderer() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoDraw(IntPtr grid, IntPtr attr, IntPtr dc, IntPtr =
rect, int row, int col, bool isSelected)=0A=
        {=0A=
            //if ( FindObject(grid) =3D=3D null ) =
Console.WriteLine("grid =3D=3D null"); else Console.WriteLine("grid =
found");=0A=
            Draw((Grid)Object.FindObject(grid, typeof(Grid)), =
(GridCellAttr)FindObject(attr, typeof(GridCellAttr)), =
(DC)Object.FindObject(dc), new wxRect(rect), row, col, isSelected);=0A=
        }=0A=
        =0A=
        public abstract void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected);=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoGetBestSize(IntPtr grid, IntPtr attr, IntPtr =
dc,  int row, int col)=0A=
        {=0A=
            return wxSize.SafePtr( new =
wxSize(GetBestSize((Grid)Object.FindObject(grid, typeof(Grid)), =
(GridCellAttr)FindObject(attr, typeof(GridCellAttr)), =
(DC)Object.FindObject(dc, typeof(DC)), row, col)));=0A=
            =0A=
        }=0A=
        =0A=
        public abstract Size GetBestSize(Grid grid, GridCellAttr attr, =
DC dc, int row, int col);=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoClone()=0A=
        {=0A=
            return Object.SafePtr(Clone());=0A=
        }=0A=
        =0A=
        public abstract GridCellRenderer Clone();=0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellStringRenderer : GridCellRenderer=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellStringRenderer_ctor();=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellStringRenderer_dtor(IntPtr self);=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellStringRenderer_RegisterDisposable(IntPtr self, =
Virtual_Dispose onDispose);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellStringRenderer_Draw(IntPtr self, IntPtr grid, IntPtr attr, =
IntPtr dc, ref Rectangle rect, int row, int col, bool isSelected);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellStringRenderer_GetBestSize(IntPtr self, IntPtr grid, IntPtr =
attr, IntPtr dc, int row, int col, out Size size);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellStringRenderer_Clone(IntPtr self);=0A=
    =0A=
        public GridCellStringRenderer()=0A=
            : this(wxGridCellStringRenderer_ctor(), true) =0A=
    { =0A=
        virtual_Dispose =3D new Virtual_Dispose(VirtualDispose);=0A=
        wxGridCellStringRenderer_RegisterDisposable(wxObject, =
virtual_Dispose);=0A=
    }=0A=
            =0A=
        public GridCellStringRenderer(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellStringRenderer(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellStringRenderer_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellStringRenderer() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        public override void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected)=0A=
        {=0A=
            wxGridCellStringRenderer_Draw(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), ref =
rect, row, col, isSelected);=0A=
        }=0A=
        =0A=
        public override Size GetBestSize(Grid grid, GridCellAttr attr, =
DC dc, int row, int col)=0A=
        {=0A=
            Size size =3D new Size();=0A=
            wxGridCellStringRenderer_GetBestSize(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), row, =
col, out size);         =0A=
            return size;=0A=
        }=0A=
        =0A=
        public override GridCellRenderer Clone()=0A=
        {=0A=
            return =
(GridCellRenderer)FindObject(wxGridCellStringRenderer_Clone(wxObject), =
typeof(GridCellRenderer));=0A=
        }       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellNumberRenderer : GridCellStringRenderer=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellNumberRenderer_ctor();=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellNumberRenderer_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberRenderer_Draw(IntPtr self, IntPtr grid, IntPtr attr, =
IntPtr dc, ref Rectangle rect, int row, int col, bool isSelected);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellNumberRenderer_GetBestSize(IntPtr self, IntPtr grid, IntPtr =
attr, IntPtr dc, int row, int col, out Size size);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellNumberRenderer_Clone(IntPtr self);=0A=
    =0A=
        public GridCellNumberRenderer()=0A=
            : this(wxGridCellNumberRenderer_ctor(), true) { }=0A=
            =0A=
        public GridCellNumberRenderer(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellNumberRenderer(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellNumberRenderer_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellNumberRenderer() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        public override void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected)=0A=
        {=0A=
            wxGridCellNumberRenderer_Draw(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), ref =
rect, row, col, isSelected);=0A=
        }=0A=
        =0A=
        public override Size GetBestSize(Grid grid, GridCellAttr attr, =
DC dc, int row, int col)=0A=
        {=0A=
            Size size =3D new Size();=0A=
            wxGridCellNumberRenderer_GetBestSize(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), row, =
col, out size);         =0A=
            return size;=0A=
        }=0A=
        =0A=
        public override GridCellRenderer Clone()=0A=
        {=0A=
            return =
(GridCellRenderer)FindObject(wxGridCellNumberRenderer_Clone(wxObject), =
typeof(GridCellRenderer));=0A=
        }               =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellFloatRenderer : GridCellStringRenderer=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellFloatRenderer_ctor(int width, int precision);=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_Draw(IntPtr self, IntPtr grid, IntPtr attr, =
IntPtr dc, ref Rectangle rect, int row, int col, bool isSelected);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_GetBestSize(IntPtr self, IntPtr grid, IntPtr =
attr, IntPtr dc, int row, int col, out Size size);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellFloatRenderer_Clone(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int =
wxGridCellFloatRenderer_GetWidth(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_SetWidth(IntPtr self, int width);=0A=
        [DllImport("wx-c")] static extern int =
wxGridCellFloatRenderer_GetPrecision(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_SetPrecision(IntPtr self, int precision);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellFloatRenderer_SetParameters(IntPtr self, string =
parameter);=0A=
    =0A=
        public GridCellFloatRenderer()=0A=
            : this(-1, -1) { }=0A=
            =0A=
        public GridCellFloatRenderer(int width)=0A=
            : this(width, -1) { }=0A=
            =0A=
        public GridCellFloatRenderer(int width, int precision)=0A=
            : this(wxGridCellFloatRenderer_ctor(width, precision), =
true) { }=0A=
                =0A=
        public GridCellFloatRenderer(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellFloatRenderer(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellFloatRenderer_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellFloatRenderer() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        public override void SetParameters(string parameter)=0A=
        {=0A=
            wxGridCellFloatRenderer_SetParameters(wxObject, =
parameter);=0A=
        }=0A=
        =0A=
        public int Width=0A=
        {=0A=
            get { return wxGridCellFloatRenderer_GetWidth(wxObject); =
}=0A=
            set { wxGridCellFloatRenderer_SetWidth(wxObject,value); =
}=0A=
        }=0A=
        =0A=
        public int Precision=0A=
        {=0A=
            get { return =
wxGridCellFloatRenderer_GetPrecision(wxObject); }=0A=
            set { wxGridCellFloatRenderer_SetPrecision(wxObject, =
value); }=0A=
        }=0A=
        =0A=
        public override void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected)=0A=
        {=0A=
            wxGridCellFloatRenderer_Draw(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), ref =
rect, row, col, isSelected);=0A=
        }=0A=
        =0A=
        public override Size GetBestSize(Grid grid, GridCellAttr attr, =
DC dc, int row, int col)=0A=
        {=0A=
            Size size =3D new Size();=0A=
            wxGridCellFloatRenderer_GetBestSize(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), row, =
col, out size);          =0A=
            return size;=0A=
        }=0A=
        =0A=
        public override GridCellRenderer Clone()=0A=
        {=0A=
            return =
(GridCellRenderer)FindObject(wxGridCellFloatRenderer_Clone(wxObject), =
typeof(GridCellRenderer));=0A=
        }                       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
    public class GridCellBoolRenderer : GridCellRenderer=0A=
    {=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellBoolRenderer_ctor();=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellBoolRenderer_dtor(IntPtr self);=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellBoolRenderer_RegisterDisposable(IntPtr self, Virtual_Dispose =
onDispose);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolRenderer_Draw(IntPtr self, IntPtr grid, IntPtr attr, =
IntPtr dc, ref Rectangle rect, int row, int col, bool isSelected);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellBoolRenderer_GetBestSize(IntPtr self, IntPtr grid, IntPtr =
attr, IntPtr dc, int row, int col, out Size size);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellBoolRenderer_Clone(IntPtr self);=0A=
    =0A=
        public GridCellBoolRenderer()=0A=
            : this(wxGridCellBoolRenderer_ctor(), true) =0A=
    { =0A=
        virtual_Dispose =3D new Virtual_Dispose(VirtualDispose);=0A=
        wxGridCellBoolRenderer_RegisterDisposable(wxObject, =
virtual_Dispose);=0A=
    }=0A=
            =0A=
        public GridCellBoolRenderer(IntPtr wxObject)=0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellBoolRenderer(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellBoolRenderer_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellBoolRenderer() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        public override void Draw(Grid grid, GridCellAttr attr, DC dc, =
Rectangle rect, int row, int col, bool isSelected)=0A=
        {=0A=
            wxGridCellBoolRenderer_Draw(wxObject, Object.SafePtr(grid), =
Object.SafePtr(attr), Object.SafePtr(dc), ref rect, row, col, =
isSelected);=0A=
        }=0A=
        =0A=
        public override Size GetBestSize(Grid grid, GridCellAttr attr, =
DC dc, int row, int col)=0A=
        {=0A=
            Size size =3D new Size();=0A=
            wxGridCellBoolRenderer_GetBestSize(wxObject, =
Object.SafePtr(grid), Object.SafePtr(attr), Object.SafePtr(dc), row, =
col, out size);           =0A=
            return size;=0A=
        }=0A=
        =0A=
        public override GridCellRenderer Clone()=0A=
        {=0A=
            return =
(GridCellRenderer)FindObject(wxGridCellBoolRenderer_Clone(wxObject), =
typeof(GridCellRenderer));=0A=
        }       =0A=
    }=0A=
    =0A=
    =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
=0A=
    public abstract class GridTableBase : Object//ClientData =0A=
    {=0A=
        private delegate int Virtual_GetNumberRows();=0A=
        private delegate int Virtual_GetNumberCols();=0A=
        private delegate bool Virtual_IsEmptyCell(int row, int col);=0A=
        private delegate string Virtual_GetValue(int row, int col);=0A=
        private delegate void Virtual_SetValue(int row, int col, IntPtr =
val);=0A=
        private delegate bool Virtual_CanGetValueAs(int row, int col, =
IntPtr typeName);=0A=
        private delegate long Virtual_GetValueAsLong(int row, int =
col);=0A=
        private delegate double Virtual_GetValueAsDouble(int row, int =
col);=0A=
        private delegate void Virtual_SetValueAsLong(int row, int col, =
long value);=0A=
        private delegate void Virtual_SetValueAsDouble(int row, int =
col, double value);=0A=
        private delegate void Virtual_SetValueAsBool(int row, int col, =
bool value);=0A=
        private delegate IntPtr Virtual_GetValueAsCustom(int row, int =
col, IntPtr typeName);=0A=
        private delegate void Virtual_SetValueAsCustom(int row, int =
col, IntPtr typeName, IntPtr value);=0A=
        private delegate string Virtual_GetColLabelValue(int col);=0A=
        private delegate void Virtual_SetView(IntPtr grid);=0A=
        private delegate IntPtr Virtual_GetView();=0A=
        private delegate void Virtual_Clear();=0A=
        private delegate bool Virtual_InsertRows(int pos, int =
numRows);=0A=
        private delegate bool Virtual_AppendRows(int numRows);=0A=
        private delegate void Virtual_SetRowLabelValue(int row, IntPtr =
val);=0A=
        private delegate void Virtual_SetAttrProvider(IntPtr =
attrProvider);=0A=
        private delegate IntPtr Virtual_GetAttrProvider();=0A=
        private delegate bool Virtual_CanHaveAttributes();=0A=
        private delegate IntPtr Virtual_GetAttr(int row, int col, int =
kind);=0A=
        private delegate void Virtual_SetAttr(IntPtr attr, int row, int =
col);=0A=
        private delegate void Virtual_SetRowAttr(IntPtr attr, int =
row);=0A=
=0A=
        private Virtual_GetNumberRows getNumberRows;=0A=
        private Virtual_GetNumberCols getNumberCols; =0A=
        private Virtual_IsEmptyCell isEmptyCell;=0A=
        private Virtual_GetValue getValue;=0A=
        private Virtual_SetValue setValue; =0A=
        private Virtual_GetValue getTypeName;=0A=
        private Virtual_CanGetValueAs canGetValueAs;=0A=
        private Virtual_CanGetValueAs canSetValueAs; =0A=
        private Virtual_GetValueAsLong getValueAsLong;=0A=
        private Virtual_GetValueAsDouble getValueAsDouble;=0A=
        private Virtual_IsEmptyCell getValueAsBool;=0A=
        private Virtual_SetValueAsLong setValueAsLong;=0A=
        private Virtual_SetValueAsDouble setValueAsDouble;=0A=
        private Virtual_SetValueAsBool setValueAsBool;=0A=
        private Virtual_GetValueAsCustom getValueAsCustom;=0A=
        private Virtual_SetValueAsCustom setValueAsCustom;=0A=
        private Virtual_SetView setView;=0A=
        private Virtual_GetView getView;=0A=
        private Virtual_Clear clear;=0A=
        private Virtual_InsertRows insertRows;=0A=
        private Virtual_AppendRows appendRows;=0A=
        private Virtual_InsertRows deleteRows;=0A=
        private Virtual_InsertRows insertCols;=0A=
        private Virtual_AppendRows appendCols;=0A=
        private Virtual_InsertRows deleteCols;=0A=
        private Virtual_GetColLabelValue getRowLabelValue;=0A=
        private Virtual_GetColLabelValue getColLabelValue;=0A=
        private Virtual_SetRowLabelValue setRowLabelValue;=0A=
        private Virtual_SetRowLabelValue setColLabelValue;=0A=
        private Virtual_SetAttrProvider setAttrProvider;=0A=
        private Virtual_GetAttrProvider getAttrProvider;=0A=
        private Virtual_CanHaveAttributes canHaveAttributes;=0A=
        private Virtual_GetAttr getAttr;=0A=
        private Virtual_SetAttr setAttr;=0A=
        private Virtual_SetRowAttr setRowAttr;=0A=
        private Virtual_SetRowAttr setColAttr;=0A=
        =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_ctor();=0A=
        [DllImport("wx-c")] static extern void =
wxGridTableBase_RegisterVirtual(IntPtr self, =0A=
            Virtual_GetNumberRows getNumberRows, =0A=
            Virtual_GetNumberCols getNumberCols, =0A=
            Virtual_IsEmptyCell isEmptyCell, =0A=
            Virtual_GetValue getValue, =0A=
            Virtual_SetValue setValue, =0A=
            Virtual_GetValue getTypeName, =0A=
            Virtual_CanGetValueAs canGetValueAs, =0A=
            Virtual_CanGetValueAs canSetValueAs, =0A=
            Virtual_GetValueAsLong getValueAsLong,=0A=
            Virtual_GetValueAsDouble getValueAsDouble, =0A=
            Virtual_IsEmptyCell getValueAsBool,=0A=
            Virtual_SetValueAsLong setValueAsLong,=0A=
            Virtual_SetValueAsDouble setValueAsDouble,=0A=
            Virtual_SetValueAsBool setValueAsBool,=0A=
            Virtual_GetValueAsCustom getValueAsCustom,=0A=
            Virtual_SetValueAsCustom setValueAsCustom,=0A=
            Virtual_SetView setView,=0A=
            Virtual_GetView getView,=0A=
            Virtual_Clear clear,=0A=
            Virtual_InsertRows insertRows,=0A=
            Virtual_AppendRows appendRows,=0A=
            Virtual_InsertRows deleteRows,=0A=
            Virtual_InsertRows insertCols,=0A=
            Virtual_AppendRows appendCols,=0A=
            Virtual_InsertRows deleteCols,=0A=
            Virtual_GetColLabelValue getRowLabelValue,=0A=
            Virtual_GetColLabelValue getColLabelValue,=0A=
            Virtual_SetRowLabelValue setRowLabelValue,=0A=
            Virtual_SetRowLabelValue setColLabelValue,=0A=
            Virtual_SetAttrProvider setAttrProvider,=0A=
            Virtual_GetAttrProvider getAttrProvider,=0A=
            Virtual_CanHaveAttributes canHaveAttributes,=0A=
            Virtual_GetAttr getAttr,=0A=
            Virtual_SetAttr setAttr,=0A=
            Virtual_SetRowAttr setRowAttr,=0A=
            Virtual_SetRowAttr setColAttr);=0A=
=0A=
        [DllImport("wx-c")] static extern int    =
wxGridTableBase_GetNumberRows(IntPtr self);=0A=
        [DllImport("wx-c")] static extern int    =
wxGridTableBase_GetNumberCols(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_IsEmptyCell(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetValue(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetValue(IntPtr self, int row, int col, string val);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetTypeName(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_CanGetValueAs(IntPtr self, int row, int col, string =
typeName);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_CanSetValueAs(IntPtr self, int row, int col, string =
typeName);=0A=
        [DllImport("wx-c")] static extern long   =
wxGridTableBase_GetValueAsLong(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern double =
wxGridTableBase_GetValueAsDouble(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_GetValueAsBool(IntPtr self, int row, int col);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetValueAsLong(IntPtr self, int row, int col, long =
val);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetValueAsDouble(IntPtr self, int row, int col, double =
val);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetValueAsBool(IntPtr self, int row, int col, bool =
val);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetValueAsCustom(IntPtr self, int row, int col, string =
typeName);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetValueAsCustom(IntPtr self, int row, int col, string =
typeName, IntPtr val);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetView(IntPtr self, IntPtr grid);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetView(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_Clear(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_InsertRows(IntPtr self, int pos, int numRows);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_AppendRows(IntPtr self, int numRows);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_DeleteRows(IntPtr self, int pos, int numRows);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_InsertCols(IntPtr self, int pos, int numCols);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_AppendCols(IntPtr self, int numCols);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_DeleteCols(IntPtr self, int pos, int numCols);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetRowLabelValue(IntPtr self, int row);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetColLabelValue(IntPtr self, int col);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetRowLabelValue(IntPtr self, int row, string val);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetColLabelValue(IntPtr self, int col, string val);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetAttrProvider(IntPtr self, IntPtr attrProvider);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetAttrProvider(IntPtr self);=0A=
        [DllImport("wx-c")] static extern bool   =
wxGridTableBase_CanHaveAttributes(IntPtr self);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridTableBase_GetAttr(IntPtr self, int row, int col, int kind);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetAttr(IntPtr self, IntPtr attr, int row, int col);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetRowAttr(IntPtr self, IntPtr attr, int row);=0A=
        [DllImport("wx-c")] static extern void   =
wxGridTableBase_SetColAttr(IntPtr self, IntPtr attr, int col);=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
    =0A=
        public GridTableBase()=0A=
            : this(wxGridTableBase_ctor()) =0A=
        {=0A=
            getNumberRows =3D new =
Virtual_GetNumberRows(GetNumberRows);=0A=
            getNumberCols =3D new =
Virtual_GetNumberCols(GetNumberCols);=0A=
            isEmptyCell =3D new Virtual_IsEmptyCell(IsEmptyCell);=0A=
            getValue =3D new Virtual_GetValue(GetValue);=0A=
            setValue =3D new Virtual_SetValue(DoSetValue);=0A=
            getTypeName =3D new Virtual_GetValue(GetTypeName);=0A=
            canGetValueAs =3D new =
Virtual_CanGetValueAs(DoCanGetValueAs);=0A=
            canSetValueAs =3D new =
Virtual_CanGetValueAs(DoCanSetValueAs);=0A=
            getValueAsLong =3D new =
Virtual_GetValueAsLong(GetValueAsLong);=0A=
            getValueAsDouble =3D new =
Virtual_GetValueAsDouble(GetValueAsDouble);=0A=
            getValueAsBool =3D new =
Virtual_IsEmptyCell(GetValueAsBool);=0A=
            setValueAsLong =3D new =
Virtual_SetValueAsLong(SetValueAsLong);=0A=
            setValueAsDouble =3D new =
Virtual_SetValueAsDouble(SetValueAsDouble);=0A=
            setValueAsBool =3D new =
Virtual_SetValueAsBool(SetValueAsBool);=0A=
            getValueAsCustom =3D new =
Virtual_GetValueAsCustom(DoGetValueAsCustom);=0A=
            setValueAsCustom =3D new =
Virtual_SetValueAsCustom(DoSetValueAsCustom);=0A=
            setView =3D new Virtual_SetView(DoSetView);=0A=
            getView =3D new Virtual_GetView(DoGetView);=0A=
            clear =3D new Virtual_Clear(Clear);=0A=
            insertRows =3D new Virtual_InsertRows(InsertRows);=0A=
            appendRows =3D new Virtual_AppendRows(AppendRows);=0A=
            deleteRows =3D new Virtual_InsertRows(DeleteRows);=0A=
            insertCols =3D new Virtual_InsertRows(InsertCols);=0A=
            appendCols =3D new Virtual_AppendRows(AppendCols);=0A=
            deleteCols =3D new Virtual_InsertRows(DeleteCols);=0A=
            getRowLabelValue =3D new =
Virtual_GetColLabelValue(GetRowLabelValue);=0A=
            getColLabelValue =3D new =
Virtual_GetColLabelValue(GetColLabelValue);=0A=
            setRowLabelValue =3D new =
Virtual_SetRowLabelValue(DoSetRowLabelValue);=0A=
            setColLabelValue =3D new =
Virtual_SetRowLabelValue(DoSetColLabelValue);=0A=
            setAttrProvider =3D new =
Virtual_SetAttrProvider(DoSetAttrProvider);=0A=
            getAttrProvider =3D new =
Virtual_GetAttrProvider(DoGetAttrProvider);=0A=
            canHaveAttributes =3D new =
Virtual_CanHaveAttributes(CanHaveAttributes);=0A=
            getAttr =3D new Virtual_GetAttr(DoGetAttr);=0A=
            setAttr =3D new Virtual_SetAttr(DoSetAttr);=0A=
            setRowAttr =3D new Virtual_SetRowAttr(DoSetRowAttr);=0A=
            setColAttr =3D new Virtual_SetRowAttr(DoSetColAttr);=0A=
=0A=
            wxGridTableBase_RegisterVirtual(wxObject, =0A=
                getNumberRows,=0A=
                getNumberCols,=0A=
                isEmptyCell,=0A=
                getValue,=0A=
                setValue,=0A=
                getTypeName,=0A=
                canGetValueAs,=0A=
                canSetValueAs,=0A=
                getValueAsLong,=0A=
                getValueAsDouble,=0A=
                getValueAsBool,=0A=
                setValueAsLong,=0A=
                setValueAsDouble,=0A=
                setValueAsBool,=0A=
                getValueAsCustom,=0A=
                setValueAsCustom,=0A=
                setView,=0A=
                getView,=0A=
                clear,=0A=
                insertRows,=0A=
                appendRows,=0A=
                deleteRows,=0A=
                insertCols,=0A=
                appendCols,=0A=
                deleteCols,=0A=
                getRowLabelValue,=0A=
                getColLabelValue,=0A=
                setRowLabelValue,=0A=
                setColLabelValue,=0A=
                setAttrProvider,=0A=
                getAttrProvider,=0A=
                canHaveAttributes,=0A=
                getAttr,=0A=
                setAttr,=0A=
                setRowAttr,=0A=
                setColAttr=0A=
            );=0A=
        }=0A=
        =0A=
        public GridTableBase(IntPtr wxObject)=0A=
            : base(wxObject) { }=0A=
            =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual int GetNumberRows()=0A=
        {=0A=
            return wxGridTableBase_GetNumberRows(wxObject);=0A=
        }=0A=
        =0A=
        public virtual int GetNumberCols()=0A=
        {=0A=
            return wxGridTableBase_GetNumberCols(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual bool IsEmptyCell(int row, int col)=0A=
        {=0A=
            return wxGridTableBase_IsEmptyCell(wxObject, row, col);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual string GetValue(int row, int col)=0A=
        {=0A=
            return new wxString(wxGridTableBase_GetValue(wxObject, row, =
col), true);=0A=
        }=0A=
=0A=
        private void DoSetValue(int row, int col, IntPtr val)=0A=
        {=0A=
            SetValue(row, col, new wxString(val));=0A=
        }       =0A=
        =0A=
        public virtual void SetValue(int row, int col, string val)=0A=
        {=0A=
            wxGridTableBase_SetValue(wxObject, row, col, val);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual string GetTypeName(int row, int col)=0A=
        {=0A=
            return new wxString(wxGridTableBase_GetTypeName(wxObject, =
row, col), true);=0A=
        }=0A=
        =0A=
        private bool DoCanGetValueAs(int row, int col, IntPtr =
typeName)=0A=
        {=0A=
            return CanGetValueAs(row, col, new wxString(typeName));=0A=
        }=0A=
        =0A=
        public virtual bool CanGetValueAs(int row, int col, string =
typeName)=0A=
        {=0A=
            return wxGridTableBase_CanGetValueAs(wxObject, row, col, =
typeName);=0A=
        }=0A=
=0A=
        private bool DoCanSetValueAs(int row, int col, IntPtr =
typeName)=0A=
        {=0A=
            return CanSetValueAs(row, col, new wxString(typeName));=0A=
        }=0A=
        =0A=
        public virtual bool CanSetValueAs(int row, int col, string =
typeName)=0A=
        {=0A=
            return wxGridTableBase_CanSetValueAs(wxObject, row, col, =
typeName);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual long GetValueAsLong(int row, int col)=0A=
        {=0A=
            return wxGridTableBase_GetValueAsLong(wxObject, row, =
col);=0A=
        }=0A=
        =0A=
        public virtual double GetValueAsDouble(int row, int col)=0A=
        {=0A=
            return wxGridTableBase_GetValueAsDouble(wxObject, row, =
col);=0A=
        }=0A=
        =0A=
        public virtual bool GetValueAsBool(int row, int col)=0A=
        {=0A=
            return wxGridTableBase_GetValueAsBool(wxObject, row, =
col);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual void SetValueAsLong(int row, int col, long =
val)=0A=
        {=0A=
            wxGridTableBase_SetValueAsLong(wxObject, row, col, val);=0A=
        }=0A=
        =0A=
        public virtual void SetValueAsDouble(int row, int col, double =
val)=0A=
        {=0A=
            wxGridTableBase_SetValueAsDouble(wxObject, row, col, =
val);=0A=
        }=0A=
        =0A=
        public virtual void SetValueAsBool(int row, int col, bool =
val)=0A=
        {=0A=
            wxGridTableBase_SetValueAsBool(wxObject, row, col, val);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoGetValueAsCustom(int row, int col, IntPtr =
typeName)=0A=
        {=0A=
            return Object.SafePtr(GetValueAsCustom(row, col, new =
wxString(typeName)));=0A=
        }=0A=
        =0A=
        public virtual Object GetValueAsCustom(int row, int col, string =
typeName)=0A=
        {=0A=
            return =
FindObject(wxGridTableBase_GetValueAsCustom(wxObject, row, col, =
typeName));=0A=
        }=0A=
        =0A=
        private void DoSetValueAsCustom(int row, int col, IntPtr =
typeName, IntPtr val)=0A=
        {=0A=
            SetValueAsCustom(row, col, new wxString(typeName), =
FindObject(val));=0A=
        }=0A=
        =0A=
        public virtual void SetValueAsCustom(int row, int col, string =
typeName, Object val)=0A=
        {=0A=
            wxGridTableBase_SetValueAsCustom(wxObject, row, col, =
typeName, Object.SafePtr(val));=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetView(IntPtr grid)=0A=
        {=0A=
            SetView((Grid)FindObject(grid, typeof(Grid)));=0A=
        }=0A=
        =0A=
        public virtual void SetView(Grid grid)=0A=
        {=0A=
            wxGridTableBase_SetView(wxObject, Object.SafePtr(grid));=0A=
        }=0A=
        =0A=
        private IntPtr DoGetView()=0A=
        {=0A=
            return Object.SafePtr(GetView());=0A=
        }=0A=
        =0A=
        public virtual Grid GetView()=0A=
        {=0A=
            return (Grid)FindObject(wxGridTableBase_GetView(wxObject), =
typeof(Grid));=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual void Clear()=0A=
        {=0A=
            wxGridTableBase_Clear(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual bool InsertRows(int pos, int numRows)=0A=
        {=0A=
            return wxGridTableBase_InsertRows(wxObject, pos, =
numRows);=0A=
        }=0A=
        =0A=
        public virtual bool AppendRows(int numRows)=0A=
        {=0A=
            return wxGridTableBase_AppendRows(wxObject, numRows);=0A=
        }=0A=
        =0A=
        public virtual bool DeleteRows(int pos, int numRows)=0A=
        {=0A=
            return wxGridTableBase_DeleteRows(wxObject, pos, =
numRows);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual bool InsertCols(int pos, int numCols)=0A=
        {=0A=
            return wxGridTableBase_InsertCols(wxObject, pos, =
numCols);=0A=
        }=0A=
        =0A=
        public virtual bool AppendCols(int numCols)=0A=
        {=0A=
            return wxGridTableBase_AppendCols(wxObject, numCols);=0A=
        }=0A=
        =0A=
        public virtual bool DeleteCols(int pos, int numCols)=0A=
        {=0A=
            return wxGridTableBase_DeleteCols(wxObject, pos, =
numCols);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public virtual string GetRowLabelValue(int row)=0A=
        {=0A=
            return new =
wxString(wxGridTableBase_GetRowLabelValue(wxObject, row), true);=0A=
        }=0A=
        =0A=
        public virtual string GetColLabelValue(int col)=0A=
        {=0A=
            return new =
wxString(wxGridTableBase_GetColLabelValue(wxObject, col), true);=0A=
        }=0A=
        =0A=
        private void DoSetRowLabelValue(int row, IntPtr val)=0A=
        {=0A=
            SetRowLabelValue(row, new wxString(val));=0A=
        }       =0A=
        =0A=
        public virtual void SetRowLabelValue(int row, string val)=0A=
        {=0A=
            wxGridTableBase_SetRowLabelValue(wxObject, row, val);=0A=
        }=0A=
        =0A=
        private void DoSetColLabelValue(int col, IntPtr val)=0A=
        {=0A=
            SetColLabelValue(col, new wxString(val));=0A=
        }       =0A=
        =0A=
        public virtual void SetColLabelValue(int col, string val)=0A=
        {=0A=
            wxGridTableBase_SetColLabelValue(wxObject, col, val);=0A=
        }       =0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetAttrProvider(IntPtr attrProvider)=0A=
        {=0A=
            =
SetAttrProvider((GridCellAttrProvider)Object.FindObject(attrProvider, =
typeof(GridCellAttrProvider)));=0A=
        }=0A=
        =0A=
        public void SetAttrProvider(GridCellAttrProvider =
attrProvider)=0A=
        {=0A=
            wxGridTableBase_SetAttrProvider(wxObject, =
Object.SafePtr(attrProvider));=0A=
        }=0A=
        =0A=
        private IntPtr DoGetAttrProvider()=0A=
        {=0A=
            return Object.SafePtr(GetAttrProvider());=0A=
        }=0A=
        =0A=
        public GridCellAttrProvider GetAttrProvider()=0A=
        {=0A=
            return new =
GridCellAttrProvider(wxGridTableBase_GetAttrProvider(wxObject));=0A=
        }=0A=
        =0A=
        public virtual bool CanHaveAttributes()=0A=
        {=0A=
            return wxGridTableBase_CanHaveAttributes(wxObject);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoGetAttr(int row, int col, int kind)=0A=
        {=0A=
            return Object.SafePtr(GetAttr(row, col, =
(GridCellAttr.AttrKind) kind));=0A=
        }=0A=
        =0A=
        public virtual GridCellAttr GetAttr(int row, int col, =
GridCellAttr.AttrKind kind)=0A=
        {=0A=
            return =
(GridCellAttr)Object.FindObject(wxGridTableBase_GetAttr(wxObject, row, =
col, (int)kind), typeof(GridCellAttr));=0A=
        }=0A=
        =0A=
        private void DoSetAttr(IntPtr attr, int row, int col)=0A=
        {=0A=
            SetAttr((GridCellAttr)Object.FindObject(attr, =
typeof(GridCellAttr)), row, col);=0A=
        }=0A=
        =0A=
        public virtual void SetAttr(GridCellAttr attr, int row, int =
col)=0A=
        {=0A=
            wxGridTableBase_SetAttr(wxObject, Object.SafePtr(attr), =
row, col);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetRowAttr(IntPtr attr, int row)=0A=
        {=0A=
            SetRowAttr((GridCellAttr)Object.FindObject(attr, =
typeof(GridCellAttr)), row);=0A=
        }=0A=
        =0A=
        public virtual void SetRowAttr(GridCellAttr attr, int row)=0A=
        {=0A=
            wxGridTableBase_SetRowAttr(wxObject, Object.SafePtr(attr), =
row);=0A=
        }=0A=
        =0A=
        private void DoSetColAttr(IntPtr attr, int col)=0A=
        {=0A=
            SetColAttr((GridCellAttr)Object.FindObject(attr, =
typeof(GridCellAttr)), col);=0A=
        }       =0A=
        =0A=
        public virtual void SetColAttr(GridCellAttr attr, int col)=0A=
        {=0A=
            wxGridTableBase_SetColAttr(wxObject, Object.SafePtr(attr), =
col);=0A=
        }=0A=
    }=0A=
    =0A=
    public class GridCellAttrProvider : Object  // ClientData=0A=
    {=0A=
        private delegate IntPtr Virtual_GetAttr(int row, int col, int =
kind);=0A=
        private delegate void Virtual_SetAttr(IntPtr attr, int row, int =
col);=0A=
        private delegate void Virtual_SetRowAttr(IntPtr attr, int =
row);=0A=
=0A=
        private Virtual_GetAttr getAttr;=0A=
        private Virtual_SetAttr setAttr;=0A=
        private Virtual_SetRowAttr setRowAttr;=0A=
        private Virtual_SetRowAttr setColAttr;=0A=
        =0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttrProvider_ctor();=0A=
    [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_dtor(IntPtr self);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_RegisterVirtual(IntPtr self,=0A=
            Virtual_GetAttr getAttr,=0A=
            Virtual_SetAttr setAttr,=0A=
            Virtual_SetRowAttr setRowAttr,=0A=
            Virtual_SetRowAttr setColAttr);=0A=
        [DllImport("wx-c")] static extern IntPtr =
wxGridCellAttrProvider_GetAttr(IntPtr self, int row, int col, int =
kind);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_SetAttr(IntPtr self, IntPtr attr, int row, int =
col); =0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_SetRowAttr(IntPtr self, IntPtr attr, int row); =
=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_SetColAttr(IntPtr self, IntPtr attr, int col); =
=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_UpdateAttrRows(IntPtr self, int pos, int =
numRows);=0A=
        [DllImport("wx-c")] static extern void =
wxGridCellAttrProvider_UpdateAttrCols(IntPtr self, int pos, int =
numCols);=0A=
    =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public GridCellAttrProvider(IntPtr wxObject) =0A=
            : base(wxObject) =0A=
    { =0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
    =0A=
    internal GridCellAttrProvider(IntPtr wxObject, bool memOwn)=0A=
            : base(wxObject)=0A=
    { =0A=
        this.memOwn =3D memOwn;=0A=
        this.wxObject =3D wxObject;=0A=
    }=0A=
        =0A=
        public GridCellAttrProvider()=0A=
            : this(wxGridCellAttrProvider_ctor(), true) =0A=
        { =0A=
            getAttr =3D new Virtual_GetAttr(DoGetAttr);=0A=
            setAttr =3D new Virtual_SetAttr(DoSetAttr);=0A=
            setRowAttr =3D new Virtual_SetRowAttr(DoSetRowAttr);=0A=
            setColAttr =3D new Virtual_SetRowAttr(DoSetColAttr);=0A=
=0A=
            wxGridCellAttrProvider_RegisterVirtual(wxObject,=0A=
                getAttr,=0A=
                setAttr,=0A=
                setRowAttr,=0A=
                setColAttr);=0A=
        }=0A=
    =0A=
    =
//---------------------------------------------------------------------=0A=
                =0A=
        public override void Dispose()=0A=
        {=0A=
            if (!disposed)=0A=
            {=0A=
                if (wxObject !=3D IntPtr.Zero)=0A=
                {=0A=
                    if (memOwn)=0A=
                    {=0A=
                        wxGridCellAttrProvider_dtor(wxObject);=0A=
                        memOwn =3D false;=0A=
                    }=0A=
                }=0A=
                RemoveObject(wxObject);=0A=
                wxObject =3D IntPtr.Zero;=0A=
                disposed=3D true;=0A=
            }=0A=
            =0A=
            base.Dispose();=0A=
            GC.SuppressFinalize(this);=0A=
        }=0A=
        =0A=
        =
//---------------------------------------------------------------------=0A=
        =0A=
        ~GridCellAttrProvider() =0A=
        {=0A=
            Dispose();=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private IntPtr DoGetAttr(int row, int col, int kind)=0A=
        {=0A=
            return Object.SafePtr(GetAttr(row, col, =
(GridCellAttr.AttrKind) kind));=0A=
        }=0A=
        =0A=
        public virtual GridCellAttr GetAttr(int row, int col, =
GridCellAttr.AttrKind kind)=0A=
        {=0A=
            return =
(GridCellAttr)FindObject(wxGridCellAttrProvider_GetAttr(wxObject, row, =
col, (int)kind), typeof(GridCellAttr));=0A=
        }=0A=
        =0A=
        private void DoSetAttr(IntPtr attr, int row, int col)=0A=
        {=0A=
            SetAttr((GridCellAttr)FindObject(attr, =
typeof(GridCellAttr)), row, col);=0A=
        }=0A=
        =0A=
        public virtual void SetAttr(GridCellAttr attr, int row, int =
col)=0A=
        {=0A=
            wxGridCellAttrProvider_SetAttr(wxObject, =
Object.SafePtr(attr), row, col);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        private void DoSetRowAttr(IntPtr attr, int row)=0A=
        {=0A=
            SetRowAttr((GridCellAttr)FindObject(attr, =
typeof(GridCellAttr)), row);=0A=
        }=0A=
        =0A=
        public virtual void SetRowAttr(GridCellAttr attr, int row)=0A=
        {=0A=
            wxGridCellAttrProvider_SetRowAttr(wxObject, =
Object.SafePtr(attr), row);=0A=
        }=0A=
        =0A=
        private void DoSetColAttr(IntPtr attr, int col)=0A=
        {=0A=
            SetColAttr((GridCellAttr)FindObject(attr, =
typeof(GridCellAttr)), col);=0A=
        }       =0A=
        =0A=
        public virtual void SetColAttr(GridCellAttr attr, int col)=0A=
        {=0A=
            wxGridCellAttrProvider_SetColAttr(wxObject, =
Object.SafePtr(attr), col);=0A=
        }=0A=
        =0A=
        =
//----------------------------------------------------------------------=
-------=0A=
        =0A=
        public void UpdateAttrRows(int pos, int numRows)=0A=
        {=0A=
            wxGridCellAttrProvider_UpdateAttrRows(wxObject, pos, =
numRows);=0A=
        }=0A=
        =0A=
        public void UpdateAttrCols(int pos, int numCols)=0A=
        {=0A=
            wxGridCellAttrProvider_UpdateAttrCols(wxObject, pos, =
numCols);=0A=
        }       =0A=
    }=0A=
}=0A=

------_=_NextPart_000_01C648F9.90825A1A--


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642