Welcome!

Go to Software pageHi, and welcome to my new weblog. I figured using a weblog for maintaining a little site as this one would be a lot easier than hacking around with those old .html files all the time. So here it is. Still a bit work in progress, though. :)

To check out my software projects that used to reside here on the front page, just use the links under Software in the pages list to the right.

8 Responses to “Welcome!”

  1. Wolfmanfx Says:

    Hi,
    i love ur widget but the expose bug is very bad :(((
    have u find the bug i have tried to make some hack but no luck…
    Are still working on it?

    best regards

  2. DWORD Says:

    Hi Wolfmanfx,

    I haven’t looked at it for a while, and I don’t know if and when I’ll get back to it, but please let me know if you figure out something. I know these expose events are a pain in the butt, because I spent about 3 days getting it working as much (or little) as it does now in Linux. Such waste of time is partly the reason I didn’t get further with it. ;)

    Are you running it on Windows, because I never got around to trying that? But I know for sure that WM_PAINT et al events are a good deal easier to get working right, especially with Ogre.

  3. Wolfmanfx Says:

    Hi,
    Yep i work under WinXP i have uploaded a VC8 version from ur widget
    http://stud3.tuwien.ac.at/~e0126198/gtkogre-0.1.0_added_vc8.rar

    I will try to get expose event cause i want to port my CeGUI editor to GTK cause in the work we have made app in GTK and everything was fine :)

  4. Wolfmanfx Says:

    I have found it or maybe not its some kind of a hack i have thought of our problem that the window doesnt repaint it was quite simple cause ogre renders only one frame like a screenshot in each widget now when u overlap a ogre widget it doest repaint cause noone is calling the ogre renderloop only when we resize the window a new screenshot is made.
    To overcome this i added a idle function to gtk main loop

    gtk_idle_add((GtkFunction)onFrame,0);

    static gboolean onFrame()
    {
    Ogre::Root::getSingletonPtr()->renderOneFrame();
    return TRUE;
    }

    it was only for testing now the widget work the way i like :)(of course it eats some cpu time but this we can easy overcome with a frame break)

    So what do u think about this?

    best regards….its time for some sleeping :)

  5. Ocelot Says:

    I don’t know what a problem you have with expose event, but if you talk about lack of repainting when ogre widget is cover by menu or other gtk widget, I’ve resolve it by adding expose event function to the parent widget.
    e.g.
    box - container for the gtkOgre
    mOgre - Ogre widget
    g_signal_connect(G_OBJECT(box), “expose_event”, G_CALLBACK(on_expose_event), mOgre);
    and function:
    gboolean WinMain::on_expose_event(GtkWidget *pWidget, GdkEventExpose *pEvent, gpointer pUserData){
    gdk_window_invalidate_rect(GTK_WIDGET(pUserData)->window, &GTK_WIDGET(pUserData)->allocation, FALSE);
    return FALSE;
    };

    PS. DWORD do you try resolve problems with other signals, especially with button_press?

  6. Wolfmanfx Says:

    I must say that the expose with a parent eventbox dont work good because it only calls the expose event of the parent when the windows resizes otherwise no call and it work like before….

  7. hassen Says:

    Hi,

    Thank you for sharing your ideas.

    when executing gtkogre i have this error message (installation is ok):

    ./gtkogre: 2: pushd: not found
    ./gtkogre: 3: ../src/gtkogre: not found
    ./gtkogre: 4: popd: not found

    Thank you!

  8. DWORD Says:

    Hi Hassen,

    What you execute is just a script for jumping to the correct folder before execution of the binary itself. You can do this manually by going to the bin folder of gtkogre and executing ../src/gtkogre from there.

    I’m not really maintaining this widget, and I still think there are some problems with it. But maybe you’ll find some of it useful.

    Best regards

Leave a Reply