// Purpose: wxGridBagSizer: A sizer that can lay out items in a grid,
// with items at specified cells, and with the option of row
// and/or column spanning
// Purpose: wxGridBagSizer: A sizer that can lay out items in a grid,
// with items at specified cells, and with the option of row
// and/or column spanning
{
wxGBPosition badpos(-1,-1);
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
{
wxGBPosition badpos(-1,-1);
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
bool wxGridBagSizer::SetItemPosition(size_t index, const wxGBPosition& pos)
{
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
bool wxGridBagSizer::SetItemPosition(size_t index, const wxGBPosition& pos)
{
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
bool wxGridBagSizer::SetItemSpan(size_t index, const wxGBSpan& span)
{
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
bool wxGridBagSizer::SetItemSpan(size_t index, const wxGBSpan& span)
{
wxSizerItemList::compatibility_iterator node = m_children.Item( index );
item->GetEndPos(endrow, endcol);
// fill heights and widths upto this item if needed
item->GetEndPos(endrow, endcol);
// fill heights and widths upto this item if needed
m_colWidths.Add(m_emptyCellSize.GetWidth());
// See if this item increases the size of its row(s) or col(s)
m_colWidths.Add(m_emptyCellSize.GetWidth());
// See if this item increases the size of its row(s) or col(s)
// If the item starts in this position and doesn't span rows, then
// just look at the whole item height
if ( item->GetPos() == pos && endrow == row )
// If the item starts in this position and doesn't span rows, then
// just look at the whole item height
if ( item->GetPos() == pos && endrow == row )
// and check how much is left
rowExtra = wxMin(rowExtra, rowHeight - itemHeight);
}
// and check how much is left
rowExtra = wxMin(rowExtra, rowHeight - itemHeight);
}