]> git.saurik.com Git - wxWidgets.git/commitdiff
Renamed GtkMyFixed to GtkPizza,
authorRobert Roebling <robert@roebling.de>
Fri, 29 Oct 1999 17:20:44 +0000 (17:20 +0000)
committerRobert Roebling <robert@roebling.de>
Fri, 29 Oct 1999 17:20:44 +0000 (17:20 +0000)
  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

27 files changed:
include/wx/gtk/spinctrl.h
include/wx/gtk/win_gtk.h
include/wx/gtk1/spinctrl.h
include/wx/gtk1/win_gtk.h
src/gtk/button.cpp
src/gtk/dcclient.cpp
src/gtk/dialog.cpp
src/gtk/frame.cpp
src/gtk/mdi.cpp
src/gtk/minifram.cpp
src/gtk/radiobox.cpp
src/gtk/spinctrl.cpp
src/gtk/textctrl.cpp
src/gtk/win_gtk.c
src/gtk/window.cpp
src/gtk1/button.cpp
src/gtk1/dcclient.cpp
src/gtk1/dialog.cpp
src/gtk1/frame.cpp
src/gtk1/mdi.cpp
src/gtk1/minifram.cpp
src/gtk1/radiobox.cpp
src/gtk1/spinctrl.cpp
src/gtk1/textctrl.cpp
src/gtk1/win_gtk.c
src/gtk1/window.cpp
utils/glcanvas/gtk/glcanvas.cpp

index c2afe4645c16493b46af40b78460e26423b8c51e..1bb09317c69cad1319a3d38f806e7a7f5c21fa94 100644 (file)
@@ -53,6 +53,8 @@ public:
     virtual int GetMax() const;
 
     // implementation
+    void OnChar( wxKeyEvent &event );
+    
     bool IsOwnGtkWindow( GdkWindow *window );
     void ApplyWidgetStyle();
 
@@ -61,6 +63,7 @@ public:
 
 private:
     DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
+    DECLARE_EVENT_TABLE()
 };
 
 #endif
index e48944e75fe4a3760c6fcdf35b19edc11373ce1f..1029d03f85318539652bcd5500866c4cc4fe492b 100644 (file)
@@ -1,6 +1,6 @@
 /* ///////////////////////////////////////////////////////////////////////////
 // Name:        win_gtk.h
-// Purpose:     wxWindows's GTK base widget
+// Purpose:     wxWindows's GTK base widget = GtkPizza
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
@@ -8,8 +8,8 @@
 /////////////////////////////////////////////////////////////////////////// */
 
 
-#ifndef __GTK_MYFIXED_H__
-#define __GTK_MYFIXED_H__
+#ifndef __GTK_PIZZA_H__
+#define __GTK_PIZZA_H__
 
 #include <gdk/gdk.h>
 #include <gtk/gtkcontainer.h>
@@ -21,9 +21,9 @@ extern "C" {
 #endif /* __cplusplus */
 
 
-#define GTK_MYFIXED(obj)          GTK_CHECK_CAST (obj, gtk_myfixed_get_type (), GtkMyFixed)
-#define GTK_MYFIXED_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_myfixed_get_type (), GtkMyFixedClass)
-#define GTK_IS_MYFIXED(obj)       GTK_CHECK_TYPE (obj, gtk_myfixed_get_type ())
+#define GTK_PIZZA(obj)          GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
+#define GTK_PIZZA_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
+#define GTK_IS_PIZZA(obj)       GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
 
 /* Shadow types */
 typedef enum
@@ -34,10 +34,10 @@ typedef enum
   GTK_MYSHADOW_OUT
 } GtkMyShadowType;
 
-typedef struct _GtkMyFixed        GtkMyFixed;
-typedef struct _GtkMyFixedClass   GtkMyFixedClass;
+typedef struct _GtkPizza        GtkPizza;
+typedef struct _GtkPizzaClass   GtkPizzaClass;
 
-struct _GtkMyFixed
+struct _GtkPizza
 {
   GtkContainer container;
   GList *children;
@@ -59,46 +59,46 @@ struct _GtkMyFixed
   gboolean clear_on_draw;
 };
 
