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

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.