I present: SFML SimpleGUI v1.0

Started by
3 comments, last by irbaboon 11 years, 6 months ago
Hey guys, since I made pong I've been trying to make breakout, but I ran into problems with making a GUI. After a lot of thinking I decided to just make my own Set of Re-Usable classes for Render_Buttons's, Render_Menu's, and Render_Objects (So much more to be added, I've only had today to work on this!), all classes are easily customizable, of course. (Render_Object is there to establish a base for Render_Menu's and other parts of the GUI). It hasn't been completely tested yet, but fixing any bugs should be pretty easy for even a beginner to SFML. I'm having it autoupdate too!
DROPBOX DOWNLOAD (Download GUI_FRAMEWORK Folder)

This was just for personal use for me, but I figured why not let other beginners have it, so they don't have to figure this out themselves. I'll try to update it at least once a week with new features, but I'm hard at work on other games too right now.

I'm a game programmer and computer science ninja !

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here !

Advertisement
I think this thread belongs in the "Your Announcements" forum, but anyway:

If you want to present something that others will actually want to use, you need to start with good documentation. Without that, I doubt that anyone will even take a look at it.

Also, you should host your project on a service like github, which was designed for that.

+---------------------------------------------------------------------+

| Game Dev video tutorials -> http://www.youtube.com/goranmilovano | +---------------------------------------------------------------------+
Well I'm taking a look at it hehe. smile.png
Just started looking at your Render_Button class.

If you use "using namespace sf" you don't need to put the 'fs::' infront of each fs function. wink.png
Also when you start with animations there are some times you want to 'update' your Button.
Example: http://www.yasudastu...ttonBlueWM1.gif

so just call it: class Button. Render_Button seems like the button only can render. but has no actions. smile.png Naming classes is a hard part for me also laugh.png

My Button looks something like this:
class Button
{
public:
Button(int posX, int posY);
Button(Image& image, int posX, int posY);
~Button();

void Update();
void Draw();
bool IsHit(); // returns true if you hover your mouse over the button
bool IsPressed(); // returns true if you pressed with your left mouse button on the button

private:
int m_PositionX, m_PositionY;
Image m_Image;
int m_AnimationSpeed; // this name is terrible xD
};


Your button class is decent! happy.png Features can be: rotating trough matrices, move in a formation, etc
I'm not going to look at your other classes, I don't have plenty of time left. smile.png


~EngineProgrammer
Thanks for the tips, I'll try GitHub and some Documentation, but there's only 3 actual classes with very few functions, so I doubt it's hard to understand, but I guess I should start documentation now.
EDIT: Visual C++ 2010 keeps button as a Restricted Classname, so I set it to Render_Button because I didn't want to come up with a good name, sorry ;)

I'm a game programmer and computer science ninja !

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here !


Visual C++ 2010 keeps button as a Restricted Classname, so I set it to Render_Button because I didn't want to come up with a good name, sorry ;)

That's where namespaces and/or prefixes come in. :)
SFML has the "sf" namespace to not confuse things like class names.
You could, for example, make a namespace "sg" standing for "Simple GUI".

namespace sg {
class Button {

};
}

Or you could make a prefix.

class sgButton {

};

This topic is closed to new replies.

Advertisement