Skip to content
Faraaz Ismail edited this page Jul 9, 2013 · 18 revisions

Roadmap

Shoes 4 aims for almost-complete-compatibility with Shoes 3, so this list of features roughly tracks the Shoes 3 manual.

shoes-4.0.0-alpha

Built-in ✓

  • Shoes::VERSION ✓
  • alert ✓
  • ask ✓
  • ask_color ✓
  • ask_open_file ✓
  • ask_save_file ✓
  • ask_open_folder ✓
  • ask_save_folder ✓
  • confirm ✓

App ✓

  • Shoes.app ✓
  • clipboard ✓
  • clipboard= ✓
  • download ✓
  • location ✓
  • mouse ✓
  • owner ✓
  • started? ✓
  • visit ✓

Styles ✓

  • align ✓
  • angle ✓
  • cap ✓
  • change ✓
  • checked ✓
  • choose ✓
  • click ✓
  • curve ✓
  • fill ✓
  • height ✓
  • hidden ✓
  • inner ✓
  • items ✓
  • justify ✓
  • leading ✓
  • margin ✓
  • margin_bottom ✓
  • margin_left ✓
  • margin_right ✓
  • margin_top ✓
  • outer ✓
  • points ✓
  • right ✓
  • secret ✓
  • size ✓
  • stroke ✓
  • strokewidth ✓
  • text ✓
  • top ✓
  • undercolor ✓
  • underline ✓
  • width ✓

Classes ✓

(nesting indicates inheritance)

Exceptions

  • Exception ✓
    • StandardError ✓

Containers and friends

  • Shoes ✓
  • Shoes::Flow ✓
  • Shoes::Stack ✓
  • Shoes::Widget ✓
  • Shoes::App ✓

Elements ✓

  • Shoes::Color ✓
  • Shoes::Download ✓
  • Shoes::Image ✓
  • Shoes::Button ✓
  • Shoes::Check ✓
  • Shoes::EditBox ✓
  • Shoes::EditLine ✓
  • Shoes::ListBox ✓
  • Shoes::Progress ✓
  • Shoes::Radio ✓
  • Shoes::Background ✓
  • Shoes::Border ✓

Art ✓

Note that, in Shoes 3, only Shoes::Shape is an actual class

  • Shoes::Shape ✓
  • Shoes::Arc ✓
  • Shoes::Line ✓
  • Shoes::Oval ✓
  • Shoes::Rect ✓
  • Shoes::Star ✓

Text ✓

  • Shoes::Text ✓

    • Shoes::Link ✓
  • Shoes::TextBlock ✓

    • Shoes::Banner ✓
    • Shoes::Caption ✓
    • Shoes::Inscription ✓
    • Shoes::Para ✓
    • Shoes::Subtitle ✓
    • Shoes::Tagline ✓
    • Shoes::Title ✓

Timers ✓

  • Shoes::Animation ✓
  • Shoes::Timer ✓

Colors ✓

  • full color list ✓
  • stroke ✓
  • fill ✓
  • rgb ✓

Art ✓

Elements ✓

  • arc ✓
  • line ✓
  • oval ✓
  • rect ✓
  • shape ✓
  • star ✓

Styles ✓

  • cap ✓
  • fill ✓
  • nofill ✓
  • nostroke ✓
  • stroke ✓
  • strokewidth ✓

Actions ✓

  • rotate ✓

Slots ✓

  • flow ✓
  • stack ✓

DSL ✓

Elements ✓

  • animate ✓
  • background ✓
  • banner ✓
  • border ✓
  • button ✓
  • caption ✓
  • check ✓
  • code ✓
  • del ✓
  • dialog ✓
  • edit_box ✓
  • edit_line ✓
  • em ✓
  • every ✓
  • flow ✓
  • image ✓
  • imagesize ✓
  • ins ✓
  • inscription ✓
  • link ✓
  • list_box ✓
  • progress ✓
  • para ✓
  • radio ✓
  • stack ✓
  • strong ✓
  • sub ✓
  • subtitle ✓
  • sup ✓
  • tagline ✓
  • timer ✓
  • title ✓
  • window ✓

