Logo of the Nuclex Framework, the text "Nuclex" with three green dots on a blue ring

Nuclex Framework R984 Released!

The word 'Nuclex' with a stylish font framed by an elliptical ring with three dots

I just uploaded a new release of the Nuclex Framework on CodePlex!

It has been a lot of work getting the GUI library finalized. For once, I really wanted to have 100% unit test coverage on the whole library, which meant a lot of work ensuring the design allowed for this and thinking of all the test cases. But hey, what other GUI library can provide that level of unit tests! :)

Another feature I didn’t want to let go of was control navigation with the game pad and cursor keys. The idea is that you, the developer, just throw some controls on the screen and the GUI will automatically figure out which control to change focus to when the player uses the thumb stick on his game pad. This means you can just add four buttons labeled “New Game”, “Options”, “Credits” and “Quit” to your screen and voilà, you’ve got a main menu the user can interact with using his mouse, keyboard or game pad.

There are also some bug fixes from the preview release I published on my old website before the relaunch. Kudos to Sebastian and Bone who discovered two issues in the list control, one of which had even slipped through my unit tests until now.

The library now contains controls for buttons, check boxes, radio buttons, horizontal and vertical scroll bars, text boxes, lists, progress bars and labels!

2 thoughts to “Nuclex Framework R984 Released!”

  1. I was wondering if you could possibly create some more controls for the UserInterface assembly. (Incredibly library by the way)

    A Grid View would be great. Also, a drop down menu would also be very welcome. (right click on a control and a menu pops up like on a browser, etc.)

  2. Thanks!

    I have some more controls on my todo list, including combo boxes, context menus and menu bars. These all require GUI elements to be overlayed on top of the normal GUI, so I’ll have to think a bit how to best integrate this into the library’s design.

    I’m also planning to extend the default renderer architecture so it can create a unique renderer per control. That would allow the renderers to maintain state, which could be used for animations (eg. windows smoothly blending out, combo boxes gliding down and so on).

    A Grid View (if you mean something like excel with a matrix of rows and columns) hmm… What would you use that for in a game? It shouldn’t be too hard adding such a control with basic functionality, I’ll see what I can do for the next release.

    My next goal now is to finish my Island War game, though, so I can’t make any promises yet on when the next release will be available :)

Leave a Reply

Your email address will not be published. Required fields are marked *

Please copy the string eI3CHy to the field below:

This site uses Akismet to reduce spam. Learn how your comment data is processed.