Some #include and #if wxUSE_XX things

Shut up notification in wxTextCtrl
  Made things compile again...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1999-06-22 08:36:29 +00:00
parent bb0054cda8
commit 2df7be7f2c
25 changed files with 265 additions and 183 deletions

View File

@@ -16,6 +16,10 @@
#pragma interface "docmdi.h"
#endif
#include "wx/defs.h"
#if wxUSE_MDI_ARCHITECTURE
#include "wx/docview.h"
#include "wx/mdi.h"
@@ -79,5 +83,8 @@ DECLARE_EVENT_TABLE()
};
#endif
// wxUSE_MDI_ARCHITECTURE
#endif
// _WX_DOCMDI_H_

View File

@@ -22,6 +22,7 @@
#include "wx/object.h"
#include "wx/control.h"
#include "wx/bitmap.h"
#include "wx/icon.h"
//-----------------------------------------------------------------------------
// classes
@@ -66,8 +67,7 @@ public:
const wxBitmap& GetBitmap() const { return m_bitmap; }
// for compatibility with wxMSW
wxIcon& GetIcon()
{ return *(wxDynamicCast(&m_bitmap, wxIcon)); }
wxIcon& GetIcon();
private:
wxBitmap m_bitmap;

View File

@@ -22,6 +22,7 @@
#include "wx/object.h"
#include "wx/control.h"
#include "wx/bitmap.h"
#include "wx/icon.h"
//-----------------------------------------------------------------------------
// classes
@@ -66,8 +67,7 @@ public:
const wxBitmap& GetBitmap() const { return m_bitmap; }
// for compatibility with wxMSW
wxIcon& GetIcon()
{ return *(wxDynamicCast(&m_bitmap, wxIcon)); }
wxIcon& GetIcon();
private:
wxBitmap m_bitmap;

View File

@@ -8,9 +8,18 @@
// Copyright: (c) 1997, 1998 Guilhem Lavaux
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_NETWORK_ADDRESS_H
#define _WX_NETWORK_ADDRESS_H
#ifdef __GNUG__
#pragma interface
#endif
#include "wx/defs.h"
#if wxUSE_SOCKETS
#if defined(__WINDOWS__) && defined(WXSOCK_INTERNAL)
#include <winsock.h>
@@ -21,15 +30,7 @@
#include <netinet/in.h>
#endif
#ifdef __GNUG__
#pragma interface
#endif
#ifdef WXPREC
#include <wx/wxprec.h>
#else
#include <wx/wx.h>
#endif
#include "wx/string.h"
class WXDLLEXPORT wxSockAddress : public wxObject {
DECLARE_ABSTRACT_CLASS(wxSockAddress)
@@ -132,5 +133,10 @@ public:
inline int Type() { return wxSockAddress::UNIX; }
};
#endif
// __UNIX__
#endif
// wxUSE_SOCKETS
#endif
// _WX_NETWORK_ADDRESS_H

View File

@@ -15,12 +15,14 @@
#pragma interface
#endif
#include "wx/defs.h"
#if wxUSE_SOCKETS
#include <wx/object.h>
#include <wx/list.h>
#include <wx/socket.h>
#include <wx/thread.h>
#include "wx/object.h"
#include "wx/list.h"
#include "wx/socket.h"
#include "wx/thread.h"
// Socket state
class SocketState

View File

@@ -23,10 +23,6 @@
#pragma hdrstop
#endif //__BORLANDC__
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_CONFIG && ((wxUSE_FILE && wxUSE_TEXTFILE) || defined(wxCONFIG_WIN32_NATIVE))
#include "wx/app.h"

View File

@@ -26,10 +26,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_TIMEDATE
#include "wx/date.h"

View File

@@ -20,10 +20,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS
#include "wx/datstrm.h"

View File

@@ -17,7 +17,7 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP

View File

