Hello all,
I have a custom container widget (derived from Gtk::Container) which is
somewhat similar to a toolbar. I am declaring the widget as windowless in
the class constructor by *set_flags(Gtk::NO_WINDOW)*. Later in ::on_realize
of my class I do the following.
void CInlineMenu::on_realize()
{
    GdkWindowAttr stWndAttrib;
    Gtk::Allocation obAlloc;

    //Call base class
    Gtk::Container::on_realize();

    if(!m_refWnd)
    {
        //Get size allocation
        obAlloc = get_allocation();

        //Set window attributes
        stWndAttrib.x = obAlloc.get_x();
        stWndAttrib.y = obAlloc.get_y();
        stWndAttrib.width = obAlloc.get_width();
        stWndAttrib.height = obAlloc.get_height();

        stWndAttrib.event_mask = Gdk::EXPOSURE_MASK;
        stWndAttrib.window_type = GDK_WINDOW_CHILD;
        stWndAttrib.wclass = GDK_INPUT_OUTPUT;
        stWndAttrib.type_hint = GDK_WINDOW_TYPE_HINT_DOCK;

        //Create a window
        m_refWnd = Gdk::Window::create(get_window(), &stWndAttrib, GDK_WA_X
| GDK_WA_Y);
        //unset_flags(Gtk::NO_WINDOW);
        //set_window(m_refWnd);
        m_refWnd->set_user_data(gobj());
    }
}

Within this container I will be having multiple windowed widgets like
buttons. Now when I run  my application the child widgets are visible but
the drawing what I do within the *on_expose_event* override of my class is
not appearing on screen, which I believe is because I created my widget
window-less.

Now the million dollar question is how to draw something from this class. Is
it even possible or do I need to reconsider I *realize* my widget?
_______________________________________________
gtkmm-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkmm-list

Reply via email to