Events ✓

  • click ✓
  • hover ✓
  • keypress ✓
  • leave ✓
  • motion ✓
  • release ✓

Manipulation ✓

  • append ✓
  • clear ✓
  • prepend ✓

Position ✓

  • height ✓
  • hide ✓
  • left ✓
  • move ✓
  • remove ✓
  • scroll_top ✓
  • scroll_top= ✓
  • show ✓
  • style ✓
  • toggle ✓
  • top ✓
  • width ✓

Traversing ✓

  • contents ✓
  • parent ✓

Patterns ✓

  • gradient ✓
  • image ✓

Manual

  • update manual content
  • produce manual as HTML, for website ✓

Shoes Interfaces ✓

  • Shoes CLI ✓

Packaging ✓

Packaging Apps ✓

Packaging Shoes ✓

  • package Shoes as .gem

shoes-4.0.0-rc1

Built-in

  • Shoes::RELEASE_NAME
  • Shoes::RELEASE_ID
  • Shoes::REVISION
  • Shoes::FONTS
  • debug
  • error
  • exit
  • font
  • gradient
  • gray
  • info
  • rgb (also available as Shoes.rgb)
  • warn

App

  • Shoes.APPS
  • close
  • download
  • location
  • mouse
  • owner
  • started?
  • visit

Styles

  • attach
  • bottom
  • center
  • change
  • displace_left
  • displace_top
  • emphasis
  • family
  • font
  • group
  • kerning
  • rise ✓
  • scroll
  • state
  • stretch
  • strikecolor ✓
  • strikethrough ✓
  • variant
  • weight
  • wrap

Classes

(nesting indicates inheritance)

Exceptions

  • Exception ✓
    • StandardError ✓
      • Shoes::ImageError
      • Shoes::InvalidModeError
      • Shoes::NotImplementedError
      • Shoes::SettingUp

Containers and friends

  • Shoes::Widget ✓

    • Shoes::TurtleCanvas
  • Shoes::App ✓

    • Shoes::Dialog
  • Shoes::Window

Elements

Be aware that some of those might be implementation details of the old shoes and therefore not really needed to be implemented.

  • Shoes::Canvas
  • Shoes::Effect
  • Shoes::LinkUrl
  • Shoes::Mouse
  • Shoes::Search

Art

Note that, in Shoes 3, only Shoes::Shape is an actual class

  • Shoes::Arrow

Text

  • Shoes::Text
    • Shoes::Code
    • Shoes::Del
    • Shoes::Em
    • Shoes::Ins
    • Shoes::LinkHover
    • Shoes::Span
    • Shoes::Strong
    • Shoes::Sub
    • Shoes::Sup

Timers

  • Shoes::Every

Colors ✓

Art

Elements

  • arrow

Styles ✓

Actions

  • transform
  • translate

Slots ✓

DSL

Elements

  • span

Events

  • finish
  • start

Manipulation

  • after
  • before

Position

  • displace
  • gutter
  • scroll
  • scroll_height
  • scroll_max
  • scroll_top
  • scroll_top=

Traversing ✓

Patterns ✓

Manual

  • update manual content
  • auto-generate manual as HTML, for website
  • auto-generate manual as Shoes, for Shoes GUI
  • auto-generate manual from Shoes CLI

Shoes Interfaces

  • Shoes GUI (i.e. Shoes written in Shoes)

Packaging

Packaging Apps

  • package apps as .jar
  • package apps as .app
  • package apps as .shy
  • package apps as .exe
  • package apps for linux (format yet to be determined: .run/.deb/.rpm ???)

Packaging Shoes

  • package Shoes as .gem
  • package Shoes as .app
  • package Shoes as .exe
  • package Shoes for linux (format yet to be determined: .run/.deb/.rpm ???)

shoes-4.1.0

Styles

  • autoplay

Classes

  • Exception ✓
    • StandardError ✓
      • Shoes::VideoError

DSL

Elements

  • video
Clone this wiki locally