@@ -17,19 +17,11 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#pragma hdrstop
#endif
#if wxUSE_DOC_VIEW_ARCHITECTURE
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/docmdi.h"
/*

View File

@@ -25,11 +25,7 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#pragma hdrstop
#endif
#if wxUSE_DOC_VIEW_ARCHITECTURE

View File

@@ -23,9 +23,9 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
# pragma hdrstop
#endif //__BORLANDC__
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#if wxUSE_DYNLIB_CLASS

View File

@@ -25,10 +25,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_FILE
// standard

View File

@@ -14,10 +14,6 @@
#pragma implementation "fileconf.h"
#endif
// ============================================================================
// declarations
// ============================================================================
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------

View File

@@ -10,14 +10,14 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "ftp.h"
#pragma implementation "ftp.h"
#endif
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#if wxUSE_SOCKETS

View File

@@ -10,7 +10,7 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "http.h"
#pragma implementation "http.h"
#endif
// For compilers that support precompilation, includes "wx.h".
@@ -20,10 +20,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_SOCKETS
#include <stdio.h>

View File

@@ -20,10 +20,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS
#include <stdlib.h>

View File

@@ -19,10 +19,6 @@
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_SERIAL && wxUSE_STREAMS
#include "wx/object.h"

View File

@@ -17,15 +17,11 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#if wxUSE_SOCKETS
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif
#include "wx/protocol/protocol.h"
#include "wx/url.h"
#include "wx/module.h"

View File

@@ -10,14 +10,14 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "sckaddr.h"
#pragma implementation "sckaddr.h"
#endif
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#if wxUSE_SOCKETS

View File

@@ -18,11 +18,14 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#include "wx/utils.h"
#include "wx/dcclient.h"
#include "wx/dcmemory.h"
#include "wx/textctrl.h"
#endif
#include <string.h>

View File

@@ -83,4 +83,13 @@ void wxStaticBitmap::SetBitmap( const wxBitmap &bitmap )
}
}
wxIcon& wxStaticBitmap::GetIcon()
{
wxIcon *icon = wxDynamicCast(&m_bitmap, wxIcon);
if (!icon) return wxNullIcon;
return *icon;
}
#endif

View File

@@ -345,8 +345,11 @@ void wxTextCtrl::WriteText( const wxString &text )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
if (text.IsNull()) return;
if (text.IsEmpty()) return;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
/* this moves the cursor pos to behind the inserted text */
@@ -379,12 +382,20 @@ void wxTextCtrl::WriteText( const wxString &text )
/* bring entry's cursor uptodate. bug in GTK. */
gtk_entry_set_position( GTK_ENTRY(m_text), GTK_EDITABLE(m_text)->current_pos );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::AppendText( const wxString &text )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
if (text.IsEmpty()) return;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
/* we'll insert at the last position */
@@ -403,82 +414,91 @@ void wxTextCtrl::AppendText( const wxString &text )
{
gtk_entry_append_text( GTK_ENTRY(m_text), text.mbc_str() );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
bool wxTextCtrl::LoadFile( const wxString &file )
{
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
if (!wxFileExists(file)) return FALSE;
if (!wxFileExists(file)) return FALSE;
Clear();
Clear();
FILE *fp = (FILE*) NULL;
struct stat statb;
FILE *fp = (FILE*) NULL;
struct stat statb;
if ((stat (FNSTRINGCAST file.fn_str(), &statb) == -1) || (statb.st_mode & S_IFMT) != S_IFREG ||
!(fp = fopen (FNSTRINGCAST file.fn_str(), "r")))
{
return FALSE;
}
else
{
gint len = statb.st_size;
char *text;
if (!(text = (char*)malloc ((unsigned) (len + 1))))
if ((stat (FNSTRINGCAST file.fn_str(), &statb) == -1) || (statb.st_mode & S_IFMT) != S_IFREG ||
!(fp = fopen (FNSTRINGCAST file.fn_str(), "r")))
{
fclose (fp);
return FALSE;
}
if (fread (text, sizeof (char), len, fp) != (size_t) len)
{
}
fclose (fp);
text[len] = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
gint pos = 0;
gtk_editable_insert_text( GTK_EDITABLE(m_text), text, len, &pos );
return FALSE;
}
else
{
gtk_entry_set_text( GTK_ENTRY(m_text), text );
}
gint len = statb.st_size;
char *text;
if (!(text = (char*)malloc ((unsigned) (len + 1))))
{
fclose (fp);
return FALSE;
}
if (fread (text, sizeof (char), len, fp) != (size_t) len)
{
}
fclose (fp);
free (text);
m_modified = FALSE;
return TRUE;
}
return FALSE;
text[len] = 0;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
gint pos = 0;
gtk_editable_insert_text( GTK_EDITABLE(m_text), text, len, &pos );
}
else
{
gtk_entry_set_text( GTK_ENTRY(m_text), text );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
free (text);
m_modified = FALSE;
return TRUE;
}
return FALSE;
}
bool wxTextCtrl::SaveFile( const wxString &file )
{
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
if (file == _T("")) return FALSE;
if (file == _T("")) return FALSE;
FILE *fp;
FILE *fp;
if (!(fp = fopen (FNSTRINGCAST file.fn_str(), "w")))
if (!(fp = fopen (FNSTRINGCAST file.fn_str(), "w")))
{
return FALSE;
return FALSE;
}
else
else
{
char *text = (char*) NULL;
gint len = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
len = gtk_text_get_length( GTK_TEXT(m_text) );
text = gtk_editable_get_chars( GTK_EDITABLE(m_text), 0, len );
len = gtk_text_get_length( GTK_TEXT(m_text) );
text = gtk_editable_get_chars( GTK_EDITABLE(m_text), 0, len );
}
else
{
text = gtk_entry_get_text( GTK_ENTRY(m_text) );
text = gtk_entry_get_text( GTK_ENTRY(m_text) );
}
if (fwrite (text, sizeof (char), len, fp) != (size_t) len)
@@ -498,7 +518,7 @@ bool wxTextCtrl::SaveFile( const wxString &file )
return TRUE;
}
return TRUE;
return TRUE;
}
wxString wxTextCtrl::GetLineText( long lineNo ) const
@@ -724,33 +744,54 @@ void wxTextCtrl::Remove( long from, long to )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to );
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Replace( long from, long to, const wxString &value )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to );
if (value.IsNull()) return;
gint pos = (gint)from;
if (!value.IsEmpty())
{
gint pos = (gint)from;
#if wxUSE_UNICODE
wxWX2MBbuf buf = value.mbc_str();
gtk_editable_insert_text( GTK_EDITABLE(m_text), buf, strlen(buf), &pos );
wxWX2MBbuf buf = value.mbc_str();
gtk_editable_insert_text( GTK_EDITABLE(m_text), buf, strlen(buf), &pos );
#else
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
#endif
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Cut()
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
#if (GTK_MINOR_VERSION > 0)
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text) );
#else
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
#endif
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Copy()
@@ -768,11 +809,17 @@ void wxTextCtrl::Paste()
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
#if (GTK_MINOR_VERSION > 0)
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text) );
#else
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
#endif
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
bool wxTextCtrl::CanCopy() const