-struct _GtkMyFixedClass
+struct _GtkPizzaClass
 {
   GtkContainerClass parent_class;
 
-  void  (*set_scroll_adjustments)   (GtkMyFixed     *myfixed,
+  void  (*set_scroll_adjustments)   (GtkPizza     *pizza,
                                     GtkAdjustment  *hadjustment,
                                     GtkAdjustment  *vadjustment);
 };
 
-guint      gtk_myfixed_get_type        (void);
-GtkWidget* gtk_myfixed_new             (void);
+guint      gtk_pizza_get_type        (void);
+GtkWidget* gtk_pizza_new             (void);
 
-void       gtk_myfixed_set_shadow_type (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_shadow_type (GtkPizza     *pizza,
                                        GtkMyShadowType  type);
                                        
-void       gtk_my_fixed_set_clear      (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_clear      (GtkPizza     *pizza,
                                         gboolean        clear);                
                                        
-void       gtk_myfixed_scroll                  (GtkMyFixed     *myfixed,       
+void       gtk_pizza_scroll            (GtkPizza     *pizza,   
                                          gint         dx,
                                          gint         dy);
                                        
-void       gtk_myfixed_put             (GtkMyFixed     *myfixed,
+void       gtk_pizza_put             (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y,
                                        gint         width,
                                        gint         height);
 
-void       gtk_myfixed_move            (GtkMyFixed     *myfixed,
+void       gtk_pizza_move            (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y );
                                        
-void       gtk_myfixed_resize          (GtkMyFixed     *myfixed,
+void       gtk_pizza_resize          (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         width,
                                         gint         height );
                                        
-void       gtk_myfixed_set_size        (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_size        (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y,
@@ -109,4 +109,4 @@ void       gtk_myfixed_set_size        (GtkMyFixed     *myfixed,
 #endif /* __cplusplus */
 
 
-#endif /* __GTK_MYFIXED_H__ */
+#endif /* __GTK_PIZZA_H__ */
index c2afe4645c16493b46af40b78460e26423b8c51e..1bb09317c69cad1319a3d38f806e7a7f5c21fa94 100644 (file)
@@ -53,6 +53,8 @@ public:
     virtual int GetMax() const;
 
     // implementation
+    void OnChar( wxKeyEvent &event );
+    
     bool IsOwnGtkWindow( GdkWindow *window );
     void ApplyWidgetStyle();
 
@@ -61,6 +63,7 @@ public:
 
 private:
     DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
+    DECLARE_EVENT_TABLE()
 };
 
 #endif
index e48944e75fe4a3760c6fcdf35b19edc11373ce1f..1029d03f85318539652bcd5500866c4cc4fe492b 100644 (file)
@@ -1,6 +1,6 @@
 /* ///////////////////////////////////////////////////////////////////////////
 // Name:        win_gtk.h
-// Purpose:     wxWindows's GTK base widget
+// Purpose:     wxWindows's GTK base widget = GtkPizza
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
@@ -8,8 +8,8 @@
 /////////////////////////////////////////////////////////////////////////// */
 
 
-#ifndef __GTK_MYFIXED_H__
-#define __GTK_MYFIXED_H__
+#ifndef __GTK_PIZZA_H__
+#define __GTK_PIZZA_H__
 
 #include <gdk/gdk.h>
 #include <gtk/gtkcontainer.h>
@@ -21,9 +21,9 @@ extern "C" {
 #endif /* __cplusplus */
 
 
-#define GTK_MYFIXED(obj)          GTK_CHECK_CAST (obj, gtk_myfixed_get_type (), GtkMyFixed)
-#define GTK_MYFIXED_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_myfixed_get_type (), GtkMyFixedClass)
-#define GTK_IS_MYFIXED(obj)       GTK_CHECK_TYPE (obj, gtk_myfixed_get_type ())
+#define GTK_PIZZA(obj)          GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
+#define GTK_PIZZA_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
+#define GTK_IS_PIZZA(obj)       GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
 
 /* Shadow types */
 typedef enum
@@ -34,10 +34,10 @@ typedef enum
   GTK_MYSHADOW_OUT
 } GtkMyShadowType;
 
-typedef struct _GtkMyFixed        GtkMyFixed;
-typedef struct _GtkMyFixedClass   GtkMyFixedClass;
+typedef struct _GtkPizza        GtkPizza;
+typedef struct _GtkPizzaClass   GtkPizzaClass;
 
-struct _GtkMyFixed
+struct _GtkPizza
 {
   GtkContainer container;
   GList *children;
@@ -59,46 +59,46 @@ struct _GtkMyFixed
   gboolean clear_on_draw;
 };
 
-struct _GtkMyFixedClass
+struct _GtkPizzaClass
 {
   GtkContainerClass parent_class;
 
-  void  (*set_scroll_adjustments)   (GtkMyFixed     *myfixed,
+  void  (*set_scroll_adjustments)   (GtkPizza     *pizza,
                                     GtkAdjustment  *hadjustment,
                                     GtkAdjustment  *vadjustment);
 };
 
-guint      gtk_myfixed_get_type        (void);
-GtkWidget* gtk_myfixed_new             (void);
+guint      gtk_pizza_get_type        (void);
+GtkWidget* gtk_pizza_new             (void);
 
-void       gtk_myfixed_set_shadow_type (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_shadow_type (GtkPizza     *pizza,
                                        GtkMyShadowType  type);
                                        
-void       gtk_my_fixed_set_clear      (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_clear      (GtkPizza     *pizza,
                                         gboolean        clear);                
                                        
-void       gtk_myfixed_scroll                  (GtkMyFixed     *myfixed,       
+void       gtk_pizza_scroll            (GtkPizza     *pizza,   
                                          gint         dx,
                                          gint         dy);
                                        
-void       gtk_myfixed_put             (GtkMyFixed     *myfixed,
+void       gtk_pizza_put             (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y,
                                        gint         width,
                                        gint         height);
 
-void       gtk_myfixed_move            (GtkMyFixed     *myfixed,
+void       gtk_pizza_move            (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y );
                                        
-void       gtk_myfixed_resize          (GtkMyFixed     *myfixed,
+void       gtk_pizza_resize          (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         width,
                                         gint         height );
                                        
-void       gtk_myfixed_set_size        (GtkMyFixed     *myfixed,
+void       gtk_pizza_set_size        (GtkPizza     *pizza,
                                         GtkWidget      *widget,
                                         gint         x,
                                         gint         y,
@@ -109,4 +109,4 @@ void       gtk_myfixed_set_size        (GtkMyFixed     *myfixed,
 #endif /* __cplusplus */
 
 
-#endif /* __GTK_MYFIXED_H__ */
+#endif /* __GTK_PIZZA_H__ */
index 39d94b37b1fe3a05517b3e792f39b57514811934..cd85a483aec4614ef04b00a9002c058026f79376 100644 (file)
@@ -64,14 +64,12 @@ wxButton::wxButton()
 
 wxButton::~wxButton()
 {
-    if (m_clientData) delete m_clientData;
 }
 
 bool wxButton::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
       const wxPoint &pos, const wxSize &size,
       long style, const wxValidator& validator, const wxString &name )
 {
-    m_clientData = (wxClientData*) NULL;
     m_needParent = TRUE;
     m_acceptsFocus = TRUE;
 
@@ -126,7 +124,7 @@ bool wxButton::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
     return TRUE;
 }
 
-void wxButton::SetDefault(void)
+void wxButton::SetDefault()
 {
     GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
     gtk_widget_grab_default( m_widget );
index a3ddfa66a0f5a0300680419112b72aac2cba8347..fd0105435aceaf2daa1f7ff0ff4e9dcd8b19248b 100644 (file)
@@ -119,8 +119,8 @@ wxWindowDC::wxWindowDC( wxWindow *window )
 
     wxASSERT_MSG( widget, wxT("DC needs a widget") );
 
-    GtkMyFixed *myfixed = GTK_MYFIXED( widget );
-    m_window = myfixed->bin_window;
+    GtkPizza *pizza = GTK_PIZZA( widget );
+    m_window = pizza->bin_window;
 
     /* not realized ? */
     if (!m_window)
index e51c6cb3db7d0c63c23b6fc8cf73f078ae6e49b8..712a1fd986e30335547208f9f3a02216a519996e 100644 (file)
@@ -194,7 +194,7 @@ gtk_dialog_realized_callback( GtkWidget *widget, wxDialog *win )
 
 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),
                      child->m_x,
                      child->m_y,
@@ -269,7 +269,7 @@ bool wxDialog::Create( wxWindow *parent,
     gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
         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_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
 
index 3098d050c0f0a6adb57fdc5e2375286bbccbbf2b..928f7fa9000a2e9b70ae62d14d26ebd1ef350e22 100644 (file)
@@ -300,7 +300,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
     {
         /* these are outside the client area */
         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),
                          child->m_x,
                          child->m_y,
@@ -327,7 +327,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
     else
     {
         /* 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),
                          child->m_x,
                          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 );
 
     /* 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_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
     gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
@@ -428,7 +428,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
 #endif
 
     /* 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_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_width = ww;
             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,
                                   xx, yy, ww, 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_height = hh;   don't change the toolbar's reported size
                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,
                                   xx, yy, ww, 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_w = m_width - 2*m_miniEdge;
         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,
                               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_width = ww;
         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,
                               xx, yy, ww, hh );
     }
@@ -902,7 +902,7 @@ void wxFrame::SetMenuBar( wxMenuBar *menuBar )
         if (m_frameMenuBar->GetParent() != 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_x,
                 m_frameMenuBar->m_y,
index 343743670603a0bf5c667a5391ecdb691a15642e..f31951f90c049f913797308e8c9696fc10bdb096 100644 (file)
@@ -120,7 +120,7 @@ void wxMDIParentFrame::GtkOnSize( int x, int y, int width, int height )
     menu_bar->m_y = 0;
     menu_bar->m_width = m_width;
     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, 
                           0, 0, m_width, wxMENU_HEIGHT );
 }
@@ -159,7 +159,7 @@ void wxMDIParentFrame::OnInternalIdle()
                {
                    menu_bar->m_width = m_width;
                    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, 
                                          0, 0, m_width, wxMENU_HEIGHT );
                    menu_bar->SetInvokingWindow( child_frame );
@@ -193,7 +193,7 @@ void wxMDIParentFrame::OnInternalIdle()
            
            m_frameMenuBar->m_width = m_width;
            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, 
                                  0, 0, m_width, wxMENU_HEIGHT );
        }
@@ -330,7 +330,7 @@ void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar )
         m_menuBar->SetParent( 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, 
                          0, 0,  mdi_frame->m_width, wxMENU_HEIGHT );
     }
index 26a08dea2349c388801c9c52fedb969c66ca34ea..5f26abaf61ffa115c9c8c3da0cc854bebf32fdf9 100644 (file)
@@ -71,10 +71,10 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
     if (!win->m_hasVMT) return;
     if (gdk_event->count > 0) return;
     
-    GtkMyFixed *myfixed = GTK_MYFIXED(widget);
+    GtkPizza *pizza = GTK_PIZZA(widget);
     
     gtk_draw_shadow( widget->style, 
-                     myfixed->bin_window,
+                     pizza->bin_window,
                      GTK_STATE_NORMAL,
                      GTK_SHADOW_OUT,
                      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_VERT)))
     {
-        GdkGC *gc = gdk_gc_new( myfixed->bin_window );
+        GdkGC *gc = gdk_gc_new( pizza->bin_window );
         GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
         int x = 2;
         if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
         
         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, 
                             3, 
                             win->m_width - 4 - x,
                             font->ascent + font->descent+1 );
                             
         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, 
                          3+font->ascent, 
                          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;
     
-    GtkMyFixed *myfixed = GTK_MYFIXED(widget);
+    GtkPizza *pizza = GTK_PIZZA(widget);
     
     gtk_draw_shadow( widget->style, 
-                     myfixed->bin_window,
+                     pizza->bin_window,
                      GTK_STATE_NORMAL,
                      GTK_SHADOW_OUT,
                      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_VERT)))
     {
-        GdkGC *gc = gdk_gc_new( myfixed->bin_window );
+        GdkGC *gc = gdk_gc_new( pizza->bin_window );
         GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
         int x = 2;
         if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
         
         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, 
                             3, 
                             win->m_width - 4 - x,
                             font->ascent + font->descent+1 );
                             
         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, 
                          3+font->ascent, 
                          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" );
     
-        gtk_myfixed_put( GTK_MYFIXED(m_mainWidget), 
+        gtk_pizza_put( GTK_PIZZA(m_mainWidget), 
                          close_button, 
                          4, 4, 12, 11 );
     
index 53796108d5974db079d96060750e717485000cb5..2d30dff5e14a572b9bae868f01d74ced85f3c9bf 100644 (file)
@@ -119,7 +119,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
         gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
            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),
                          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 );
                 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;
 
                 node = node->Next();
@@ -225,7 +225,7 @@ wxSize wxRadioBox::LayoutItems()
             {
                 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();
                 if (!node) break;
@@ -261,7 +261,7 @@ wxSize wxRadioBox::LayoutItems()
         {
             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;
 
             node = node->Next();
index 77cc2b8fe5f299f112f1436ee59ef10ff453a14c..5a46da4048f9191ebb37b4623d83bf04cd2418f4 100644 (file)
@@ -85,6 +85,10 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
 
 IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
 
+BEGIN_EVENT_TABLE(wxSpinCtrl, wxControl)
+    EVT_CHAR(wxSpinCtrl::OnChar)
+END_EVENT_TABLE()
+
 bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
                         const wxString& value,
                         const wxPoint& pos,  const wxSize& size,
@@ -205,6 +209,27 @@ void wxSpinCtrl::SetRange(int minVal, int maxVal)
     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 )
 {
     return GTK_SPIN_BUTTON(m_widget)->panel == window;
index 8a2fcc64919c74b599cbe586c5d3a70f518f1596..1039af2f372bdccd42e43f1ddeb6dc3cc517be50 100644 (file)
@@ -779,6 +779,20 @@ void wxTextCtrl::OnChar( wxKeyEvent &key_event )
         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();
 }
 
index 1c9d78426647ce9a53b028d64fcaf9314a9bfbf9..2097a2db33d513361ba7f909c349543839c30f10 100644 (file)
@@ -21,16 +21,16 @@ extern "C" {
 #define IS_ONSCREEN(x,y) ((x >= G_MINSHORT) && (x <= G_MAXSHORT) && \
                           (y >= G_MINSHORT) && (y <= G_MAXSHORT))
 
-typedef struct _GtkMyFixedAdjData  GtkMyFixedAdjData;
-typedef struct _GtkMyFixedChild    GtkMyFixedChild;
+typedef struct _GtkPizzaAdjData  GtkPizzaAdjData;
+typedef struct _GtkPizzaChild    GtkPizzaChild;
 
-struct _GtkMyFixedAdjData 
+struct _GtkPizzaAdjData 
 {
     gint dx;
     gint dy;
 };
 
-struct _GtkMyFixedChild
+struct _GtkPizzaChild
 {
     GtkWidget *widget;
     gint x;
@@ -39,62 +39,62 @@ struct _GtkMyFixedChild
     gint height;
 };
 
-static void gtk_myfixed_class_init      (GtkMyFixedClass  *klass);
-static void gtk_myfixed_init            (GtkMyFixed       *myfixed);
+static void gtk_pizza_class_init      (GtkPizzaClass  *klass);
+static void gtk_pizza_init            (GtkPizza       *pizza);
 
-static void gtk_myfixed_realize         (GtkWidget        *widget);
-static void gtk_myfixed_unrealize       (GtkWidget        *widget);
+static void gtk_pizza_realize         (GtkWidget        *widget);
+static void gtk_pizza_unrealize       (GtkWidget        *widget);
 
-static void gtk_myfixed_map             (GtkWidget        *widget);
+static void gtk_pizza_map             (GtkWidget        *widget);
 
-static void gtk_myfixed_size_request  (GtkWidget        *widget,
+static void gtk_pizza_size_request  (GtkWidget        *widget,
                                     GtkRequisition   *requisition);
-static void gtk_myfixed_size_allocate (GtkWidget        *widget,
+static void gtk_pizza_size_allocate (GtkWidget        *widget,
                                     GtkAllocation    *allocation);
-static void gtk_myfixed_draw          (GtkWidget        *widget,
+static void gtk_pizza_draw          (GtkWidget        *widget,
                                     GdkRectangle     *area);
-static gint gtk_myfixed_expose        (GtkWidget        *widget,
+static gint gtk_pizza_expose        (GtkWidget        *widget,
                                     GdkEventExpose   *event);
-static void gtk_myfixed_add           (GtkContainer     *container,
+static void gtk_pizza_add           (GtkContainer     *container,
                                     GtkWidget        *widget);
-static void gtk_myfixed_remove        (GtkContainer     *container,
+static void gtk_pizza_remove        (GtkContainer     *container,
                                     GtkWidget        *widget);
-static void gtk_myfixed_forall       (GtkContainer     *container,
+static void gtk_pizza_forall       (GtkContainer     *container,
                                     gboolean         include_internals,
                                     GtkCallback      callback,
                                     gpointer         callback_data);
 
-static void     gtk_myfixed_position_child     (GtkMyFixed      *myfixed,
-                                              GtkMyFixedChild *child);
-static void     gtk_myfixed_allocate_child     (GtkMyFixed      *myfixed,
-                                              GtkMyFixedChild *child);
-static void     gtk_myfixed_position_children  (GtkMyFixed      *myfixed);
+static void     gtk_pizza_position_child     (GtkPizza      *pizza,
+                                              GtkPizzaChild *child);
+static void     gtk_pizza_allocate_child     (GtkPizza      *pizza,
+                                              GtkPizzaChild *child);
+static void     gtk_pizza_position_children  (GtkPizza      *pizza);
 
-static void     gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
+static void     gtk_pizza_adjust_allocations_recurse (GtkWidget *widget,
                                                       gpointer   cb_data);
-static void     gtk_myfixed_adjust_allocations         (GtkMyFixed *myfixed,
+static void     gtk_pizza_adjust_allocations         (GtkPizza *pizza,
                                                       gint       dx,
                                                       gint       dy);
 
 
-static void     gtk_myfixed_expose_area        (GtkMyFixed      *myfixed,
+static void     gtk_pizza_expose_area        (GtkPizza      *pizza,
                                               gint            x, 
                                               gint            y, 
                                               gint            width, 
                                               gint            height);
-static void     gtk_myfixed_adjustment_changed (GtkAdjustment  *adjustment,
-                                              GtkMyFixed      *myfixed);
-static GdkFilterReturn gtk_myfixed_filter      (GdkXEvent      *gdk_xevent,
+static void     gtk_pizza_adjustment_changed (GtkAdjustment  *adjustment,
+                                              GtkPizza      *pizza);
+static GdkFilterReturn gtk_pizza_filter      (GdkXEvent      *gdk_xevent,
                                               GdkEvent       *event,
                                               gpointer        data);
-static GdkFilterReturn gtk_myfixed_main_filter (GdkXEvent      *gdk_xevent,
+static GdkFilterReturn gtk_pizza_main_filter (GdkXEvent      *gdk_xevent,
                                               GdkEvent       *event,
                                               gpointer        data);
 
 
-static GtkType gtk_myfixed_child_type (GtkContainer     *container);
+static GtkType gtk_pizza_child_type (GtkContainer     *container);
 
-static void  gtk_myfixed_scroll_set_adjustments    (GtkMyFixed   *myfixed,
+static void  gtk_pizza_scroll_set_adjustments    (GtkPizza   *pizza,
                                               GtkAdjustment *hadj,
                                               GtkAdjustment *vadj);
 
@@ -103,31 +103,31 @@ static GtkContainerClass *parent_class = NULL;
 static gboolean gravity_works;
 
 guint
-gtk_myfixed_get_type ()
+gtk_pizza_get_type ()
 {
-    static guint myfixed_type = 0;
+    static guint pizza_type = 0;
 
-    if (!myfixed_type)
+    if (!pizza_type)
     {
-        GtkTypeInfo myfixed_info =
+        GtkTypeInfo pizza_info =
         {
-          "GtkMyFixed",
-          sizeof (GtkMyFixed),
-          sizeof (GtkMyFixedClass),
-          (GtkClassInitFunc) gtk_myfixed_class_init,
-          (GtkObjectInitFunc) gtk_myfixed_init,
+          "GtkPizza",
+          sizeof (GtkPizza),
+          sizeof (GtkPizzaClass),
+          (GtkClassInitFunc) gtk_pizza_class_init,
+          (GtkObjectInitFunc) gtk_pizza_init,
           /* reserved_1 */ NULL,
            /* reserved_2 */ NULL,
            (GtkClassInitFunc) NULL,
         };
-        myfixed_type = gtk_type_unique (gtk_container_get_type (), &myfixed_info);
+        pizza_type = gtk_type_unique (gtk_container_get_type (), &pizza_info);
     }
     
-    return myfixed_type;
+    return pizza_type;
 }
 
 static void
-gtk_myfixed_class_init (GtkMyFixedClass *klass)
+gtk_pizza_class_init (GtkPizzaClass *klass)
 {
     GtkObjectClass *object_class;
     GtkWidgetClass *widget_class;
@@ -138,71 +138,71 @@ gtk_myfixed_class_init (GtkMyFixedClass *klass)
     container_class = (GtkContainerClass*) klass;
     parent_class = gtk_type_class (GTK_TYPE_CONTAINER);
 
-    widget_class->map = gtk_myfixed_map;
-    widget_class->realize = gtk_myfixed_realize;
-    widget_class->unrealize = gtk_myfixed_unrealize;
-    widget_class->size_request = gtk_myfixed_size_request;
-    widget_class->size_allocate = gtk_myfixed_size_allocate;
-    widget_class->draw = gtk_myfixed_draw;
-    widget_class->expose_event = gtk_myfixed_expose;
+    widget_class->map = gtk_pizza_map;
+    widget_class->realize = gtk_pizza_realize;
+    widget_class->unrealize = gtk_pizza_unrealize;
+    widget_class->size_request = gtk_pizza_size_request;
+    widget_class->size_allocate = gtk_pizza_size_allocate;
+    widget_class->draw = gtk_pizza_draw;
+    widget_class->expose_event = gtk_pizza_expose;
 
-    container_class->add = gtk_myfixed_add;
-    container_class->remove = gtk_myfixed_remove;
-    container_class->forall = gtk_myfixed_forall;
+    container_class->add = gtk_pizza_add;
+    container_class->remove = gtk_pizza_remove;
+    container_class->forall = gtk_pizza_forall;
 
-    container_class->child_type = gtk_myfixed_child_type;
+    container_class->child_type = gtk_pizza_child_type;
 
-    klass->set_scroll_adjustments = gtk_myfixed_scroll_set_adjustments;
+    klass->set_scroll_adjustments = gtk_pizza_scroll_set_adjustments;
 
     widget_class->set_scroll_adjustments_signal =
     gtk_signal_new ("set_scroll_adjustments",
                    GTK_RUN_LAST,
                    object_class->type,
-                   GTK_SIGNAL_OFFSET (GtkMyFixedClass, set_scroll_adjustments),
+                   GTK_SIGNAL_OFFSET (GtkPizzaClass, set_scroll_adjustments),
                    gtk_marshal_NONE__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 }
 
 static GtkType
-gtk_myfixed_child_type (GtkContainer     *container)
+gtk_pizza_child_type (GtkContainer     *container)
 {
     return GTK_TYPE_WIDGET;
 }
 
 static void
-gtk_myfixed_init (GtkMyFixed *myfixed)
+gtk_pizza_init (GtkPizza *pizza)
 {
-    GTK_WIDGET_UNSET_FLAGS (myfixed, GTK_NO_WINDOW);
+    GTK_WIDGET_UNSET_FLAGS (pizza, GTK_NO_WINDOW);
   
-    myfixed->shadow_type = GTK_MYSHADOW_NONE;
+    pizza->shadow_type = GTK_MYSHADOW_NONE;
 
-    myfixed->children = NULL;
+    pizza->children = NULL;
     
-    myfixed->width = 20;
-    myfixed->height = 20;
+    pizza->width = 20;
+    pizza->height = 20;
 
-    myfixed->bin_window = NULL;
+    pizza->bin_window = NULL;
 
-    myfixed->configure_serial = 0;
-    myfixed->scroll_x = 0;
-    myfixed->scroll_y = 0;
-    myfixed->visibility = GDK_VISIBILITY_PARTIAL;
+    pizza->configure_serial = 0;
+    pizza->scroll_x = 0;
+    pizza->scroll_y = 0;
+    pizza->visibility = GDK_VISIBILITY_PARTIAL;
     
-    myfixed->clear_on_draw = TRUE;
+    pizza->clear_on_draw = TRUE;
 }
 
 GtkWidget*
-gtk_myfixed_new ()
+gtk_pizza_new ()
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
 
-    myfixed = gtk_type_new (gtk_myfixed_get_type ());
+    pizza = gtk_type_new (gtk_pizza_get_type ());
   
-    return GTK_WIDGET (myfixed);
+    return GTK_WIDGET (pizza);
 }
 
 void  
-gtk_myfixed_scroll_set_adjustments (GtkMyFixed     *myfixed,
+gtk_pizza_scroll_set_adjustments (GtkPizza     *pizza,
                                    GtkAdjustment  *hadj,
                                    GtkAdjustment  *vadj)
 {
@@ -210,49 +210,49 @@ gtk_myfixed_scroll_set_adjustments (GtkMyFixed     *myfixed,
 }
 
 void 
-gtk_myfixed_set_shadow_type (GtkMyFixed      *myfixed,
+gtk_pizza_set_shadow_type (GtkPizza      *pizza,
                             GtkMyShadowType  type)
 {
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
 
-    if ((GtkMyShadowType) myfixed->shadow_type != type)
+    if ((GtkMyShadowType) pizza->shadow_type != type)
     {
-        myfixed->shadow_type = type;
+        pizza->shadow_type = type;
 
-        if (GTK_WIDGET_VISIBLE (myfixed))
+        if (GTK_WIDGET_VISIBLE (pizza))
        {
-           gtk_widget_size_allocate (GTK_WIDGET (myfixed), &(GTK_WIDGET (myfixed)->allocation));
-           gtk_widget_queue_draw (GTK_WIDGET (myfixed));
+           gtk_widget_size_allocate (GTK_WIDGET (pizza), &(GTK_WIDGET (pizza)->allocation));
+           gtk_widget_queue_draw (GTK_WIDGET (pizza));
        }
     }
 }
 
 void       
-gtk_my_fixed_set_clear (GtkMyFixed     *myfixed,
+gtk_pizza_set_clear (GtkPizza     *pizza,
                         gboolean        clear)
 {
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     
-    myfixed->clear_on_draw = clear;
+    pizza->clear_on_draw = clear;
 }      
                                        
 void
-gtk_myfixed_put (GtkMyFixed    *myfixed,
+gtk_pizza_put (GtkPizza    *pizza,
                  GtkWidget     *widget,
                  gint         x,
                  gint         y,
                 gint         width,
                 gint         height)
 {
-    GtkMyFixedChild *child_info;
+    GtkPizzaChild *child_info;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    child_info = g_new (GtkMyFixedChild, 1);
+    child_info = g_new (GtkPizzaChild, 1);
     
     child_info->widget = widget;
     child_info->x = x;
@@ -260,24 +260,24 @@ gtk_myfixed_put (GtkMyFixed    *myfixed,
     child_info->width = width;
     child_info->height = height;
   
-    myfixed->children = g_list_append (myfixed->children, child_info); 
+    pizza->children = g_list_append (pizza->children, child_info); 
 
-    gtk_widget_set_parent (widget, GTK_WIDGET (myfixed));
+    gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
 
-    if (GTK_WIDGET_REALIZED (myfixed))
-      gtk_widget_set_parent_window (widget, myfixed->bin_window);
+    if (GTK_WIDGET_REALIZED (pizza))
+      gtk_widget_set_parent_window (widget, pizza->bin_window);
     
     if (!IS_ONSCREEN (x, y))
        GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
 
-    if (GTK_WIDGET_REALIZED (myfixed))
+    if (GTK_WIDGET_REALIZED (pizza))
         gtk_widget_realize (widget);
 
     gtk_widget_set_usize (widget, width, height);
     
-    if (GTK_WIDGET_VISIBLE (myfixed) && GTK_WIDGET_VISIBLE (widget))
+    if (GTK_WIDGET_VISIBLE (pizza) && GTK_WIDGET_VISIBLE (widget))
     {
-        if (GTK_WIDGET_MAPPED (myfixed))
+        if (GTK_WIDGET_MAPPED (pizza))
            gtk_widget_map (widget);
       
         gtk_widget_queue_resize (widget);
@@ -285,19 +285,19 @@ gtk_myfixed_put (GtkMyFixed    *myfixed,
 }
 
 void
-gtk_myfixed_move (GtkMyFixed    *myfixed,
+gtk_pizza_move (GtkPizza    *pizza,
                   GtkWidget     *widget,
                   gint         x,
                   gint         y)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -311,7 +311,7 @@ gtk_myfixed_move (GtkMyFixed    *myfixed,
             child->x = x;
             child->y = y;
            
-           if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+           if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
            break;
        }
@@ -319,19 +319,19 @@ gtk_myfixed_move (GtkMyFixed    *myfixed,
 }
 
 void
-gtk_myfixed_resize (GtkMyFixed     *myfixed,
+gtk_pizza_resize (GtkPizza     *pizza,
                     GtkWidget      *widget,
                    gint         width,
                    gint         height)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -347,7 +347,7 @@ gtk_myfixed_resize (GtkMyFixed     *myfixed,
            
            gtk_widget_set_usize (widget, width, height);
            
-            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
            break;
        }
@@ -355,22 +355,22 @@ gtk_myfixed_resize (GtkMyFixed     *myfixed,
 }
 
 void
-gtk_myfixed_set_size (GtkMyFixed    *myfixed,
+gtk_pizza_set_size (GtkPizza    *pizza,
                       GtkWidget     *widget,
                       gint        x,
                       gint         y,
                      gint         width,
                      gint         height)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
     GtkAllocation child_allocation;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -390,7 +390,7 @@ gtk_myfixed_set_size (GtkMyFixed    *myfixed,
            
            gtk_widget_set_usize (widget, width, height);
            
-            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
                    
             return;
@@ -399,19 +399,19 @@ gtk_myfixed_set_size (GtkMyFixed    *myfixed,
 }
 
 static void
-gtk_myfixed_map (GtkWidget *widget)
+gtk_pizza_map (GtkWidget *widget)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
     GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -426,22 +426,22 @@ gtk_myfixed_map (GtkWidget *widget)
     }
     
     gdk_window_show (widget->window);
-    gdk_window_show (myfixed->bin_window);
+    gdk_window_show (pizza->bin_window);
 }
 
 static void
-gtk_myfixed_realize (GtkWidget *widget)
+gtk_pizza_realize (GtkWidget *widget)
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
     GdkWindowAttr attributes;
     gint attributes_mask;
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
     GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);
 
@@ -452,11 +452,11 @@ gtk_myfixed_realize (GtkWidget *widget)
     attributes.width = widget->allocation.width;
     attributes.height = widget->allocation.height;
 
-    if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+    if (pizza->shadow_type == GTK_MYSHADOW_NONE)
     {
         /* no border, no changes to sizes */
     } else
-    if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+    if (pizza->shadow_type == GTK_MYSHADOW_THIN)
     {
         /* GTK_MYSHADOW_THIN == wxSIMPLE_BORDER */
         attributes.x += 1;
@@ -508,66 +508,66 @@ gtk_myfixed_realize (GtkWidget *widget)
        GDK_LEAVE_NOTIFY_MASK   |
        GDK_FOCUS_CHANGE_MASK;
 
-    myfixed->bin_window = gdk_window_new (widget->window,
+    pizza->bin_window = gdk_window_new (widget->window,
                                          &attributes, attributes_mask);
-    gdk_window_set_user_data (myfixed->bin_window, widget);
+    gdk_window_set_user_data (pizza->bin_window, widget);
     
     widget->style = gtk_style_attach (widget->style, widget->window);
     gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
-    gtk_style_set_background (widget->style, myfixed->bin_window, GTK_STATE_NORMAL);
+    gtk_style_set_background (widget->style, pizza->bin_window, GTK_STATE_NORMAL);
     
     /* add filters for intercepting visibility and expose events */
-    gdk_window_add_filter (widget->window, gtk_myfixed_main_filter, myfixed);
-    gdk_window_add_filter (myfixed->bin_window, gtk_myfixed_filter, myfixed);
+    gdk_window_add_filter (widget->window, gtk_pizza_main_filter, pizza);
+    gdk_window_add_filter (pizza->bin_window, gtk_pizza_filter, pizza);
 
     /* we NEED gravity or we'll give up */
-    gravity_works = gdk_window_set_static_gravities (myfixed->bin_window, TRUE);
+    gravity_works = gdk_window_set_static_gravities (pizza->bin_window, TRUE);
 
     /* cannot be done before realisation */
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
         children = children->next;
 
-        gtk_widget_set_parent_window (child->widget, myfixed->bin_window);
+        gtk_widget_set_parent_window (child->widget, pizza->bin_window);
     }
 }
 
 static void 
-gtk_myfixed_unrealize (GtkWidget *widget)
+gtk_pizza_unrealize (GtkWidget *widget)
 {
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   g_return_if_fail (widget != NULL);
-  g_return_if_fail (GTK_IS_MYFIXED (widget));
+  g_return_if_fail (GTK_IS_PIZZA (widget));
 
-  myfixed = GTK_MYFIXED (widget);
+  pizza = GTK_PIZZA (widget);
 
-  gdk_window_set_user_data (myfixed->bin_window, NULL);
-  gdk_window_destroy (myfixed->bin_window);
-  myfixed->bin_window = NULL;
+  gdk_window_set_user_data (pizza->bin_window, NULL);
+  gdk_window_destroy (pizza->bin_window);
+  pizza->bin_window = NULL;
 
   if (GTK_WIDGET_CLASS (parent_class)->unrealize)
     (* GTK_WIDGET_CLASS (parent_class)->unrealize) (widget);
 }
 
 static void
-gtk_myfixed_size_request (GtkWidget      *widget,
+gtk_pizza_size_request (GtkWidget      *widget,
                          GtkRequisition *requisition)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
     GtkRequisition child_requisition;
   
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
     g_return_if_fail (requisition != NULL);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -586,28 +586,28 @@ gtk_myfixed_size_request (GtkWidget      *widget,
 }
 
 static void
-gtk_myfixed_size_allocate (GtkWidget     *widget,
+gtk_pizza_size_allocate (GtkWidget     *widget,
                           GtkAllocation *allocation)
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
     gint border;
     gint x,y,w,h;
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GtkAllocation child_allocation; 
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED(widget));
+    g_return_if_fail (GTK_IS_PIZZA(widget));
     g_return_if_fail (allocation != NULL);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
     widget->allocation = *allocation;
     
-    if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+    if (pizza->shadow_type == GTK_MYSHADOW_NONE)
         border = 0;
     else
-    if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+    if (pizza->shadow_type == GTK_MYSHADOW_THIN)
         border = 1;
     else
         border = 2;
@@ -620,39 +620,39 @@ gtk_myfixed_size_allocate (GtkWidget     *widget,
     if (GTK_WIDGET_REALIZED (widget))
     {
         gdk_window_move_resize( widget->window, x, y, w, h );
-        gdk_window_move_resize( myfixed->bin_window, 0, 0, w, h );
+        gdk_window_move_resize( pizza->bin_window, 0, 0, w, h );
     }
     
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
         children = children->next;
  
-        gtk_myfixed_position_child (myfixed, child);
-        gtk_myfixed_allocate_child (myfixed, child);
+        gtk_pizza_position_child (pizza, child);
+        gtk_pizza_allocate_child (pizza, child);
     }
 }
 
 static void
-gtk_myfixed_draw (GtkWidget    *widget,
+gtk_pizza_draw (GtkWidget    *widget,
                  GdkRectangle *area)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GdkRectangle child_area;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
       
-    children = myfixed->children;
+    children = pizza->children;
     if ( !(GTK_WIDGET_APP_PAINTABLE (widget)) &&
-         (myfixed->clear_on_draw))
+         (pizza->clear_on_draw))
     {
-        gdk_window_clear_area( myfixed->bin_window,
+        gdk_window_clear_area( pizza->bin_window,
                                area->x, area->y, area->width, area->height);
     }
 
@@ -667,32 +667,32 @@ gtk_myfixed_draw (GtkWidget    *widget,
 }
 
 static gint
-gtk_myfixed_expose (GtkWidget      *widget,
+gtk_pizza_expose (GtkWidget      *widget,
                    GdkEventExpose *event)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GdkEventExpose child_event;
     GList *children;
 
     g_return_val_if_fail (widget != NULL, FALSE);
-    g_return_val_if_fail (GTK_IS_MYFIXED (widget), FALSE);
+    g_return_val_if_fail (GTK_IS_PIZZA (widget), FALSE);
     g_return_val_if_fail (event != NULL, FALSE);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
 
 /*
     if (event->window == widget->window)
     {
-        gtk_myfixed_draw_border( myfixed );
+        gtk_pizza_draw_border( pizza );
         return FALSE;
     }
 */
 
-    if (event->window != myfixed->bin_window)
+    if (event->window != pizza->bin_window)
         return FALSE;
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
        child = children->data;
@@ -712,31 +712,31 @@ gtk_myfixed_expose (GtkWidget      *widget,
 }
 
 static void
-gtk_myfixed_add (GtkContainer *container,
+gtk_pizza_add (GtkContainer *container,
               GtkWidget    *widget)
 {
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (widget != NULL);
 
-    gtk_myfixed_put (GTK_MYFIXED (container), widget, 0, 0, 20, 20 );
+    gtk_pizza_put (GTK_PIZZA (container), widget, 0, 0, 20, 20 );
 }
 
 static void
-gtk_myfixed_remove (GtkContainer *container,
+gtk_pizza_remove (GtkContainer *container,
                    GtkWidget    *widget)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (widget != NULL);
 
-    myfixed = GTK_MYFIXED (container);
+    pizza = GTK_PIZZA (container);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -748,7 +748,7 @@ gtk_myfixed_remove (GtkContainer *container,
             /* security checks */
             g_return_if_fail (GTK_IS_WIDGET (widget));
   
-           myfixed->children = g_list_remove_link (myfixed->children, children);
+           pizza->children = g_list_remove_link (pizza->children, children);
            g_list_free (children);
            g_free (child);
 
@@ -765,22 +765,22 @@ gtk_myfixed_remove (GtkContainer *container,
 }
 
 static void
-gtk_myfixed_forall (GtkContainer *container,
+gtk_pizza_forall (GtkContainer *container,
                   gboolean      include_internals,
                   GtkCallback   callback,
                   gpointer      callback_data)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (callback != NULL);
 
-    myfixed = GTK_MYFIXED (container);
+    pizza = GTK_PIZZA (container);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -795,18 +795,18 @@ gtk_myfixed_forall (GtkContainer *container,
  */
 
 static void
-gtk_myfixed_position_child (GtkMyFixed      *myfixed,
-                          GtkMyFixedChild *child)
+gtk_pizza_position_child (GtkPizza      *pizza,
+                          GtkPizzaChild *child)
 {
     gint x;
     gint y;
 
-    x = child->x - myfixed->xoffset;
-    y = child->y - myfixed->yoffset;
+    x = child->x - pizza->xoffset;
+    y = child->y - pizza->yoffset;
 
     if (IS_ONSCREEN (x,y))
     {
-        if (GTK_WIDGET_MAPPED (myfixed) &&
+        if (GTK_WIDGET_MAPPED (pizza) &&
          GTK_WIDGET_VISIBLE (child->widget))
        {
            if (!GTK_WIDGET_MAPPED (child->widget))
@@ -827,14 +827,14 @@ gtk_myfixed_position_child (GtkMyFixed      *myfixed,
 }
 
 static void
-gtk_myfixed_allocate_child (GtkMyFixed      *myfixed,
-                          GtkMyFixedChild *child)
+gtk_pizza_allocate_child (GtkPizza      *pizza,
+                          GtkPizzaChild *child)
 {
     GtkAllocation allocation;
     GtkRequisition requisition;
 
-    allocation.x = child->x - myfixed->xoffset;
-    allocation.y = child->y - myfixed->yoffset;
+    allocation.x = child->x - pizza->xoffset;
+    allocation.y = child->y - pizza->yoffset;
     gtk_widget_get_child_requisition (child->widget, &requisition);
     allocation.width = requisition.width;
     allocation.height = requisition.height;
@@ -843,25 +843,25 @@ gtk_myfixed_allocate_child (GtkMyFixed      *myfixed,
 }
 
 static void
-gtk_myfixed_position_children (GtkMyFixed *myfixed)
+gtk_pizza_position_children (GtkPizza *pizza)
 {
     GList *tmp_list;
 
-    tmp_list = myfixed->children;
+    tmp_list = pizza->children;
     while (tmp_list)
     {
-        GtkMyFixedChild *child = tmp_list->data;
+        GtkPizzaChild *child = tmp_list->data;
         tmp_list = tmp_list->next;
       
-        gtk_myfixed_position_child (myfixed, child);
+        gtk_pizza_position_child (pizza, child);
     }
 }
 
 static void
-gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
+gtk_pizza_adjust_allocations_recurse (GtkWidget *widget,
                                       gpointer   cb_data)
 {
-    GtkMyFixedAdjData *data = cb_data;
+    GtkPizzaAdjData *data = cb_data;
 
     widget->allocation.x += data->dx;
     widget->allocation.y += data->dy;
@@ -869,26 +869,26 @@ gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
     if (GTK_WIDGET_NO_WINDOW (widget) && GTK_IS_CONTAINER (widget))
     {
         gtk_container_forall (GTK_CONTAINER (widget), 
-                         gtk_myfixed_adjust_allocations_recurse,
+                         gtk_pizza_adjust_allocations_recurse,
                          cb_data);
     }
 }
 
 static void
-gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
+gtk_pizza_adjust_allocations (GtkPizza *pizza,
                               gint       dx,
                               gint       dy)
 {
   GList *tmp_list;
-  GtkMyFixedAdjData data;
+  GtkPizzaAdjData data;
 
   data.dx = dx;
   data.dy = dy;
 
-  tmp_list = myfixed->children;
+  tmp_list = pizza->children;
   while (tmp_list)
     {
-      GtkMyFixedChild *child = tmp_list->data;
+      GtkPizzaChild *child = tmp_list->data;
       tmp_list = tmp_list->next;
       
       child->widget->allocation.x += dx;
@@ -897,7 +897,7 @@ gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
       if (GTK_WIDGET_NO_WINDOW (child->widget) &&
          GTK_IS_CONTAINER (child->widget))
        gtk_container_forall (GTK_CONTAINER (child->widget), 
-                             gtk_myfixed_adjust_allocations_recurse,
+                             gtk_pizza_adjust_allocations_recurse,
                              &data);
     }
 }
@@ -907,16 +907,16 @@ gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
 /* Send a synthetic expose event to the widget
  */
 static void
-gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
+gtk_pizza_expose_area (GtkPizza    *pizza,
                        gint x, gint y, gint width, gint height)
 {
-  if (myfixed->visibility == GDK_VISIBILITY_UNOBSCURED)
+  if (pizza->visibility == GDK_VISIBILITY_UNOBSCURED)
     {
       GdkEventExpose event;
       
       event.type = GDK_EXPOSE;
       event.send_event = TRUE;
-      event.window = myfixed->bin_window;
+      event.window = pizza->bin_window;
       event.count = 0;
       
       event.area.x = x;
@@ -925,7 +925,7 @@ gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
       event.area.height = height;
       
       gdk_window_ref (event.window);
-      gtk_widget_event (GTK_WIDGET (myfixed), (GdkEvent *)&event);
+      gtk_widget_event (GTK_WIDGET (pizza), (GdkEvent *)&event);
       gdk_window_unref (event.window);
     }
 }
@@ -934,7 +934,7 @@ gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
  */
 
 static Bool 
-gtk_myfixed_expose_predicate (Display *display, 
+gtk_pizza_expose_predicate (Display *display, 
                  XEvent  *xevent, 
                  XPointer arg)
 {
@@ -959,30 +959,30 @@ gtk_myfixed_expose_predicate (Display *display,
  */
 
 void
-gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
+gtk_pizza_scroll (GtkPizza *pizza, gint dx, gint dy)
 {
   GtkWidget *widget;
   XEvent xevent;
 
   gint x,y,w,h,border;
   
-  widget = GTK_WIDGET (myfixed);
+  widget = GTK_WIDGET (pizza);
 
-  myfixed->xoffset += dx;
-  myfixed->yoffset += dy;
+  pizza->xoffset += dx;
+  pizza->yoffset += dy;
 
-  if (!GTK_WIDGET_MAPPED (myfixed))
+  if (!GTK_WIDGET_MAPPED (pizza))
     {
-      gtk_myfixed_position_children (myfixed);
+      gtk_pizza_position_children (pizza);
       return;
     }
 
-  gtk_myfixed_adjust_allocations (myfixed, -dx, -dy);
+  gtk_pizza_adjust_allocations (pizza, -dx, -dy);
 
-  if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+  if (pizza->shadow_type == GTK_MYSHADOW_NONE)
     border = 0;
   else
-  if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+  if (pizza->shadow_type == GTK_MYSHADOW_THIN)
     border = 1;
   else
     border = 2;
@@ -996,18 +996,18 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_resize (myfixed->bin_window,
+         gdk_window_resize (pizza->bin_window,
                             w + dx,
                             h);
-         gdk_window_move   (myfixed->bin_window, x-dx, y);
-         gdk_window_move_resize (myfixed->bin_window, x, y, w, h );
+         gdk_window_move   (pizza->bin_window, x-dx, y);
+         gdk_window_move_resize (pizza->bin_window, x, y, w, h );
        }
       else
        {
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              MAX ((gint)w - dx, 0),
                              0,
                              MIN (dx, w),
@@ -1017,20 +1017,20 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_move_resize (pizza->bin_window,
                                  x + dx, 
                                  y,
                                  w - dx,
                                  h);
-         gdk_window_move   (myfixed->bin_window, x, y);
-         gdk_window_resize (myfixed->bin_window, w, h );
+         gdk_window_move   (pizza->bin_window, x, y);
+         gdk_window_resize (pizza->bin_window, w, h );
        }
       else
        {
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed,
+      gtk_pizza_expose_area (pizza,
                              0,
                              0,
                              MIN (-dx, w),
@@ -1041,9 +1041,9 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_resize (myfixed->bin_window, w, h + dy);
-         gdk_window_move   (myfixed->bin_window, x, y-dy);
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_resize (pizza->bin_window, w, h + dy);
+         gdk_window_move   (pizza->bin_window, x, y-dy);
+         gdk_window_move_resize (pizza->bin_window,
                                  x, y, w, h );
        }
       else
@@ -1051,7 +1051,7 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              0,
                              MAX ((gint)h - dy, 0),
                              w,
@@ -1061,23 +1061,23 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_move_resize (pizza->bin_window,
                                  x, y+dy, w, h - dy );
-         gdk_window_move   (myfixed->bin_window, x, y);
-         gdk_window_resize (myfixed->bin_window, w, h );
+         gdk_window_move   (pizza->bin_window, x, y);
+         gdk_window_resize (pizza->bin_window, w, h );
        }
       else
        {
          /* FIXME */
        }
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              0,
                              0,
                              w,
                              MIN (-dy, (gint)h));
     }
 
-  gtk_myfixed_position_children (myfixed);
+  gtk_pizza_position_children (pizza);
 
   /* We have to make sure that all exposes from this scroll get
    * processed before we scroll again, or the expose events will
@@ -1091,16 +1091,16 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
    */
 
   gdk_flush();
-  while (XCheckIfEvent(GDK_WINDOW_XDISPLAY (myfixed->bin_window),
+  while (XCheckIfEvent(GDK_WINDOW_XDISPLAY (pizza->bin_window),
                       &xevent,
-                      gtk_myfixed_expose_predicate,
-                      (XPointer)&GDK_WINDOW_XWINDOW (myfixed->bin_window)))
+                      gtk_pizza_expose_predicate,
+                      (XPointer)&GDK_WINDOW_XWINDOW (pizza->bin_window)))
     {
       GdkEvent event;
       GtkWidget *event_widget;
 
-      if ((xevent.xany.window == GDK_WINDOW_XWINDOW (myfixed->bin_window)) &&
-         (gtk_myfixed_filter (&xevent, &event, myfixed) == GDK_FILTER_REMOVE))
+      if ((xevent.xany.window == GDK_WINDOW_XWINDOW (pizza->bin_window)) &&
+         (gtk_pizza_filter (&xevent, &event, pizza) == GDK_FILTER_REMOVE))
        continue;
       
       if (xevent.type == Expose)
@@ -1137,27 +1137,27 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
  * or not.
  */
 static GdkFilterReturn 
-gtk_myfixed_filter (GdkXEvent *gdk_xevent,
+gtk_pizza_filter (GdkXEvent *gdk_xevent,
                   GdkEvent  *event,
                   gpointer   data)
 {
   XEvent *xevent;
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   xevent = (XEvent *)gdk_xevent;
-  myfixed = GTK_MYFIXED (data);
+  pizza = GTK_PIZZA (data);
 
   switch (xevent->type)
     {
     case Expose:
-      if (xevent->xexpose.serial == myfixed->configure_serial)
+      if (xevent->xexpose.serial == pizza->configure_serial)
        {
-         if (myfixed->visibility == GDK_VISIBILITY_UNOBSCURED)
+         if (pizza->visibility == GDK_VISIBILITY_UNOBSCURED)
            return GDK_FILTER_REMOVE;
          else
            {
-             xevent->xexpose.x += myfixed->scroll_x;
-             xevent->xexpose.y += myfixed->scroll_y;
+             xevent->xexpose.x += pizza->scroll_x;
+             xevent->xexpose.y += pizza->scroll_y;
              
              break;
            }
@@ -1167,9 +1167,9 @@ gtk_myfixed_filter (GdkXEvent *gdk_xevent,
     case ConfigureNotify:
        if ((xevent->xconfigure.x != 0) || (xevent->xconfigure.y != 0))
        {
-         myfixed->configure_serial = xevent->xconfigure.serial;
-         myfixed->scroll_x = xevent->xconfigure.x;
-         myfixed->scroll_y = xevent->xconfigure.y;
+         pizza->configure_serial = xevent->xconfigure.serial;
+         pizza->scroll_x = xevent->xconfigure.x;
+         pizza->scroll_y = xevent->xconfigure.y;
        }
       break;
     }
@@ -1182,30 +1182,30 @@ gtk_myfixed_filter (GdkXEvent *gdk_xevent,
  * to get the events from a filter
  */
 static GdkFilterReturn 
-gtk_myfixed_main_filter (GdkXEvent *gdk_xevent,
+gtk_pizza_main_filter (GdkXEvent *gdk_xevent,
                        GdkEvent  *event,
                        gpointer   data)
 {
   XEvent *xevent;
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   xevent = (XEvent *)gdk_xevent;
-  myfixed = GTK_MYFIXED (data);
+  pizza = GTK_PIZZA (data);
 
   if (xevent->type == VisibilityNotify)
     {
       switch (xevent->xvisibility.state)
        {
        case VisibilityFullyObscured:
-         myfixed->visibility = GDK_VISIBILITY_FULLY_OBSCURED;
+         pizza->visibility = GDK_VISIBILITY_FULLY_OBSCURED;
          break;
 
        case VisibilityPartiallyObscured:
-         myfixed->visibility = GDK_VISIBILITY_PARTIAL;
+         pizza->visibility = GDK_VISIBILITY_PARTIAL;
          break;
 
        case VisibilityUnobscured:
-         myfixed->visibility = GDK_VISIBILITY_UNOBSCURED;
+         pizza->visibility = GDK_VISIBILITY_UNOBSCURED;
          break;
        }
 
index c6b827a1e4ee66d34130638ef4f0eda6d4954c95..ccd126982719b2e13f5ff12ba88e3819b2015662 100644 (file)
    can find in m_widget (defined in wxWindow)
 
    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
    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
    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
-   the type GtkMyFixed.
+   the type GtkPizza.
 
    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
    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-
-   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.
 
    If the m_wxwindow field is set, then all input to this widget is inter-
    clicking on a scrollbar belonging to scrolled window will inevitably move
    the window. In wxWindows, the scrollbar will only emit an event, send this
    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
    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) 
    
@@ -267,8 +267,6 @@ extern bool g_isIdle;
 // local code (see below)
 //-----------------------------------------------------------------------------
 
-#if (GTK_MINOR_VERSION > 0)
-
 static void draw_frame( GtkWidget *widget, wxWindow *win )
 {
     if (!win->m_hasVMT)
@@ -364,156 +362,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
     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 )
 {
     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 );
                 break;
             }
+           if (ancestor->m_isFrame)
+               break;
             ancestor = ancestor->GetParent();
         }
     }
@@ -906,7 +760,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
     }
 
 #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) &&
          (gdk_event->keyval == GDK_F10) )
@@ -1113,9 +968,9 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         wxNode *node = win->GetChildren().First();
@@ -1240,9 +1095,9 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         wxNode *node = win->GetChildren().First();
@@ -1360,9 +1215,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         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
        have to adapt the position */
-    GtkMyFixed *myfixed = GTK_MYFIXED(parent->m_wxwindow);
-    child->m_x += myfixed->xoffset;
-    child->m_y += myfixed->yoffset;
+    GtkPizza *pizza = GTK_PIZZA(parent->m_wxwindow);
+    child->m_x += pizza->xoffset;
+    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),
                      child->m_x,
                      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_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
 
-    m_wxwindow = gtk_myfixed_new();
+    m_wxwindow = gtk_pizza_new();
 
 #ifdef __WXDEBUG__
     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 );
 
 #if (GTK_MINOR_VERSION > 0)
-    GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
+    GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
 
     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))
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_IN );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_IN );
     }
     else if (HasFlag(wxSIMPLE_BORDER))
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_THIN );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_THIN );
     }
     else
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_NONE );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_NONE );
     }
 #else // GTK_MINOR_VERSION == 0
     GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
@@ -2213,19 +2068,19 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
     }
     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 (x != -1) m_x = x + myfixed->xoffset;
-            if (y != -1) m_y = y + myfixed->yoffset;
+            if (x != -1) m_x = x + pizza->xoffset;
+            if (y != -1) m_y = y + pizza->yoffset;
             if (width != -1) m_width = width;
             if (height != -1) m_height = height;
         }
         else
         {
-            m_x = x + myfixed->xoffset;
-            m_y = y + myfixed->yoffset;
+            m_x = x + pizza->xoffset;
+            m_y = y + pizza->yoffset;
             m_width = width;
             m_height = height;
         }
@@ -2255,7 +2110,7 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
             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_x-border,
                               m_y-border,
@@ -2294,7 +2149,7 @@ void wxWindow::OnInternalIdle()
        
         if (m_wxwindow)
         {
-            GdkWindow *window = GTK_MYFIXED(m_wxwindow)->bin_window;
+            GdkWindow *window = GTK_PIZZA(m_wxwindow)->bin_window;
             if (window)
                 gdk_window_set_cursor( window, cursor.GetCursor() );
 
@@ -2484,9 +2339,9 @@ void wxWindow::DoGetPosition( int *x, int *y ) const
     int dy = 0;
     if (m_parent && m_parent->m_wxwindow)
     {
-        GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
-       dx = myfixed->xoffset;
-       dy = myfixed->yoffset;
+        GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
+       dx = pizza->xoffset;
+       dy = pizza->yoffset;
     }
 
     if (x) (*x) = m_x - dx;
@@ -2501,7 +2356,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const
 
     GdkWindow *source = (GdkWindow *) NULL;
     if (m_wxwindow)
-        source = GTK_MYFIXED(m_wxwindow)->bin_window;
+        source = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         source = m_widget->window;
 
@@ -2530,7 +2385,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const
 
     GdkWindow *source = (GdkWindow *) NULL;
     if (m_wxwindow)
-        source = GTK_MYFIXED(m_wxwindow)->bin_window;
+        source = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         source = m_widget->window;
 
@@ -2738,7 +2593,7 @@ void wxWindow::WarpPointer( int x, int y )
     
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -2756,30 +2611,30 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *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->width, rect->height );
         }
         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
-       invent our own in the GtkMyFixed widget */
+       invent our own in the GtkPizza widget */
 
     if (!rect)
     {
         if (m_wxwindow)
        {
-           GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
-           gboolean old_clear = myfixed->clear_on_draw;
-           gtk_my_fixed_set_clear( myfixed, FALSE );
+           GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
+           gboolean old_clear = pizza->clear_on_draw;
+           gtk_pizza_set_clear( pizza, FALSE );
            
             gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
            
-           gtk_my_fixed_set_clear( myfixed, old_clear );
+           gtk_pizza_set_clear( pizza, old_clear );
        }
         else
             gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
@@ -2794,13 +2649,13 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
 
         if (m_wxwindow)
        {
-           GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
-           gboolean old_clear = myfixed->clear_on_draw;
-           gtk_my_fixed_set_clear( myfixed, FALSE );
+           GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
+           gboolean old_clear = pizza->clear_on_draw;
+           gtk_pizza_set_clear( pizza, FALSE );
            
             gtk_widget_draw( m_wxwindow, &gdk_rect );
            
-           gtk_my_fixed_set_clear( myfixed, old_clear );
+           gtk_pizza_set_clear( pizza, old_clear );
        }
         else
             gtk_widget_draw( m_widget, &gdk_rect );
@@ -2847,7 +2702,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -2899,7 +2754,7 @@ bool wxWindow::SetForegroundColour( const wxColour &colour )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3073,7 +2928,7 @@ GtkWidget* wxWindow::GetConnectWidget()
 bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
 {
     if (m_wxwindow) 
-        return (window == GTK_MYFIXED(m_wxwindow)->bin_window);
+        return (window == GTK_PIZZA(m_wxwindow)->bin_window);
     
     return (window == m_widget->window);
 }
@@ -3091,7 +2946,7 @@ bool wxWindow::SetFont( const wxFont &font )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3129,7 +2984,7 @@ void wxWindow::CaptureMouse()
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3155,7 +3010,7 @@ void wxWindow::ReleaseMouse()
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         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") );
 
-    gtk_myfixed_scroll( GTK_MYFIXED(m_wxwindow), -dx, -dy );
+    gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
 
 /*
     if (!m_scrollGC)
index 39d94b37b1fe3a05517b3e792f39b57514811934..cd85a483aec4614ef04b00a9002c058026f79376 100644 (file)
@@ -64,14 +64,12 @@ wxButton::wxButton()
 
 wxButton::~wxButton()
 {
-    if (m_clientData) delete m_clientData;
 }
 
 bool wxButton::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
       const wxPoint &pos, const wxSize &size,
       long style, const wxValidator& validator, const wxString &name )
 {
-    m_clientData = (wxClientData*) NULL;
     m_needParent = TRUE;
     m_acceptsFocus = TRUE;
 
@@ -126,7 +124,7 @@ bool wxButton::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
     return TRUE;
 }
 
-void wxButton::SetDefault(void)
+void wxButton::SetDefault()
 {
     GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT );
     gtk_widget_grab_default( m_widget );
index a3ddfa66a0f5a0300680419112b72aac2cba8347..fd0105435aceaf2daa1f7ff0ff4e9dcd8b19248b 100644 (file)
@@ -119,8 +119,8 @@ wxWindowDC::wxWindowDC( wxWindow *window )
 
     wxASSERT_MSG( widget, wxT("DC needs a widget") );
 
-    GtkMyFixed *myfixed = GTK_MYFIXED( widget );
-    m_window = myfixed->bin_window;
+    GtkPizza *pizza = GTK_PIZZA( widget );
+    m_window = pizza->bin_window;
 
     /* not realized ? */
     if (!m_window)
index e51c6cb3db7d0c63c23b6fc8cf73f078ae6e49b8..712a1fd986e30335547208f9f3a02216a519996e 100644 (file)
@@ -194,7 +194,7 @@ gtk_dialog_realized_callback( GtkWidget *widget, wxDialog *win )
 
 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),
                      child->m_x,
                      child->m_y,
@@ -269,7 +269,7 @@ bool wxDialog::Create( wxWindow *parent,
     gtk_signal_connect( GTK_OBJECT(m_widget), "delete_event",
         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_UNSET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
 
index 3098d050c0f0a6adb57fdc5e2375286bbccbbf2b..928f7fa9000a2e9b70ae62d14d26ebd1ef350e22 100644 (file)
@@ -300,7 +300,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
     {
         /* these are outside the client area */
         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),
                          child->m_x,
                          child->m_y,
@@ -327,7 +327,7 @@ static void wxInsertChildInFrame( wxFrame* parent, wxWindow* child )
     else
     {
         /* 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),
                          child->m_x,
                          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 );
 
     /* 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_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
     gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
@@ -428,7 +428,7 @@ bool wxFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title,
 #endif
 
     /* 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_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_width = ww;
             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,
                                   xx, yy, ww, 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_height = hh;   don't change the toolbar's reported size
                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,
                                   xx, yy, ww, 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_w = m_width - 2*m_miniEdge;
         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,
                               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_width = ww;
         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,
                               xx, yy, ww, hh );
     }
@@ -902,7 +902,7 @@ void wxFrame::SetMenuBar( wxMenuBar *menuBar )
         if (m_frameMenuBar->GetParent() != 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_x,
                 m_frameMenuBar->m_y,
index 343743670603a0bf5c667a5391ecdb691a15642e..f31951f90c049f913797308e8c9696fc10bdb096 100644 (file)
@@ -120,7 +120,7 @@ void wxMDIParentFrame::GtkOnSize( int x, int y, int width, int height )
     menu_bar->m_y = 0;
     menu_bar->m_width = m_width;
     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, 
                           0, 0, m_width, wxMENU_HEIGHT );
 }
@@ -159,7 +159,7 @@ void wxMDIParentFrame::OnInternalIdle()
                {
                    menu_bar->m_width = m_width;
                    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, 
                                          0, 0, m_width, wxMENU_HEIGHT );
                    menu_bar->SetInvokingWindow( child_frame );
@@ -193,7 +193,7 @@ void wxMDIParentFrame::OnInternalIdle()
            
            m_frameMenuBar->m_width = m_width;
            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, 
                                  0, 0, m_width, wxMENU_HEIGHT );
        }
@@ -330,7 +330,7 @@ void wxMDIChildFrame::SetMenuBar( wxMenuBar *menu_bar )
         m_menuBar->SetParent( 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, 
                          0, 0,  mdi_frame->m_width, wxMENU_HEIGHT );
     }
index 26a08dea2349c388801c9c52fedb969c66ca34ea..5f26abaf61ffa115c9c8c3da0cc854bebf32fdf9 100644 (file)
@@ -71,10 +71,10 @@ static void gtk_window_own_expose_callback( GtkWidget *widget, GdkEventExpose *g
     if (!win->m_hasVMT) return;
     if (gdk_event->count > 0) return;
     
-    GtkMyFixed *myfixed = GTK_MYFIXED(widget);
+    GtkPizza *pizza = GTK_PIZZA(widget);
     
     gtk_draw_shadow( widget->style, 
-                     myfixed->bin_window,
+                     pizza->bin_window,
                      GTK_STATE_NORMAL,
                      GTK_SHADOW_OUT,
                      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_VERT)))
     {
-        GdkGC *gc = gdk_gc_new( myfixed->bin_window );
+        GdkGC *gc = gdk_gc_new( pizza->bin_window );
         GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
         int x = 2;
         if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 18;
         
         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, 
                             3, 
                             win->m_width - 4 - x,
                             font->ascent + font->descent+1 );
                             
         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, 
                          3+font->ascent, 
                          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;
     
-    GtkMyFixed *myfixed = GTK_MYFIXED(widget);
+    GtkPizza *pizza = GTK_PIZZA(widget);
     
     gtk_draw_shadow( widget->style, 
-                     myfixed->bin_window,
+                     pizza->bin_window,
                      GTK_STATE_NORMAL,
                      GTK_SHADOW_OUT,
                      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_VERT)))
     {
-        GdkGC *gc = gdk_gc_new( myfixed->bin_window );
+        GdkGC *gc = gdk_gc_new( pizza->bin_window );
         GdkFont *font = wxSMALL_FONT->GetInternalFont(1.0);
         int x = 2;
         if (win->GetWindowStyle() & wxSYSTEM_MENU) x = 17;
         
         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, 
                             3, 
                             win->m_width - 4 - x,
                             font->ascent + font->descent+1 );
                             
         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, 
                          3+font->ascent, 
                          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" );
     
-        gtk_myfixed_put( GTK_MYFIXED(m_mainWidget), 
+        gtk_pizza_put( GTK_PIZZA(m_mainWidget), 
                          close_button, 
                          4, 4, 12, 11 );
     
index 53796108d5974db079d96060750e717485000cb5..2d30dff5e14a572b9bae868f01d74ced85f3c9bf 100644 (file)
@@ -119,7 +119,7 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
         gtk_signal_connect( GTK_OBJECT(m_radio), "clicked",
            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),
                          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 );
                 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;
 
                 node = node->Next();
@@ -225,7 +225,7 @@ wxSize wxRadioBox::LayoutItems()
             {
                 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();
                 if (!node) break;
@@ -261,7 +261,7 @@ wxSize wxRadioBox::LayoutItems()
         {
             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;
 
             node = node->Next();
index 77cc2b8fe5f299f112f1436ee59ef10ff453a14c..5a46da4048f9191ebb37b4623d83bf04cd2418f4 100644 (file)
@@ -85,6 +85,10 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
 
 IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl,wxControl)
 
+BEGIN_EVENT_TABLE(wxSpinCtrl, wxControl)
+    EVT_CHAR(wxSpinCtrl::OnChar)
+END_EVENT_TABLE()
+
 bool wxSpinCtrl::Create(wxWindow *parent, wxWindowID id,
                         const wxString& value,
                         const wxPoint& pos,  const wxSize& size,
@@ -205,6 +209,27 @@ void wxSpinCtrl::SetRange(int minVal, int maxVal)
     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 )
 {
     return GTK_SPIN_BUTTON(m_widget)->panel == window;
index 8a2fcc64919c74b599cbe586c5d3a70f518f1596..1039af2f372bdccd42e43f1ddeb6dc3cc517be50 100644 (file)
@@ -779,6 +779,20 @@ void wxTextCtrl::OnChar( wxKeyEvent &key_event )
         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();
 }
 
index 1c9d78426647ce9a53b028d64fcaf9314a9bfbf9..2097a2db33d513361ba7f909c349543839c30f10 100644 (file)
@@ -21,16 +21,16 @@ extern "C" {
 #define IS_ONSCREEN(x,y) ((x >= G_MINSHORT) && (x <= G_MAXSHORT) && \
                           (y >= G_MINSHORT) && (y <= G_MAXSHORT))
 
-typedef struct _GtkMyFixedAdjData  GtkMyFixedAdjData;
-typedef struct _GtkMyFixedChild    GtkMyFixedChild;
+typedef struct _GtkPizzaAdjData  GtkPizzaAdjData;
+typedef struct _GtkPizzaChild    GtkPizzaChild;
 
-struct _GtkMyFixedAdjData 
+struct _GtkPizzaAdjData 
 {
     gint dx;
     gint dy;
 };
 
-struct _GtkMyFixedChild
+struct _GtkPizzaChild
 {
     GtkWidget *widget;
     gint x;
@@ -39,62 +39,62 @@ struct _GtkMyFixedChild
     gint height;
 };
 
-static void gtk_myfixed_class_init      (GtkMyFixedClass  *klass);
-static void gtk_myfixed_init            (GtkMyFixed       *myfixed);
+static void gtk_pizza_class_init      (GtkPizzaClass  *klass);
+static void gtk_pizza_init            (GtkPizza       *pizza);
 
-static void gtk_myfixed_realize         (GtkWidget        *widget);
-static void gtk_myfixed_unrealize       (GtkWidget        *widget);
+static void gtk_pizza_realize         (GtkWidget        *widget);
+static void gtk_pizza_unrealize       (GtkWidget        *widget);
 
-static void gtk_myfixed_map             (GtkWidget        *widget);
+static void gtk_pizza_map             (GtkWidget        *widget);
 
-static void gtk_myfixed_size_request  (GtkWidget        *widget,
+static void gtk_pizza_size_request  (GtkWidget        *widget,
                                     GtkRequisition   *requisition);
-static void gtk_myfixed_size_allocate (GtkWidget        *widget,
+static void gtk_pizza_size_allocate (GtkWidget        *widget,
                                     GtkAllocation    *allocation);
-static void gtk_myfixed_draw          (GtkWidget        *widget,
+static void gtk_pizza_draw          (GtkWidget        *widget,
                                     GdkRectangle     *area);
-static gint gtk_myfixed_expose        (GtkWidget        *widget,
+static gint gtk_pizza_expose        (GtkWidget        *widget,
                                     GdkEventExpose   *event);
-static void gtk_myfixed_add           (GtkContainer     *container,
+static void gtk_pizza_add           (GtkContainer     *container,
                                     GtkWidget        *widget);
-static void gtk_myfixed_remove        (GtkContainer     *container,
+static void gtk_pizza_remove        (GtkContainer     *container,
                                     GtkWidget        *widget);
-static void gtk_myfixed_forall       (GtkContainer     *container,
+static void gtk_pizza_forall       (GtkContainer     *container,
                                     gboolean         include_internals,
                                     GtkCallback      callback,
                                     gpointer         callback_data);
 
-static void     gtk_myfixed_position_child     (GtkMyFixed      *myfixed,
-                                              GtkMyFixedChild *child);
-static void     gtk_myfixed_allocate_child     (GtkMyFixed      *myfixed,
-                                              GtkMyFixedChild *child);
-static void     gtk_myfixed_position_children  (GtkMyFixed      *myfixed);
+static void     gtk_pizza_position_child     (GtkPizza      *pizza,
+                                              GtkPizzaChild *child);
+static void     gtk_pizza_allocate_child     (GtkPizza      *pizza,
+                                              GtkPizzaChild *child);
+static void     gtk_pizza_position_children  (GtkPizza      *pizza);
 
-static void     gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
+static void     gtk_pizza_adjust_allocations_recurse (GtkWidget *widget,
                                                       gpointer   cb_data);
-static void     gtk_myfixed_adjust_allocations         (GtkMyFixed *myfixed,
+static void     gtk_pizza_adjust_allocations         (GtkPizza *pizza,
                                                       gint       dx,
                                                       gint       dy);
 
 
-static void     gtk_myfixed_expose_area        (GtkMyFixed      *myfixed,
+static void     gtk_pizza_expose_area        (GtkPizza      *pizza,
                                               gint            x, 
                                               gint            y, 
                                               gint            width, 
                                               gint            height);
-static void     gtk_myfixed_adjustment_changed (GtkAdjustment  *adjustment,
-                                              GtkMyFixed      *myfixed);
-static GdkFilterReturn gtk_myfixed_filter      (GdkXEvent      *gdk_xevent,
+static void     gtk_pizza_adjustment_changed (GtkAdjustment  *adjustment,
+                                              GtkPizza      *pizza);
+static GdkFilterReturn gtk_pizza_filter      (GdkXEvent      *gdk_xevent,
                                               GdkEvent       *event,
                                               gpointer        data);
-static GdkFilterReturn gtk_myfixed_main_filter (GdkXEvent      *gdk_xevent,
+static GdkFilterReturn gtk_pizza_main_filter (GdkXEvent      *gdk_xevent,
                                               GdkEvent       *event,
                                               gpointer        data);
 
 
-static GtkType gtk_myfixed_child_type (GtkContainer     *container);
+static GtkType gtk_pizza_child_type (GtkContainer     *container);
 
-static void  gtk_myfixed_scroll_set_adjustments    (GtkMyFixed   *myfixed,
+static void  gtk_pizza_scroll_set_adjustments    (GtkPizza   *pizza,
                                               GtkAdjustment *hadj,
                                               GtkAdjustment *vadj);
 
@@ -103,31 +103,31 @@ static GtkContainerClass *parent_class = NULL;
 static gboolean gravity_works;
 
 guint
-gtk_myfixed_get_type ()
+gtk_pizza_get_type ()
 {
-    static guint myfixed_type = 0;
+    static guint pizza_type = 0;
 
-    if (!myfixed_type)
+    if (!pizza_type)
     {
-        GtkTypeInfo myfixed_info =
+        GtkTypeInfo pizza_info =
         {
-          "GtkMyFixed",
-          sizeof (GtkMyFixed),
-          sizeof (GtkMyFixedClass),
-          (GtkClassInitFunc) gtk_myfixed_class_init,
-          (GtkObjectInitFunc) gtk_myfixed_init,
+          "GtkPizza",
+          sizeof (GtkPizza),
+          sizeof (GtkPizzaClass),
+          (GtkClassInitFunc) gtk_pizza_class_init,
+          (GtkObjectInitFunc) gtk_pizza_init,
           /* reserved_1 */ NULL,
            /* reserved_2 */ NULL,
            (GtkClassInitFunc) NULL,
         };
-        myfixed_type = gtk_type_unique (gtk_container_get_type (), &myfixed_info);
+        pizza_type = gtk_type_unique (gtk_container_get_type (), &pizza_info);
     }
     
-    return myfixed_type;
+    return pizza_type;
 }
 
 static void
-gtk_myfixed_class_init (GtkMyFixedClass *klass)
+gtk_pizza_class_init (GtkPizzaClass *klass)
 {
     GtkObjectClass *object_class;
     GtkWidgetClass *widget_class;
@@ -138,71 +138,71 @@ gtk_myfixed_class_init (GtkMyFixedClass *klass)
     container_class = (GtkContainerClass*) klass;
     parent_class = gtk_type_class (GTK_TYPE_CONTAINER);
 
-    widget_class->map = gtk_myfixed_map;
-    widget_class->realize = gtk_myfixed_realize;
-    widget_class->unrealize = gtk_myfixed_unrealize;
-    widget_class->size_request = gtk_myfixed_size_request;
-    widget_class->size_allocate = gtk_myfixed_size_allocate;
-    widget_class->draw = gtk_myfixed_draw;
-    widget_class->expose_event = gtk_myfixed_expose;
+    widget_class->map = gtk_pizza_map;
+    widget_class->realize = gtk_pizza_realize;
+    widget_class->unrealize = gtk_pizza_unrealize;
+    widget_class->size_request = gtk_pizza_size_request;
+    widget_class->size_allocate = gtk_pizza_size_allocate;
+    widget_class->draw = gtk_pizza_draw;
+    widget_class->expose_event = gtk_pizza_expose;
 
-    container_class->add = gtk_myfixed_add;
-    container_class->remove = gtk_myfixed_remove;
-    container_class->forall = gtk_myfixed_forall;
+    container_class->add = gtk_pizza_add;
+    container_class->remove = gtk_pizza_remove;
+    container_class->forall = gtk_pizza_forall;
 
-    container_class->child_type = gtk_myfixed_child_type;
+    container_class->child_type = gtk_pizza_child_type;
 
-    klass->set_scroll_adjustments = gtk_myfixed_scroll_set_adjustments;
+    klass->set_scroll_adjustments = gtk_pizza_scroll_set_adjustments;
 
     widget_class->set_scroll_adjustments_signal =
     gtk_signal_new ("set_scroll_adjustments",
                    GTK_RUN_LAST,
                    object_class->type,
-                   GTK_SIGNAL_OFFSET (GtkMyFixedClass, set_scroll_adjustments),
+                   GTK_SIGNAL_OFFSET (GtkPizzaClass, set_scroll_adjustments),
                    gtk_marshal_NONE__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 }
 
 static GtkType
-gtk_myfixed_child_type (GtkContainer     *container)
+gtk_pizza_child_type (GtkContainer     *container)
 {
     return GTK_TYPE_WIDGET;
 }
 
 static void
-gtk_myfixed_init (GtkMyFixed *myfixed)
+gtk_pizza_init (GtkPizza *pizza)
 {
-    GTK_WIDGET_UNSET_FLAGS (myfixed, GTK_NO_WINDOW);
+    GTK_WIDGET_UNSET_FLAGS (pizza, GTK_NO_WINDOW);
   
-    myfixed->shadow_type = GTK_MYSHADOW_NONE;
+    pizza->shadow_type = GTK_MYSHADOW_NONE;
 
-    myfixed->children = NULL;
+    pizza->children = NULL;
     
-    myfixed->width = 20;
-    myfixed->height = 20;
+    pizza->width = 20;
+    pizza->height = 20;
 
-    myfixed->bin_window = NULL;
+    pizza->bin_window = NULL;
 
-    myfixed->configure_serial = 0;
-    myfixed->scroll_x = 0;
-    myfixed->scroll_y = 0;
-    myfixed->visibility = GDK_VISIBILITY_PARTIAL;
+    pizza->configure_serial = 0;
+    pizza->scroll_x = 0;
+    pizza->scroll_y = 0;
+    pizza->visibility = GDK_VISIBILITY_PARTIAL;
     
-    myfixed->clear_on_draw = TRUE;
+    pizza->clear_on_draw = TRUE;
 }
 
 GtkWidget*
-gtk_myfixed_new ()
+gtk_pizza_new ()
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
 
-    myfixed = gtk_type_new (gtk_myfixed_get_type ());
+    pizza = gtk_type_new (gtk_pizza_get_type ());
   
-    return GTK_WIDGET (myfixed);
+    return GTK_WIDGET (pizza);
 }
 
 void  
-gtk_myfixed_scroll_set_adjustments (GtkMyFixed     *myfixed,
+gtk_pizza_scroll_set_adjustments (GtkPizza     *pizza,
                                    GtkAdjustment  *hadj,
                                    GtkAdjustment  *vadj)
 {
@@ -210,49 +210,49 @@ gtk_myfixed_scroll_set_adjustments (GtkMyFixed     *myfixed,
 }
 
 void 
-gtk_myfixed_set_shadow_type (GtkMyFixed      *myfixed,
+gtk_pizza_set_shadow_type (GtkPizza      *pizza,
                             GtkMyShadowType  type)
 {
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
 
-    if ((GtkMyShadowType) myfixed->shadow_type != type)
+    if ((GtkMyShadowType) pizza->shadow_type != type)
     {
-        myfixed->shadow_type = type;
+        pizza->shadow_type = type;
 
-        if (GTK_WIDGET_VISIBLE (myfixed))
+        if (GTK_WIDGET_VISIBLE (pizza))
        {
-           gtk_widget_size_allocate (GTK_WIDGET (myfixed), &(GTK_WIDGET (myfixed)->allocation));
-           gtk_widget_queue_draw (GTK_WIDGET (myfixed));
+           gtk_widget_size_allocate (GTK_WIDGET (pizza), &(GTK_WIDGET (pizza)->allocation));
+           gtk_widget_queue_draw (GTK_WIDGET (pizza));
        }
     }
 }
 
 void       
-gtk_my_fixed_set_clear (GtkMyFixed     *myfixed,
+gtk_pizza_set_clear (GtkPizza     *pizza,
                         gboolean        clear)
 {
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     
-    myfixed->clear_on_draw = clear;
+    pizza->clear_on_draw = clear;
 }      
                                        
 void
-gtk_myfixed_put (GtkMyFixed    *myfixed,
+gtk_pizza_put (GtkPizza    *pizza,
                  GtkWidget     *widget,
                  gint         x,
                  gint         y,
                 gint         width,
                 gint         height)
 {
-    GtkMyFixedChild *child_info;
+    GtkPizzaChild *child_info;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    child_info = g_new (GtkMyFixedChild, 1);
+    child_info = g_new (GtkPizzaChild, 1);
     
     child_info->widget = widget;
     child_info->x = x;
@@ -260,24 +260,24 @@ gtk_myfixed_put (GtkMyFixed    *myfixed,
     child_info->width = width;
     child_info->height = height;
   
-    myfixed->children = g_list_append (myfixed->children, child_info); 
+    pizza->children = g_list_append (pizza->children, child_info); 
 
-    gtk_widget_set_parent (widget, GTK_WIDGET (myfixed));
+    gtk_widget_set_parent (widget, GTK_WIDGET (pizza));
 
-    if (GTK_WIDGET_REALIZED (myfixed))
-      gtk_widget_set_parent_window (widget, myfixed->bin_window);
+    if (GTK_WIDGET_REALIZED (pizza))
+      gtk_widget_set_parent_window (widget, pizza->bin_window);
     
     if (!IS_ONSCREEN (x, y))
        GTK_PRIVATE_SET_FLAG (widget, GTK_IS_OFFSCREEN);
 
-    if (GTK_WIDGET_REALIZED (myfixed))
+    if (GTK_WIDGET_REALIZED (pizza))
         gtk_widget_realize (widget);
 
     gtk_widget_set_usize (widget, width, height);
     
-    if (GTK_WIDGET_VISIBLE (myfixed) && GTK_WIDGET_VISIBLE (widget))
+    if (GTK_WIDGET_VISIBLE (pizza) && GTK_WIDGET_VISIBLE (widget))
     {
-        if (GTK_WIDGET_MAPPED (myfixed))
+        if (GTK_WIDGET_MAPPED (pizza))
            gtk_widget_map (widget);
       
         gtk_widget_queue_resize (widget);
@@ -285,19 +285,19 @@ gtk_myfixed_put (GtkMyFixed    *myfixed,
 }
 
 void
-gtk_myfixed_move (GtkMyFixed    *myfixed,
+gtk_pizza_move (GtkPizza    *pizza,
                   GtkWidget     *widget,
                   gint         x,
                   gint         y)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -311,7 +311,7 @@ gtk_myfixed_move (GtkMyFixed    *myfixed,
             child->x = x;
             child->y = y;
            
-           if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+           if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
            break;
        }
@@ -319,19 +319,19 @@ gtk_myfixed_move (GtkMyFixed    *myfixed,
 }
 
 void
-gtk_myfixed_resize (GtkMyFixed     *myfixed,
+gtk_pizza_resize (GtkPizza     *pizza,
                     GtkWidget      *widget,
                    gint         width,
                    gint         height)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -347,7 +347,7 @@ gtk_myfixed_resize (GtkMyFixed     *myfixed,
            
            gtk_widget_set_usize (widget, width, height);
            
-            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
            break;
        }
@@ -355,22 +355,22 @@ gtk_myfixed_resize (GtkMyFixed     *myfixed,
 }
 
 void
-gtk_myfixed_set_size (GtkMyFixed    *myfixed,
+gtk_pizza_set_size (GtkPizza    *pizza,
                       GtkWidget     *widget,
                       gint        x,
                       gint         y,
                      gint         width,
                      gint         height)
 {
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
     GtkAllocation child_allocation;
 
-    g_return_if_fail (myfixed != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (myfixed));
+    g_return_if_fail (pizza != NULL);
+    g_return_if_fail (GTK_IS_PIZZA (pizza));
     g_return_if_fail (widget != NULL);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -390,7 +390,7 @@ gtk_myfixed_set_size (GtkMyFixed    *myfixed,
            
            gtk_widget_set_usize (widget, width, height);
            
-            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (myfixed))
+            if (GTK_WIDGET_VISIBLE (widget) && GTK_WIDGET_VISIBLE (pizza))
                gtk_widget_queue_resize (widget);
                    
             return;
@@ -399,19 +399,19 @@ gtk_myfixed_set_size (GtkMyFixed    *myfixed,
 }
 
 static void
-gtk_myfixed_map (GtkWidget *widget)
+gtk_pizza_map (GtkWidget *widget)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
     GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -426,22 +426,22 @@ gtk_myfixed_map (GtkWidget *widget)
     }
     
     gdk_window_show (widget->window);
-    gdk_window_show (myfixed->bin_window);
+    gdk_window_show (pizza->bin_window);
 }
 
 static void
-gtk_myfixed_realize (GtkWidget *widget)
+gtk_pizza_realize (GtkWidget *widget)
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
     GdkWindowAttr attributes;
     gint attributes_mask;
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
     GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);
 
@@ -452,11 +452,11 @@ gtk_myfixed_realize (GtkWidget *widget)
     attributes.width = widget->allocation.width;
     attributes.height = widget->allocation.height;
 
-    if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+    if (pizza->shadow_type == GTK_MYSHADOW_NONE)
     {
         /* no border, no changes to sizes */
     } else
-    if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+    if (pizza->shadow_type == GTK_MYSHADOW_THIN)
     {
         /* GTK_MYSHADOW_THIN == wxSIMPLE_BORDER */
         attributes.x += 1;
@@ -508,66 +508,66 @@ gtk_myfixed_realize (GtkWidget *widget)
        GDK_LEAVE_NOTIFY_MASK   |
        GDK_FOCUS_CHANGE_MASK;
 
-    myfixed->bin_window = gdk_window_new (widget->window,
+    pizza->bin_window = gdk_window_new (widget->window,
                                          &attributes, attributes_mask);
-    gdk_window_set_user_data (myfixed->bin_window, widget);
+    gdk_window_set_user_data (pizza->bin_window, widget);
     
     widget->style = gtk_style_attach (widget->style, widget->window);
     gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
-    gtk_style_set_background (widget->style, myfixed->bin_window, GTK_STATE_NORMAL);
+    gtk_style_set_background (widget->style, pizza->bin_window, GTK_STATE_NORMAL);
     
     /* add filters for intercepting visibility and expose events */
-    gdk_window_add_filter (widget->window, gtk_myfixed_main_filter, myfixed);
-    gdk_window_add_filter (myfixed->bin_window, gtk_myfixed_filter, myfixed);
+    gdk_window_add_filter (widget->window, gtk_pizza_main_filter, pizza);
+    gdk_window_add_filter (pizza->bin_window, gtk_pizza_filter, pizza);
 
     /* we NEED gravity or we'll give up */
-    gravity_works = gdk_window_set_static_gravities (myfixed->bin_window, TRUE);
+    gravity_works = gdk_window_set_static_gravities (pizza->bin_window, TRUE);
 
     /* cannot be done before realisation */
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
         children = children->next;
 
-        gtk_widget_set_parent_window (child->widget, myfixed->bin_window);
+        gtk_widget_set_parent_window (child->widget, pizza->bin_window);
     }
 }
 
 static void 
-gtk_myfixed_unrealize (GtkWidget *widget)
+gtk_pizza_unrealize (GtkWidget *widget)
 {
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   g_return_if_fail (widget != NULL);
-  g_return_if_fail (GTK_IS_MYFIXED (widget));
+  g_return_if_fail (GTK_IS_PIZZA (widget));
 
-  myfixed = GTK_MYFIXED (widget);
+  pizza = GTK_PIZZA (widget);
 
-  gdk_window_set_user_data (myfixed->bin_window, NULL);
-  gdk_window_destroy (myfixed->bin_window);
-  myfixed->bin_window = NULL;
+  gdk_window_set_user_data (pizza->bin_window, NULL);
+  gdk_window_destroy (pizza->bin_window);
+  pizza->bin_window = NULL;
 
   if (GTK_WIDGET_CLASS (parent_class)->unrealize)
     (* GTK_WIDGET_CLASS (parent_class)->unrealize) (widget);
 }
 
 static void
-gtk_myfixed_size_request (GtkWidget      *widget,
+gtk_pizza_size_request (GtkWidget      *widget,
                          GtkRequisition *requisition)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
     GtkRequisition child_requisition;
   
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
     g_return_if_fail (requisition != NULL);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -586,28 +586,28 @@ gtk_myfixed_size_request (GtkWidget      *widget,
 }
 
 static void
-gtk_myfixed_size_allocate (GtkWidget     *widget,
+gtk_pizza_size_allocate (GtkWidget     *widget,
                           GtkAllocation *allocation)
 {
-    GtkMyFixed *myfixed;
+    GtkPizza *pizza;
     gint border;
     gint x,y,w,h;
-    GtkMyFixedChild *child;
+    GtkPizzaChild *child;
     GtkAllocation child_allocation; 
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED(widget));
+    g_return_if_fail (GTK_IS_PIZZA(widget));
     g_return_if_fail (allocation != NULL);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
   
     widget->allocation = *allocation;
     
-    if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+    if (pizza->shadow_type == GTK_MYSHADOW_NONE)
         border = 0;
     else
-    if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+    if (pizza->shadow_type == GTK_MYSHADOW_THIN)
         border = 1;
     else
         border = 2;
@@ -620,39 +620,39 @@ gtk_myfixed_size_allocate (GtkWidget     *widget,
     if (GTK_WIDGET_REALIZED (widget))
     {
         gdk_window_move_resize( widget->window, x, y, w, h );
-        gdk_window_move_resize( myfixed->bin_window, 0, 0, w, h );
+        gdk_window_move_resize( pizza->bin_window, 0, 0, w, h );
     }
     
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
         children = children->next;
  
-        gtk_myfixed_position_child (myfixed, child);
-        gtk_myfixed_allocate_child (myfixed, child);
+        gtk_pizza_position_child (pizza, child);
+        gtk_pizza_allocate_child (pizza, child);
     }
 }
 
 static void
-gtk_myfixed_draw (GtkWidget    *widget,
+gtk_pizza_draw (GtkWidget    *widget,
                  GdkRectangle *area)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GdkRectangle child_area;
     GList *children;
 
     g_return_if_fail (widget != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (widget));
+    g_return_if_fail (GTK_IS_PIZZA (widget));
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
       
-    children = myfixed->children;
+    children = pizza->children;
     if ( !(GTK_WIDGET_APP_PAINTABLE (widget)) &&
-         (myfixed->clear_on_draw))
+         (pizza->clear_on_draw))
     {
-        gdk_window_clear_area( myfixed->bin_window,
+        gdk_window_clear_area( pizza->bin_window,
                                area->x, area->y, area->width, area->height);
     }
 
@@ -667,32 +667,32 @@ gtk_myfixed_draw (GtkWidget    *widget,
 }
 
 static gint
-gtk_myfixed_expose (GtkWidget      *widget,
+gtk_pizza_expose (GtkWidget      *widget,
                    GdkEventExpose *event)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GdkEventExpose child_event;
     GList *children;
 
     g_return_val_if_fail (widget != NULL, FALSE);
-    g_return_val_if_fail (GTK_IS_MYFIXED (widget), FALSE);
+    g_return_val_if_fail (GTK_IS_PIZZA (widget), FALSE);
     g_return_val_if_fail (event != NULL, FALSE);
 
-    myfixed = GTK_MYFIXED (widget);
+    pizza = GTK_PIZZA (widget);
 
 /*
     if (event->window == widget->window)
     {
-        gtk_myfixed_draw_border( myfixed );
+        gtk_pizza_draw_border( pizza );
         return FALSE;
     }
 */
 
-    if (event->window != myfixed->bin_window)
+    if (event->window != pizza->bin_window)
         return FALSE;
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
        child = children->data;
@@ -712,31 +712,31 @@ gtk_myfixed_expose (GtkWidget      *widget,
 }
 
 static void
-gtk_myfixed_add (GtkContainer *container,
+gtk_pizza_add (GtkContainer *container,
               GtkWidget    *widget)
 {
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (widget != NULL);
 
-    gtk_myfixed_put (GTK_MYFIXED (container), widget, 0, 0, 20, 20 );
+    gtk_pizza_put (GTK_PIZZA (container), widget, 0, 0, 20, 20 );
 }
 
 static void
-gtk_myfixed_remove (GtkContainer *container,
+gtk_pizza_remove (GtkContainer *container,
                    GtkWidget    *widget)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (widget != NULL);
 
-    myfixed = GTK_MYFIXED (container);
+    pizza = GTK_PIZZA (container);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -748,7 +748,7 @@ gtk_myfixed_remove (GtkContainer *container,
             /* security checks */
             g_return_if_fail (GTK_IS_WIDGET (widget));
   
-           myfixed->children = g_list_remove_link (myfixed->children, children);
+           pizza->children = g_list_remove_link (pizza->children, children);
            g_list_free (children);
            g_free (child);
 
@@ -765,22 +765,22 @@ gtk_myfixed_remove (GtkContainer *container,
 }
 
 static void
-gtk_myfixed_forall (GtkContainer *container,
+gtk_pizza_forall (GtkContainer *container,
                   gboolean      include_internals,
                   GtkCallback   callback,
                   gpointer      callback_data)
 {
-    GtkMyFixed *myfixed;
-    GtkMyFixedChild *child;
+    GtkPizza *pizza;
+    GtkPizzaChild *child;
     GList *children;
 
     g_return_if_fail (container != NULL);
-    g_return_if_fail (GTK_IS_MYFIXED (container));
+    g_return_if_fail (GTK_IS_PIZZA (container));
     g_return_if_fail (callback != NULL);
 
-    myfixed = GTK_MYFIXED (container);
+    pizza = GTK_PIZZA (container);
 
-    children = myfixed->children;
+    children = pizza->children;
     while (children)
     {
         child = children->data;
@@ -795,18 +795,18 @@ gtk_myfixed_forall (GtkContainer *container,
  */
 
 static void
-gtk_myfixed_position_child (GtkMyFixed      *myfixed,
-                          GtkMyFixedChild *child)
+gtk_pizza_position_child (GtkPizza      *pizza,
+                          GtkPizzaChild *child)
 {
     gint x;
     gint y;
 
-    x = child->x - myfixed->xoffset;
-    y = child->y - myfixed->yoffset;
+    x = child->x - pizza->xoffset;
+    y = child->y - pizza->yoffset;
 
     if (IS_ONSCREEN (x,y))
     {
-        if (GTK_WIDGET_MAPPED (myfixed) &&
+        if (GTK_WIDGET_MAPPED (pizza) &&
          GTK_WIDGET_VISIBLE (child->widget))
        {
            if (!GTK_WIDGET_MAPPED (child->widget))
@@ -827,14 +827,14 @@ gtk_myfixed_position_child (GtkMyFixed      *myfixed,
 }
 
 static void
-gtk_myfixed_allocate_child (GtkMyFixed      *myfixed,
-                          GtkMyFixedChild *child)
+gtk_pizza_allocate_child (GtkPizza      *pizza,
+                          GtkPizzaChild *child)
 {
     GtkAllocation allocation;
     GtkRequisition requisition;
 
-    allocation.x = child->x - myfixed->xoffset;
-    allocation.y = child->y - myfixed->yoffset;
+    allocation.x = child->x - pizza->xoffset;
+    allocation.y = child->y - pizza->yoffset;
     gtk_widget_get_child_requisition (child->widget, &requisition);
     allocation.width = requisition.width;
     allocation.height = requisition.height;
@@ -843,25 +843,25 @@ gtk_myfixed_allocate_child (GtkMyFixed      *myfixed,
 }
 
 static void
-gtk_myfixed_position_children (GtkMyFixed *myfixed)
+gtk_pizza_position_children (GtkPizza *pizza)
 {
     GList *tmp_list;
 
-    tmp_list = myfixed->children;
+    tmp_list = pizza->children;
     while (tmp_list)
     {
-        GtkMyFixedChild *child = tmp_list->data;
+        GtkPizzaChild *child = tmp_list->data;
         tmp_list = tmp_list->next;
       
-        gtk_myfixed_position_child (myfixed, child);
+        gtk_pizza_position_child (pizza, child);
     }
 }
 
 static void
-gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
+gtk_pizza_adjust_allocations_recurse (GtkWidget *widget,
                                       gpointer   cb_data)
 {
-    GtkMyFixedAdjData *data = cb_data;
+    GtkPizzaAdjData *data = cb_data;
 
     widget->allocation.x += data->dx;
     widget->allocation.y += data->dy;
@@ -869,26 +869,26 @@ gtk_myfixed_adjust_allocations_recurse (GtkWidget *widget,
     if (GTK_WIDGET_NO_WINDOW (widget) && GTK_IS_CONTAINER (widget))
     {
         gtk_container_forall (GTK_CONTAINER (widget), 
-                         gtk_myfixed_adjust_allocations_recurse,
+                         gtk_pizza_adjust_allocations_recurse,
                          cb_data);
     }
 }
 
 static void
-gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
+gtk_pizza_adjust_allocations (GtkPizza *pizza,
                               gint       dx,
                               gint       dy)
 {
   GList *tmp_list;
-  GtkMyFixedAdjData data;
+  GtkPizzaAdjData data;
 
   data.dx = dx;
   data.dy = dy;
 
-  tmp_list = myfixed->children;
+  tmp_list = pizza->children;
   while (tmp_list)
     {
-      GtkMyFixedChild *child = tmp_list->data;
+      GtkPizzaChild *child = tmp_list->data;
       tmp_list = tmp_list->next;
       
       child->widget->allocation.x += dx;
@@ -897,7 +897,7 @@ gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
       if (GTK_WIDGET_NO_WINDOW (child->widget) &&
          GTK_IS_CONTAINER (child->widget))
        gtk_container_forall (GTK_CONTAINER (child->widget), 
-                             gtk_myfixed_adjust_allocations_recurse,
+                             gtk_pizza_adjust_allocations_recurse,
                              &data);
     }
 }
@@ -907,16 +907,16 @@ gtk_myfixed_adjust_allocations (GtkMyFixed *myfixed,
 /* Send a synthetic expose event to the widget
  */
 static void
-gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
+gtk_pizza_expose_area (GtkPizza    *pizza,
                        gint x, gint y, gint width, gint height)
 {
-  if (myfixed->visibility == GDK_VISIBILITY_UNOBSCURED)
+  if (pizza->visibility == GDK_VISIBILITY_UNOBSCURED)
     {
       GdkEventExpose event;
       
       event.type = GDK_EXPOSE;
       event.send_event = TRUE;
-      event.window = myfixed->bin_window;
+      event.window = pizza->bin_window;
       event.count = 0;
       
       event.area.x = x;
@@ -925,7 +925,7 @@ gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
       event.area.height = height;
       
       gdk_window_ref (event.window);
-      gtk_widget_event (GTK_WIDGET (myfixed), (GdkEvent *)&event);
+      gtk_widget_event (GTK_WIDGET (pizza), (GdkEvent *)&event);
       gdk_window_unref (event.window);
     }
 }
@@ -934,7 +934,7 @@ gtk_myfixed_expose_area (GtkMyFixed    *myfixed,
  */
 
 static Bool 
-gtk_myfixed_expose_predicate (Display *display, 
+gtk_pizza_expose_predicate (Display *display, 
                  XEvent  *xevent, 
                  XPointer arg)
 {
@@ -959,30 +959,30 @@ gtk_myfixed_expose_predicate (Display *display,
  */
 
 void
-gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
+gtk_pizza_scroll (GtkPizza *pizza, gint dx, gint dy)
 {
   GtkWidget *widget;
   XEvent xevent;
 
   gint x,y,w,h,border;
   
-  widget = GTK_WIDGET (myfixed);
+  widget = GTK_WIDGET (pizza);
 
-  myfixed->xoffset += dx;
-  myfixed->yoffset += dy;
+  pizza->xoffset += dx;
+  pizza->yoffset += dy;
 
-  if (!GTK_WIDGET_MAPPED (myfixed))
+  if (!GTK_WIDGET_MAPPED (pizza))
     {
-      gtk_myfixed_position_children (myfixed);
+      gtk_pizza_position_children (pizza);
       return;
     }
 
-  gtk_myfixed_adjust_allocations (myfixed, -dx, -dy);
+  gtk_pizza_adjust_allocations (pizza, -dx, -dy);
 
-  if (myfixed->shadow_type == GTK_MYSHADOW_NONE)
+  if (pizza->shadow_type == GTK_MYSHADOW_NONE)
     border = 0;
   else
-  if (myfixed->shadow_type == GTK_MYSHADOW_THIN)
+  if (pizza->shadow_type == GTK_MYSHADOW_THIN)
     border = 1;
   else
     border = 2;
@@ -996,18 +996,18 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_resize (myfixed->bin_window,
+         gdk_window_resize (pizza->bin_window,
                             w + dx,
                             h);
-         gdk_window_move   (myfixed->bin_window, x-dx, y);
-         gdk_window_move_resize (myfixed->bin_window, x, y, w, h );
+         gdk_window_move   (pizza->bin_window, x-dx, y);
+         gdk_window_move_resize (pizza->bin_window, x, y, w, h );
        }
       else
        {
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              MAX ((gint)w - dx, 0),
                              0,
                              MIN (dx, w),
@@ -1017,20 +1017,20 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_move_resize (pizza->bin_window,
                                  x + dx, 
                                  y,
                                  w - dx,
                                  h);
-         gdk_window_move   (myfixed->bin_window, x, y);
-         gdk_window_resize (myfixed->bin_window, w, h );
+         gdk_window_move   (pizza->bin_window, x, y);
+         gdk_window_resize (pizza->bin_window, w, h );
        }
       else
        {
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed,
+      gtk_pizza_expose_area (pizza,
                              0,
                              0,
                              MIN (-dx, w),
@@ -1041,9 +1041,9 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_resize (myfixed->bin_window, w, h + dy);
-         gdk_window_move   (myfixed->bin_window, x, y-dy);
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_resize (pizza->bin_window, w, h + dy);
+         gdk_window_move   (pizza->bin_window, x, y-dy);
+         gdk_window_move_resize (pizza->bin_window,
                                  x, y, w, h );
        }
       else
@@ -1051,7 +1051,7 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
          /* FIXME */
        }
 
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              0,
                              MAX ((gint)h - dy, 0),
                              w,
@@ -1061,23 +1061,23 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
     {
       if (gravity_works)
        {
-         gdk_window_move_resize (myfixed->bin_window,
+         gdk_window_move_resize (pizza->bin_window,
                                  x, y+dy, w, h - dy );
-         gdk_window_move   (myfixed->bin_window, x, y);
-         gdk_window_resize (myfixed->bin_window, w, h );
+         gdk_window_move   (pizza->bin_window, x, y);
+         gdk_window_resize (pizza->bin_window, w, h );
        }
       else
        {
          /* FIXME */
        }
-      gtk_myfixed_expose_area (myfixed
+      gtk_pizza_expose_area (pizza
                              0,
                              0,
                              w,
                              MIN (-dy, (gint)h));
     }
 
-  gtk_myfixed_position_children (myfixed);
+  gtk_pizza_position_children (pizza);
 
   /* We have to make sure that all exposes from this scroll get
    * processed before we scroll again, or the expose events will
@@ -1091,16 +1091,16 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
    */
 
   gdk_flush();
-  while (XCheckIfEvent(GDK_WINDOW_XDISPLAY (myfixed->bin_window),
+  while (XCheckIfEvent(GDK_WINDOW_XDISPLAY (pizza->bin_window),
                       &xevent,
-                      gtk_myfixed_expose_predicate,
-                      (XPointer)&GDK_WINDOW_XWINDOW (myfixed->bin_window)))
+                      gtk_pizza_expose_predicate,
+                      (XPointer)&GDK_WINDOW_XWINDOW (pizza->bin_window)))
     {
       GdkEvent event;
       GtkWidget *event_widget;
 
-      if ((xevent.xany.window == GDK_WINDOW_XWINDOW (myfixed->bin_window)) &&
-         (gtk_myfixed_filter (&xevent, &event, myfixed) == GDK_FILTER_REMOVE))
+      if ((xevent.xany.window == GDK_WINDOW_XWINDOW (pizza->bin_window)) &&
+         (gtk_pizza_filter (&xevent, &event, pizza) == GDK_FILTER_REMOVE))
        continue;
       
       if (xevent.type == Expose)
@@ -1137,27 +1137,27 @@ gtk_myfixed_scroll (GtkMyFixed *myfixed, gint dx, gint dy)
  * or not.
  */
 static GdkFilterReturn 
-gtk_myfixed_filter (GdkXEvent *gdk_xevent,
+gtk_pizza_filter (GdkXEvent *gdk_xevent,
                   GdkEvent  *event,
                   gpointer   data)
 {
   XEvent *xevent;
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   xevent = (XEvent *)gdk_xevent;
-  myfixed = GTK_MYFIXED (data);
+  pizza = GTK_PIZZA (data);
 
   switch (xevent->type)
     {
     case Expose:
-      if (xevent->xexpose.serial == myfixed->configure_serial)
+      if (xevent->xexpose.serial == pizza->configure_serial)
        {
-         if (myfixed->visibility == GDK_VISIBILITY_UNOBSCURED)
+         if (pizza->visibility == GDK_VISIBILITY_UNOBSCURED)
            return GDK_FILTER_REMOVE;
          else
            {
-             xevent->xexpose.x += myfixed->scroll_x;
-             xevent->xexpose.y += myfixed->scroll_y;
+             xevent->xexpose.x += pizza->scroll_x;
+             xevent->xexpose.y += pizza->scroll_y;
              
              break;
            }
@@ -1167,9 +1167,9 @@ gtk_myfixed_filter (GdkXEvent *gdk_xevent,
     case ConfigureNotify:
        if ((xevent->xconfigure.x != 0) || (xevent->xconfigure.y != 0))
        {
-         myfixed->configure_serial = xevent->xconfigure.serial;
-         myfixed->scroll_x = xevent->xconfigure.x;
-         myfixed->scroll_y = xevent->xconfigure.y;
+         pizza->configure_serial = xevent->xconfigure.serial;
+         pizza->scroll_x = xevent->xconfigure.x;
+         pizza->scroll_y = xevent->xconfigure.y;
        }
       break;
     }
@@ -1182,30 +1182,30 @@ gtk_myfixed_filter (GdkXEvent *gdk_xevent,
  * to get the events from a filter
  */
 static GdkFilterReturn 
-gtk_myfixed_main_filter (GdkXEvent *gdk_xevent,
+gtk_pizza_main_filter (GdkXEvent *gdk_xevent,
                        GdkEvent  *event,
                        gpointer   data)
 {
   XEvent *xevent;
-  GtkMyFixed *myfixed;
+  GtkPizza *pizza;
 
   xevent = (XEvent *)gdk_xevent;
-  myfixed = GTK_MYFIXED (data);
+  pizza = GTK_PIZZA (data);
 
   if (xevent->type == VisibilityNotify)
     {
       switch (xevent->xvisibility.state)
        {
        case VisibilityFullyObscured:
-         myfixed->visibility = GDK_VISIBILITY_FULLY_OBSCURED;
+         pizza->visibility = GDK_VISIBILITY_FULLY_OBSCURED;
          break;
 
        case VisibilityPartiallyObscured:
-         myfixed->visibility = GDK_VISIBILITY_PARTIAL;
+         pizza->visibility = GDK_VISIBILITY_PARTIAL;
          break;
 
        case VisibilityUnobscured:
-         myfixed->visibility = GDK_VISIBILITY_UNOBSCURED;
+         pizza->visibility = GDK_VISIBILITY_UNOBSCURED;
          break;
        }
 
index c6b827a1e4ee66d34130638ef4f0eda6d4954c95..ccd126982719b2e13f5ff12ba88e3819b2015662 100644 (file)
    can find in m_widget (defined in wxWindow)
 
    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
    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
    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
-   the type GtkMyFixed.
+   the type GtkPizza.
 
    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
    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-
-   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.
 
    If the m_wxwindow field is set, then all input to this widget is inter-
    clicking on a scrollbar belonging to scrolled window will inevitably move
    the window. In wxWindows, the scrollbar will only emit an event, send this
    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
    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) 
    
@@ -267,8 +267,6 @@ extern bool g_isIdle;
 // local code (see below)
 //-----------------------------------------------------------------------------
 
-#if (GTK_MINOR_VERSION > 0)
-
 static void draw_frame( GtkWidget *widget, wxWindow *win )
 {
     if (!win->m_hasVMT)
@@ -364,156 +362,10 @@ static void gtk_window_own_draw_callback( GtkWidget *widget, GdkRectangle *WXUNU
     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 )
 {
     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 );
                 break;
             }
+           if (ancestor->m_isFrame)
+               break;
             ancestor = ancestor->GetParent();
         }
     }
@@ -906,7 +760,8 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
     }
 
 #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) &&
          (gdk_event->keyval == GDK_F10) )
@@ -1113,9 +968,9 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         wxNode *node = win->GetChildren().First();
@@ -1240,9 +1095,9 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         wxNode *node = win->GetChildren().First();
@@ -1360,9 +1215,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
         int y = event.m_y;
         if (win->m_wxwindow)
         {
-            GtkMyFixed *myfixed = GTK_MYFIXED(win->m_wxwindow);
-           x += myfixed->xoffset;
-           y += myfixed->yoffset;
+            GtkPizza *pizza = GTK_PIZZA(win->m_wxwindow);
+           x += pizza->xoffset;
+           y += pizza->yoffset;
         }
 
         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
        have to adapt the position */
-    GtkMyFixed *myfixed = GTK_MYFIXED(parent->m_wxwindow);
-    child->m_x += myfixed->xoffset;
-    child->m_y += myfixed->yoffset;
+    GtkPizza *pizza = GTK_PIZZA(parent->m_wxwindow);
+    child->m_x += pizza->xoffset;
+    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),
                      child->m_x,
                      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_vAdjust = gtk_range_get_adjustment( GTK_RANGE(scrolledWindow->vscrollbar) );
 
-    m_wxwindow = gtk_myfixed_new();
+    m_wxwindow = gtk_pizza_new();
 
 #ifdef __WXDEBUG__
     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 );
 
 #if (GTK_MINOR_VERSION > 0)
-    GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
+    GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
 
     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))
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_IN );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_IN );
     }
     else if (HasFlag(wxSIMPLE_BORDER))
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_THIN );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_THIN );
     }
     else
     {
-        gtk_myfixed_set_shadow_type( myfixed, GTK_MYSHADOW_NONE );
+        gtk_pizza_set_shadow_type( pizza, GTK_MYSHADOW_NONE );
     }
 #else // GTK_MINOR_VERSION == 0
     GtkViewport *viewport = GTK_VIEWPORT(scrolledWindow->viewport);
@@ -2213,19 +2068,19 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
     }
     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 (x != -1) m_x = x + myfixed->xoffset;
-            if (y != -1) m_y = y + myfixed->yoffset;
+            if (x != -1) m_x = x + pizza->xoffset;
+            if (y != -1) m_y = y + pizza->yoffset;
             if (width != -1) m_width = width;
             if (height != -1) m_height = height;
         }
         else
         {
-            m_x = x + myfixed->xoffset;
-            m_y = y + myfixed->yoffset;
+            m_x = x + pizza->xoffset;
+            m_y = y + pizza->yoffset;
             m_width = width;
             m_height = height;
         }
@@ -2255,7 +2110,7 @@ void wxWindow::DoSetSize( int x, int y, int width, int height, int sizeFlags )
             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_x-border,
                               m_y-border,
@@ -2294,7 +2149,7 @@ void wxWindow::OnInternalIdle()
        
         if (m_wxwindow)
         {
-            GdkWindow *window = GTK_MYFIXED(m_wxwindow)->bin_window;
+            GdkWindow *window = GTK_PIZZA(m_wxwindow)->bin_window;
             if (window)
                 gdk_window_set_cursor( window, cursor.GetCursor() );
 
@@ -2484,9 +2339,9 @@ void wxWindow::DoGetPosition( int *x, int *y ) const
     int dy = 0;
     if (m_parent && m_parent->m_wxwindow)
     {
-        GtkMyFixed *myfixed = GTK_MYFIXED(m_parent->m_wxwindow);
-       dx = myfixed->xoffset;
-       dy = myfixed->yoffset;
+        GtkPizza *pizza = GTK_PIZZA(m_parent->m_wxwindow);
+       dx = pizza->xoffset;
+       dy = pizza->yoffset;
     }
 
     if (x) (*x) = m_x - dx;
@@ -2501,7 +2356,7 @@ void wxWindow::DoClientToScreen( int *x, int *y ) const
 
     GdkWindow *source = (GdkWindow *) NULL;
     if (m_wxwindow)
-        source = GTK_MYFIXED(m_wxwindow)->bin_window;
+        source = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         source = m_widget->window;
 
@@ -2530,7 +2385,7 @@ void wxWindow::DoScreenToClient( int *x, int *y ) const
 
     GdkWindow *source = (GdkWindow *) NULL;
     if (m_wxwindow)
-        source = GTK_MYFIXED(m_wxwindow)->bin_window;
+        source = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         source = m_widget->window;
 
@@ -2738,7 +2593,7 @@ void wxWindow::WarpPointer( int x, int y )
     
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -2756,30 +2611,30 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *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->width, rect->height );
         }
         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
-       invent our own in the GtkMyFixed widget */
+       invent our own in the GtkPizza widget */
 
     if (!rect)
     {
         if (m_wxwindow)
        {
-           GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
-           gboolean old_clear = myfixed->clear_on_draw;
-           gtk_my_fixed_set_clear( myfixed, FALSE );
+           GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
+           gboolean old_clear = pizza->clear_on_draw;
+           gtk_pizza_set_clear( pizza, FALSE );
            
             gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
            
-           gtk_my_fixed_set_clear( myfixed, old_clear );
+           gtk_pizza_set_clear( pizza, old_clear );
        }
         else
             gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
@@ -2794,13 +2649,13 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
 
         if (m_wxwindow)
        {
-           GtkMyFixed *myfixed = GTK_MYFIXED(m_wxwindow);
-           gboolean old_clear = myfixed->clear_on_draw;
-           gtk_my_fixed_set_clear( myfixed, FALSE );
+           GtkPizza *pizza = GTK_PIZZA(m_wxwindow);
+           gboolean old_clear = pizza->clear_on_draw;
+           gtk_pizza_set_clear( pizza, FALSE );
            
             gtk_widget_draw( m_wxwindow, &gdk_rect );
            
-           gtk_my_fixed_set_clear( myfixed, old_clear );
+           gtk_pizza_set_clear( pizza, old_clear );
        }
         else
             gtk_widget_draw( m_widget, &gdk_rect );
@@ -2847,7 +2702,7 @@ bool wxWindow::SetBackgroundColour( const wxColour &colour )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -2899,7 +2754,7 @@ bool wxWindow::SetForegroundColour( const wxColour &colour )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3073,7 +2928,7 @@ GtkWidget* wxWindow::GetConnectWidget()
 bool wxWindow::IsOwnGtkWindow( GdkWindow *window )
 {
     if (m_wxwindow) 
-        return (window == GTK_MYFIXED(m_wxwindow)->bin_window);
+        return (window == GTK_PIZZA(m_wxwindow)->bin_window);
     
     return (window == m_widget->window);
 }
@@ -3091,7 +2946,7 @@ bool wxWindow::SetFont( const wxFont &font )
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3129,7 +2984,7 @@ void wxWindow::CaptureMouse()
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         window = GetConnectWidget()->window;
        
@@ -3155,7 +3010,7 @@ void wxWindow::ReleaseMouse()
 
     GdkWindow *window = (GdkWindow*) NULL;
     if (m_wxwindow)
-        window = GTK_MYFIXED(m_wxwindow)->bin_window;
+        window = GTK_PIZZA(m_wxwindow)->bin_window;
     else
         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") );
 
-    gtk_myfixed_scroll( GTK_MYFIXED(m_wxwindow), -dx, -dy );
+    gtk_pizza_scroll( GTK_PIZZA(m_wxwindow), -dx, -dy );
 
 /*
     if (!m_scrollGC)
index b774feb1c42b9269d9e82a654210e3d9f6767d67..735da31179d5bf745f09420ff8314474067df113 100644 (file)
@@ -95,7 +95,7 @@ void wxGLContext::SwapBuffers()
 {
     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 ) );
     }
 }
@@ -104,7 +104,7 @@ void wxGLContext::SetCurrent()
 {
     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 );
     }
 }
@@ -304,7 +304,7 @@ bool wxGLCanvas::Create( wxWindow *parent,
 
     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_FUNC(gtk_glwindow_realized_callback), (gpointer) this );