Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Not necessarily a question of deep thought, but more of to ask opinions of what people think about my GUI system.

Currently I have an abstract class "Control" which is used for GUI elements (Labels, Buttons), which requires the necessary methods for input events and drawing and such.

Then I have a GuiManager, which basically contains a list of Controls and methods for updating, adding, and removing Controls. One thing is that if a control has a lifetime specified and has expired, it is removed

GuiManager is a global singleton, so basically any object can add and remove screen elements, which I plan on using to display information (Character stats, NPC names, Item information, damage dealt and done), but I've always been worried of singletons.

I am just wondering if I am on the right track to making a GUI system, and wondering if anyone has any input on this.

Thank you!

share|improve this question

closed as not constructive by Noctrine Jan 3 '12 at 19:09

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

The StackExchange sites aren't really about collecting opinions if you are interested in having a discussion about your architecture, you are more than welcome to do it in chat, but per the FAQ (and Meta) we'd like to keep the main site geared towards having specific answerable questions. – Noctrine Jan 3 '12 at 19:08

Browse other questions tagged or ask your own question.