
Winsimple - Simple To Use Graphics library for C++
A downloadable Multimedia Library
Download NowName your own price
What is it?
Winsimple is a a multimedia graphics library that is a C++ Wrapper around win32.
What does Winsimple have to offer?
- Object-Oriented Design: Classes like Window, Texture, Sprite encapsulate functionality
- RAII (Resource Acquisition Is Initialization): Automatic resource management via constructors/destructors
- Simplified Interface: One-line window creation: ws::Window window(800, 600, "Title");
- Higher-Level Abstractions: Built-in graphics system, view transformations, drawable objects
- C++ Standard Library Integration: Uses std::string, std::vector, templates and hides less common win32 data types.
- Modern Event Handling: Poll-based event system with message queue
- Graphics Framework: Built-in 2D graphics with textures, shapes, fonts, and transformations
- Audio Support: Simple audio playback via ws::Wav class
- Utility Classes: Vectors, rectangles, timers with template constructors
- Child Controls: Pre-built UI controls (buttons, sliders, etc.) as C++ classes
The most basic Winsimple program that creates a window:
// Single line creation
ws::Window window(800, 600, "My Window");
// Simple event loop
while (window.isOpen())
{
window.clear();
// Draw graphics
window.display();
}
Key Advantages of Winsimple
- Type Safety: Template-based vector/rectangle types with conversions
- Memory Safety: Automatic cleanup in destructors
- Simplified Graphics: Built-in 2D rendering without direct GDI+ complexity
- Modern C++ Features: Move semantics, operator overloading, STL containers
- Cross-Type Compatibility: Easy conversion between Win32 types (POINT, RECT) and library types
The main entities of Winsimple
- ws::Window - The class that provides interface to control and create windows.
- ws::View - The class that transforms the visible position,scale,and rotation of the window's contents.
- ws::Menu - The class that provides a way to make a GUI dropdown menu on the top of the ws::Window.
- ws::Dropdown - The class related to Menu that gets added to the ws::Menu
- ws::ComboBox - The class that creates and manages GUI dropdown menu boxes(not to be confused with window's menu)
- ws::FileWindow - The class that creates a GUI open save dialog window.
- ws::FolderWindow - The class that creates a GUI open-folder dialog window.
- ws::ClickMenu - The class that creates a GUI right click button menu.
- ws::Button - The class that creates a GUI Button
- ws::Slider - The class that creates a GUI Slider
- ws::TextBox - The class that creates a GUI TextBox
- ws::Label - The class that creates a GUI Label
- ws::Clipboard - The global class object that provides interface with the actual Microsoft Windows clipboard.
- ws::IntRect
- ws::FloatRect
- ws::DoubleRect
- ws::Vec2i
- ws::Vec2f
- ws::Vec2d
- ws::Vec3i
- ws::Vec3f
- ws::Vec3d
- ws::Timer - The class that handles time.
- ws::Wav - The class that provides a way to play sound
- ws::Texture - The class that loads an image
- ws::Sprite - The class that manages and displays a texture
- ws::GIF - The class that loads a GIF animation and displays it
- ws::Shift && ws::ShiftData - Two entities for easy display of a spritesheet animation.
- ws::Drawable - All graphics inherit from this class and get transformed by this class.
- ws::Line - Draws a simple line from point A to point B
- ws::Font - Loads a font file from system or from file
- ws::Text - Displays a text using a specified font.
- ws::Poly - A polygonal shape
- ws::Radial - A polygonal shape centered around a point
- ws::Round - An elliptical shape(smoother than polygonal)
In essence: WinSimple is not a replacement for Win32, but rather a C++ convenience layer that makes Windows programming more accessible by wrapping the raw C API in a modern, object-oriented framework while still allowing access to underlying Win32 handles when needed.
Want to join the community of Winsimple developers and users? I have a discord server just for that!
https://discord.gg/hxnc95rFgN
| Updated | 8 days ago |
| Published | 14 days ago |
| Status | Released |
| Category | Tool |
| Author | Fishleteer |
| Tags | beginner-friendly, Desktop Pet, Game Design, Game engine, graphics, library, Open Source, Simple, windows, winsimple |
| Code license | GNU Lesser General Public License v2.1 (LGPL) |
| Average session | About a half-hour |
| Links | Source code, Discord, YouTube |
Download
Download NowName your own price
Click download now to get access to the following files:
Winsimple
External
V1.0 DEMOS
External
V1.1 DEMOS
External
V1.2 DEMOS
External
V1.3 DEMOS
External
V1.4 DEMOS
External







Leave a comment
Log in with itch.io to leave a comment.