Custom widget guidelines

tp

20-03-2008 06:34:38

I'm pretty new to ogre (not this type of development in general), and I've been planning my first project with it. To go with it, I need a GUI and I've seen a lot of good things said about QuickGUI. My main concern is the fact that it's not quite done yet, so to use it seriously, I'd have to make sure I can get it to do what I need first.

One thing I haven't found any information on, is how to make your own widgets. A preferable format for something like this would be a checklist/tutorial progressing step by step, detailing stuff such as defining the skin elements for the widget, getting them to display and handling mouse and keyboard input, along with a list of various options for doing these things. Looking at the code is OK for learning to use the existing system, but it's not sufficient for custom widgets, since you have a lot of stuff that's redundant and you might be missing a lot of information that you'd need to help. Further, since it's someone else's code, you can never be sure that you didn't miss something.

I would wager that making this information readily available would increase the actual adaptation of this library considerably... not to mention ease contributing new widgets to the project.

kungfoomasta

20-03-2008 16:53:21

Thanks for the kind words.

You are right that QuickGUI is not complete, I've never created my own GUI system before, and I often times find some parts of the library that should be done differently. This is both good and bad. (bad because the interface may change from release to release)

Probably the hardest part about creating a custom widget is implementing how it will be drawn. I'm planning on revamping the rendering system, taking some core ideas from RBGUI and extending it to be more flexible. What kind of custom widgets did you have in mind?

tp

20-03-2008 19:00:00

To be honest, I don't really know, but that's sort of the point. Things like this tend to become heavily dependent on the actual game design.

Just to toss an example out there, how about the classical minimap. You need to be able to display a clipped (better yet, masked) bit of a larger static bitmap, move smaller bitmaps on it, with effects, be able to click on the smaller bitmaps, and be able to make small animations like a radar blip.

jingjie

11-04-2008 09:40:38


Probably the hardest part about creating a custom widget is implementing how it will be drawn. I'm planning on revamping the rendering system, taking some core ideas from RBGUI and extending it to be more flexible. What kind of custom widgets did you have in mind?

Would you develop a flexible flow-chart diagram like the ShaderFX or blender node-based user interface?

blender:
http://www.blender.org/typo3temp/pics/0a14650983.jpg
If not ? how to do custom flow-chart widgets?

kungfoomasta

11-04-2008 18:07:23

It will definately be possible to create those widgets, but I have yet to create all the functional ones! Aside from what I'm currently working on, focus will be put on the SkinSet Editor, so people can use their own images. You can do this right now, but its not as easy and maintained as I'd like.