added possibility to reorder columns by dragging them (patch 1409677)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
// Name: griddemo.cpp
|
||||
// Purpose: Grid control wxWidgets sample
|
||||
// Author: Michael Bedward
|
||||
// Modified by:
|
||||
// Modified by: Santiago Palacios
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Michael Bedward, Julian Smart, Vadim Zeitlin
|
||||
// Licence: wxWindows license
|
||||
@@ -68,6 +68,7 @@ BEGIN_EVENT_TABLE( GridFrame, wxFrame )
|
||||
EVT_MENU( ID_TOGGLEEDIT, GridFrame::ToggleEditing )
|
||||
EVT_MENU( ID_TOGGLEROWSIZING, GridFrame::ToggleRowSizing )
|
||||
EVT_MENU( ID_TOGGLECOLSIZING, GridFrame::ToggleColSizing )
|
||||
EVT_MENU( ID_TOGGLECOLMOVING, GridFrame::ToggleColMoving )
|
||||
EVT_MENU( ID_TOGGLEGRIDSIZING, GridFrame::ToggleGridSizing )
|
||||
EVT_MENU( ID_TOGGLEGRIDDRAGCELL, GridFrame::ToggleGridDragCell )
|
||||
EVT_MENU( ID_TOGGLEGRIDLINES, GridFrame::ToggleGridLines )
|
||||
@@ -146,6 +147,7 @@ GridFrame::GridFrame()
|
||||
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 );
|
||||
@@ -376,6 +378,7 @@ void GridFrame::SetDefaults()
|
||||
GetMenuBar()->Check( ID_TOGGLEEDIT, true );
|
||||
GetMenuBar()->Check( ID_TOGGLEROWSIZING, true );
|
||||
GetMenuBar()->Check( ID_TOGGLECOLSIZING, true );
|
||||
GetMenuBar()->Check( ID_TOGGLECOLMOVING, false );
|
||||
GetMenuBar()->Check( ID_TOGGLEGRIDSIZING, true );
|
||||
GetMenuBar()->Check( ID_TOGGLEGRIDDRAGCELL, false );
|
||||
GetMenuBar()->Check( ID_TOGGLEGRIDLINES, true );
|
||||
@@ -429,6 +432,12 @@ void GridFrame::ToggleColSizing( wxCommandEvent& WXUNUSED(ev) )
|
||||
GetMenuBar()->IsChecked( ID_TOGGLECOLSIZING ) );
|
||||
}
|
||||
|
||||
void GridFrame::ToggleColMoving( wxCommandEvent& WXUNUSED(ev) )
|
||||
{
|
||||
grid->EnableDragColMove(
|
||||
GetMenuBar()->IsChecked( ID_TOGGLECOLMOVING ) );
|
||||
}
|
||||
|
||||
void GridFrame::ToggleGridSizing( wxCommandEvent& WXUNUSED(ev) )
|
||||
{
|
||||
grid->EnableDragGridSize(
|
||||
@@ -927,6 +936,11 @@ void GridFrame::OnSelectCell( wxGridEvent& ev )
|
||||
<< _T(", ShiftDown: ")<< (ev.ShiftDown() ? 'T':'F')
|
||||
<< _T(", AltDown: ")<< (ev.AltDown() ? 'T':'F')
|
||||
<< _T(", MetaDown: ")<< (ev.MetaDown() ? 'T':'F') << _T(" )");
|
||||
|
||||
//Indicate whether this column was moved
|
||||
if ( ((wxGrid *)ev.GetEventObject())->GetColPos( ev.GetCol() ) != ev.GetCol() )
|
||||
logBuf << _T(" *** Column moved, current position: ") << ((wxGrid *)ev.GetEventObject())->GetColPos( ev.GetCol() );
|
||||
|
||||
wxLogMessage( wxT("%s"), logBuf.c_str() );
|
||||
|
||||
// you must call Skip() if you want the default processing
|
||||
|
Reference in New Issue
Block a user