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:
@@ -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_
|
||||
|
@@ -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;
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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"
|
||||
|
@@ -26,10 +26,6 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/defs.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_TIMEDATE
|
||||
|
||||
#include "wx/date.h"
|
||||
|
@@ -20,10 +20,6 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/defs.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_STREAMS
|
||||
|
||||
#include "wx/datstrm.h"
|
||||
|
@@ -17,7 +17,7 @@
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
|
@@ -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"
|
||||
|
||||
/*
|
||||
|
@@ -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
|
||||
|
@@ -23,9 +23,9 @@
|
||||
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
# pragma hdrstop
|
||||
#endif //__BORLANDC__
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#if wxUSE_DYNLIB_CLASS
|
||||
|
||||
|
@@ -25,10 +25,6 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/defs.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_FILE
|
||||
|
||||
// standard
|
||||
|
@@ -14,10 +14,6 @@
|
||||
#pragma implementation "fileconf.h"
|
||||
#endif
|
||||
|
||||
// ============================================================================
|
||||
// declarations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@@ -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
|
||||
|
@@ -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>
|
||||
|
@@ -20,10 +20,6 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/defs.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_STREAMS
|
||||
|
||||
#include <stdlib.h>
|
||||
|
@@ -19,10 +19,6 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/defs.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_SERIAL && wxUSE_STREAMS
|
||||
|
||||
#include "wx/object.h"
|
||||
|
@@ -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"
|
||||
|
@@ -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
|
||||
|
@@ -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>
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user