Larger screenshotZester is a application development framework used for the development of GUI programs (in which case it is known as a widget toolkit), and also used for developing non-GUI programs such as console tools and servers.
Please keep in mind I code in C first then C++ because its easier to write language bindings for C verses C++.
Window ManagementXlib is an X Window System protocol client library in the C programming language. It
contains functions for interacting with an X server. These functions allow programmers to
write programs without knowing the details of the protocol. Few applications use Xlib
directly; rather, they employ other libraries that use Xlib functions to provide widget toolkits
http://www.x.org/wiki/When integrating SFML with X11 as seen in
http://www.sfml-dev.org/tutorials/1.6/graphics-x11.php there are a few things to keep in mind.
1. X11 is a 26 year old code base.
2. Setting a windows attributes before its show is done differently then after it is shown.
3. Setting attributes of a window and performing windowing functions is done differently when there is already a NETWM compliant window manager in place then when there is not.
Once I finish the Basic Window Management Functions I will continue on with Advance Window Management Functions, Input & Event Functions.
Basic Window Management Functionszst_window_create
zst_window_destroy
zst_window_resize
zst_window_move
zst_window_resize_move
zst_window_show
zst_window_hide
zst_window_raise
zst_window_lower
zst_window_restack
zst_window_minimize
zst_window_unminimize
zst_window_maximize
zst_window_unmaximize
zst_window_fullscreen
zst_window_unfullscreen
zst_window_clear
zst_window_iconify
zst_window_deiconify
zst_window_stick
zst_window_unstick
zst_window_set_keep_above
zst_window_set_keep_below
zst_window_set_opacity
zst_window_flush
zst_window_set_min_size
zst_window_set_max_size
zst_window_set_base_size
zst_window_set_title
zst_window_set_skip_pager
zst_window_set_skip_taskbar
zst_window_set_override_redirect
Window TypesDesktop
Dock
Toolbar
Menu
Utility
Splash
Dialog
Normal
MultimediaSimple and Fast Multimedia Library (
SFML) is an object-oriented, cross-platform,
free and open source software multimedia API written in C++ by Laurent Gomila. It is
intended as a more modern alternative to SDL with a greater emphasis on OOP.
http://www.sfml-dev.org/2D Vector Graphic Library:
Cairo is a 2D graphics library with support for multiple output devices. Currently
supported output targets include the X Window System, Quartz, Win32, image buffers,
PostScript, PDF, and SVG file output. Experimental backends include OpenGL (through
glitz), XCB, BeOS, OS/2, and DirectFB.
http://cairographics.org/Image Processing Library:
Magick++ is a software suite to create, edit, and compose bitmap images.
It can read, convert and write images in a variety of formats (over 100) including
DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and
TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform
images, adjust image colors, apply various special effects, or draw text, lines, polygons,
ellipses and Bézier curves.
http://www.imagemagick.org/Magick++/3D Graphics Engine:
Horde3D is a small open source 3D rendering engine. It is written in an effort to
create a graphics engine that offers the stunning visual effects expected in next-generation
games while at the same time being as lightweight and conceptually clean as possible.
http://www.horde3d.org/Web Browser Engine:
Berkelium is a library that provides off-screen browser rendering via Google’s open
source Chromium and takes advantage of Chromium’s multi-process rendering engine,
allowing us to safely isolate browser instances.
http://github.com/sirikata/berkeliumAudio Synthesis:
Nsound is a C++ framework for audio synthesis. It aims to be as powerful as Csound
but with the programming features of C++. Nsound tries to make the process of
generating complex and interesting sound as easy for the programmer as possible.
http://nsound.sourceforge.net/2D Physics Library:
Box2D is a 2D rigid body simulation library for games.
http://www.box2d.org/index.html3D Physics Library:
Bullet is an open source software multi-threaded 3D collision detection, soft body
and rigid body dynamics library (physics engine) for games and visual effects in film.
http://bulletphysics.orgAudio & Video:
OpenCV is a computer vision library originally developed by Intel. It is free for use
under the open source BSD license. The library is cross-platform. It focuses mainly on
real-time image processing. If the library finds Intel's Integrated Performance Primitives
on the system, it will use these commercial optimized routines to accelerate itself.
http://opencv.willowgarage.com/wiki/ScriptingLua combines simple procedural syntax with powerful data description constructs based on
associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting
bytecode for a register-based virtual machine, and has automatic memory management
with incremental garbage collection, making it ideal for configuration, scripting, and rapid
prototyping.
http://www.lua.org/