Shoes (GUI toolkit)
Encyclopedia
Shoes is a GUI toolkit based on the Ruby
Ruby (programming language)
Ruby is a dynamic, reflective, general-purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was first developed and designed by Yukihiro "Matz" Matsumoto...

 Programming Language. It was originally developed by why the lucky stiff
Why the lucky stiff
why the lucky stiff is the persona formerly used by an anonymous and prolific writer, cartoonist, musician, artist, and computer programmer notable for his work with the Ruby programming language...

, and others are carrying on with it after his disappearance. Shoes runs on Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 (GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

), using the underlying technologies of Cairo
Cairo (graphics)
cairo is a software library used to provide a vector graphics-based, device-independent API for software developers. It is designed to provide primitives for 2-dimensional drawing across a number of different backends...

 and Pango
Pango
Pango is an LGPL licensed open source computing library used by software developers for laying out and rendering text in high quality, emphasising support for multilingual text...

.

Shoes' philosophy is one of simplicity. It's designed to make applications as easy as possible. Here's an example Shoes app:


Shoes.app :title => "Push Button" do
@note = para "Nothing pushed so far"

button "Push me" do
@note.replace "Aha! The button was pushed!"
end
end


Shoes isn't just for standard windowing widgets. It also has basic graphics primitives, letting developers draw lines, circles, and even physics (via Chipmunk
Chipmunk physics engine
The Chipmunk SDK is a portable open-source 2D physics engine written in C99 by Scott Lembcke and published under the MIT license. Middleware physics engines like Chipmunk allow game developers to avoid writing their own code to handle the complex physics interactions possible in modern games...

).

Releases

  • _why releases:
  1. v1, "Curious"
  2. v2, "Raisins"
    • Post-_why releases:
  3. v3, "Policeman"


Shoes 4 is going to be a major re-write. It'll move to an all-Ruby code base, using the Ruby bindings to the windowing libraries, rather than the C ones.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK