to this class, such as "const" addition, Notify() is = 0 now...)
2. wxGTK::wxTextCtrl::Delete renamed to Clear for consistency
3. wx/wx_prec.h now includes wx/setup.h even if !wxUSE_PRECOMP because
otherwise (recently added) tests "#if wxUSE_IOSTREAMH" donb't work.
4. Other compilation fixes for wxGTK (now it compiles again)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@819
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
23 files changed:
void Cut();
void Copy();
void Paste();
void Cut();
void Copy();
void Paste();
void OnChar( wxKeyEvent &event );
void OnChar( wxKeyEvent &event );
class wxTimer: public wxObject
{
class wxTimer: public wxObject
{
- DECLARE_DYNAMIC_CLASS(wxTimer)
-
- public:
-
- wxTimer(void);
- ~wxTimer(void);
- int Interval(void);
- bool OneShot(void);
- virtual void Notify(void);
- void Start( int millisecs = -1, bool oneShot = FALSE );
- void Stop(void);
-
- private:
-
+public:
+ wxTimer();
+ ~wxTimer();
+
+ int Interval() const { return m_time; }
+
+ bool OneShot() const { return m_oneShot; }
+
+ virtual bool Start( int millisecs = -1, bool oneShot = FALSE );
+ virtual void Stop();
+
+ virtual void Notify() = 0; // override this
+
+protected:
int m_tag;
int m_time;
bool m_oneShot;
int m_tag;
int m_time;
bool m_oneShot;
+
+private:
+ DECLARE_ABSTRACT_CLASS(wxTimer)
};
#endif // __GTKTIMERH__
};
#endif // __GTKTIMERH__
void Cut();
void Copy();
void Paste();
void Cut();
void Copy();
void Paste();
void OnChar( wxKeyEvent &event );
void OnChar( wxKeyEvent &event );
class wxTimer: public wxObject
{
class wxTimer: public wxObject
{
- DECLARE_DYNAMIC_CLASS(wxTimer)
-
- public:
-
- wxTimer(void);
- ~wxTimer(void);
- int Interval(void);
- bool OneShot(void);
- virtual void Notify(void);
- void Start( int millisecs = -1, bool oneShot = FALSE );
- void Stop(void);
-
- private:
-
+public:
+ wxTimer();
+ ~wxTimer();
+
+ int Interval() const { return m_time; }
+
+ bool OneShot() const { return m_oneShot; }
+
+ virtual bool Start( int millisecs = -1, bool oneShot = FALSE );
+ virtual void Stop();
+
+ virtual void Notify() = 0; // override this
+
+protected:
int m_tag;
int m_time;
bool m_oneShot;
int m_tag;
int m_time;
bool m_oneShot;
+
+private:
+ DECLARE_ABSTRACT_CLASS(wxTimer)
};
#endif // __GTKTIMERH__
};
#endif // __GTKTIMERH__
#ifndef _WX_ICON_H_BASE_
#define _WX_ICON_H_BASE_
#ifndef _WX_ICON_H_BASE_
#define _WX_ICON_H_BASE_
+// this is for Unix (i.e. now for anything other than MSW)
+#undef wxICON
+#define wxICON(icon_name) wxIcon(icon_name##_xpm)
+
-#include "wx/msw/icon.h"
+ // under Windows, icon name is the ressource id (string)
+ #undef wxICON
+ #define wxICON(icon_name) wxIcon(#icon_name)
+
+ #include "wx/msw/icon.h"
#elif defined(__WXMOTIF__)
#elif defined(__WXMOTIF__)
-#include "wx/motif/icon.h"
+ #include "wx/motif/icon.h"
-#include "wx/gtk/icon.h"
+ #include "wx/gtk/icon.h"
+ #include "wx/qt/icon.h"
-#include "wx/mac/icon.h"
+ #include "wx/mac/icon.h"
#elif defined(__WXSTUBS__)
#elif defined(__WXSTUBS__)
-#include "wx/stubs/icon.h"
+ #include "wx/stubs/icon.h"
// log everything to a text window (GUI only of course)
class WXDLLEXPORT wxLogTextCtrl : public wxLogStream
{
// log everything to a text window (GUI only of course)
class WXDLLEXPORT wxLogTextCtrl : public wxLogStream
{
wxLogFrame *m_pLogFrame; // the log frame
};
wxLogFrame *m_pLogFrame; // the log frame
};
// ----------------------------------------------------------------------------
// /dev/null log target: suppress logging until this object goes out of scope
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// /dev/null log target: suppress logging until this object goes out of scope
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxTimer: public wxObject
+class WXDLLEXPORT wxTimer : public wxObject
- DECLARE_DYNAMIC_CLASS(wxTimer)
-
- public:
- bool oneShot ;
- int milli ;
- int lastMilli ;
-
- long id;
- public:
- wxTimer(void);
- ~wxTimer(void);
- virtual bool Start(int milliseconds = -1,bool one_shot = FALSE); // Start timer
- virtual void Stop(void); // Stop timer
- virtual void Notify(void) = 0; // Override this member
- inline int Interval(void) { return milli ; }; // Returns the current interval time (0 if stop)
+public:
+ wxTimer();
+ ~wxTimer();
+
+ virtual bool Start(int milliseconds = -1,
+ bool one_shot = FALSE); // Start timer
+ virtual void Stop(); // Stop timer
+
+ virtual void Notify() = 0; // Override this member
+
+ // Returns the current interval time (0 if stop)
+ int Interval() const { return milli; };
+ bool OneShot() const { return oneShot; }
+
+protected:
+ bool oneShot ;
+ int milli ;
+ int lastMilli ;
+
+ long id;
+
+private:
+ DECLARE_ABSTRACT_CLASS(wxTimer)
};
// Timer functions (milliseconds)
};
// Timer functions (milliseconds)
-void WXDLLEXPORT wxStartTimer(void);
+void WXDLLEXPORT wxStartTimer();
// Gets time since last wxStartTimer or wxGetElapsedTime
long WXDLLEXPORT wxGetElapsedTime(bool resetTimer = TRUE);
// Gets time since last wxStartTimer or wxGetElapsedTime
long WXDLLEXPORT wxGetElapsedTime(bool resetTimer = TRUE);
bool WXDLLEXPORT wxGetLocalTime(long *timeZone, int *dstObserved);
// Get number of seconds since 00:00:00 GMT, Jan 1st 1970.
bool WXDLLEXPORT wxGetLocalTime(long *timeZone, int *dstObserved);
// Get number of seconds since 00:00:00 GMT, Jan 1st 1970.
-long WXDLLEXPORT wxGetCurrentTime(void);
+long WXDLLEXPORT wxGetCurrentTime();
// Created: ??/??/98
// RCS-ID: $Id$
// Copyright: (c) AUTHOR
// Created: ??/??/98
// RCS-ID: $Id$
// Copyright: (c) AUTHOR
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_TIMER_H_
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_TIMER_H_
class WXDLLEXPORT wxTimer: public wxObject
{
class WXDLLEXPORT wxTimer: public wxObject
{
- DECLARE_DYNAMIC_CLASS(wxTimer)
+public:
+ wxTimer();
+ ~wxTimer();
- public:
- wxTimer();
- ~wxTimer();
- virtual bool Start(int milliseconds = -1,bool one_shot = FALSE); // Start timer
- virtual void Stop(); // Stop timer
- virtual void Notify() = 0; // Override this member
- inline int Interval() { return m_milli ; }; // Returns the current interval time (0 if stop)
+ virtual bool Start(int milliseconds = -1,
+ bool one_shot = FALSE); // Start timer
+ virtual void Stop(); // Stop timer
+
+ virtual void Notify() = 0; // Override this member
+
+ // Returns the current interval time (0 if stop)
+ int Interval() const { return milli; };
+ bool OneShot() const { return oneShot; }
- bool m_oneShot ;
- int m_milli ;
- int m_lastMilli ;
- long m_id;
+ bool oneShot ;
+ int milli ;
+ int lastMilli ;
+
+ long id;
+private:
+ DECLARE_ABSTRACT_CLASS(wxTimer)
};
/* Note: these are implemented in common/timercmn.cpp, so need to implement them separately.
};
/* Note: these are implemented in common/timercmn.cpp, so need to implement them separately.
class WXDLLEXPORT wxTimer: public wxObject
{
class WXDLLEXPORT wxTimer: public wxObject
{
- DECLARE_DYNAMIC_CLASS(wxTimer)
+public:
+ wxTimer();
+ ~wxTimer();
- public:
- wxTimer();
- ~wxTimer();
- virtual bool Start(int milliseconds = -1,bool one_shot = FALSE); // Start timer
- virtual void Stop(); // Stop timer
- virtual void Notify() = 0; // Override this member
- inline int Interval() { return m_milli ; }; // Returns the current interval time (0 if stop)
+ virtual bool Start(int milliseconds = -1,
+ bool one_shot = FALSE); // Start timer
+ virtual void Stop(); // Stop timer
+
+ virtual void Notify() = 0; // Override this member
+
+ // Returns the current interval time (0 if stop)
+ int Interval() const { return milli; };
+ bool OneShot() const { return oneShot; }
- bool m_oneShot ;
- int m_milli ;
- int m_lastMilli ;
- long m_id;
+ bool oneShot ;
+ int milli ;
+ int lastMilli ;
+
+ long id;
+private:
+ DECLARE_ABSTRACT_CLASS(wxTimer)
};
/* Note: these are implemented in common/timercmn.cpp, so need to implement them separately.
};
/* Note: these are implemented in common/timercmn.cpp, so need to implement them separately.
#elif defined(__WXMOTIF__)
#include "wx/generic/treectrl.h"
#elif defined(__WXGTK__)
#elif defined(__WXMOTIF__)
#include "wx/generic/treectrl.h"
#elif defined(__WXGTK__)
-#include "wx/gtk/treectrl.h"
+#include "wx/generic/treectrl.h"
#elif defined(__WXQT__)
#include "wx/qt/treectrl.h"
#elif defined(__WXMAC__)
#elif defined(__WXQT__)
#include "wx/qt/treectrl.h"
#elif defined(__WXMAC__)
#undef FindResource
#endif
#undef FindResource
#endif
+#else
+ // always include this file (under Unix it's generated by configure)
+ #include "wx/setup.h"
(*m_ostr) << szString << endl << flush;
}
(*m_ostr) << szString << endl << flush;
}
// ----------------------------------------------------------------------------
// wxLogTextCtrl implementation
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// wxLogTextCtrl implementation
// ----------------------------------------------------------------------------
// wxLogGui implementation
// ----------------------------------------------------------------------------
// wxLogGui implementation
// ----------------------------------------------------------------------------
wxLogGui::wxLogGui()
{
m_bErrors = FALSE;
wxLogGui::wxLogGui()
{
m_bErrors = FALSE;
// send it to the normal log destination
wxLogDebug(szBuf);
// send it to the normal log destination
wxLogDebug(szBuf);
- strcat(szBuf, _("\nDo you want to stop the program?"
- "\nYou can also choose [Cancel] to suppress "
- "further warnings."));
+ #ifdef wxUSE_NOGUI
+ Trap();
+ #else
+ strcat(szBuf, _("\nDo you want to stop the program?"
+ "\nYou can also choose [Cancel] to suppress "
+ "further warnings."));
- switch ( wxMessageBox(szBuf, _("Debug"),
- wxYES_NO | wxCANCEL | wxICON_STOP ) ) {
- case wxYES:
- Trap();
- break;
+ switch ( wxMessageBox(szBuf, _("Debug"),
+ wxYES_NO | wxCANCEL | wxICON_STOP ) ) {
+ case wxYES:
+ Trap();
+ break;
- case wxCANCEL:
- s_bNoAsserts = TRUE;
- break;
+ case wxCANCEL:
+ s_bNoAsserts = TRUE;
+ break;
- //case wxNO: nothing to do
- }
+ //case wxNO: nothing to do
+ }
+ #endif // USE_NOGUI
#include "wx/string.h"
#include "wx/wxexpr.h"
#include "wx/string.h"
#include "wx/wxexpr.h"
+#include "wx/settings.h"
+
// Forward (private) declarations
bool wxResourceInterpretResources(wxResourceTable& table, wxExprDatabase& db);
wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, bool isPanel = FALSE);
// Forward (private) declarations
bool wxResourceInterpretResources(wxResourceTable& table, wxExprDatabase& db);
wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr, bool isPanel = FALSE);
#endif
#if wxUSE_IOSTREAMH
#endif
#if wxUSE_IOSTREAMH
-#include <fstream>
-# ifdef _MSC_VER
- using namespace std;
-# endif
+# include <fstream>
+# ifdef _MSC_VER
+ using namespace std;
+# endif
#endif
#include "wx/string.h"
#endif
#include "wx/string.h"
gtk/tbargtk.cpp \
gtk/textctrl.cpp \
gtk/timer.cpp \
gtk/tbargtk.cpp \
gtk/textctrl.cpp \
gtk/timer.cpp \
gtk/utilsgtk.cpp \
gtk/utilsres.cpp \
gtk/window.cpp \
gtk/utilsgtk.cpp \
gtk/utilsres.cpp \
gtk/window.cpp \
#endif
#include "wx/toolbar.h"
#endif
#include "wx/toolbar.h"
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
// data
IMPLEMENT_DYNAMIC_CLASS(wxToolBarTool,wxObject)
wxToolBarTool::wxToolBarTool( wxToolBar *owner, int theIndex,
IMPLEMENT_DYNAMIC_CLASS(wxToolBarTool,wxObject)
wxToolBarTool::wxToolBarTool( wxToolBar *owner, int theIndex,
- const wxBitmap& bitmap1, const wxBitmap& bitmap2,
- bool toggle, wxObject *clientData,
- const wxString& shortHelpString, const wxString& longHelpString,
- GtkWidget *item )
+ const wxBitmap& bitmap1, const wxBitmap& bitmap2,
+ bool toggle,
+ wxObject *clientData,
+ const wxString& shortHelpString,
+ const wxString& longHelpString,
+ GtkWidget *item )
{
m_owner = owner;
m_index = theIndex;
{
m_owner = owner;
m_index = theIndex;
m_widget = gtk_handle_box_new();
m_toolbar = GTK_TOOLBAR( gtk_toolbar_new( GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS ) );
m_widget = gtk_handle_box_new();
m_toolbar = GTK_TOOLBAR( gtk_toolbar_new( GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS ) );
+ gtk_toolbar_set_tooltips( GTK_TOOLBAR(m_toolbar), TRUE );
gtk_container_add( GTK_CONTAINER(m_widget), GTK_WIDGET(m_toolbar) );
gtk_container_add( GTK_CONTAINER(m_widget), GTK_WIDGET(m_toolbar) );
float WXUNUSED(xPos), float WXUNUSED(yPos), wxObject *clientData,
const wxString& helpString1, const wxString& helpString2 )
{
float WXUNUSED(xPos), float WXUNUSED(yPos), wxObject *clientData,
const wxString& helpString1, const wxString& helpString2 )
{
- if (!bitmap.Ok()) return (wxToolBarTool *) NULL;
+ wxCHECK_MSG( bitmap.Ok(), (wxToolBarTool *)NULL,
+ "invalid bitmap for wxToolBar icon" );
- wxToolBarTool *tool = new wxToolBarTool( this, toolIndex, bitmap, pushedBitmap, toggle,
- clientData, helpString1, helpString2 );
+ wxToolBarTool *tool = new wxToolBarTool( this, toolIndex, bitmap, pushedBitmap,
+ toggle, clientData,
+ helpString1, helpString2 );
- GtkWidget *tool_pixmap = (GtkWidget *) NULL;
-
- wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL, "wxToolBar doesn't support GdkBitmap" )
+ wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL,
+ "wxToolBar doesn't support GdkBitmap" );
+
+ wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL,
+ "wxToolBar::Add needs a wxBitmap" );
- wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL, "wxToolBar::Add needs a wxBitmap" )
+ GtkWidget *tool_pixmap = (GtkWidget *) NULL;
+ if (TRUE) // FIXME huh?
{
GdkPixmap *pixmap = bitmap.GetPixmap();
{
GdkPixmap *pixmap = bitmap.GetPixmap();
gtk_misc_set_alignment( GTK_MISC(tool_pixmap), 0.5, 0.5 );
gtk_misc_set_alignment( GTK_MISC(tool_pixmap), 0.5, 0.5 );
- GtkToolbarChildType ctype = GTK_TOOLBAR_CHILD_BUTTON;
- if (toggle) ctype = GTK_TOOLBAR_CHILD_TOGGLEBUTTON;
-
- tool->m_item = gtk_toolbar_append_element(
- m_toolbar, ctype, (GtkWidget *) NULL, (const char *) NULL, helpString1, "",
- tool_pixmap, (GtkSignalFunc)gtk_toolbar_callback, (gpointer)tool );
-
- gtk_signal_connect( GTK_OBJECT(tool->m_item), "enter_notify_event",
- GTK_SIGNAL_FUNC(gtk_toolbar_enter_callback), (gpointer)tool );
+#if 0
+ GtkToolbarChildType ctype = toggle ? GTK_TOOLBAR_CHILD_TOGGLEBUTTON
+ : GTK_TOOLBAR_CHILD_BUTTON;
+
+ tool->m_item = gtk_toolbar_append_element
+ (
+ GTK_TOOLBAR(m_toolbar),
+ ctype,
+ (GtkWidget *)NULL,
+ (const char *)NULL,
+ helpString1,
+ "",
+ tool_pixmap,
+ (GtkSignalFunc)gtk_toolbar_callback,
+ (gpointer)tool
+ );
+
+ gtk_signal_connect( GTK_OBJECT(tool->m_item),
+ "enter_notify_event",
+ GTK_SIGNAL_FUNC(gtk_toolbar_enter_callback),
+ (gpointer)tool );
+#else
+ tool->m_item = gtk_toolbar_append_item
+ (
+ GTK_TOOLBAR(m_toolbar),
+ (const char *)NULL,
+ helpString1,
+ "",
+ tool_pixmap,
+ (GtkSignalFunc)gtk_toolbar_callback,
+ (gpointer)tool
+ );
+#endif
m_tools.Append( tool );
return tool;
}
m_tools.Append( tool );
return tool;
}
-void wxToolBar::AddSeparator(void)
+void wxToolBar::AddSeparator()
{
gtk_toolbar_append_space( m_toolbar );
}
{
gtk_toolbar_append_space( m_toolbar );
}
-void wxToolBar::ClearTools(void)
+void wxToolBar::ClearTools()
{
wxFAIL_MSG( "wxToolBar::ClearTools not implemented" );
}
{
wxFAIL_MSG( "wxToolBar::ClearTools not implemented" );
}
-void wxToolBar::Realize(void)
+void wxToolBar::Realize()
void wxToolBar::SetMargins( int WXUNUSED(x), int WXUNUSED(y) )
{
void wxToolBar::SetMargins( int WXUNUSED(x), int WXUNUSED(y) )
{
+ wxFAIL_MSG( "wxToolBar::SetMargins not implemented" );
}
void wxToolBar::SetToolPacking( int WXUNUSED(packing) )
{
}
void wxToolBar::SetToolPacking( int WXUNUSED(packing) )
{
+ wxFAIL_MSG( "wxToolBar::SetToolPacking not implemented" );
}
void wxToolBar::SetToolSeparation( int separation )
}
void wxToolBar::SetToolSeparation( int separation )
EVT_CHAR(wxTextCtrl::OnChar)
END_EVENT_TABLE()
EVT_CHAR(wxTextCtrl::OnChar)
END_EVENT_TABLE()
-wxTextCtrl::wxTextCtrl(void) : streambuf()
+wxTextCtrl::wxTextCtrl() : streambuf()
{
if (allocate()) setp(base(),ebuf());
{
if (allocate()) setp(base(),ebuf());
-wxString wxTextCtrl::GetValue(void) const
+wxString wxTextCtrl::GetValue() const
{
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
{
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
-int wxTextCtrl::GetNumberOfLines(void)
+int wxTextCtrl::GetNumberOfLines()
gtk_entry_set_position( GTK_ENTRY(m_text), tmp );
}
gtk_entry_set_position( GTK_ENTRY(m_text), tmp );
}
-void wxTextCtrl::SetInsertionPointEnd(void)
+void wxTextCtrl::SetInsertionPointEnd()
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
wxFAIL_MSG(_("wxTextCtrl::ShowPosition not implemented"));
}
wxFAIL_MSG(_("wxTextCtrl::ShowPosition not implemented"));
}
-long wxTextCtrl::GetInsertionPoint(void) const
+long wxTextCtrl::GetInsertionPoint() const
{
return (long) GTK_EDITABLE(m_text)->current_pos;
}
{
return (long) GTK_EDITABLE(m_text)->current_pos;
}
-long wxTextCtrl::GetLastPosition(void) const
+long wxTextCtrl::GetLastPosition() const
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
}
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
}
-void wxTextCtrl::Cut(void)
{
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Copy(void)
{
gtk_editable_copy_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_copy_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Paste(void)
+void wxTextCtrl::Paste()
{
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Delete(void)
+void wxTextCtrl::Clear()
-int wxTextCtrl::sync(void)
{
int len = pptr() - pbase();
char *txt = new char[len+1];
{
int len = pptr() - pbase();
char *txt = new char[len+1];
-int wxTextCtrl::underflow(void)
+int wxTextCtrl::underflow()
-GtkWidget* wxTextCtrl::GetConnectWidget(void)
+GtkWidget* wxTextCtrl::GetConnectWidget()
{
return GTK_WIDGET(m_text);
}
{
return GTK_WIDGET(m_text);
}
// wxTimer
//-----------------------------------------------------------------------------
// wxTimer
//-----------------------------------------------------------------------------
-IMPLEMENT_DYNAMIC_CLASS(wxTimer,wxObject)
+IMPLEMENT_ABSTRACT_CLASS(wxTimer,wxObject)
gint timeout_callback( gpointer data )
{
wxTimer *timer = (wxTimer*)data;
timer->Notify();
gint timeout_callback( gpointer data )
{
wxTimer *timer = (wxTimer*)data;
timer->Notify();
- if (timer->OneShot()) timer->Stop();
+
+ if ( timer->OneShot() )
+ timer->Stop();
+
{
m_tag = -1;
m_time = 1000;
m_oneShot = FALSE;
}
{
m_tag = -1;
m_time = 1000;
m_oneShot = FALSE;
}
-int wxTimer::Interval(void)
-{
- return m_time;
-}
-
-bool wxTimer::OneShot(void)
+bool wxTimer::Start( int millisecs, bool oneShot )
+ if ( millisecs != -1 )
+ m_time = millisecs;
-void wxTimer::Notify(void)
-{
-}
-
-void wxTimer::Start( int millisecs, bool oneShot )
-{
- if (millisecs != -1) m_time = millisecs;
m_tag = gtk_timeout_add( millisecs, timeout_callback, this );
m_tag = gtk_timeout_add( millisecs, timeout_callback, this );
-void wxTimer::Stop(void)
gtk_timeout_remove( m_tag );
gtk_timeout_remove( m_tag );
// Created: 01/02/97
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
// Created: 01/02/97
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
{
struct passwd *who = (struct passwd *) NULL;
{
struct passwd *who = (struct passwd *) NULL;
- if (user.IsNull() || (user== ""))
+ if (user.IsNull() || (user== ""))
- register char *ptr;
-
- if ((ptr = getenv("HOME")) != NULL)
- return ptr;
- if ((ptr = getenv("USER")) != NULL
- || (ptr = getenv("LOGNAME")) != NULL) {
- who = getpwnam(ptr);
- }
- // We now make sure the the user exists!
- if (who == NULL)
- who = getpwuid(getuid());
- }
+ register char *ptr;
+
+ if ((ptr = getenv("HOME")) != NULL)
+ return ptr;
+ if ((ptr = getenv("USER")) != NULL
+ || (ptr = getenv("LOGNAME")) != NULL) {
+ who = getpwnam(ptr);
+ }
+ // We now make sure the the user exists!
+ if (who == NULL)
+ who = getpwuid(getuid());
+ }
else
who = getpwnam (user);
else
who = getpwnam (user);
return who ? who->pw_dir : (char*)NULL;
};
return who ? who->pw_dir : (char*)NULL;
};
//struct hostent *h;
// Get hostname
if (gethostname(name, sizeof(name)/sizeof(char)-1) == -1)
//struct hostent *h;
// Get hostname
if (gethostname(name, sizeof(name)/sizeof(char)-1) == -1)
if (getdomainname(domain, sizeof(domain)/sizeof(char)-1) == -1)
if (getdomainname(domain, sizeof(domain)/sizeof(char)-1) == -1)
// Get official full name of host
// doesn't return the full qualified name, replaced by following
// code (KB)
// Get official full name of host
// doesn't return the full qualified name, replaced by following
// code (KB)
*buf = '\0';
if ((who = getpwuid(getuid ())) != NULL) {
*buf = '\0';
if ((who = getpwuid(getuid ())) != NULL) {
- strncpy (buf, who->pw_name, sz-1);
- return TRUE;
+ strncpy (buf, who->pw_name, sz-1);
+ return TRUE;
{
struct passwd *who;
char *comma;
{
struct passwd *who;
char *comma;
*buf = '\0';
if ((who = getpwuid (getuid ())) != NULL) {
comma = strchr(who->pw_gecos,'c');
if(comma) *comma = '\0'; // cut off non-name comment fields
strncpy (buf, who->pw_gecos, sz - 1);
*buf = '\0';
if ((who = getpwuid (getuid ())) != NULL) {
comma = strchr(who->pw_gecos,'c');
if(comma) *comma = '\0'; // cut off non-name comment fields
strncpy (buf, who->pw_gecos, sz - 1);
{
va_list ap;
va_start( ap, format );
{
va_list ap;
va_start( ap, format );
- vfprintf( stderr, format, ap );
+ vfprintf( stderr, format, ap );
fflush( stderr );
va_end(ap);
};
fflush( stderr );
va_end(ap);
};
pid = (proc_data->pid > 0) ? proc_data->pid : -(proc_data->pid);
pid = (proc_data->pid > 0) ? proc_data->pid : -(proc_data->pid);
- /* wait4 is not part of any standard, use at own risk
+ /* wait4 is not part of any standard, use at own risk
* not sure what wait4 does, but wait3 seems to be closest, whats a digit ;-)
* --- offer@sgi.com */
#if !defined(__sgi)
* not sure what wait4 does, but wait3 seems to be closest, whats a digit ;-)
* --- offer@sgi.com */
#if !defined(__sgi)
int end_proc_detect[2];
if (*argv == NULL)
int end_proc_detect[2];
if (*argv == NULL)
/* Create pipes */
if (pipe(end_proc_detect) == -1) {
/* Create pipes */
if (pipe(end_proc_detect) == -1) {
pid_t pid = fork();
#endif
if (pid == -1) {
pid_t pid = fork();
#endif
if (pid == -1) {
- perror ("fork failed");
- return 0;
+ perror ("fork failed");
+ return 0;
} else if (pid == 0) {
/* Close fd not useful */
close(end_proc_detect[0]); // close reading side
} else if (pid == 0) {
/* Close fd not useful */
close(end_proc_detect[0]); // close reading side
- execvp ((const char *)*argv, (const char **)argv);
+ execvp ((const char *)*argv, (const char **)argv);
- if (errno == ENOENT)
- wxError("command not found", *argv);
- else
- perror (*argv);
- wxError("could not execute", *argv);
- _exit (-1);
+ if (errno == ENOENT)
+ wxError("command not found", *argv);
+ else
+ perror (*argv);
+ wxError("could not execute", *argv);
+ _exit (-1);
}
close(end_proc_detect[1]); // close writing side
}
close(end_proc_detect[1]); // close writing side
tmp[sizeof (tmp) / sizeof (char) - 1] = '\0';
argv[argc++] = strtok (tmp, IFS);
while ((argv[argc++] = strtok((char *) NULL, IFS)) != NULL)
tmp[sizeof (tmp) / sizeof (char) - 1] = '\0';
argv[argc++] = strtok (tmp, IFS);
while ((argv[argc++] = strtok((char *) NULL, IFS)) != NULL)
return wxExecute(argv, sync, process);
};
return wxExecute(argv, sync, process);
};
#endif
#include "wx/toolbar.h"
#endif
#include "wx/toolbar.h"
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
// data
IMPLEMENT_DYNAMIC_CLASS(wxToolBarTool,wxObject)
wxToolBarTool::wxToolBarTool( wxToolBar *owner, int theIndex,
IMPLEMENT_DYNAMIC_CLASS(wxToolBarTool,wxObject)
wxToolBarTool::wxToolBarTool( wxToolBar *owner, int theIndex,
- const wxBitmap& bitmap1, const wxBitmap& bitmap2,
- bool toggle, wxObject *clientData,
- const wxString& shortHelpString, const wxString& longHelpString,
- GtkWidget *item )
+ const wxBitmap& bitmap1, const wxBitmap& bitmap2,
+ bool toggle,
+ wxObject *clientData,
+ const wxString& shortHelpString,
+ const wxString& longHelpString,
+ GtkWidget *item )
{
m_owner = owner;
m_index = theIndex;
{
m_owner = owner;
m_index = theIndex;
m_widget = gtk_handle_box_new();
m_toolbar = GTK_TOOLBAR( gtk_toolbar_new( GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS ) );
m_widget = gtk_handle_box_new();
m_toolbar = GTK_TOOLBAR( gtk_toolbar_new( GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS ) );
+ gtk_toolbar_set_tooltips( GTK_TOOLBAR(m_toolbar), TRUE );
gtk_container_add( GTK_CONTAINER(m_widget), GTK_WIDGET(m_toolbar) );
gtk_container_add( GTK_CONTAINER(m_widget), GTK_WIDGET(m_toolbar) );
float WXUNUSED(xPos), float WXUNUSED(yPos), wxObject *clientData,
const wxString& helpString1, const wxString& helpString2 )
{
float WXUNUSED(xPos), float WXUNUSED(yPos), wxObject *clientData,
const wxString& helpString1, const wxString& helpString2 )
{
- if (!bitmap.Ok()) return (wxToolBarTool *) NULL;
+ wxCHECK_MSG( bitmap.Ok(), (wxToolBarTool *)NULL,
+ "invalid bitmap for wxToolBar icon" );
- wxToolBarTool *tool = new wxToolBarTool( this, toolIndex, bitmap, pushedBitmap, toggle,
- clientData, helpString1, helpString2 );
+ wxToolBarTool *tool = new wxToolBarTool( this, toolIndex, bitmap, pushedBitmap,
+ toggle, clientData,
+ helpString1, helpString2 );
- GtkWidget *tool_pixmap = (GtkWidget *) NULL;
-
- wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL, "wxToolBar doesn't support GdkBitmap" )
+ wxCHECK_MSG( bitmap.GetBitmap() == NULL, (wxToolBarTool *)NULL,
+ "wxToolBar doesn't support GdkBitmap" );
+
+ wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL,
+ "wxToolBar::Add needs a wxBitmap" );
- wxCHECK_MSG( bitmap.GetPixmap() != NULL, (wxToolBarTool *)NULL, "wxToolBar::Add needs a wxBitmap" )
+ GtkWidget *tool_pixmap = (GtkWidget *) NULL;
+ if (TRUE) // FIXME huh?
{
GdkPixmap *pixmap = bitmap.GetPixmap();
{
GdkPixmap *pixmap = bitmap.GetPixmap();
gtk_misc_set_alignment( GTK_MISC(tool_pixmap), 0.5, 0.5 );
gtk_misc_set_alignment( GTK_MISC(tool_pixmap), 0.5, 0.5 );
- GtkToolbarChildType ctype = GTK_TOOLBAR_CHILD_BUTTON;
- if (toggle) ctype = GTK_TOOLBAR_CHILD_TOGGLEBUTTON;
-
- tool->m_item = gtk_toolbar_append_element(
- m_toolbar, ctype, (GtkWidget *) NULL, (const char *) NULL, helpString1, "",
- tool_pixmap, (GtkSignalFunc)gtk_toolbar_callback, (gpointer)tool );
-
- gtk_signal_connect( GTK_OBJECT(tool->m_item), "enter_notify_event",
- GTK_SIGNAL_FUNC(gtk_toolbar_enter_callback), (gpointer)tool );
+#if 0
+ GtkToolbarChildType ctype = toggle ? GTK_TOOLBAR_CHILD_TOGGLEBUTTON
+ : GTK_TOOLBAR_CHILD_BUTTON;
+
+ tool->m_item = gtk_toolbar_append_element
+ (
+ GTK_TOOLBAR(m_toolbar),
+ ctype,
+ (GtkWidget *)NULL,
+ (const char *)NULL,
+ helpString1,
+ "",
+ tool_pixmap,
+ (GtkSignalFunc)gtk_toolbar_callback,
+ (gpointer)tool
+ );
+
+ gtk_signal_connect( GTK_OBJECT(tool->m_item),
+ "enter_notify_event",
+ GTK_SIGNAL_FUNC(gtk_toolbar_enter_callback),
+ (gpointer)tool );
+#else
+ tool->m_item = gtk_toolbar_append_item
+ (
+ GTK_TOOLBAR(m_toolbar),
+ (const char *)NULL,
+ helpString1,
+ "",
+ tool_pixmap,
+ (GtkSignalFunc)gtk_toolbar_callback,
+ (gpointer)tool
+ );
+#endif
m_tools.Append( tool );
return tool;
}
m_tools.Append( tool );
return tool;
}
-void wxToolBar::AddSeparator(void)
+void wxToolBar::AddSeparator()
{
gtk_toolbar_append_space( m_toolbar );
}
{
gtk_toolbar_append_space( m_toolbar );
}
-void wxToolBar::ClearTools(void)
+void wxToolBar::ClearTools()
{
wxFAIL_MSG( "wxToolBar::ClearTools not implemented" );
}
{
wxFAIL_MSG( "wxToolBar::ClearTools not implemented" );
}
-void wxToolBar::Realize(void)
+void wxToolBar::Realize()
void wxToolBar::SetMargins( int WXUNUSED(x), int WXUNUSED(y) )
{
void wxToolBar::SetMargins( int WXUNUSED(x), int WXUNUSED(y) )
{
+ wxFAIL_MSG( "wxToolBar::SetMargins not implemented" );
}
void wxToolBar::SetToolPacking( int WXUNUSED(packing) )
{
}
void wxToolBar::SetToolPacking( int WXUNUSED(packing) )
{
+ wxFAIL_MSG( "wxToolBar::SetToolPacking not implemented" );
}
void wxToolBar::SetToolSeparation( int separation )
}
void wxToolBar::SetToolSeparation( int separation )
EVT_CHAR(wxTextCtrl::OnChar)
END_EVENT_TABLE()
EVT_CHAR(wxTextCtrl::OnChar)
END_EVENT_TABLE()
-wxTextCtrl::wxTextCtrl(void) : streambuf()
+wxTextCtrl::wxTextCtrl() : streambuf()
{
if (allocate()) setp(base(),ebuf());
{
if (allocate()) setp(base(),ebuf());
-wxString wxTextCtrl::GetValue(void) const
+wxString wxTextCtrl::GetValue() const
{
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
{
wxString tmp;
if (m_windowStyle & wxTE_MULTILINE)
-int wxTextCtrl::GetNumberOfLines(void)
+int wxTextCtrl::GetNumberOfLines()
gtk_entry_set_position( GTK_ENTRY(m_text), tmp );
}
gtk_entry_set_position( GTK_ENTRY(m_text), tmp );
}
-void wxTextCtrl::SetInsertionPointEnd(void)
+void wxTextCtrl::SetInsertionPointEnd()
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
wxFAIL_MSG(_("wxTextCtrl::ShowPosition not implemented"));
}
wxFAIL_MSG(_("wxTextCtrl::ShowPosition not implemented"));
}
-long wxTextCtrl::GetInsertionPoint(void) const
+long wxTextCtrl::GetInsertionPoint() const
{
return (long) GTK_EDITABLE(m_text)->current_pos;
}
{
return (long) GTK_EDITABLE(m_text)->current_pos;
}
-long wxTextCtrl::GetLastPosition(void) const
+long wxTextCtrl::GetLastPosition() const
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
{
int pos = 0;
if (m_windowStyle & wxTE_MULTILINE)
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
}
gtk_editable_insert_text( GTK_EDITABLE(m_text), value, value.Length(), &pos );
}
-void wxTextCtrl::Cut(void)
{
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_cut_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Copy(void)
{
gtk_editable_copy_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_copy_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Paste(void)
+void wxTextCtrl::Paste()
{
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
}
{
gtk_editable_paste_clipboard( GTK_EDITABLE(m_text), 0 );
}
-void wxTextCtrl::Delete(void)
+void wxTextCtrl::Clear()
-int wxTextCtrl::sync(void)
{
int len = pptr() - pbase();
char *txt = new char[len+1];
{
int len = pptr() - pbase();
char *txt = new char[len+1];
-int wxTextCtrl::underflow(void)
+int wxTextCtrl::underflow()
-GtkWidget* wxTextCtrl::GetConnectWidget(void)
+GtkWidget* wxTextCtrl::GetConnectWidget()
{
return GTK_WIDGET(m_text);
}
{
return GTK_WIDGET(m_text);
}
// wxTimer
//-----------------------------------------------------------------------------
// wxTimer
//-----------------------------------------------------------------------------
-IMPLEMENT_DYNAMIC_CLASS(wxTimer,wxObject)
+IMPLEMENT_ABSTRACT_CLASS(wxTimer,wxObject)
gint timeout_callback( gpointer data )
{
wxTimer *timer = (wxTimer*)data;
timer->Notify();
gint timeout_callback( gpointer data )
{
wxTimer *timer = (wxTimer*)data;
timer->Notify();
- if (timer->OneShot()) timer->Stop();
+
+ if ( timer->OneShot() )
+ timer->Stop();
+
{
m_tag = -1;
m_time = 1000;
m_oneShot = FALSE;
}
{
m_tag = -1;
m_time = 1000;
m_oneShot = FALSE;
}
-int wxTimer::Interval(void)
-{
- return m_time;
-}
-
-bool wxTimer::OneShot(void)
+bool wxTimer::Start( int millisecs, bool oneShot )
+ if ( millisecs != -1 )
+ m_time = millisecs;
-void wxTimer::Notify(void)
-{
-}
-
-void wxTimer::Start( int millisecs, bool oneShot )
-{
- if (millisecs != -1) m_time = millisecs;
m_tag = gtk_timeout_add( millisecs, timeout_callback, this );
m_tag = gtk_timeout_add( millisecs, timeout_callback, this );
-void wxTimer::Stop(void)
gtk_timeout_remove( m_tag );
gtk_timeout_remove( m_tag );
// Created: 01/02/97
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
// Created: 01/02/97
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
{
struct passwd *who = (struct passwd *) NULL;
{
struct passwd *who = (struct passwd *) NULL;
- if (user.IsNull() || (user== ""))
+ if (user.IsNull() || (user== ""))
- register char *ptr;
-
- if ((ptr = getenv("HOME")) != NULL)
- return ptr;
- if ((ptr = getenv("USER")) != NULL
- || (ptr = getenv("LOGNAME")) != NULL) {
- who = getpwnam(ptr);
- }
- // We now make sure the the user exists!
- if (who == NULL)
- who = getpwuid(getuid());
- }
+ register char *ptr;
+
+ if ((ptr = getenv("HOME")) != NULL)
+ return ptr;
+ if ((ptr = getenv("USER")) != NULL
+ || (ptr = getenv("LOGNAME")) != NULL) {
+ who = getpwnam(ptr);
+ }
+ // We now make sure the the user exists!
+ if (who == NULL)
+ who = getpwuid(getuid());
+ }
else
who = getpwnam (user);
else
who = getpwnam (user);
return who ? who->pw_dir : (char*)NULL;
};
return who ? who->pw_dir : (char*)NULL;
};
//struct hostent *h;
// Get hostname
if (gethostname(name, sizeof(name)/sizeof(char)-1) == -1)
//struct hostent *h;
// Get hostname
if (gethostname(name, sizeof(name)/sizeof(char)-1) == -1)
if (getdomainname(domain, sizeof(domain)/sizeof(char)-1) == -1)
if (getdomainname(domain, sizeof(domain)/sizeof(char)-1) == -1)
// Get official full name of host
// doesn't return the full qualified name, replaced by following
// code (KB)
// Get official full name of host
// doesn't return the full qualified name, replaced by following
// code (KB)
*buf = '\0';
if ((who = getpwuid(getuid ())) != NULL) {
*buf = '\0';
if ((who = getpwuid(getuid ())) != NULL) {
- strncpy (buf, who->pw_name, sz-1);
- return TRUE;
+ strncpy (buf, who->pw_name, sz-1);
+ return TRUE;
{
struct passwd *who;
char *comma;
{
struct passwd *who;
char *comma;
*buf = '\0';
if ((who = getpwuid (getuid ())) != NULL) {
comma = strchr(who->pw_gecos,'c');
if(comma) *comma = '\0'; // cut off non-name comment fields
strncpy (buf, who->pw_gecos, sz - 1);
*buf = '\0';
if ((who = getpwuid (getuid ())) != NULL) {
comma = strchr(who->pw_gecos,'c');
if(comma) *comma = '\0'; // cut off non-name comment fields
strncpy (buf, who->pw_gecos, sz - 1);
{
va_list ap;
va_start( ap, format );
{
va_list ap;
va_start( ap, format );
- vfprintf( stderr, format, ap );
+ vfprintf( stderr, format, ap );
fflush( stderr );
va_end(ap);
};
fflush( stderr );
va_end(ap);
};
pid = (proc_data->pid > 0) ? proc_data->pid : -(proc_data->pid);
pid = (proc_data->pid > 0) ? proc_data->pid : -(proc_data->pid);
- /* wait4 is not part of any standard, use at own risk
+ /* wait4 is not part of any standard, use at own risk
* not sure what wait4 does, but wait3 seems to be closest, whats a digit ;-)
* --- offer@sgi.com */
#if !defined(__sgi)
* not sure what wait4 does, but wait3 seems to be closest, whats a digit ;-)
* --- offer@sgi.com */
#if !defined(__sgi)
int end_proc_detect[2];
if (*argv == NULL)
int end_proc_detect[2];
if (*argv == NULL)
/* Create pipes */
if (pipe(end_proc_detect) == -1) {
/* Create pipes */
if (pipe(end_proc_detect) == -1) {
pid_t pid = fork();
#endif
if (pid == -1) {
pid_t pid = fork();
#endif
if (pid == -1) {
- perror ("fork failed");
- return 0;
+ perror ("fork failed");
+ return 0;
} else if (pid == 0) {
/* Close fd not useful */
close(end_proc_detect[0]); // close reading side
} else if (pid == 0) {
/* Close fd not useful */
close(end_proc_detect[0]); // close reading side
- execvp ((const char *)*argv, (const char **)argv);
+ execvp ((const char *)*argv, (const char **)argv);
- if (errno == ENOENT)
- wxError("command not found", *argv);
- else
- perror (*argv);
- wxError("could not execute", *argv);
- _exit (-1);
+ if (errno == ENOENT)
+ wxError("command not found", *argv);
+ else
+ perror (*argv);
+ wxError("could not execute", *argv);
+ _exit (-1);
}
close(end_proc_detect[1]); // close writing side
}
close(end_proc_detect[1]); // close writing side
tmp[sizeof (tmp) / sizeof (char) - 1] = '\0';
argv[argc++] = strtok (tmp, IFS);
while ((argv[argc++] = strtok((char *) NULL, IFS)) != NULL)
tmp[sizeof (tmp) / sizeof (char) - 1] = '\0';
argv[argc++] = strtok (tmp, IFS);
while ((argv[argc++] = strtok((char *) NULL, IFS)) != NULL)
return wxExecute(argv, sync, process);
};
return wxExecute(argv, sync, process);
};