diff --git a/README.md b/README.md index b225eeb89..233c88de7 100644 --- a/README.md +++ b/README.md @@ -8,24 +8,69 @@ The U++ integrated development environment, TheIDE, introduces modular concepts TheIDE can work with GCC, MinGW and Visual C++ and contains a full featured debugger. TheIDE can also be used to develop non-U++ applications. +U++ supports following platforms on the production level: **Windows**, **macOS**, **GNU/Linux** & **FreeBSD**. + ## What you can get with Ultimate++? * A very effective C++ library for cross-platform development in source form. - * A good integrated development environment, designed for developing large C++ applications. You can use both, or you can use whichever you need. ## License - U++ uses BSD license. ## Download -* [SourceForge](https://sourceforge.net/projects/upp/) - stables releases -* [Official site](https://www.ultimatepp.org/www$uppweb$download$en-us.html) - nightly builds +Main downloads: +* [Latest stable release](https://sourceforge.net/projects/upp/files/latest/download) - starts download with automatically detected platform + +Other downloads: +* [Stable releases](https://sourceforge.net/projects/upp/) - all stable releases including historical ones +* [Nightly build](https://www.ultimatepp.org/www$uppweb$download$en-us.html) - latest unstable release of U++ (might be unstable) ## U++ Resources More information about the framework, can be found on the official [site](https://ww.ultimatepp.org). Don't forget to check our rich [documentation](https://www.ultimatepp.org/www$uppweb$documentation$en-us.html). - + +## Examples + +### GUI + +Below is the code of trivial GUI application that displays "Hellow World" string inside window: + +``` +#include + +class MyAppWindow : public Upp::TopWindow { +public: + MyAppWindow() { + Title("My application").Zoomable().Sizeable(); + } + + virtual void Paint(Upp::Draw& w) override { + w.DrawRect(GetSize(), Upp::SWhite); + w.DrawText(20, 20, "Hello world!", Upp::Arial(30), Upp::Magenta); + } +}; + +GUI_APP_MAIN +{ + MyAppWindow app; + app.SetRect(0, 0, 200, 100); + app.Run(); +} +``` + +### Additional examples + +More examples you can find directly on special section of U++ framework website deticated to [examples](https://www.ultimatepp.org/www$uppweb$examples$en-us.html). Moreover, exactly the same examples can be find in **examples** and **references** directories located in this repository. + +# Repository + +## Repository layout + +The U++ repository is divided into several directories. The most important ones are: +* examples - examplary code of complex applications +* references - referential implementation +* **uppsrc** - contains main sources of the framework