X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a679468530239a32cf7efa0d566d5c03a9c90c3f..b8ddac49a37a01ca1cf89f97dc97c4945b50ddab:/src/generic/grid.cpp diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index 07d02c8dd4..f9ff987828 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -1953,7 +1953,7 @@ void wxGridCellAttr::MergeWith(wxGridCellAttr *mergefrom) SetBackgroundColour(mergefrom->GetBackgroundColour()); if ( !HasFont() && mergefrom->HasFont() ) SetFont(mergefrom->GetFont()); - if ( !!HasAlignment() && mergefrom->HasAlignment() ){ + if ( !HasAlignment() && mergefrom->HasAlignment() ){ int hAlign, vAlign; mergefrom->GetAlignment( &hAlign, &vAlign); SetAlignment(hAlign, vAlign); @@ -3997,6 +3997,12 @@ bool wxGrid::Redimension( wxGridTableMessage& msg ) // Clear the attribute cache as the attribute might refer to a different // cell than stored in the cache after adding/removing rows/columns. ClearAttrCache(); + // By the same reasoning, the editor should be dismissed if columns are + // added or removed. And for consistency, it should IMHO always be + // removed, not only if the cell "underneath" it actually changes. + // For now, I intentionally do not save the editor's content as the + // cell it might want to save that stuff to might no longer exist. + DisableCellEditControl(); #if 0 // if we were using the default widths/heights so far, we must change them // now