X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1bf55f4cda92e967786d54e4bc33fdb692e7f7fe..524d97b1c22daf69c57ca92c55ef4bbb206a0943:/samples/grid/griddemo.cpp?ds=sidebyside diff --git a/samples/grid/griddemo.cpp b/samples/grid/griddemo.cpp index 2cd20c56d4..533f984b47 100644 --- a/samples/grid/griddemo.cpp +++ b/samples/grid/griddemo.cpp @@ -71,6 +71,7 @@ BEGIN_EVENT_TABLE( GridFrame, wxFrame ) EVT_MENU( ID_TOGGLECOLMOVING, GridFrame::ToggleColMoving ) EVT_MENU( ID_TOGGLEGRIDSIZING, GridFrame::ToggleGridSizing ) EVT_MENU( ID_TOGGLEGRIDDRAGCELL, GridFrame::ToggleGridDragCell ) + EVT_MENU( ID_TOGGLENATIVEHEADER, GridFrame::ToggleNativeHeader ) EVT_MENU( ID_TOGGLEGRIDLINES, GridFrame::ToggleGridLines ) EVT_MENU( ID_AUTOSIZECOLS, GridFrame::AutoSizeCols ) EVT_MENU( ID_CELLOVERFLOW, GridFrame::CellOverflow ) @@ -91,6 +92,7 @@ BEGIN_EVENT_TABLE( GridFrame, wxFrame ) EVT_MENU( ID_SELCELLS, GridFrame::SelectCells ) EVT_MENU( ID_SELROWS, GridFrame::SelectRows ) EVT_MENU( ID_SELCOLS, GridFrame::SelectCols ) + EVT_MENU( ID_SELROWSORCOLS, GridFrame::SelectRowsOrCols ) EVT_MENU( ID_SET_CELL_FG_COLOUR, GridFrame::SetCellFgColour ) EVT_MENU( ID_SET_CELL_BG_COLOUR, GridFrame::SetCellBgColour ) @@ -152,20 +154,21 @@ GridFrame::GridFrame() fileMenu->Append( wxID_EXIT, _T("E&xit\tAlt-X") ); wxMenu *viewMenu = new wxMenu; - viewMenu->Append( ID_TOGGLEROWLABELS, _T("&Row labels"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLECOLLABELS, _T("&Col labels"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLEEDIT, _T("&Editable"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLEROWSIZING, _T("Ro&w drag-resize"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLECOLSIZING, _T("C&ol drag-resize"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLECOLMOVING, _T("Col drag-&move"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLEGRIDSIZING, _T("&Grid drag-resize"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLEGRIDDRAGCELL, _T("&Grid drag-cell"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_TOGGLEGRIDLINES, _T("&Grid Lines"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_SET_HIGHLIGHT_WIDTH, _T("&Set Cell Highlight Width...") ); - viewMenu->Append( ID_SET_RO_HIGHLIGHT_WIDTH, _T("&Set Cell RO Highlight Width...") ); - viewMenu->Append( ID_AUTOSIZECOLS, _T("&Auto-size cols") ); - viewMenu->Append( ID_CELLOVERFLOW, _T("&Overflow cells"), wxEmptyString, wxITEM_CHECK ); - viewMenu->Append( ID_RESIZECELL, _T("&Resize cell (7,1)"), wxEmptyString, wxITEM_CHECK ); + viewMenu->AppendCheckItem(ID_TOGGLEROWLABELS, "&Row labels"); + viewMenu->AppendCheckItem(ID_TOGGLECOLLABELS, "&Col labels"); + viewMenu->AppendCheckItem(ID_TOGGLEEDIT,"&Editable"); + viewMenu->AppendCheckItem(ID_TOGGLEROWSIZING, "Ro&w drag-resize"); + viewMenu->AppendCheckItem(ID_TOGGLECOLSIZING, "C&ol drag-resize"); + viewMenu->AppendCheckItem(ID_TOGGLECOLMOVING, "Col drag-&move"); + viewMenu->AppendCheckItem(ID_TOGGLEGRIDSIZING, "&Grid drag-resize"); + viewMenu->AppendCheckItem(ID_TOGGLEGRIDDRAGCELL, "&Grid drag-cell"); + viewMenu->AppendCheckItem(ID_TOGGLENATIVEHEADER, "&Native column headers"); + viewMenu->AppendCheckItem(ID_TOGGLEGRIDLINES, "&Grid Lines"); + viewMenu->AppendCheckItem(ID_SET_HIGHLIGHT_WIDTH, "&Set Cell Highlight Width..."); + viewMenu->AppendCheckItem(ID_SET_RO_HIGHLIGHT_WIDTH, "&Set Cell RO Highlight Width..."); + viewMenu->AppendCheckItem(ID_AUTOSIZECOLS, "&Auto-size cols"); + viewMenu->AppendCheckItem(ID_CELLOVERFLOW, "&Overflow cells"); + viewMenu->AppendCheckItem(ID_RESIZECELL, "&Resize cell (7,1)"); wxMenu *rowLabelMenu = new wxMenu; @@ -221,9 +224,10 @@ GridFrame::GridFrame() selectionMenu, _T("Change selection mode") ); - selectionMenu->Append( ID_SELCELLS, _T("Select &Cells") ); - selectionMenu->Append( ID_SELROWS, _T("Select &Rows") ); - selectionMenu->Append( ID_SELCOLS, _T("Select C&ols") ); + selectionMenu->Append( ID_SELCELLS, _T("Select &cells") ); + selectionMenu->Append( ID_SELROWS, _T("Select &rows") ); + selectionMenu->Append( ID_SELCOLS, _T("Select col&umns") ); + selectionMenu->Append( ID_SELROWSORCOLS, _T("Select rows &or columns") ); wxMenu *autosizeMenu = new wxMenu; autosizeMenu->Append( ID_SIZE_ROW, _T("Selected &row data") ); @@ -239,7 +243,7 @@ GridFrame::GridFrame() wxMenuBar *menuBar = new wxMenuBar; menuBar->Append( fileMenu, _T("&File") ); - menuBar->Append( viewMenu, _T("&View") ); + menuBar->Append( viewMenu, _T("&Grid") ); menuBar->Append( colMenu, _T("&Colours") ); menuBar->Append( editMenu, _T("&Edit") ); menuBar->Append( selectMenu, _T("&Select") ); @@ -407,6 +411,7 @@ void GridFrame::SetDefaults() GetMenuBar()->Check( ID_TOGGLECOLMOVING, false ); GetMenuBar()->Check( ID_TOGGLEGRIDSIZING, true ); GetMenuBar()->Check( ID_TOGGLEGRIDDRAGCELL, false ); + GetMenuBar()->Check( ID_TOGGLENATIVEHEADER, false ); GetMenuBar()->Check( ID_TOGGLEGRIDLINES, true ); GetMenuBar()->Check( ID_CELLOVERFLOW, true ); } @@ -476,6 +481,12 @@ void GridFrame::ToggleGridDragCell( wxCommandEvent& WXUNUSED(ev) ) GetMenuBar()->IsChecked( ID_TOGGLEGRIDDRAGCELL ) ); } +void GridFrame::ToggleNativeHeader( wxCommandEvent& WXUNUSED(ev) ) +{ + grid->SetUseNativeColLabels( + GetMenuBar()->IsChecked( ID_TOGGLENATIVEHEADER ) ); +} + void GridFrame::ToggleGridLines( wxCommandEvent& WXUNUSED(ev) ) { grid->EnableGridLines( @@ -798,6 +809,11 @@ void GridFrame::SelectCols( wxCommandEvent& WXUNUSED(ev) ) grid->SetSelectionMode( wxGrid::wxGridSelectColumns ); } +void GridFrame::SelectRowsOrCols( wxCommandEvent& WXUNUSED(ev) ) +{ + grid->SetSelectionMode( wxGrid::wxGridSelectRowsOrColumns ); +} + void GridFrame::SetCellFgColour( wxCommandEvent& WXUNUSED(ev) ) { wxColour col = wxGetColourFromUser(this);