Renamed GtkMyFixed to GtkPizza,
Made default button work more often than before. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -53,6 +53,8 @@ public:
|
|||||||
virtual int GetMax() const;
|
virtual int GetMax() const;
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
void OnChar( wxKeyEvent &event );
|
||||||
|
|
||||||
bool IsOwnGtkWindow( GdkWindow *window );
|
bool IsOwnGtkWindow( GdkWindow *window );
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
|
|
||||||
@@ -61,6 +63,7 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
|
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
|
||||||
|
DECLARE_EVENT_TABLE()
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/* ///////////////////////////////////////////////////////////////////////////
|
/* ///////////////////////////////////////////////////////////////////////////
|
||||||
// Name: win_gtk.h
|
// Name: win_gtk.h
|
||||||
// Purpose: wxWindows's GTK base widget
|
// Purpose: wxWindows's GTK base widget = GtkPizza
|
||||||
// Author: Robert Roebling
|
// Author: Robert Roebling
|
||||||
// Id: $Id$
|
// Id: $Id$
|
||||||
// Copyright: (c) 1998 Robert Roebling
|
// Copyright: (c) 1998 Robert Roebling
|
||||||
@@ -8,8 +8,8 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////// */
|
/////////////////////////////////////////////////////////////////////////// */
|
||||||
|
|
||||||
|
|
||||||
#ifndef __GTK_MYFIXED_H__
|
#ifndef __GTK_PIZZA_H__
|
||||||
#define __GTK_MYFIXED_H__
|
#define __GTK_PIZZA_H__
|
||||||
|
|
||||||
#include <gdk/gdk.h>
|
#include <gdk/gdk.h>
|
||||||
#include <gtk/gtkcontainer.h>
|
#include <gtk/gtkcontainer.h>
|
||||||
@@ -21,9 +21,9 @@ extern "C" {
|
|||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
#define GTK_MYFIXED(obj) GTK_CHECK_CAST (obj, gtk_myfixed_get_type (), GtkMyFixed)
|
#define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
|
||||||
#define GTK_MYFIXED_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_myfixed_get_type (), GtkMyFixedClass)
|
#define GTK_PIZZA_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
|
||||||
#define GTK_IS_MYFIXED(obj) GTK_CHECK_TYPE (obj, gtk_myfixed_get_type ())
|
#define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
|
||||||
|
|
||||||
/* Shadow types */
|
/* Shadow types */
|
||||||
typedef enum
|
typedef enum
|
||||||
@@ -34,10 +34,10 @@ typedef enum
|
|||||||
GTK_MYSHADOW_OUT
|
GTK_MYSHADOW_OUT
|
||||||
} GtkMyShadowType;
|
} GtkMyShadowType;
|
||||||
|
|
||||||
typedef struct _GtkMyFixed GtkMyFixed;
|
typedef struct _GtkPizza GtkPizza;
|
||||||
typedef struct _GtkMyFixedClass GtkMyFixedClass;
|
typedef struct _GtkPizzaClass GtkPizzaClass;
|
||||||
|
|
||||||
struct _GtkMyFixed
|
struct _GtkPizza
|
||||||
{
|
{
|
||||||
GtkContainer container;
|
GtkContainer container;
|
||||||
GList *children;
|
GList *children;
|
||||||
@@ -59,46 +59,46 @@ struct _GtkMyFixed
|
|||||||
gboolean clear_on_draw;
|
gboolean clear_on_draw;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _GtkMyFixedClass
|
struct _GtkPizzaClass
|
||||||
{
|
{
|
||||||
GtkContainerClass parent_class;
|
GtkContainerClass parent_class;
|
||||||
|
|
||||||
void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
|
void (*set_scroll_adjustments) (GtkPizza *pizza,
|
||||||
GtkAdjustment *hadjustment,
|
GtkAdjustment *hadjustment,
|
||||||
GtkAdjustment *vadjustment);
|
GtkAdjustment *vadjustment);
|
||||||
};
|
};
|
||||||
|
|
||||||
guint gtk_myfixed_get_type (void);
|
guint gtk_pizza_get_type (void);
|
||||||
GtkWidget* gtk_myfixed_new (void);
|
GtkWidget* gtk_pizza_new (void);
|
||||||
|
|
||||||
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
|
void gtk_pizza_set_shadow_type (GtkPizza *pizza,
|
||||||
GtkMyShadowType type);
|
GtkMyShadowType type);
|
||||||
|
|
||||||
void gtk_my_fixed_set_clear (GtkMyFixed *myfixed,
|
void gtk_pizza_set_clear (GtkPizza *pizza,
|
||||||
gboolean clear);
|
gboolean clear);
|
||||||
|
|
||||||
void gtk_myfixed_scroll (GtkMyFixed *myfixed,
|
void gtk_pizza_scroll (GtkPizza *pizza,
|
||||||
gint dx,
|
gint dx,
|
||||||
gint dy);
|
gint dy);
|
||||||
|
|
||||||
void gtk_myfixed_put (GtkMyFixed *myfixed,
|
void gtk_pizza_put (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y,
|
gint y,
|
||||||
gint width,
|
gint width,
|
||||||
gint height);
|
gint height);
|
||||||
|
|
||||||
void gtk_myfixed_move (GtkMyFixed *myfixed,
|
void gtk_pizza_move (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y );
|
gint y );
|
||||||
|
|
||||||
void gtk_myfixed_resize (GtkMyFixed *myfixed,
|
void gtk_pizza_resize (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint width,
|
gint width,
|
||||||
gint height );
|
gint height );
|
||||||
|
|
||||||
void gtk_myfixed_set_size (GtkMyFixed *myfixed,
|
void gtk_pizza_set_size (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y,
|
gint y,
|
||||||
@@ -109,4 +109,4 @@ void gtk_myfixed_set_size (GtkMyFixed *myfixed,
|
|||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
#endif /* __GTK_MYFIXED_H__ */
|
#endif /* __GTK_PIZZA_H__ */
|
||||||
|
@@ -53,6 +53,8 @@ public:
|
|||||||
virtual int GetMax() const;
|
virtual int GetMax() const;
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
void OnChar( wxKeyEvent &event );
|
||||||
|
|
||||||
bool IsOwnGtkWindow( GdkWindow *window );
|
bool IsOwnGtkWindow( GdkWindow *window );
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
|
|
||||||
@@ -61,6 +63,7 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
|
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
|
||||||
|
DECLARE_EVENT_TABLE()
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/* ///////////////////////////////////////////////////////////////////////////
|
/* ///////////////////////////////////////////////////////////////////////////
|
||||||
// Name: win_gtk.h
|
// Name: win_gtk.h
|
||||||
// Purpose: wxWindows's GTK base widget
|
// Purpose: wxWindows's GTK base widget = GtkPizza
|
||||||
// Author: Robert Roebling
|
// Author: Robert Roebling
|
||||||
// Id: $Id$
|
// Id: $Id$
|
||||||
// Copyright: (c) 1998 Robert Roebling
|
// Copyright: (c) 1998 Robert Roebling
|
||||||
@@ -8,8 +8,8 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////// */
|
/////////////////////////////////////////////////////////////////////////// */
|
||||||
|
|
||||||
|
|
||||||
#ifndef __GTK_MYFIXED_H__
|
#ifndef __GTK_PIZZA_H__
|
||||||
#define __GTK_MYFIXED_H__
|
#define __GTK_PIZZA_H__
|
||||||
|
|
||||||
#include <gdk/gdk.h>
|
#include <gdk/gdk.h>
|
||||||
#include <gtk/gtkcontainer.h>
|
#include <gtk/gtkcontainer.h>
|
||||||
@@ -21,9 +21,9 @@ extern "C" {
|
|||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
#define GTK_MYFIXED(obj) GTK_CHECK_CAST (obj, gtk_myfixed_get_type (), GtkMyFixed)
|
#define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
|
||||||
#define GTK_MYFIXED_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_myfixed_get_type (), GtkMyFixedClass)
|
#define GTK_PIZZA_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
|
||||||
#define GTK_IS_MYFIXED(obj) GTK_CHECK_TYPE (obj, gtk_myfixed_get_type ())
|
#define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
|
||||||
|
|
||||||
/* Shadow types */
|
/* Shadow types */
|
||||||
typedef enum
|
typedef enum
|
||||||
@@ -34,10 +34,10 @@ typedef enum
|
|||||||
GTK_MYSHADOW_OUT
|
GTK_MYSHADOW_OUT
|
||||||
} GtkMyShadowType;
|
} GtkMyShadowType;
|
||||||
|
|
||||||
typedef struct _GtkMyFixed GtkMyFixed;
|
typedef struct _GtkPizza GtkPizza;
|
||||||
typedef struct _GtkMyFixedClass GtkMyFixedClass;
|
typedef struct _GtkPizzaClass GtkPizzaClass;
|
||||||
|
|
||||||
struct _GtkMyFixed
|
struct _GtkPizza
|
||||||
{
|
{
|
||||||
GtkContainer container;
|
GtkContainer container;
|
||||||
GList *children;
|
GList *children;
|
||||||
@@ -59,46 +59,46 @@ struct _GtkMyFixed
|
|||||||
gboolean clear_on_draw;
|
gboolean clear_on_draw;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _GtkMyFixedClass
|
struct _GtkPizzaClass
|
||||||
{
|
{
|
||||||
GtkContainerClass parent_class;
|
GtkContainerClass parent_class;
|
||||||
|
|
||||||
void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
|
void (*set_scroll_adjustments) (GtkPizza *pizza,
|
||||||
GtkAdjustment *hadjustment,
|
GtkAdjustment *hadjustment,
|
||||||
GtkAdjustment *vadjustment);
|
GtkAdjustment *vadjustment);
|
||||||
};
|
};
|
||||||
|
|
||||||
guint gtk_myfixed_get_type (void);
|
guint gtk_pizza_get_type (void);
|
||||||
GtkWidget* gtk_myfixed_new (void);
|
GtkWidget* gtk_pizza_new (void);
|
||||||
|
|
||||||
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
|
void gtk_pizza_set_shadow_type (GtkPizza *pizza,
|
||||||
GtkMyShadowType type);
|
GtkMyShadowType type);
|
||||||
|
|
||||||
void gtk_my_fixed_set_clear (GtkMyFixed *myfixed,
|
void gtk_pizza_set_clear (GtkPizza *pizza,
|
||||||
gboolean clear);
|
gboolean clear);
|
||||||
|
|
||||||
void gtk_myfixed_scroll (GtkMyFixed *myfixed,
|
void gtk_pizza_scroll (GtkPizza *pizza,
|
||||||
gint dx,
|
gint dx,
|
||||||
gint dy);
|
gint dy);
|
||||||
|
|
||||||
void gtk_myfixed_put (GtkMyFixed *myfixed,
|
void gtk_pizza_put (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y,
|
gint y,
|
||||||
gint width,
|
gint width,
|
||||||
gint height);
|
gint height);
|
||||||
|
|
||||||
void gtk_myfixed_move (GtkMyFixed *myfixed,
|
void gtk_pizza_move (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y );
|
gint y );
|
||||||
|
|
||||||
void gtk_myfixed_resize (GtkMyFixed *myfixed,
|
void gtk_pizza_resize (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint width,
|
gint width,
|
||||||
gint height );
|
gint height );
|
||||||
|
|
||||||
void gtk_myfixed_set_size (GtkMyFixed *myfixed,
|
void gtk_pizza_set_size (GtkPizza *pizza,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
gint x,
|
gint x,
|
||||||
gint y,
|
gint y,
|
||||||
@@ -109,4 +109,4 @@ void gtk_myfixed_set_size (GtkMyFixed *myfixed,
|
|||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
#endif /* __GTK_MYFIXED_H__ */
|
#endif /* __GTK_PIZZA_H__ */
|
||||||
|
@@ -64,14 +64,12 @@ wxButton::wxButton()
|
|||||||
|
|
||||||
wxButton::~wxButton()
|
wxButton::~wxButton()
|
||||||
{
|
{
|
||||||
if (m_clientData) delete m_clientData;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
||||||
const wxPoint &pos, const wxSize &size,
|
const wxPoint &pos, const wxSize &size,
|
||||||
long style, const wxValidator& validator, const wxString &name )
|
long style, const wxValidator& validator, const wxString &name )
|
||||||
{
|
{
|
||||||
m_clientData = (wxClientData*) NULL;
|
|
||||||
m_needParent = TRUE;
|
m_needParent = TRUE;
|
||||||
m_acceptsFocus = TRUE;
|
m_acceptsFocus = TRUE;
|
||||||
|
|
||||||
@@ -126,7 +124,7 @@ bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxButton::SetDefault(void)
|
void wxButton::SetDefault()
|
||||||
{
|
{
|
||||||
GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
|
GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
|
||||||
gtk_widget_grab_default( m_widget );
|
gtk_widget_grab_default( m_widget );
|
||||||
|
@@ -119,8 +119,8 @@ wxWindowDC::wxWindowDC( wxWindow *window )
|
|||||||
|
|
||||||
wxASSERT_MSG( widget, wxT("DC needs a widget") );
|
wxASSERT_MSG( widget, wxT("DC needs a widget") );
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED( widget );
|
GtkPizza *pizza = GTK_PIZZA( widget );
|
||||||
m_window = myfixed->bin_window;
|
m_window = pizza->bin_window;
|
||||||
|
|
||||||
/* not realized ? */
|
/* not realized ? */
|
||||||
if (!m_window)
|
if (!m_window)
|
||||||
|
@@ -194,7 +194,7 @@ gtk_dialog_realized_callback( GtkWidget *widget, wxDialog *win )
|
|||||||
|
|
||||||
static void wxInsertChildInDialog( wxDialog* parent, wxWindow* child )
|
static void wxInsertChildInDialog( wxDialog* parent, wxWindow* child )
|
||||||
{
|
{
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -269,7 +269,7 @@ bool wxDialog::Create( wxWindow *parent,
|
|||||||
gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
|
gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
|
||||||
GTK_SIGNAL_FUNC(gtk_dialog_delete_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_dialog_delete_callback), (gpointer)this );
|
||||||
|
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
gtk_widget_show( m_wxwindow );
|
gtk_widget_show( m_wxwindow );
|
||||||
GTK_WIDGET_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
|
GTK_WIDGET_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
|
||||||
|
|
||||||
|
@@ -300,7 +300,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
|
|||||||
{
|
{
|
||||||
/* these are outside the client area */
|
/* these are outside the client area */
|
||||||
wxFrame* frame = (wxFrame*) parent;
|
wxFrame* frame = (wxFrame*) parent;
|
||||||
gtk_myfixed_put( GTK_MYFIXED(frame->m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(frame->m_mainWidget),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -327,7 +327,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* these are inside the client area */
|
/* these are inside the client area */
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -418,7 +418,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
|
|||||||
GTK_SIGNAL_FUNC(gtk_frame_delete_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_frame_delete_callback), (gpointer)this );
|
||||||
|
|
||||||
/* m_mainWidget holds the toolbar, the menubar and the client area */
|
/* m_mainWidget holds the toolbar, the menubar and the client area */
|
||||||
m_mainWidget = gtk_myfixed_new();
|
m_mainWidget = gtk_pizza_new();
|
||||||
gtk_widget_show( m_mainWidget );
|
gtk_widget_show( m_mainWidget );
|
||||||
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
|
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
|
||||||
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
|
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
|
||||||
@@ -428,7 +428,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* m_wxwindow only represents the client area without toolbar and menubar */
|
/* m_wxwindow only represents the client area without toolbar and menubar */
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
gtk_widget_show( m_wxwindow );
|
gtk_widget_show( m_wxwindow );
|
||||||
gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow );
|
gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow );
|
||||||
|
|
||||||
@@ -726,7 +726,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameMenuBar->m_y = yy;
|
m_frameMenuBar->m_y = yy;
|
||||||
m_frameMenuBar->m_width = ww;
|
m_frameMenuBar->m_width = ww;
|
||||||
m_frameMenuBar->m_height = hh;
|
m_frameMenuBar->m_height = hh;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
client_area_y_offset += hh;
|
client_area_y_offset += hh;
|
||||||
@@ -752,7 +752,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameToolBar->m_y = yy;
|
m_frameToolBar->m_y = yy;
|
||||||
/* m_frameToolBar->m_height = hh; don't change the toolbar's reported size
|
/* m_frameToolBar->m_height = hh; don't change the toolbar's reported size
|
||||||
m_frameToolBar->m_width = ww; */
|
m_frameToolBar->m_width = ww; */
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameToolBar->m_widget,
|
m_frameToolBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
client_area_y_offset += hh;
|
client_area_y_offset += hh;
|
||||||
@@ -763,7 +763,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
int client_y = client_area_y_offset + m_miniEdge + m_miniTitle;
|
int client_y = client_area_y_offset + m_miniEdge + m_miniTitle;
|
||||||
int client_w = m_width - 2*m_miniEdge;
|
int client_w = m_width - 2*m_miniEdge;
|
||||||
int client_h = m_height - client_area_y_offset- 2*m_miniEdge - m_miniTitle;
|
int client_h = m_height - client_area_y_offset- 2*m_miniEdge - m_miniTitle;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_wxwindow,
|
m_wxwindow,
|
||||||
client_x, client_y, client_w, client_h );
|
client_x, client_y, client_w, client_h );
|
||||||
}
|
}
|
||||||
@@ -784,7 +784,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameStatusBar->m_y = yy;
|
m_frameStatusBar->m_y = yy;
|
||||||
m_frameStatusBar->m_width = ww;
|
m_frameStatusBar->m_width = ww;
|
||||||
m_frameStatusBar->m_height = hh;
|
m_frameStatusBar->m_height = hh;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_wxwindow),
|
gtk_pizza_set_size( GTK_PIZZA(m_wxwindow),
|
||||||
m_frameStatusBar->m_widget,
|
m_frameStatusBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
}
|
}
|
||||||
@@ -902,7 +902,7 @@ void wxFrame::SetMenuBar( wxMenuBar *menuBar )
|
|||||||
if (m_frameMenuBar->GetParent() != this)
|
if (m_frameMenuBar->GetParent() != this)
|
||||||
{
|
{
|
||||||
m_frameMenuBar->SetParent(this);
|
m_frameMenuBar->SetParent(this);
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
m_frameMenuBar->m_x,
|
m_frameMenuBar->m_x,
|
||||||
m_frameMenuBar->m_y,
|
m_frameMenuBar->m_y,
|
||||||
|
@@ -120,7 +120,7 @@ void wxMDIParentFrame::GtkOnSize( int x, int y, int width, int height )
|
|||||||
menu_bar->m_y = 0;
|
menu_bar->m_y = 0;
|
||||||
menu_bar->m_width = m_width;
|
menu_bar->m_width = m_width;
|
||||||
menu_bar->m_height = wxMENU_HEIGHT;
|
menu_bar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
menu_bar->m_widget,
|
menu_bar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
@@ -159,7 +159,7 @@ void wxMDIParentFrame::OnInternalIdle()
|
|||||||
{
|
{
|
||||||
menu_bar->m_width = m_width;
|
menu_bar->m_width = m_width;
|
||||||
menu_bar->m_height = wxMENU_HEIGHT;
|
menu_bar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
menu_bar->m_widget,
|
menu_bar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
menu_bar->SetInvokingWindow( child_frame );
|
menu_bar->SetInvokingWindow( child_frame );
|
||||||
@@ -193,7 +193,7 @@ void wxMDIParentFrame::OnInternalIdle()
|
|||||||
|
|
||||||
m_frameMenuBar->m_width = m_width;
|
m_frameMenuBar->m_width = m_width;
|
||||||
m_frameMenuBar->m_height = wxMENU_HEIGHT;
|
m_frameMenuBar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
@@ -330,7 +330,7 @@ void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar )
|
|||||||
m_menuBar->SetParent( mdi_frame );
|
m_menuBar->SetParent( mdi_frame );
|
||||||
|
|
||||||
/* insert the invisible menu bar into the _parent_ mdi frame */
|
/* insert the invisible menu bar into the _parent_ mdi frame */
|
||||||
gtk_myfixed_put( GTK_MYFIXED(mdi_frame->m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(mdi_frame->m_mainWidget),
|
||||||
m_menuBar->m_widget,
|
m_menuBar->m_widget,
|
||||||
0, 0, mdi_frame->m_width, wxMENU_HEIGHT );
|
0, 0, mdi_frame->m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
|
@@ -71,10 +71,10 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
|
|||||||
if (!win->m_hasVMT) return;
|
if (!win->m_hasVMT) return;
|
||||||
if (gdk_event->count > 0) return;
|
if (gdk_event->count > 0) return;
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(widget);
|
GtkPizza *pizza = GTK_PIZZA(widget);
|
||||||
|
|
||||||
gtk_draw_shadow( widget->style,
|
gtk_draw_shadow( widget->style,
|
||||||
myfixed->bin_window,
|
pizza->bin_window,
|
||||||
GTK_STATE_NORMAL,
|
GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
0, 0,
|
0, 0,
|
||||||
@@ -85,20 +85,20 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
|
|||||||
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
||||||
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
||||||
{
|
{
|
||||||
GdkGC *gc = gdk_gc_new( myfixed->bin_window );
|
GdkGC *gc = gdk_gc_new( pizza->bin_window );
|
||||||
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
||||||
int x = 2;
|
int x = 2;
|
||||||
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
|
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
||||||
gdk_draw_rectangle( myfixed->bin_window, gc, TRUE,
|
gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
|
||||||
x,
|
x,
|
||||||
3,
|
3,
|
||||||
win->m_width - 4 - x,
|
win->m_width - 4 - x,
|
||||||
font->ascent + font->descent+1 );
|
font->ascent + font->descent+1 );
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->white );
|
gdk_gc_set_foreground( gc, &widget->style->white );
|
||||||
gdk_draw_string( myfixed->bin_window, font, gc,
|
gdk_draw_string( pizza->bin_window, font, gc,
|
||||||
x+2,
|
x+2,
|
||||||
3+font->ascent,
|
3+font->ascent,
|
||||||
win->m_title.mb_str() );
|
win->m_title.mb_str() );
|
||||||
@@ -117,10 +117,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
|
|
||||||
if (!win->m_hasVMT) return;
|
if (!win->m_hasVMT) return;
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(widget);
|
GtkPizza *pizza = GTK_PIZZA(widget);
|
||||||
|
|
||||||
gtk_draw_shadow( widget->style,
|
gtk_draw_shadow( widget->style,
|
||||||
myfixed->bin_window,
|
pizza->bin_window,
|
||||||
GTK_STATE_NORMAL,
|
GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
0, 0,
|
0, 0,
|
||||||
@@ -131,20 +131,20 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
||||||
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
||||||
{
|
{
|
||||||
GdkGC *gc = gdk_gc_new( myfixed->bin_window );
|
GdkGC *gc = gdk_gc_new( pizza->bin_window );
|
||||||
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
||||||
int x = 2;
|
int x = 2;
|
||||||
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
|
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
||||||
gdk_draw_rectangle( myfixed->bin_window, gc, TRUE,
|
gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
|
||||||
x,
|
x,
|
||||||
3,
|
3,
|
||||||
win->m_width - 4 - x,
|
win->m_width - 4 - x,
|
||||||
font->ascent + font->descent+1 );
|
font->ascent + font->descent+1 );
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->white );
|
gdk_gc_set_foreground( gc, &widget->style->white );
|
||||||
gdk_draw_string( myfixed->bin_window, font, gc,
|
gdk_draw_string( pizza->bin_window, font, gc,
|
||||||
x+2,
|
x+2,
|
||||||
3+font->ascent,
|
3+font->ascent,
|
||||||
win->m_title.mb_str() );
|
win->m_title.mb_str() );
|
||||||
@@ -299,7 +299,7 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
|
|||||||
{
|
{
|
||||||
GtkWidget *close_button = gtk_button_new_with_label( "x" );
|
GtkWidget *close_button = gtk_button_new_with_label( "x" );
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(m_mainWidget),
|
||||||
close_button,
|
close_button,
|
||||||
4, 4, 12, 11 );
|
4, 4, 12, 11 );
|
||||||
|
|
||||||
|
@@ -119,7 +119,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
|
|||||||
gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
|
gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
|
||||||
GTK_SIGNAL_FUNC(gtk_radiobutton_clicked_callback), (gpointer*)this );
|
GTK_SIGNAL_FUNC(gtk_radiobutton_clicked_callback), (gpointer*)this );
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(m_parent->m_wxwindow),
|
||||||
GTK_WIDGET(m_radio),
|
GTK_WIDGET(m_radio),
|
||||||
m_x+10, m_y+10+(i*24), 10, 10 );
|
m_x+10, m_y+10+(i*24), 10, 10 );
|
||||||
}
|
}
|
||||||
@@ -211,7 +211,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
int len = 22+gdk_string_measure( font, label->label );
|
int len = 22+gdk_string_measure( font, label->label );
|
||||||
if (len > max_len) max_len = len;
|
if (len > max_len) max_len = len;
|
||||||
|
|
||||||
gtk_myfixed_move( GTK_MYFIXED(m_parent->m_wxwindow), button, m_x+x, m_y+y );
|
gtk_pizza_move( GTK_PIZZA(m_parent->m_wxwindow), button, m_x+x, m_y+y );
|
||||||
y += 22;
|
y += 22;
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
@@ -225,7 +225,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
{
|
{
|
||||||
GtkWidget *button = GTK_WIDGET( node->Data() );
|
GtkWidget *button = GTK_WIDGET( node->Data() );
|
||||||
|
|
||||||
gtk_myfixed_resize( GTK_MYFIXED(m_parent->m_wxwindow), button, max_len, 20 );
|
gtk_pizza_resize( GTK_PIZZA(m_parent->m_wxwindow), button, max_len, 20 );
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
if (!node) break;
|
if (!node) break;
|
||||||
@@ -261,7 +261,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
{
|
{
|
||||||
GtkWidget *button = GTK_WIDGET( node->Data() );
|
GtkWidget *button = GTK_WIDGET( node->Data() );
|
||||||
|
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_parent->m_wxwindow), button, m_x+x, m_y+y, max, 20 );
|
gtk_pizza_set_size( GTK_PIZZA(m_parent->m_wxwindow), button, m_x+x, m_y+y, max, 20 );
|
||||||
x += max;
|
x += max;
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
|
@@ -85,6 +85,10 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
|
|||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
|
IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
|
||||||
|
|
||||||
|
BEGIN_EVENT_TABLE(wxSpinCtrl, wxControl)
|
||||||
|
EVT_CHAR(wxSpinCtrl::OnChar)
|
||||||
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
|
bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
|
||||||
const wxString& value,
|
const wxString& value,
|
||||||
const wxPoint& pos, const wxSize& size,
|
const wxPoint& pos, const wxSize& size,
|
||||||
@@ -205,6 +209,27 @@ void wxSpinCtrl::SetRange(int minVal, int maxVal)
|
|||||||
SetFocus();
|
SetFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void wxSpinCtrl::OnChar( wxKeyEvent &event )
|
||||||
|
{
|
||||||
|
wxCHECK_RET( m_widget != NULL, wxT("invalid spin ctrl") );
|
||||||
|
|
||||||
|
if (event.KeyCode() == WXK_RETURN)
|
||||||
|
{
|
||||||
|
wxWindow *top_frame = m_parent;
|
||||||
|
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
|
||||||
|
top_frame = top_frame->GetParent();
|
||||||
|
GtkWindow *window = GTK_WINDOW(top_frame->m_widget);
|
||||||
|
|
||||||
|
if (window->default_widget)
|
||||||
|
{
|
||||||
|
gtk_widget_activate (window->default_widget);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
event.Skip();
|
||||||
|
}
|
||||||
|
|
||||||
bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
|
bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
|
||||||
{
|
{
|
||||||
return GTK_SPIN_BUTTON(m_widget)->panel == window;
|
return GTK_SPIN_BUTTON(m_widget)->panel == window;
|
||||||
|
@@ -779,6 +779,20 @@ void wxTextCtrl::OnChar( wxKeyEvent &key_event )
|
|||||||
if (GetEventHandler()->ProcessEvent(event)) return;
|
if (GetEventHandler()->ProcessEvent(event)) return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((key_event.KeyCode() == WXK_RETURN) && !(m_windowStyle & wxTE_MULTILINE))
|
||||||
|
{
|
||||||
|
wxWindow *top_frame = m_parent;
|
||||||
|
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
|
||||||
|
top_frame = top_frame->GetParent();
|
||||||
|
GtkWindow *window = GTK_WINDOW(top_frame->m_widget);
|
||||||
|
|
||||||
|
if (window->default_widget)
|
||||||
|
{
|
||||||
|
gtk_widget_activate (window->default_widget);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
key_event.Skip();
|
key_event.Skip();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -106,19 +106,19 @@
|
|||||||
can find in m_widget (defined in wxWindow)
|
can find in m_widget (defined in wxWindow)
|
||||||
|
|
||||||
When the class has a client area for drawing into and for containing children
|
When the class has a client area for drawing into and for containing children
|
||||||
it has to handle the client area widget (of the type GtkMyFixed, defined in
|
it has to handle the client area widget (of the type GtkPizza, defined in
|
||||||
win_gtk.c), but there could be any number of widgets, handled by a class
|
win_gtk.c), but there could be any number of widgets, handled by a class
|
||||||
The common rule for all windows is only, that the widget that interacts with
|
The common rule for all windows is only, that the widget that interacts with
|
||||||
the rest of GTK must be referenced in m_widget and all other widgets must be
|
the rest of GTK must be referenced in m_widget and all other widgets must be
|
||||||
children of this widget on the GTK level. The top-most widget, which also
|
children of this widget on the GTK level. The top-most widget, which also
|
||||||
represents the client area, must be in the m_wxwindow field and must be of
|
represents the client area, must be in the m_wxwindow field and must be of
|
||||||
the type GtkMyFixed.
|
the type GtkPizza.
|
||||||
|
|
||||||
As I said, the window classes that display a GTK native widget only have
|
As I said, the window classes that display a GTK native widget only have
|
||||||
one widget, so in the case of e.g. the wxButton class m_widget holds a
|
one widget, so in the case of e.g. the wxButton class m_widget holds a
|
||||||
pointer to a GtkButton widget. But windows with client areas (for drawing
|
pointer to a GtkButton widget. But windows with client areas (for drawing
|
||||||
and children) have a m_widget field that is a pointer to a GtkScrolled-
|
and children) have a m_widget field that is a pointer to a GtkScrolled-
|
||||||
Window and a m_wxwindow field that is pointer to a GtkMyFixed and this
|
Window and a m_wxwindow field that is pointer to a GtkPizza and this
|
||||||
one is (in the GTK sense) a child of the GtkScrolledWindow.
|
one is (in the GTK sense) a child of the GtkScrolledWindow.
|
||||||
|
|
||||||
If the m_wxwindow field is set, then all input to this widget is inter-
|
If the m_wxwindow field is set, then all input to this widget is inter-
|
||||||
@@ -132,10 +132,10 @@
|
|||||||
clicking on a scrollbar belonging to scrolled window will inevitably move
|
clicking on a scrollbar belonging to scrolled window will inevitably move
|
||||||
the window. In wxWindows, the scrollbar will only emit an event, send this
|
the window. In wxWindows, the scrollbar will only emit an event, send this
|
||||||
to (normally) a wxScrolledWindow and that class will call ScrollWindow()
|
to (normally) a wxScrolledWindow and that class will call ScrollWindow()
|
||||||
which actually moves the window and its subchildren. Note that GtkMyFixed
|
which actually moves the window and its subchildren. Note that GtkPizza
|
||||||
memorizes how much it has been scrolled but that wxWindows forgets this
|
memorizes how much it has been scrolled but that wxWindows forgets this
|
||||||
so that the two coordinates systems have to be kept in synch. This is done
|
so that the two coordinates systems have to be kept in synch. This is done
|
||||||
in various places using the myfixed->xoffset and myfixed->yoffset values.
|
in various places using the pizza->xoffset and pizza->yoffset values.
|
||||||
|
|
||||||
III)
|
III)
|
||||||
|
|
||||||
@@ -267,8 +267,6 @@ extern bool g_isIdle;
|
|||||||
// local code (see below)
|
// local code (see below)
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
|
||||||
|
|
||||||
static void draw_frame( GtkWidget *widget, wxWindow *win )
|
static void draw_frame( GtkWidget *widget, wxWindow *win )
|
||||||
{
|
{
|
||||||
if (!win->m_hasVMT)
|
if (!win->m_hasVMT)
|
||||||
@@ -364,156 +362,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
draw_frame( widget, win );
|
draw_frame( widget, win );
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // GTK_MINOR_VERSION > 0
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// key event conversion routines
|
// key code mapping routines
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION == 0)
|
|
||||||
/* these functions are copied verbatim from GTK 1.2 */
|
|
||||||
static void
|
|
||||||
gdkx_XConvertCase (KeySym symbol,
|
|
||||||
KeySym *lower,
|
|
||||||
KeySym *upper)
|
|
||||||
{
|
|
||||||
register KeySym sym = symbol;
|
|
||||||
|
|
||||||
g_return_if_fail (lower != NULL);
|
|
||||||
g_return_if_fail (upper != NULL);
|
|
||||||
|
|
||||||
*lower = sym;
|
|
||||||
*upper = sym;
|
|
||||||
|
|
||||||
switch (sym >> 8)
|
|
||||||
{
|
|
||||||
#if defined (GDK_A) && defined (GDK_Ooblique)
|
|
||||||
case 0: /* Latin 1 */
|
|
||||||
if ((sym >= GDK_A) && (sym <= GDK_Z))
|
|
||||||
*lower += (GDK_a - GDK_A);
|
|
||||||
else if ((sym >= GDK_a) && (sym <= GDK_z))
|
|
||||||
*upper -= (GDK_a - GDK_A);
|
|
||||||
else if ((sym >= GDK_Agrave) && (sym <= GDK_Odiaeresis))
|
|
||||||
*lower += (GDK_agrave - GDK_Agrave);
|
|
||||||
else if ((sym >= GDK_agrave) && (sym <= GDK_odiaeresis))
|
|
||||||
*upper -= (GDK_agrave - GDK_Agrave);
|
|
||||||
else if ((sym >= GDK_Ooblique) && (sym <= GDK_Thorn))
|
|
||||||
*lower += (GDK_oslash - GDK_Ooblique);
|
|
||||||
else if ((sym >= GDK_oslash) && (sym <= GDK_thorn))
|
|
||||||
*upper -= (GDK_oslash - GDK_Ooblique);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN1 */
|
|
||||||
|
|
||||||
#if defined (GDK_Aogonek) && defined (GDK_tcedilla)
|
|
||||||
case 1: /* Latin 2 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym == GDK_Aogonek)
|
|
||||||
*lower = GDK_aogonek;
|
|
||||||
else if (sym >= GDK_Lstroke && sym <= GDK_Sacute)
|
|
||||||
*lower += (GDK_lstroke - GDK_Lstroke);
|
|
||||||
else if (sym >= GDK_Scaron && sym <= GDK_Zacute)
|
|
||||||
*lower += (GDK_scaron - GDK_Scaron);
|
|
||||||
else if (sym >= GDK_Zcaron && sym <= GDK_Zabovedot)
|
|
||||||
*lower += (GDK_zcaron - GDK_Zcaron);
|
|
||||||
else if (sym == GDK_aogonek)
|
|
||||||
*upper = GDK_Aogonek;
|
|
||||||
else if (sym >= GDK_lstroke && sym <= GDK_sacute)
|
|
||||||
*upper -= (GDK_lstroke - GDK_Lstroke);
|
|
||||||
else if (sym >= GDK_scaron && sym <= GDK_zacute)
|
|
||||||
*upper -= (GDK_scaron - GDK_Scaron);
|
|
||||||
else if (sym >= GDK_zcaron && sym <= GDK_zabovedot)
|
|
||||||
*upper -= (GDK_zcaron - GDK_Zcaron);
|
|
||||||
else if (sym >= GDK_Racute && sym <= GDK_Tcedilla)
|
|
||||||
*lower += (GDK_racute - GDK_Racute);
|
|
||||||
else if (sym >= GDK_racute && sym <= GDK_tcedilla)
|
|
||||||
*upper -= (GDK_racute - GDK_Racute);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN2 */
|
|
||||||
|
|
||||||
#if defined (GDK_Hstroke) && defined (GDK_Cabovedot)
|
|
||||||
case 2: /* Latin 3 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Hstroke && sym <= GDK_Hcircumflex)
|
|
||||||
*lower += (GDK_hstroke - GDK_Hstroke);
|
|
||||||
else if (sym >= GDK_Gbreve && sym <= GDK_Jcircumflex)
|
|
||||||
*lower += (GDK_gbreve - GDK_Gbreve);
|
|
||||||
else if (sym >= GDK_hstroke && sym <= GDK_hcircumflex)
|
|
||||||
*upper -= (GDK_hstroke - GDK_Hstroke);
|
|
||||||
else if (sym >= GDK_gbreve && sym <= GDK_jcircumflex)
|
|
||||||
*upper -= (GDK_gbreve - GDK_Gbreve);
|
|
||||||
else if (sym >= GDK_Cabovedot && sym <= GDK_Scircumflex)
|
|
||||||
*lower += (GDK_cabovedot - GDK_Cabovedot);
|
|
||||||
else if (sym >= GDK_cabovedot && sym <= GDK_scircumflex)
|
|
||||||
*upper -= (GDK_cabovedot - GDK_Cabovedot);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN3 */
|
|
||||||
|
|
||||||
#if defined (GDK_Rcedilla) && defined (GDK_Amacron)
|
|
||||||
case 3: /* Latin 4 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Rcedilla && sym <= GDK_Tslash)
|
|
||||||
*lower += (GDK_rcedilla - GDK_Rcedilla);
|
|
||||||
else if (sym >= GDK_rcedilla && sym <= GDK_tslash)
|
|
||||||
*upper -= (GDK_rcedilla - GDK_Rcedilla);
|
|
||||||
else if (sym == GDK_ENG)
|
|
||||||
*lower = GDK_eng;
|
|
||||||
else if (sym == GDK_eng)
|
|
||||||
*upper = GDK_ENG;
|
|
||||||
else if (sym >= GDK_Amacron && sym <= GDK_Umacron)
|
|
||||||
*lower += (GDK_amacron - GDK_Amacron);
|
|
||||||
else if (sym >= GDK_amacron && sym <= GDK_umacron)
|
|
||||||
*upper -= (GDK_amacron - GDK_Amacron);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN4 */
|
|
||||||
|
|
||||||
#if defined (GDK_Serbian_DJE) && defined (GDK_Cyrillic_yu)
|
|
||||||
case 6: /* Cyrillic */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Serbian_DJE && sym <= GDK_Serbian_DZE)
|
|
||||||
*lower -= (GDK_Serbian_DJE - GDK_Serbian_dje);
|
|
||||||
else if (sym >= GDK_Serbian_dje && sym <= GDK_Serbian_dze)
|
|
||||||
*upper += (GDK_Serbian_DJE - GDK_Serbian_dje);
|
|
||||||
else if (sym >= GDK_Cyrillic_YU && sym <= GDK_Cyrillic_HARDSIGN)
|
|
||||||
*lower -= (GDK_Cyrillic_YU - GDK_Cyrillic_yu);
|
|
||||||
else if (sym >= GDK_Cyrillic_yu && sym <= GDK_Cyrillic_hardsign)
|
|
||||||
*upper += (GDK_Cyrillic_YU - GDK_Cyrillic_yu);
|
|
||||||
break;
|
|
||||||
#endif /* CYRILLIC */
|
|
||||||
|
|
||||||
#if defined (GDK_Greek_ALPHAaccent) && defined (GDK_Greek_finalsmallsigma)
|
|
||||||
case 7: /* Greek */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Greek_ALPHAaccent && sym <= GDK_Greek_OMEGAaccent)
|
|
||||||
*lower += (GDK_Greek_alphaaccent - GDK_Greek_ALPHAaccent);
|
|
||||||
else if (sym >= GDK_Greek_alphaaccent && sym <= GDK_Greek_omegaaccent &&
|
|
||||||
sym != GDK_Greek_iotaaccentdieresis &&
|
|
||||||
sym != GDK_Greek_upsilonaccentdieresis)
|
|
||||||
*upper -= (GDK_Greek_alphaaccent - GDK_Greek_ALPHAaccent);
|
|
||||||
else if (sym >= GDK_Greek_ALPHA && sym <= GDK_Greek_OMEGA)
|
|
||||||
*lower += (GDK_Greek_alpha - GDK_Greek_ALPHA);
|
|
||||||
else if (sym >= GDK_Greek_alpha && sym <= GDK_Greek_omega &&
|
|
||||||
sym != GDK_Greek_finalsmallsigma)
|
|
||||||
*upper -= (GDK_Greek_alpha - GDK_Greek_ALPHA);
|
|
||||||
break;
|
|
||||||
#endif /* GREEK */
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static guint
|
|
||||||
gdk_keyval_to_upper (guint keyval)
|
|
||||||
{
|
|
||||||
if (keyval)
|
|
||||||
{
|
|
||||||
KeySym lower_val = 0;
|
|
||||||
KeySym upper_val = 0;
|
|
||||||
|
|
||||||
gdkx_XConvertCase (keyval, &lower_val, &upper_val);
|
|
||||||
return upper_val;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static long map_to_unmodified_wx_keysym( KeySym keysym )
|
static long map_to_unmodified_wx_keysym( KeySym keysym )
|
||||||
{
|
{
|
||||||
guint key_code = 0;
|
guint key_code = 0;
|
||||||
@@ -855,6 +707,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
|
|||||||
ret = ancestor->GetEventHandler()->ProcessEvent( command_event );
|
ret = ancestor->GetEventHandler()->ProcessEvent( command_event );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (ancestor->m_isFrame)
|
||||||
|
break;
|
||||||
ancestor = ancestor->GetParent();
|
ancestor = ancestor->GetParent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -906,7 +760,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
#if (GTK_MINOR_VERSION > 0)
|
||||||
/* pressing F10 will activate the menu bar of the top frame */
|
/* Pressing F10 will activate the menu bar of the top frame. */
|
||||||
|
/* Doesn't work. */
|
||||||
/*
|
/*
|
||||||
if ( (!ret) &&
|
if ( (!ret) &&
|
||||||
(gdk_event->keyval == GDK_F10) )
|
(gdk_event->keyval == GDK_F10) )
|
||||||
@@ -1113,9 +968,9 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1240,9 +1095,9 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1360,9 +1215,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1806,11 +1661,11 @@ static void wxInsertChildInWindow( wxWindow* parent, wxWindow* child )
|
|||||||
{
|
{
|
||||||
/* the window might have been scrolled already, do we
|
/* the window might have been scrolled already, do we
|
||||||
have to adapt the position */
|
have to adapt the position */
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(parent->m_wxwindow);
|
||||||
child->m_x += myfixed->xoffset;
|
child->m_x += pizza->xoffset;
|
||||||
child->m_y += myfixed->yoffset;
|
child->m_y += pizza->yoffset;
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -1933,7 +1788,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
|
|||||||
m_hAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->hscrollbar) );
|
m_hAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->hscrollbar) );
|
||||||
m_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
|
m_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
|
||||||
|
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
|
|
||||||
#ifdef __WXDEBUG__
|
#ifdef __WXDEBUG__
|
||||||
debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name );
|
debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name );
|
||||||
@@ -1942,23 +1797,23 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
|
|||||||
gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow );
|
gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow );
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
#if (GTK_MINOR_VERSION > 0)
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
|
|
||||||
if (HasFlag(wxRAISED_BORDER))
|
if (HasFlag(wxRAISED_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_OUT );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_OUT );
|
||||||
}
|
}
|
||||||
else if (HasFlag(wxSUNKEN_BORDER))
|
else if (HasFlag(wxSUNKEN_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_IN );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_IN );
|
||||||
}
|
}
|
||||||
else if (HasFlag(wxSIMPLE_BORDER))
|
else if (HasFlag(wxSIMPLE_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_THIN );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_THIN );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_NONE );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_NONE );
|
||||||
}
|
}
|
||||||
#else // GTK_MINOR_VERSION == 0
|
#else // GTK_MINOR_VERSION == 0
|
||||||
GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
|
GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
|
||||||
@@ -2213,19 +2068,19 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
|
||||||
|
|
||||||
if ((sizeFlags & wxSIZE_ALLOW_MINUS_ONE) == 0)
|
if ((sizeFlags & wxSIZE_ALLOW_MINUS_ONE) == 0)
|
||||||
{
|
{
|
||||||
if (x != -1) m_x = x + myfixed->xoffset;
|
if (x != -1) m_x = x + pizza->xoffset;
|
||||||
if (y != -1) m_y = y + myfixed->yoffset;
|
if (y != -1) m_y = y + pizza->yoffset;
|
||||||
if (width != -1) m_width = width;
|
if (width != -1) m_width = width;
|
||||||
if (height != -1) m_height = height;
|
if (height != -1) m_height = height;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_x = x + myfixed->xoffset;
|
m_x = x + pizza->xoffset;
|
||||||
m_y = y + myfixed->yoffset;
|
m_y = y + pizza->yoffset;
|
||||||
m_width = width;
|
m_width = width;
|
||||||
m_height = height;
|
m_height = height;
|
||||||
}
|
}
|
||||||
@@ -2255,7 +2110,7 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
|
|||||||
bottom_border = 5;
|
bottom_border = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_parent->m_wxwindow),
|
gtk_pizza_set_size( GTK_PIZZA(m_parent->m_wxwindow),
|
||||||
m_widget,
|
m_widget,
|
||||||
m_x-border,
|
m_x-border,
|
||||||
m_y-border,
|
m_y-border,
|
||||||
@@ -2294,7 +2149,7 @@ void wxWindow::OnInternalIdle()
|
|||||||
|
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GdkWindow *window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
GdkWindow *window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
if (window)
|
if (window)
|
||||||
gdk_window_set_cursor( window, cursor.GetCursor() );
|
gdk_window_set_cursor( window, cursor.GetCursor() );
|
||||||
|
|
||||||
@@ -2484,9 +2339,9 @@ void wxWindow::DoGetPosition( int *x, int *y ) const
|
|||||||
int dy = 0;
|
int dy = 0;
|
||||||
if (m_parent && m_parent->m_wxwindow)
|
if (m_parent && m_parent->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
|
||||||
dx = myfixed->xoffset;
|
dx = pizza->xoffset;
|
||||||
dy = myfixed->yoffset;
|
dy = pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (x) (*x) = m_x - dx;
|
if (x) (*x) = m_x - dx;
|
||||||
@@ -2501,7 +2356,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const
|
|||||||
|
|
||||||
GdkWindow *source = (GdkWindow *) NULL;
|
GdkWindow *source = (GdkWindow *) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
source = GTK_MYFIXED(m_wxwindow)->bin_window;
|
source = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
source = m_widget->window;
|
source = m_widget->window;
|
||||||
|
|
||||||
@@ -2530,7 +2385,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const
|
|||||||
|
|
||||||
GdkWindow *source = (GdkWindow *) NULL;
|
GdkWindow *source = (GdkWindow *) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
source = GTK_MYFIXED(m_wxwindow)->bin_window;
|
source = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
source = m_widget->window;
|
source = m_widget->window;
|
||||||
|
|
||||||
@@ -2738,7 +2593,7 @@ void wxWindow::WarpPointer( int x, int y )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -2756,30 +2611,30 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
|
|||||||
{
|
{
|
||||||
if (rect)
|
if (rect)
|
||||||
{
|
{
|
||||||
gdk_window_clear_area( GTK_MYFIXED(m_wxwindow)->bin_window,
|
gdk_window_clear_area( GTK_PIZZA(m_wxwindow)->bin_window,
|
||||||
rect->x, rect->y,
|
rect->x, rect->y,
|
||||||
rect->width, rect->height );
|
rect->width, rect->height );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdk_window_clear( GTK_MYFIXED(m_wxwindow)->bin_window );
|
gdk_window_clear( GTK_PIZZA(m_wxwindow)->bin_window );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* there is no GTK equivalent of "draw only, don't clear" so we
|
/* there is no GTK equivalent of "draw only, don't clear" so we
|
||||||
invent our own in the GtkMyFixed widget */
|
invent our own in the GtkPizza widget */
|
||||||
|
|
||||||
if (!rect)
|
if (!rect)
|
||||||
{
|
{
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
gboolean old_clear = myfixed->clear_on_draw;
|
gboolean old_clear = pizza->clear_on_draw;
|
||||||
gtk_my_fixed_set_clear( myfixed, FALSE );
|
gtk_pizza_set_clear( pizza, FALSE );
|
||||||
|
|
||||||
gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
|
gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
|
||||||
|
|
||||||
gtk_my_fixed_set_clear( myfixed, old_clear );
|
gtk_pizza_set_clear( pizza, old_clear );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
|
gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
|
||||||
@@ -2794,13 +2649,13 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
|
|||||||
|
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
gboolean old_clear = myfixed->clear_on_draw;
|
gboolean old_clear = pizza->clear_on_draw;
|
||||||
gtk_my_fixed_set_clear( myfixed, FALSE );
|
gtk_pizza_set_clear( pizza, FALSE );
|
||||||
|
|
||||||
gtk_widget_draw( m_wxwindow, &gdk_rect );
|
gtk_widget_draw( m_wxwindow, &gdk_rect );
|
||||||
|
|
||||||
gtk_my_fixed_set_clear( myfixed, old_clear );
|
gtk_pizza_set_clear( pizza, old_clear );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gtk_widget_draw( m_widget, &gdk_rect );
|
gtk_widget_draw( m_widget, &gdk_rect );
|
||||||
@@ -2847,7 +2702,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -2899,7 +2754,7 @@ bool wxWindow::SetForegroundColour( const wxColour &colour )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3073,7 +2928,7 @@ GtkWidget* wxWindow::GetConnectWidget()
|
|||||||
bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
|
bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
|
||||||
{
|
{
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
return (window == GTK_MYFIXED(m_wxwindow)->bin_window);
|
return (window == GTK_PIZZA(m_wxwindow)->bin_window);
|
||||||
|
|
||||||
return (window == m_widget->window);
|
return (window == m_widget->window);
|
||||||
}
|
}
|
||||||
@@ -3091,7 +2946,7 @@ bool wxWindow::SetFont( const wxFont &font )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3129,7 +2984,7 @@ void wxWindow::CaptureMouse()
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3155,7 +3010,7 @@ void wxWindow::ReleaseMouse()
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3319,7 +3174,7 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
|
|||||||
|
|
||||||
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
|
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
|
||||||
|
|
||||||
gtk_myfixed_scroll( GTK_MYFIXED(m_wxwindow), -dx, -dy );
|
gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (!m_scrollGC)
|
if (!m_scrollGC)
|
||||||
|
@@ -64,14 +64,12 @@ wxButton::wxButton()
|
|||||||
|
|
||||||
wxButton::~wxButton()
|
wxButton::~wxButton()
|
||||||
{
|
{
|
||||||
if (m_clientData) delete m_clientData;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
||||||
const wxPoint &pos, const wxSize &size,
|
const wxPoint &pos, const wxSize &size,
|
||||||
long style, const wxValidator& validator, const wxString &name )
|
long style, const wxValidator& validator, const wxString &name )
|
||||||
{
|
{
|
||||||
m_clientData = (wxClientData*) NULL;
|
|
||||||
m_needParent = TRUE;
|
m_needParent = TRUE;
|
||||||
m_acceptsFocus = TRUE;
|
m_acceptsFocus = TRUE;
|
||||||
|
|
||||||
@@ -126,7 +124,7 @@ bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxButton::SetDefault(void)
|
void wxButton::SetDefault()
|
||||||
{
|
{
|
||||||
GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
|
GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
|
||||||
gtk_widget_grab_default( m_widget );
|
gtk_widget_grab_default( m_widget );
|
||||||
|
@@ -119,8 +119,8 @@ wxWindowDC::wxWindowDC( wxWindow *window )
|
|||||||
|
|
||||||
wxASSERT_MSG( widget, wxT("DC needs a widget") );
|
wxASSERT_MSG( widget, wxT("DC needs a widget") );
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED( widget );
|
GtkPizza *pizza = GTK_PIZZA( widget );
|
||||||
m_window = myfixed->bin_window;
|
m_window = pizza->bin_window;
|
||||||
|
|
||||||
/* not realized ? */
|
/* not realized ? */
|
||||||
if (!m_window)
|
if (!m_window)
|
||||||
|
@@ -194,7 +194,7 @@ gtk_dialog_realized_callback( GtkWidget *widget, wxDialog *win )
|
|||||||
|
|
||||||
static void wxInsertChildInDialog( wxDialog* parent, wxWindow* child )
|
static void wxInsertChildInDialog( wxDialog* parent, wxWindow* child )
|
||||||
{
|
{
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -269,7 +269,7 @@ bool wxDialog::Create( wxWindow *parent,
|
|||||||
gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
|
gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
|
||||||
GTK_SIGNAL_FUNC(gtk_dialog_delete_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_dialog_delete_callback), (gpointer)this );
|
||||||
|
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
gtk_widget_show( m_wxwindow );
|
gtk_widget_show( m_wxwindow );
|
||||||
GTK_WIDGET_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
|
GTK_WIDGET_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
|
||||||
|
|
||||||
|
@@ -300,7 +300,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
|
|||||||
{
|
{
|
||||||
/* these are outside the client area */
|
/* these are outside the client area */
|
||||||
wxFrame* frame = (wxFrame*) parent;
|
wxFrame* frame = (wxFrame*) parent;
|
||||||
gtk_myfixed_put( GTK_MYFIXED(frame->m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(frame->m_mainWidget),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -327,7 +327,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* these are inside the client area */
|
/* these are inside the client area */
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -418,7 +418,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
|
|||||||
GTK_SIGNAL_FUNC(gtk_frame_delete_callback), (gpointer)this );
|
GTK_SIGNAL_FUNC(gtk_frame_delete_callback), (gpointer)this );
|
||||||
|
|
||||||
/* m_mainWidget holds the toolbar, the menubar and the client area */
|
/* m_mainWidget holds the toolbar, the menubar and the client area */
|
||||||
m_mainWidget = gtk_myfixed_new();
|
m_mainWidget = gtk_pizza_new();
|
||||||
gtk_widget_show( m_mainWidget );
|
gtk_widget_show( m_mainWidget );
|
||||||
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
|
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
|
||||||
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
|
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
|
||||||
@@ -428,7 +428,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* m_wxwindow only represents the client area without toolbar and menubar */
|
/* m_wxwindow only represents the client area without toolbar and menubar */
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
gtk_widget_show( m_wxwindow );
|
gtk_widget_show( m_wxwindow );
|
||||||
gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow );
|
gtk_container_add( GTK_CONTAINER(m_mainWidget), m_wxwindow );
|
||||||
|
|
||||||
@@ -726,7 +726,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameMenuBar->m_y = yy;
|
m_frameMenuBar->m_y = yy;
|
||||||
m_frameMenuBar->m_width = ww;
|
m_frameMenuBar->m_width = ww;
|
||||||
m_frameMenuBar->m_height = hh;
|
m_frameMenuBar->m_height = hh;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
client_area_y_offset += hh;
|
client_area_y_offset += hh;
|
||||||
@@ -752,7 +752,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameToolBar->m_y = yy;
|
m_frameToolBar->m_y = yy;
|
||||||
/* m_frameToolBar->m_height = hh; don't change the toolbar's reported size
|
/* m_frameToolBar->m_height = hh; don't change the toolbar's reported size
|
||||||
m_frameToolBar->m_width = ww; */
|
m_frameToolBar->m_width = ww; */
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameToolBar->m_widget,
|
m_frameToolBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
client_area_y_offset += hh;
|
client_area_y_offset += hh;
|
||||||
@@ -763,7 +763,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
int client_y = client_area_y_offset + m_miniEdge + m_miniTitle;
|
int client_y = client_area_y_offset + m_miniEdge + m_miniTitle;
|
||||||
int client_w = m_width - 2*m_miniEdge;
|
int client_w = m_width - 2*m_miniEdge;
|
||||||
int client_h = m_height - client_area_y_offset- 2*m_miniEdge - m_miniTitle;
|
int client_h = m_height - client_area_y_offset- 2*m_miniEdge - m_miniTitle;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_wxwindow,
|
m_wxwindow,
|
||||||
client_x, client_y, client_w, client_h );
|
client_x, client_y, client_w, client_h );
|
||||||
}
|
}
|
||||||
@@ -784,7 +784,7 @@ void wxFrame::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), int width, int height
|
|||||||
m_frameStatusBar->m_y = yy;
|
m_frameStatusBar->m_y = yy;
|
||||||
m_frameStatusBar->m_width = ww;
|
m_frameStatusBar->m_width = ww;
|
||||||
m_frameStatusBar->m_height = hh;
|
m_frameStatusBar->m_height = hh;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_wxwindow),
|
gtk_pizza_set_size( GTK_PIZZA(m_wxwindow),
|
||||||
m_frameStatusBar->m_widget,
|
m_frameStatusBar->m_widget,
|
||||||
xx, yy, ww, hh );
|
xx, yy, ww, hh );
|
||||||
}
|
}
|
||||||
@@ -902,7 +902,7 @@ void wxFrame::SetMenuBar( wxMenuBar *menuBar )
|
|||||||
if (m_frameMenuBar->GetParent() != this)
|
if (m_frameMenuBar->GetParent() != this)
|
||||||
{
|
{
|
||||||
m_frameMenuBar->SetParent(this);
|
m_frameMenuBar->SetParent(this);
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
m_frameMenuBar->m_x,
|
m_frameMenuBar->m_x,
|
||||||
m_frameMenuBar->m_y,
|
m_frameMenuBar->m_y,
|
||||||
|
@@ -120,7 +120,7 @@ void wxMDIParentFrame::GtkOnSize( int x, int y, int width, int height )
|
|||||||
menu_bar->m_y = 0;
|
menu_bar->m_y = 0;
|
||||||
menu_bar->m_width = m_width;
|
menu_bar->m_width = m_width;
|
||||||
menu_bar->m_height = wxMENU_HEIGHT;
|
menu_bar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
menu_bar->m_widget,
|
menu_bar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
@@ -159,7 +159,7 @@ void wxMDIParentFrame::OnInternalIdle()
|
|||||||
{
|
{
|
||||||
menu_bar->m_width = m_width;
|
menu_bar->m_width = m_width;
|
||||||
menu_bar->m_height = wxMENU_HEIGHT;
|
menu_bar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
menu_bar->m_widget,
|
menu_bar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
menu_bar->SetInvokingWindow( child_frame );
|
menu_bar->SetInvokingWindow( child_frame );
|
||||||
@@ -193,7 +193,7 @@ void wxMDIParentFrame::OnInternalIdle()
|
|||||||
|
|
||||||
m_frameMenuBar->m_width = m_width;
|
m_frameMenuBar->m_width = m_width;
|
||||||
m_frameMenuBar->m_height = wxMENU_HEIGHT;
|
m_frameMenuBar->m_height = wxMENU_HEIGHT;
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||||
m_frameMenuBar->m_widget,
|
m_frameMenuBar->m_widget,
|
||||||
0, 0, m_width, wxMENU_HEIGHT );
|
0, 0, m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
@@ -330,7 +330,7 @@ void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar )
|
|||||||
m_menuBar->SetParent( mdi_frame );
|
m_menuBar->SetParent( mdi_frame );
|
||||||
|
|
||||||
/* insert the invisible menu bar into the _parent_ mdi frame */
|
/* insert the invisible menu bar into the _parent_ mdi frame */
|
||||||
gtk_myfixed_put( GTK_MYFIXED(mdi_frame->m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(mdi_frame->m_mainWidget),
|
||||||
m_menuBar->m_widget,
|
m_menuBar->m_widget,
|
||||||
0, 0, mdi_frame->m_width, wxMENU_HEIGHT );
|
0, 0, mdi_frame->m_width, wxMENU_HEIGHT );
|
||||||
}
|
}
|
||||||
|
@@ -71,10 +71,10 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
|
|||||||
if (!win->m_hasVMT) return;
|
if (!win->m_hasVMT) return;
|
||||||
if (gdk_event->count > 0) return;
|
if (gdk_event->count > 0) return;
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(widget);
|
GtkPizza *pizza = GTK_PIZZA(widget);
|
||||||
|
|
||||||
gtk_draw_shadow( widget->style,
|
gtk_draw_shadow( widget->style,
|
||||||
myfixed->bin_window,
|
pizza->bin_window,
|
||||||
GTK_STATE_NORMAL,
|
GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
0, 0,
|
0, 0,
|
||||||
@@ -85,20 +85,20 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
|
|||||||
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
||||||
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
||||||
{
|
{
|
||||||
GdkGC *gc = gdk_gc_new( myfixed->bin_window );
|
GdkGC *gc = gdk_gc_new( pizza->bin_window );
|
||||||
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
||||||
int x = 2;
|
int x = 2;
|
||||||
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
|
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
||||||
gdk_draw_rectangle( myfixed->bin_window, gc, TRUE,
|
gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
|
||||||
x,
|
x,
|
||||||
3,
|
3,
|
||||||
win->m_width - 4 - x,
|
win->m_width - 4 - x,
|
||||||
font->ascent + font->descent+1 );
|
font->ascent + font->descent+1 );
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->white );
|
gdk_gc_set_foreground( gc, &widget->style->white );
|
||||||
gdk_draw_string( myfixed->bin_window, font, gc,
|
gdk_draw_string( pizza->bin_window, font, gc,
|
||||||
x+2,
|
x+2,
|
||||||
3+font->ascent,
|
3+font->ascent,
|
||||||
win->m_title.mb_str() );
|
win->m_title.mb_str() );
|
||||||
@@ -117,10 +117,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
|
|
||||||
if (!win->m_hasVMT) return;
|
if (!win->m_hasVMT) return;
|
||||||
|
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(widget);
|
GtkPizza *pizza = GTK_PIZZA(widget);
|
||||||
|
|
||||||
gtk_draw_shadow( widget->style,
|
gtk_draw_shadow( widget->style,
|
||||||
myfixed->bin_window,
|
pizza->bin_window,
|
||||||
GTK_STATE_NORMAL,
|
GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
0, 0,
|
0, 0,
|
||||||
@@ -131,20 +131,20 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
(win->GetWindowStyle() & wxTINY_CAPTION_HORIZ) ||
|
||||||
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
(win->GetWindowStyle() & wxTINY_CAPTION_VERT)))
|
||||||
{
|
{
|
||||||
GdkGC *gc = gdk_gc_new( myfixed->bin_window );
|
GdkGC *gc = gdk_gc_new( pizza->bin_window );
|
||||||
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
|
||||||
int x = 2;
|
int x = 2;
|
||||||
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
|
if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
gdk_gc_set_foreground( gc, &widget->style->bg[GTK_STATE_SELECTED] );
|
||||||
gdk_draw_rectangle( myfixed->bin_window, gc, TRUE,
|
gdk_draw_rectangle( pizza->bin_window, gc, TRUE,
|
||||||
x,
|
x,
|
||||||
3,
|
3,
|
||||||
win->m_width - 4 - x,
|
win->m_width - 4 - x,
|
||||||
font->ascent + font->descent+1 );
|
font->ascent + font->descent+1 );
|
||||||
|
|
||||||
gdk_gc_set_foreground( gc, &widget->style->white );
|
gdk_gc_set_foreground( gc, &widget->style->white );
|
||||||
gdk_draw_string( myfixed->bin_window, font, gc,
|
gdk_draw_string( pizza->bin_window, font, gc,
|
||||||
x+2,
|
x+2,
|
||||||
3+font->ascent,
|
3+font->ascent,
|
||||||
win->m_title.mb_str() );
|
win->m_title.mb_str() );
|
||||||
@@ -299,7 +299,7 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
|
|||||||
{
|
{
|
||||||
GtkWidget *close_button = gtk_button_new_with_label( "x" );
|
GtkWidget *close_button = gtk_button_new_with_label( "x" );
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_mainWidget),
|
gtk_pizza_put( GTK_PIZZA(m_mainWidget),
|
||||||
close_button,
|
close_button,
|
||||||
4, 4, 12, 11 );
|
4, 4, 12, 11 );
|
||||||
|
|
||||||
|
@@ -119,7 +119,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
|
|||||||
gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
|
gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
|
||||||
GTK_SIGNAL_FUNC(gtk_radiobutton_clicked_callback), (gpointer*)this );
|
GTK_SIGNAL_FUNC(gtk_radiobutton_clicked_callback), (gpointer*)this );
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(m_parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(m_parent->m_wxwindow),
|
||||||
GTK_WIDGET(m_radio),
|
GTK_WIDGET(m_radio),
|
||||||
m_x+10, m_y+10+(i*24), 10, 10 );
|
m_x+10, m_y+10+(i*24), 10, 10 );
|
||||||
}
|
}
|
||||||
@@ -211,7 +211,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
int len = 22+gdk_string_measure( font, label->label );
|
int len = 22+gdk_string_measure( font, label->label );
|
||||||
if (len > max_len) max_len = len;
|
if (len > max_len) max_len = len;
|
||||||
|
|
||||||
gtk_myfixed_move( GTK_MYFIXED(m_parent->m_wxwindow), button, m_x+x, m_y+y );
|
gtk_pizza_move( GTK_PIZZA(m_parent->m_wxwindow), button, m_x+x, m_y+y );
|
||||||
y += 22;
|
y += 22;
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
@@ -225,7 +225,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
{
|
{
|
||||||
GtkWidget *button = GTK_WIDGET( node->Data() );
|
GtkWidget *button = GTK_WIDGET( node->Data() );
|
||||||
|
|
||||||
gtk_myfixed_resize( GTK_MYFIXED(m_parent->m_wxwindow), button, max_len, 20 );
|
gtk_pizza_resize( GTK_PIZZA(m_parent->m_wxwindow), button, max_len, 20 );
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
if (!node) break;
|
if (!node) break;
|
||||||
@@ -261,7 +261,7 @@ wxSize wxRadioBox::LayoutItems()
|
|||||||
{
|
{
|
||||||
GtkWidget *button = GTK_WIDGET( node->Data() );
|
GtkWidget *button = GTK_WIDGET( node->Data() );
|
||||||
|
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_parent->m_wxwindow), button, m_x+x, m_y+y, max, 20 );
|
gtk_pizza_set_size( GTK_PIZZA(m_parent->m_wxwindow), button, m_x+x, m_y+y, max, 20 );
|
||||||
x += max;
|
x += max;
|
||||||
|
|
||||||
node = node->Next();
|
node = node->Next();
|
||||||
|
@@ -85,6 +85,10 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
|
|||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
|
IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
|
||||||
|
|
||||||
|
BEGIN_EVENT_TABLE(wxSpinCtrl, wxControl)
|
||||||
|
EVT_CHAR(wxSpinCtrl::OnChar)
|
||||||
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
|
bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
|
||||||
const wxString& value,
|
const wxString& value,
|
||||||
const wxPoint& pos, const wxSize& size,
|
const wxPoint& pos, const wxSize& size,
|
||||||
@@ -205,6 +209,27 @@ void wxSpinCtrl::SetRange(int minVal, int maxVal)
|
|||||||
SetFocus();
|
SetFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void wxSpinCtrl::OnChar( wxKeyEvent &event )
|
||||||
|
{
|
||||||
|
wxCHECK_RET( m_widget != NULL, wxT("invalid spin ctrl") );
|
||||||
|
|
||||||
|
if (event.KeyCode() == WXK_RETURN)
|
||||||
|
{
|
||||||
|
wxWindow *top_frame = m_parent;
|
||||||
|
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
|
||||||
|
top_frame = top_frame->GetParent();
|
||||||
|
GtkWindow *window = GTK_WINDOW(top_frame->m_widget);
|
||||||
|
|
||||||
|
if (window->default_widget)
|
||||||
|
{
|
||||||
|
gtk_widget_activate (window->default_widget);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
event.Skip();
|
||||||
|
}
|
||||||
|
|
||||||
bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
|
bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
|
||||||
{
|
{
|
||||||
return GTK_SPIN_BUTTON(m_widget)->panel == window;
|
return GTK_SPIN_BUTTON(m_widget)->panel == window;
|
||||||
|
@@ -779,6 +779,20 @@ void wxTextCtrl::OnChar( wxKeyEvent &key_event )
|
|||||||
if (GetEventHandler()->ProcessEvent(event)) return;
|
if (GetEventHandler()->ProcessEvent(event)) return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((key_event.KeyCode() == WXK_RETURN) && !(m_windowStyle & wxTE_MULTILINE))
|
||||||
|
{
|
||||||
|
wxWindow *top_frame = m_parent;
|
||||||
|
while (top_frame->GetParent() && !(top_frame->GetParent()->m_isFrame))
|
||||||
|
top_frame = top_frame->GetParent();
|
||||||
|
GtkWindow *window = GTK_WINDOW(top_frame->m_widget);
|
||||||
|
|
||||||
|
if (window->default_widget)
|
||||||
|
{
|
||||||
|
gtk_widget_activate (window->default_widget);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
key_event.Skip();
|
key_event.Skip();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -106,19 +106,19 @@
|
|||||||
can find in m_widget (defined in wxWindow)
|
can find in m_widget (defined in wxWindow)
|
||||||
|
|
||||||
When the class has a client area for drawing into and for containing children
|
When the class has a client area for drawing into and for containing children
|
||||||
it has to handle the client area widget (of the type GtkMyFixed, defined in
|
it has to handle the client area widget (of the type GtkPizza, defined in
|
||||||
win_gtk.c), but there could be any number of widgets, handled by a class
|
win_gtk.c), but there could be any number of widgets, handled by a class
|
||||||
The common rule for all windows is only, that the widget that interacts with
|
The common rule for all windows is only, that the widget that interacts with
|
||||||
the rest of GTK must be referenced in m_widget and all other widgets must be
|
the rest of GTK must be referenced in m_widget and all other widgets must be
|
||||||
children of this widget on the GTK level. The top-most widget, which also
|
children of this widget on the GTK level. The top-most widget, which also
|
||||||
represents the client area, must be in the m_wxwindow field and must be of
|
represents the client area, must be in the m_wxwindow field and must be of
|
||||||
the type GtkMyFixed.
|
the type GtkPizza.
|
||||||
|
|
||||||
As I said, the window classes that display a GTK native widget only have
|
As I said, the window classes that display a GTK native widget only have
|
||||||
one widget, so in the case of e.g. the wxButton class m_widget holds a
|
one widget, so in the case of e.g. the wxButton class m_widget holds a
|
||||||
pointer to a GtkButton widget. But windows with client areas (for drawing
|
pointer to a GtkButton widget. But windows with client areas (for drawing
|
||||||
and children) have a m_widget field that is a pointer to a GtkScrolled-
|
and children) have a m_widget field that is a pointer to a GtkScrolled-
|
||||||
Window and a m_wxwindow field that is pointer to a GtkMyFixed and this
|
Window and a m_wxwindow field that is pointer to a GtkPizza and this
|
||||||
one is (in the GTK sense) a child of the GtkScrolledWindow.
|
one is (in the GTK sense) a child of the GtkScrolledWindow.
|
||||||
|
|
||||||
If the m_wxwindow field is set, then all input to this widget is inter-
|
If the m_wxwindow field is set, then all input to this widget is inter-
|
||||||
@@ -132,10 +132,10 @@
|
|||||||
clicking on a scrollbar belonging to scrolled window will inevitably move
|
clicking on a scrollbar belonging to scrolled window will inevitably move
|
||||||
the window. In wxWindows, the scrollbar will only emit an event, send this
|
the window. In wxWindows, the scrollbar will only emit an event, send this
|
||||||
to (normally) a wxScrolledWindow and that class will call ScrollWindow()
|
to (normally) a wxScrolledWindow and that class will call ScrollWindow()
|
||||||
which actually moves the window and its subchildren. Note that GtkMyFixed
|
which actually moves the window and its subchildren. Note that GtkPizza
|
||||||
memorizes how much it has been scrolled but that wxWindows forgets this
|
memorizes how much it has been scrolled but that wxWindows forgets this
|
||||||
so that the two coordinates systems have to be kept in synch. This is done
|
so that the two coordinates systems have to be kept in synch. This is done
|
||||||
in various places using the myfixed->xoffset and myfixed->yoffset values.
|
in various places using the pizza->xoffset and pizza->yoffset values.
|
||||||
|
|
||||||
III)
|
III)
|
||||||
|
|
||||||
@@ -267,8 +267,6 @@ extern bool g_isIdle;
|
|||||||
// local code (see below)
|
// local code (see below)
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
|
||||||
|
|
||||||
static void draw_frame( GtkWidget *widget, wxWindow *win )
|
static void draw_frame( GtkWidget *widget, wxWindow *win )
|
||||||
{
|
{
|
||||||
if (!win->m_hasVMT)
|
if (!win->m_hasVMT)
|
||||||
@@ -364,156 +362,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
|
|||||||
draw_frame( widget, win );
|
draw_frame( widget, win );
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // GTK_MINOR_VERSION > 0
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// key event conversion routines
|
// key code mapping routines
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION == 0)
|
|
||||||
/* these functions are copied verbatim from GTK 1.2 */
|
|
||||||
static void
|
|
||||||
gdkx_XConvertCase (KeySym symbol,
|
|
||||||
KeySym *lower,
|
|
||||||
KeySym *upper)
|
|
||||||
{
|
|
||||||
register KeySym sym = symbol;
|
|
||||||
|
|
||||||
g_return_if_fail (lower != NULL);
|
|
||||||
g_return_if_fail (upper != NULL);
|
|
||||||
|
|
||||||
*lower = sym;
|
|
||||||
*upper = sym;
|
|
||||||
|
|
||||||
switch (sym >> 8)
|
|
||||||
{
|
|
||||||
#if defined (GDK_A) && defined (GDK_Ooblique)
|
|
||||||
case 0: /* Latin 1 */
|
|
||||||
if ((sym >= GDK_A) && (sym <= GDK_Z))
|
|
||||||
*lower += (GDK_a - GDK_A);
|
|
||||||
else if ((sym >= GDK_a) && (sym <= GDK_z))
|
|
||||||
*upper -= (GDK_a - GDK_A);
|
|
||||||
else if ((sym >= GDK_Agrave) && (sym <= GDK_Odiaeresis))
|
|
||||||
*lower += (GDK_agrave - GDK_Agrave);
|
|
||||||
else if ((sym >= GDK_agrave) && (sym <= GDK_odiaeresis))
|
|
||||||
*upper -= (GDK_agrave - GDK_Agrave);
|
|
||||||
else if ((sym >= GDK_Ooblique) && (sym <= GDK_Thorn))
|
|
||||||
*lower += (GDK_oslash - GDK_Ooblique);
|
|
||||||
else if ((sym >= GDK_oslash) && (sym <= GDK_thorn))
|
|
||||||
*upper -= (GDK_oslash - GDK_Ooblique);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN1 */
|
|
||||||
|
|
||||||
#if defined (GDK_Aogonek) && defined (GDK_tcedilla)
|
|
||||||
case 1: /* Latin 2 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym == GDK_Aogonek)
|
|
||||||
*lower = GDK_aogonek;
|
|
||||||
else if (sym >= GDK_Lstroke && sym <= GDK_Sacute)
|
|
||||||
*lower += (GDK_lstroke - GDK_Lstroke);
|
|
||||||
else if (sym >= GDK_Scaron && sym <= GDK_Zacute)
|
|
||||||
*lower += (GDK_scaron - GDK_Scaron);
|
|
||||||
else if (sym >= GDK_Zcaron && sym <= GDK_Zabovedot)
|
|
||||||
*lower += (GDK_zcaron - GDK_Zcaron);
|
|
||||||
else if (sym == GDK_aogonek)
|
|
||||||
*upper = GDK_Aogonek;
|
|
||||||
else if (sym >= GDK_lstroke && sym <= GDK_sacute)
|
|
||||||
*upper -= (GDK_lstroke - GDK_Lstroke);
|
|
||||||
else if (sym >= GDK_scaron && sym <= GDK_zacute)
|
|
||||||
*upper -= (GDK_scaron - GDK_Scaron);
|
|
||||||
else if (sym >= GDK_zcaron && sym <= GDK_zabovedot)
|
|
||||||
*upper -= (GDK_zcaron - GDK_Zcaron);
|
|
||||||
else if (sym >= GDK_Racute && sym <= GDK_Tcedilla)
|
|
||||||
*lower += (GDK_racute - GDK_Racute);
|
|
||||||
else if (sym >= GDK_racute && sym <= GDK_tcedilla)
|
|
||||||
*upper -= (GDK_racute - GDK_Racute);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN2 */
|
|
||||||
|
|
||||||
#if defined (GDK_Hstroke) && defined (GDK_Cabovedot)
|
|
||||||
case 2: /* Latin 3 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Hstroke && sym <= GDK_Hcircumflex)
|
|
||||||
*lower += (GDK_hstroke - GDK_Hstroke);
|
|
||||||
else if (sym >= GDK_Gbreve && sym <= GDK_Jcircumflex)
|
|
||||||
*lower += (GDK_gbreve - GDK_Gbreve);
|
|
||||||
else if (sym >= GDK_hstroke && sym <= GDK_hcircumflex)
|
|
||||||
*upper -= (GDK_hstroke - GDK_Hstroke);
|
|
||||||
else if (sym >= GDK_gbreve && sym <= GDK_jcircumflex)
|
|
||||||
*upper -= (GDK_gbreve - GDK_Gbreve);
|
|
||||||
else if (sym >= GDK_Cabovedot && sym <= GDK_Scircumflex)
|
|
||||||
*lower += (GDK_cabovedot - GDK_Cabovedot);
|
|
||||||
else if (sym >= GDK_cabovedot && sym <= GDK_scircumflex)
|
|
||||||
*upper -= (GDK_cabovedot - GDK_Cabovedot);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN3 */
|
|
||||||
|
|
||||||
#if defined (GDK_Rcedilla) && defined (GDK_Amacron)
|
|
||||||
case 3: /* Latin 4 */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Rcedilla && sym <= GDK_Tslash)
|
|
||||||
*lower += (GDK_rcedilla - GDK_Rcedilla);
|
|
||||||
else if (sym >= GDK_rcedilla && sym <= GDK_tslash)
|
|
||||||
*upper -= (GDK_rcedilla - GDK_Rcedilla);
|
|
||||||
else if (sym == GDK_ENG)
|
|
||||||
*lower = GDK_eng;
|
|
||||||
else if (sym == GDK_eng)
|
|
||||||
*upper = GDK_ENG;
|
|
||||||
else if (sym >= GDK_Amacron && sym <= GDK_Umacron)
|
|
||||||
*lower += (GDK_amacron - GDK_Amacron);
|
|
||||||
else if (sym >= GDK_amacron && sym <= GDK_umacron)
|
|
||||||
*upper -= (GDK_amacron - GDK_Amacron);
|
|
||||||
break;
|
|
||||||
#endif /* LATIN4 */
|
|
||||||
|
|
||||||
#if defined (GDK_Serbian_DJE) && defined (GDK_Cyrillic_yu)
|
|
||||||
case 6: /* Cyrillic */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Serbian_DJE && sym <= GDK_Serbian_DZE)
|
|
||||||
*lower -= (GDK_Serbian_DJE - GDK_Serbian_dje);
|
|
||||||
else if (sym >= GDK_Serbian_dje && sym <= GDK_Serbian_dze)
|
|
||||||
*upper += (GDK_Serbian_DJE - GDK_Serbian_dje);
|
|
||||||
else if (sym >= GDK_Cyrillic_YU && sym <= GDK_Cyrillic_HARDSIGN)
|
|
||||||
*lower -= (GDK_Cyrillic_YU - GDK_Cyrillic_yu);
|
|
||||||
else if (sym >= GDK_Cyrillic_yu && sym <= GDK_Cyrillic_hardsign)
|
|
||||||
*upper += (GDK_Cyrillic_YU - GDK_Cyrillic_yu);
|
|
||||||
break;
|
|
||||||
#endif /* CYRILLIC */
|
|
||||||
|
|
||||||
#if defined (GDK_Greek_ALPHAaccent) && defined (GDK_Greek_finalsmallsigma)
|
|
||||||
case 7: /* Greek */
|
|
||||||
/* Assume the KeySym is a legal value (ignore discontinuities) */
|
|
||||||
if (sym >= GDK_Greek_ALPHAaccent && sym <= GDK_Greek_OMEGAaccent)
|
|
||||||
*lower += (GDK_Greek_alphaaccent - GDK_Greek_ALPHAaccent);
|
|
||||||
else if (sym >= GDK_Greek_alphaaccent && sym <= GDK_Greek_omegaaccent &&
|
|
||||||
sym != GDK_Greek_iotaaccentdieresis &&
|
|
||||||
sym != GDK_Greek_upsilonaccentdieresis)
|
|
||||||
*upper -= (GDK_Greek_alphaaccent - GDK_Greek_ALPHAaccent);
|
|
||||||
else if (sym >= GDK_Greek_ALPHA && sym <= GDK_Greek_OMEGA)
|
|
||||||
*lower += (GDK_Greek_alpha - GDK_Greek_ALPHA);
|
|
||||||
else if (sym >= GDK_Greek_alpha && sym <= GDK_Greek_omega &&
|
|
||||||
sym != GDK_Greek_finalsmallsigma)
|
|
||||||
*upper -= (GDK_Greek_alpha - GDK_Greek_ALPHA);
|
|
||||||
break;
|
|
||||||
#endif /* GREEK */
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static guint
|
|
||||||
gdk_keyval_to_upper (guint keyval)
|
|
||||||
{
|
|
||||||
if (keyval)
|
|
||||||
{
|
|
||||||
KeySym lower_val = 0;
|
|
||||||
KeySym upper_val = 0;
|
|
||||||
|
|
||||||
gdkx_XConvertCase (keyval, &lower_val, &upper_val);
|
|
||||||
return upper_val;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static long map_to_unmodified_wx_keysym( KeySym keysym )
|
static long map_to_unmodified_wx_keysym( KeySym keysym )
|
||||||
{
|
{
|
||||||
guint key_code = 0;
|
guint key_code = 0;
|
||||||
@@ -855,6 +707,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
|
|||||||
ret = ancestor->GetEventHandler()->ProcessEvent( command_event );
|
ret = ancestor->GetEventHandler()->ProcessEvent( command_event );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (ancestor->m_isFrame)
|
||||||
|
break;
|
||||||
ancestor = ancestor->GetParent();
|
ancestor = ancestor->GetParent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -906,7 +760,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
#if (GTK_MINOR_VERSION > 0)
|
||||||
/* pressing F10 will activate the menu bar of the top frame */
|
/* Pressing F10 will activate the menu bar of the top frame. */
|
||||||
|
/* Doesn't work. */
|
||||||
/*
|
/*
|
||||||
if ( (!ret) &&
|
if ( (!ret) &&
|
||||||
(gdk_event->keyval == GDK_F10) )
|
(gdk_event->keyval == GDK_F10) )
|
||||||
@@ -1113,9 +968,9 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1240,9 +1095,9 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1360,9 +1215,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
|
|||||||
int y = event.m_y;
|
int y = event.m_y;
|
||||||
if (win->m_wxwindow)
|
if (win->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
|
||||||
x += myfixed->xoffset;
|
x += pizza->xoffset;
|
||||||
y += myfixed->yoffset;
|
y += pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxNode *node = win->GetChildren().First();
|
wxNode *node = win->GetChildren().First();
|
||||||
@@ -1806,11 +1661,11 @@ static void wxInsertChildInWindow( wxWindow* parent, wxWindow* child )
|
|||||||
{
|
{
|
||||||
/* the window might have been scrolled already, do we
|
/* the window might have been scrolled already, do we
|
||||||
have to adapt the position */
|
have to adapt the position */
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(parent->m_wxwindow);
|
||||||
child->m_x += myfixed->xoffset;
|
child->m_x += pizza->xoffset;
|
||||||
child->m_y += myfixed->yoffset;
|
child->m_y += pizza->yoffset;
|
||||||
|
|
||||||
gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
|
gtk_pizza_put( GTK_PIZZA(parent->m_wxwindow),
|
||||||
GTK_WIDGET(child->m_widget),
|
GTK_WIDGET(child->m_widget),
|
||||||
child->m_x,
|
child->m_x,
|
||||||
child->m_y,
|
child->m_y,
|
||||||
@@ -1933,7 +1788,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
|
|||||||
m_hAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->hscrollbar) );
|
m_hAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->hscrollbar) );
|
||||||
m_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
|
m_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
|
||||||
|
|
||||||
m_wxwindow = gtk_myfixed_new();
|
m_wxwindow = gtk_pizza_new();
|
||||||
|
|
||||||
#ifdef __WXDEBUG__
|
#ifdef __WXDEBUG__
|
||||||
debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name );
|
debug_focus_in( m_wxwindow, wxT("wxWindow::m_wxwindow"), name );
|
||||||
@@ -1942,23 +1797,23 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
|
|||||||
gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow );
|
gtk_container_add( GTK_CONTAINER(m_widget), m_wxwindow );
|
||||||
|
|
||||||
#if (GTK_MINOR_VERSION > 0)
|
#if (GTK_MINOR_VERSION > 0)
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
|
|
||||||
if (HasFlag(wxRAISED_BORDER))
|
if (HasFlag(wxRAISED_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_OUT );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_OUT );
|
||||||
}
|
}
|
||||||
else if (HasFlag(wxSUNKEN_BORDER))
|
else if (HasFlag(wxSUNKEN_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_IN );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_IN );
|
||||||
}
|
}
|
||||||
else if (HasFlag(wxSIMPLE_BORDER))
|
else if (HasFlag(wxSIMPLE_BORDER))
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_THIN );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_THIN );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_NONE );
|
gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_NONE );
|
||||||
}
|
}
|
||||||
#else // GTK_MINOR_VERSION == 0
|
#else // GTK_MINOR_VERSION == 0
|
||||||
GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
|
GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
|
||||||
@@ -2213,19 +2068,19 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
|
||||||
|
|
||||||
if ((sizeFlags & wxSIZE_ALLOW_MINUS_ONE) == 0)
|
if ((sizeFlags & wxSIZE_ALLOW_MINUS_ONE) == 0)
|
||||||
{
|
{
|
||||||
if (x != -1) m_x = x + myfixed->xoffset;
|
if (x != -1) m_x = x + pizza->xoffset;
|
||||||
if (y != -1) m_y = y + myfixed->yoffset;
|
if (y != -1) m_y = y + pizza->yoffset;
|
||||||
if (width != -1) m_width = width;
|
if (width != -1) m_width = width;
|
||||||
if (height != -1) m_height = height;
|
if (height != -1) m_height = height;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_x = x + myfixed->xoffset;
|
m_x = x + pizza->xoffset;
|
||||||
m_y = y + myfixed->yoffset;
|
m_y = y + pizza->yoffset;
|
||||||
m_width = width;
|
m_width = width;
|
||||||
m_height = height;
|
m_height = height;
|
||||||
}
|
}
|
||||||
@@ -2255,7 +2110,7 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
|
|||||||
bottom_border = 5;
|
bottom_border = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_myfixed_set_size( GTK_MYFIXED(m_parent->m_wxwindow),
|
gtk_pizza_set_size( GTK_PIZZA(m_parent->m_wxwindow),
|
||||||
m_widget,
|
m_widget,
|
||||||
m_x-border,
|
m_x-border,
|
||||||
m_y-border,
|
m_y-border,
|
||||||
@@ -2294,7 +2149,7 @@ void wxWindow::OnInternalIdle()
|
|||||||
|
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GdkWindow *window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
GdkWindow *window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
if (window)
|
if (window)
|
||||||
gdk_window_set_cursor( window, cursor.GetCursor() );
|
gdk_window_set_cursor( window, cursor.GetCursor() );
|
||||||
|
|
||||||
@@ -2484,9 +2339,9 @@ void wxWindow::DoGetPosition( int *x, int *y ) const
|
|||||||
int dy = 0;
|
int dy = 0;
|
||||||
if (m_parent && m_parent->m_wxwindow)
|
if (m_parent && m_parent->m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
|
||||||
dx = myfixed->xoffset;
|
dx = pizza->xoffset;
|
||||||
dy = myfixed->yoffset;
|
dy = pizza->yoffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (x) (*x) = m_x - dx;
|
if (x) (*x) = m_x - dx;
|
||||||
@@ -2501,7 +2356,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const
|
|||||||
|
|
||||||
GdkWindow *source = (GdkWindow *) NULL;
|
GdkWindow *source = (GdkWindow *) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
source = GTK_MYFIXED(m_wxwindow)->bin_window;
|
source = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
source = m_widget->window;
|
source = m_widget->window;
|
||||||
|
|
||||||
@@ -2530,7 +2385,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const
|
|||||||
|
|
||||||
GdkWindow *source = (GdkWindow *) NULL;
|
GdkWindow *source = (GdkWindow *) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
source = GTK_MYFIXED(m_wxwindow)->bin_window;
|
source = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
source = m_widget->window;
|
source = m_widget->window;
|
||||||
|
|
||||||
@@ -2738,7 +2593,7 @@ void wxWindow::WarpPointer( int x, int y )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -2756,30 +2611,30 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
|
|||||||
{
|
{
|
||||||
if (rect)
|
if (rect)
|
||||||
{
|
{
|
||||||
gdk_window_clear_area( GTK_MYFIXED(m_wxwindow)->bin_window,
|
gdk_window_clear_area( GTK_PIZZA(m_wxwindow)->bin_window,
|
||||||
rect->x, rect->y,
|
rect->x, rect->y,
|
||||||
rect->width, rect->height );
|
rect->width, rect->height );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdk_window_clear( GTK_MYFIXED(m_wxwindow)->bin_window );
|
gdk_window_clear( GTK_PIZZA(m_wxwindow)->bin_window );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* there is no GTK equivalent of "draw only, don't clear" so we
|
/* there is no GTK equivalent of "draw only, don't clear" so we
|
||||||
invent our own in the GtkMyFixed widget */
|
invent our own in the GtkPizza widget */
|
||||||
|
|
||||||
if (!rect)
|
if (!rect)
|
||||||
{
|
{
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
gboolean old_clear = myfixed->clear_on_draw;
|
gboolean old_clear = pizza->clear_on_draw;
|
||||||
gtk_my_fixed_set_clear( myfixed, FALSE );
|
gtk_pizza_set_clear( pizza, FALSE );
|
||||||
|
|
||||||
gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
|
gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
|
||||||
|
|
||||||
gtk_my_fixed_set_clear( myfixed, old_clear );
|
gtk_pizza_set_clear( pizza, old_clear );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
|
gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
|
||||||
@@ -2794,13 +2649,13 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
|
|||||||
|
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
{
|
{
|
||||||
GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
|
GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
|
||||||
gboolean old_clear = myfixed->clear_on_draw;
|
gboolean old_clear = pizza->clear_on_draw;
|
||||||
gtk_my_fixed_set_clear( myfixed, FALSE );
|
gtk_pizza_set_clear( pizza, FALSE );
|
||||||
|
|
||||||
gtk_widget_draw( m_wxwindow, &gdk_rect );
|
gtk_widget_draw( m_wxwindow, &gdk_rect );
|
||||||
|
|
||||||
gtk_my_fixed_set_clear( myfixed, old_clear );
|
gtk_pizza_set_clear( pizza, old_clear );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gtk_widget_draw( m_widget, &gdk_rect );
|
gtk_widget_draw( m_widget, &gdk_rect );
|
||||||
@@ -2847,7 +2702,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -2899,7 +2754,7 @@ bool wxWindow::SetForegroundColour( const wxColour &colour )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3073,7 +2928,7 @@ GtkWidget* wxWindow::GetConnectWidget()
|
|||||||
bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
|
bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
|
||||||
{
|
{
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
return (window == GTK_MYFIXED(m_wxwindow)->bin_window);
|
return (window == GTK_PIZZA(m_wxwindow)->bin_window);
|
||||||
|
|
||||||
return (window == m_widget->window);
|
return (window == m_widget->window);
|
||||||
}
|
}
|
||||||
@@ -3091,7 +2946,7 @@ bool wxWindow::SetFont( const wxFont &font )
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3129,7 +2984,7 @@ void wxWindow::CaptureMouse()
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3155,7 +3010,7 @@ void wxWindow::ReleaseMouse()
|
|||||||
|
|
||||||
GdkWindow *window = (GdkWindow*) NULL;
|
GdkWindow *window = (GdkWindow*) NULL;
|
||||||
if (m_wxwindow)
|
if (m_wxwindow)
|
||||||
window = GTK_MYFIXED(m_wxwindow)->bin_window;
|
window = GTK_PIZZA(m_wxwindow)->bin_window;
|
||||||
else
|
else
|
||||||
window = GetConnectWidget()->window;
|
window = GetConnectWidget()->window;
|
||||||
|
|
||||||
@@ -3319,7 +3174,7 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
|
|||||||
|
|
||||||
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
|
wxCHECK_RET( m_wxwindow != NULL, wxT("window needs client area for scrolling") );
|
||||||
|
|
||||||
gtk_myfixed_scroll( GTK_MYFIXED(m_wxwindow), -dx, -dy );
|
gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (!m_scrollGC)
|
if (!m_scrollGC)
|
||||||
|
@@ -95,7 +95,7 @@ void wxGLContext::SwapBuffers()
|
|||||||
{
|
{
|
||||||
if (m_glContext)
|
if (m_glContext)
|
||||||
{
|
{
|
||||||
GdkWindow *window = GTK_MYFIXED(m_widget)->bin_window;
|
GdkWindow *window = GTK_PIZZA(m_widget)->bin_window;
|
||||||
glXSwapBuffers( GDK_DISPLAY(), GDK_WINDOW_XWINDOW( window ) );
|
glXSwapBuffers( GDK_DISPLAY(), GDK_WINDOW_XWINDOW( window ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -104,7 +104,7 @@ void wxGLContext::SetCurrent()
|
|||||||
{
|
{
|
||||||
if (m_glContext)
|
if (m_glContext)
|
||||||
{
|
{
|
||||||
GdkWindow *window = GTK_MYFIXED(m_widget)->bin_window;
|
GdkWindow *window = GTK_PIZZA(m_widget)->bin_window;
|
||||||
glXMakeCurrent( GDK_DISPLAY(), GDK_WINDOW_XWINDOW(window), m_glContext );
|
glXMakeCurrent( GDK_DISPLAY(), GDK_WINDOW_XWINDOW(window), m_glContext );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -304,7 +304,7 @@ bool wxGLCanvas::Create( wxWindow *parent,
|
|||||||
|
|
||||||
m_glWidget = m_wxwindow;
|
m_glWidget = m_wxwindow;
|
||||||
|
|
||||||
gtk_my_fixed_set_clear( GTK_MYFIXED(m_wxwindow), FALSE );
|
gtk_pizza_set_clear( GTK_PIZZA(m_wxwindow), FALSE );
|
||||||
|
|
||||||
gtk_signal_connect( GTK_OBJECT(m_wxwindow), "realize",
|
gtk_signal_connect( GTK_OBJECT(m_wxwindow), "realize",
|
||||||
GTK_SIGNAL_FUNC(gtk_glwindow_realized_callback), (gpointer) this );
|
GTK_SIGNAL_FUNC(gtk_glwindow_realized_callback), (gpointer) this );
|
||||||
|
Reference in New Issue
Block a user