]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/xywindow.cpp
GTK: wrap GTK_WIDGET
[xonotic/netradiant.git] / radiant / xywindow.cpp
index 80b0a97bf97e76282e2cfa6e45c2d5e22cd816b1..9203f964bb34cf23b9045ced01a506a149f9641d 100644 (file)
@@ -412,6 +412,7 @@ inline unsigned int buttons_for_button_and_modifiers( ButtonIdentifier button, M
 
        switch ( button.get() )
        {
+    case ButtonEnumeration::INVALID: break;
        case ButtonEnumeration::LEFT: buttons |= RAD_LBUTTON; break;
        case ButtonEnumeration::MIDDLE: buttons |= RAD_MBUTTON; break;
        case ButtonEnumeration::RIGHT: buttons |= RAD_RBUTTON; break;
@@ -538,7 +539,7 @@ VIEWTYPE GlobalXYWnd_getCurrentViewType(){
 
 bool g_bCrossHairs = false;
 
-ui::Menu XYWnd::m_mnuDrop{nullptr};
+ui::Menu XYWnd::m_mnuDrop(ui::null);
 
 // this is disabled, and broken
 // http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=394
@@ -550,7 +551,7 @@ void WXY_Print(){
        unsigned char* img;
        const char* filename;
 
-       filename = ui::file_dialog( GTK_WIDGET( MainFrame_getWindow() ), FALSE, "Save Image", 0, FILTER_BMP );
+       filename = ui::file_dialog( MainFrame_getWindow( ), FALSE, "Save Image", 0, FILTER_BMP );
        if ( !filename ) {
                return;
        }
@@ -707,7 +708,7 @@ bool XYWnd::chaseMouseMotion( int pointx, int pointy ){
 Shader* XYWnd::m_state_selected = 0;
 
 void xy_update_xor_rectangle( XYWnd& self, rect_t area ){
-       if ( gtk_widget_get_visible( self.GetWidget() ) ) {
+       if ( self.GetWidget().visible() ) {
                self.m_XORRectangle.set( rectangle_from_area( area.min, area.max, self.Width(), self.Height() ) );
        }
 }
@@ -820,7 +821,7 @@ XYWnd::XYWnd() :
 
        m_entityCreate = false;
 
-       m_mnuDrop = ui::Menu{nullptr};
+       m_mnuDrop = ui::Menu(ui::null);
 
        GlobalWindowObservers_add( m_window_observer );
        GlobalWindowObservers_connectWidget( m_gl_widget );
@@ -828,7 +829,7 @@ XYWnd::XYWnd() :
        m_window_observer->setRectangleDrawCallback( ReferenceCaller1<XYWnd, rect_t, xy_update_xor_rectangle>( *this ) );
        m_window_observer->setView( m_view );
 
-       g_object_ref( m_gl_widget );
+       g_object_ref( m_gl_widget._handle );
 
        gtk_widget_set_events( m_gl_widget, GDK_DESTROY | GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK | GDK_SCROLL_MASK );
        gtk_widget_set_can_focus( m_gl_widget, true );
@@ -860,8 +861,8 @@ XYWnd::~XYWnd(){
        onDestroyed();
 
        if ( m_mnuDrop ) {
-               gtk_widget_destroy( GTK_WIDGET( m_mnuDrop ) );
-               m_mnuDrop = ui::Menu{nullptr};
+               m_mnuDrop.destroy();
+               m_mnuDrop = ui::Menu(ui::null);
        }
 
        g_signal_handler_disconnect( G_OBJECT( m_gl_widget ), m_sizeHandler );
@@ -1111,8 +1112,8 @@ void pushMenu( const CopiedString& name ){
        item.show();
        m_stack.back().first.add(item);
 
-       auto submenu = ui::Menu();
-       gtk_menu_item_set_submenu( item, GTK_WIDGET( submenu ) );
+       auto submenu = ui::Menu(ui::New);
+       gtk_menu_item_set_submenu( item, submenu  );
 
        m_stack.push_back( MenuPair( submenu, name ) );
 }
@@ -1154,7 +1155,7 @@ void XYWnd::OnContextMenu(){
        }
 
        if ( !m_mnuDrop ) { // first time, load it up
-               auto menu = m_mnuDrop = ui::Menu();
+               auto menu = m_mnuDrop = ui::Menu(ui::New);
 
                EntityClassMenuInserter inserter( menu );
                GlobalEntityClassManager().forEach( inserter );
@@ -2066,7 +2067,7 @@ void SetState( Shader* state, EStyle style ){
                m_state_stack.back().m_state = state;
        }
 }
-const EStyle getStyle() const {
+EStyle getStyle() const {
        return eWireframeOnly;
 }
 void PushState(){
@@ -2569,8 +2570,8 @@ void realise(){
 void unrealise(){
        if ( ++m_unrealised == 1 ) {
                if ( XYWnd::m_mnuDrop ) {
-                       gtk_widget_destroy( GTK_WIDGET( XYWnd::m_mnuDrop ) );
-                       XYWnd::m_mnuDrop = ui::Menu(nullptr);
+                       XYWnd::m_mnuDrop.destroy();
+                       XYWnd::m_mnuDrop = ui::Menu(ui::null);
                }
        }
 }