m_currentRectVisible = FALSE;
m_editable = TRUE;
- m_editInPlace = TRUE;
+ m_editInPlace = FALSE;
m_inOnTextInPlace = FALSE;
#if defined(__WIN95__)
m_textItem = (wxTextCtrl *) NULL;
m_currentRectVisible = FALSE;
m_editable = TRUE;
+ m_editInPlace = FALSE;
+ m_inOnTextInPlace = FALSE;
#if defined(__WIN95__)
m_scrollWidth = wxSystemSettings::GetSystemMetric(wxSYS_VSCROLL_X);
#elif defined(__WXGTK__)
wxPoint( m_currentRect.x-2, m_currentRect.y-2 ),
wxSize( m_currentRect.width+4, m_currentRect.height+4 ),
wxNO_BORDER | wxTE_PROCESS_ENTER );
- m_inPlaceTextItem->Show(TRUE);
- m_inPlaceTextItem->SetFocus();
+ m_inPlaceTextItem->Show(m_editInPlace);
+ if ( m_editInPlace )
+ m_inPlaceTextItem->SetFocus();
return TRUE;
}
if ( m_editable && m_editInPlace )
{
- m_inPlaceTextItem->SetSize( m_currentRect.x-2, m_currentRect.y-2,
- m_currentRect.width+4, m_currentRect.height+4 );
+ int x, y, width, height;
+ if ( m_currentRect.x <= 0 )
+ {
+ x = 0;
+ width = m_currentRect.width + 2;
+ }
+ else
+ {
+ x = m_currentRect.x - 2;
+ width = m_currentRect.width + 4;
+ }
+
+ if ( m_currentRect.y <= 0 )
+ {
+ y = 0;
+ height = m_currentRect.height + 2;
+ }
+ else
+ {
+ y = m_currentRect.y - 2;
+ height = m_currentRect.height + 4;
+ }
+
+ m_inPlaceTextItem->SetSize( x, y, width, height );
if ( cell )
{