While we don't support auto-sizing of the hidden columns and rows, we need to
still show them back when SetColSize() or SetRowSize() is called with -1
(a.k.a. wxGRID_AUTOSIZE) argument.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73848
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
return;
// The value of -1 is special and means to fit the height to the row label.
return;
// The value of -1 is special and means to fit the height to the row label.
+ // As with the columns, ignore attempts to auto-size the hidden rows.
+ if ( height == -1 && GetRowHeight(row) != 0 )
- // As with the columns, ignore attempts to auto-size the hidden rows.
- if ( GetRowHeight(row) == 0 )
- return;
-
long w, h;
wxArrayString lines;
wxClientDC dc(m_rowLabelWin);
long w, h;
wxArrayString lines;
wxClientDC dc(m_rowLabelWin);
return;
// The value of -1 is special and means to fit the width to the column label.
return;
// The value of -1 is special and means to fit the width to the column label.
+ //
+ // Notice that we currently don't support auto-sizing hidden columns (we
+ // could, but it's not clear whether this is really needed and it would
+ // make the code more complex), and for them passing -1 simply means to
+ // show the column back using its old size.
+ if ( width == -1 && GetColWidth(col) != 0 )
- // We currently don't support auto-sizing hidden columns. We could, but
- // it's not clear whether this is really needed and it would make the
- // code more complex.
- if ( GetColWidth(col) == 0 )
- return;
-
long w, h;
wxArrayString lines;
wxClientDC dc(m_colWindow);
long w, h;
wxArrayString lines;
wxClientDC dc(m_colWindow);
CPPUNIT_TEST( Selection );
CPPUNIT_TEST( AddRowCol );
CPPUNIT_TEST( ColumnOrder );
CPPUNIT_TEST( Selection );
CPPUNIT_TEST( AddRowCol );
CPPUNIT_TEST( ColumnOrder );
+ CPPUNIT_TEST( ColumnVisibility );
CPPUNIT_TEST( LineFormatting );
CPPUNIT_TEST( SortSupport );
CPPUNIT_TEST( Labels );
CPPUNIT_TEST( LineFormatting );
CPPUNIT_TEST( SortSupport );
CPPUNIT_TEST( Labels );
void Selection();
void AddRowCol();
void ColumnOrder();
void Selection();
void AddRowCol();
void ColumnOrder();
+ void ColumnVisibility();
void LineFormatting();
void SortSupport();
void Labels();
void LineFormatting();
void SortSupport();
void Labels();
CPPUNIT_ASSERT_EQUAL(3, m_grid->GetColPos(3));
}
CPPUNIT_ASSERT_EQUAL(3, m_grid->GetColPos(3));
}
+void GridTestCase::ColumnVisibility()
+{
+ m_grid->AppendCols(3);
+ CPPUNIT_ASSERT( m_grid->IsColShown(1) );
+
+ m_grid->HideCol(1);
+ CPPUNIT_ASSERT( !m_grid->IsColShown(1) );
+ CPPUNIT_ASSERT( m_grid->IsColShown(2) );
+
+ m_grid->ShowCol(1);
+ CPPUNIT_ASSERT( m_grid->IsColShown(1) );
+}
+
void GridTestCase::LineFormatting()
{
CPPUNIT_ASSERT(m_grid->GridLinesEnabled());
void GridTestCase::LineFormatting()
{
CPPUNIT_ASSERT(m_grid->GridLinesEnabled());