PreCreation( parent, id, pos, size, style, name );
+#if wxUSE_VALIDATORS
SetValidator( validator );
+#endif // wxUSE_VALIDATORS
m_vScrollbarVisible = FALSE;
{
gint len = gtk_text_get_length( GTK_TEXT(m_text) );
char *text = gtk_editable_get_chars( GTK_EDITABLE(m_text), 0, len );
- tmp = wxString(text,*wxConv_current);
+ tmp = wxString(text,*wxConvCurrent);
g_free( text );
}
else
{
- tmp = wxString(gtk_entry_get_text( GTK_ENTRY(m_text) ),*wxConv_current);
+ tmp = wxString(gtk_entry_get_text( GTK_ENTRY(m_text) ),*wxConvCurrent);
}
return tmp;
}
void wxTextCtrl::ShowPosition( long WXUNUSED(pos) )
{
- wxFAIL_MSG( _T("wxTextCtrl::ShowPosition not implemented") );
+// SetInsertionPoint( pos );
}
long wxTextCtrl::GetInsertionPoint() const
// selection.
void wxTextCtrl::GetSelection(long* from, long* to) const
{
- // TODO
- *from = 0;
- *to = 0;
- wxFAIL_MSG( _T("wxTextCtrl::GetSelection not implemented") );
+ wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
+
+ if (!(GTK_EDITABLE(m_text)->has_selection))
+ {
+ if (from) *from = 0;
+ if (to) *to = 0;
+ return;
+ }
+
+ if (from) *from = (long) GTK_EDITABLE(m_text)->selection_start_pos;
+ if (to) *to = (long) GTK_EDITABLE(m_text)->selection_end_pos;
}
bool wxTextCtrl::IsEditable() const
{
- // TODO
- wxFAIL_MSG( _T("wxTextCtrl::IsEditable not implemented") );
- return FALSE;
+ wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
+
+ return GTK_EDITABLE(m_text)->editable;
}
void wxTextCtrl::Clear()