View File

@@ -83,4 +83,13 @@ void wxStaticBitmap::SetBitmap( const wxBitmap &bitmap )
}
}
wxIcon& wxStaticBitmap::GetIcon()
{
wxIcon *icon = wxDynamicCast(&m_bitmap, wxIcon);
if (!icon) return wxNullIcon;
return *icon;
}
#endif

View File

@@ -345,8 +345,11 @@ void wxTextCtrl::WriteText( const wxString &text )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
if (text.IsNull()) return;
if (text.IsEmpty()) return;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
/* this moves the cursor pos to behind the inserted text */
@@ -379,12 +382,20 @@ void wxTextCtrl::WriteText( const wxString &text )
/* bring entry's cursor uptodate. bug in GTK. */
gtk_entry_set_position( GTK_ENTRY(m_text), GTK_EDITABLE(m_text)->current_pos );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::AppendText( const wxString &text )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
if (text.IsEmpty()) return;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
/* we'll insert at the last position */
@@ -403,82 +414,91 @@ void wxTextCtrl::AppendText( const wxString &text )
{
gtk_entry_append_text( GTK_ENTRY(m_text), text.mbc_str() );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
bool wxTextCtrl::LoadFile( const wxString &file )
{
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
if (!wxFileExists(file)) return FALSE;
if (!wxFileExists(file)) return FALSE;
Clear();
Clear();
FILE *fp = (FILE*) NULL;
struct stat statb;
FILE *fp = (FILE*) NULL;
struct stat statb;
if ((stat (FNSTRINGCAST file.fn_str(), &statb) == -1) || (statb.st_mode & S_IFMT) != S_IFREG ||
!(fp = fopen (FNSTRINGCAST file.fn_str(), "r")))
{
return FALSE;
}
else
{
gint len = statb.st_size;
char *text;
if (!(text = (char*)malloc ((unsigned) (len + 1))))
if ((stat (FNSTRINGCAST file.fn_str(), &statb) == -1) || (statb.st_mode & S_IFMT) != S_IFREG ||
!(fp = fopen (FNSTRINGCAST file.fn_str(), "r")))
{
fclose (fp);
return FALSE;
}
if (fread (text, sizeof (char), len, fp) != (size_t) len)
{
}
fclose (fp);
text[len] = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
gint pos = 0;
gtk_editable_insert_text( GTK_EDITABLE(m_text), text, len, &pos );
return FALSE;
}
else
{
gtk_entry_set_text( GTK_ENTRY(m_text), text );
}
gint len = statb.st_size;
char *text;
if (!(text = (char*)malloc ((unsigned) (len + 1))))
{
fclose (fp);
return FALSE;
}
if (fread (text, sizeof (char), len, fp) != (size_t) len)
{
}
fclose (fp);
free (text);
m_modified = FALSE;
return TRUE;
}
return FALSE;
text[len] = 0;
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
if (m_windowStyle & wxTE_MULTILINE)
{
gint pos = 0;
gtk_editable_insert_text( GTK_EDITABLE(m_text), text, len, &pos );
}
else
{
gtk_entry_set_text( GTK_ENTRY(m_text), text );
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
free (text);
m_modified = FALSE;
return TRUE;
}
return FALSE;
}
bool wxTextCtrl::SaveFile( const wxString &file )
{
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
wxCHECK_MSG( m_text != NULL, FALSE, _T("invalid text ctrl") );
if (file == _T("")) return FALSE;
if (file == _T("")) return FALSE;
FILE *fp;
FILE *fp;
if (!(fp = fopen (FNSTRINGCAST file.fn_str(), "w")))
if (!(fp = fopen (FNSTRINGCAST file.fn_str(), "w")))
{
return FALSE;
return FALSE;
}
else
else
{
char *text = (char*) NULL;
gint len = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
len = gtk_text_get_length( GTK_TEXT(m_text) );
text = gtk_editable_get_chars( GTK_EDITABLE(m_text), 0, len );
len = gtk_text_get_length( GTK_TEXT(m_text) );
text = gtk_editable_get_chars( GTK_EDITABLE(m_text), 0, len );
}
else
{
text = gtk_entry_get_text( GTK_ENTRY(m_text) );
text = gtk_entry_get_text( GTK_ENTRY(m_text) );
}
if (fwrite (text, sizeof (char), len, fp) != (size_t) len)
@@ -498,7 +518,7 @@ bool wxTextCtrl::SaveFile( const wxString &file )
return TRUE;
}
return TRUE;
return TRUE;
}
wxString wxTextCtrl::GetLineText( long lineNo ) const
@@ -724,33 +744,54 @@ void wxTextCtrl::Remove( long from, long to )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to );
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Replace( long from, long to, const wxString &value )
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
gtk_editable_delete_text( GTK_EDITABLE(m_text), (gint)from, (gint)to );
if (value.IsNull()) return;
gint pos = (gint)from;
if (!value.IsEmpty())
{
gint pos = (gint)from;
#if wxUSE_UNICODE
wxWX2MBbuf buf = value.mbc_str();
gtk_editable_insert_text( GTK_EDITABLE(m_text), buf, strlen(buf), &pos );
wxWX2MBbuf buf = value.mbc_str();
gtk_editable_insert_text( GTK_EDITABLE(m_text), buf, strlen(buf), &pos );
#else
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
#endif
}
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Cut()
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
#if (GTK_MINOR_VERSION > 0)
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text) );
#else
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
#endif
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
void wxTextCtrl::Copy()
@@ -768,11 +809,17 @@ void wxTextCtrl::Paste()
{
wxCHECK_RET( m_text != NULL, _T("invalid text ctrl") );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_text),
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
#if (GTK_MINOR_VERSION > 0)
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text) );
#else
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
#endif
gtk_signal_connect( GTK_OBJECT(m_text), "changed",
GTK_SIGNAL_FUNC(gtk_text_changed_callback), (gpointer)this);
}
bool wxTextCtrl::CanCopy() const