With all due respect for _why and the "Manual" and NKS, I'm a bit "show me the reference manual." Who inherits from who? What methods and vars are exposed in each class? What overrides who? I'm just wired that way, I need that structure to understand.
So I spent a few hours with rdoc on shoes/ruby.c and shoes/app.c and some guessing in the .c and macros and put the early results in an OpenOffice Spreadsheet (CSV) (the wrong tool but its just a throwaway). It makes sense to me to have a class, subclass, method, instance vars reference for people who just dive in shoes with the bottom-up side of the brain. The format sucks, cut and paste. spelling errors are mine. Spreadsheet is completely the wrong tool. Insight about what's in Shoes.app? vs Shoes? vs Widgets
"Module::Class ","Parent","ivars","init with","Methods","MethodArgs","Defined", "Canvas","Object",,,,,"shoes/ruby.c", "Mouse","Object",,,,,"shoes/ruby.c", "Shoes","Canvas",,,,,"shoes/ruby.c", "Shoes","Canvas",,,"sys","cmd, detach","shoes/app.c", "Shoes","Canvas",,,"slot_repaint",,"shoes/app.c","be cautious" "Window","Object",,,,,"shoes/ruby.c", "Shoes::Animation","Shoes::TimerBase",,,,,"shoes/ruby.c", "Shoes::App","Object",,,,,"shoes/ruby.c", "Shoes::App","Shoes::App","started",FALSE,,,"shoes/app.c", "Shoes::App","Shoes::App","owner","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","location","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","canvas","Canvas",,,"shoes/app.c", "Shoes::App","Shoes::App","nestslot","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","nesting","[]",,,"shoes/app.c", "Shoes::App","Shoes::App","timers","[]",,,"shoes/app.c", "Shoes::App","Shoes::App","groups","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","styles","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","title","nil",,,"shoes/app.c", "Shoes::App","Shoes::App","width","SHOES_APP_WIDTH",,,"shoes/app.c", "Shoes::App","Shoes::App","height","SHOES_APP_HEIGHT",,,"shoes/app.c", "Shoes::App","Shoes::App","resizeable",TRUE,,,"shoes/app.c", "Shoes::App","Shoes::App","cursor","s_arrow",,,"shoes/app.c", "Shoes::App","Shoes::App",,,"resize","width, height","shoes/app.c", "Shoes::App","Shoes::App",,,"window",,"shoes/app.c", "Shoes::App","Shoes::App",,,"main","argc,argv","shoes/app.c", "Shoes::App","Shoes::App",,,"get_title",,"shoes/app.c", "Shoes::App","Shoes::App",,,"set_title",,"shoes/app.c", "Shoes::App","Shoes::App",,,"open","path","shoes/app.c", "Shoes::App","Shoes::App",,,"visit","path","shoes/app.c", "Shoes::App","Shoes::App",,,"clear",,"shoes/app.c", "Shoes::App","Shoes::App",,,"reset_styles",,"shoes/app.c", "Shoes::App","Shoes::App",,,"paint",,"shoes/app.c","calls canvas.paint()" "Shoes::App","Shoes::App",,,"motion","x,y","shoes/app.c", "Shoes::App","Shoes::App",,,"click","x,y","shoes/app.c", "Shoes::App","Shoes::App",,,"release","button, x, y","shoes/app.c", "Shoes::App","Shoes::App",,,"wheel","direction,x, y","shoes/app.c", "Shoes::App","Shoes::App",,,"keypress","key","shoes/app.c","intercepts specials or passes to canvas" "Shoes::App","Shoes::App",,,"goto","path","shoes/app.c", "Shoes::App","Shoes::App",,,"close_windows",,"shoes/app.c", "Shoes::App","Shoes::App",,,"location",,"shoes/app.c", "Shoes::App","Shoes::App",,,"is_started",,"shoes/app.c", "Shoes::App","Shoes::App",,,"contents",,"shoes/app.c", "Shoes::Background","Shoes::Pattern",,,,,"shoes/ruby.c", "Shoes::Banner","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Blur","Shoes::Effect",,,,,"shoes/ruby.c", "Shoes::Border","Shoes::Pattern",,,,,"shoes/ruby.c", "Shoes::Button","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Caption","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Check","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Code","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Color","Object",,,,,"shoes/ruby.c", "Shoes::Del","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Dialog","Shoes::App",,,,,"shoes/ruby.c", "Shoes::EditBox","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::EditLine","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Effect::Animation","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Em","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Every","Shoes::TimerBase",,,,,"shoes/ruby.c", "Shoes::Flow","Shoes",,,,,"shoes/ruby.c", "Shoes::Glow","Shoes::Effect",,,,,"shoes/ruby.c", "Shoes::Image","Object",,,,,"shoes/ruby.c", "Shoes::ImageBlock","Shoes",,,,,"shoes/ruby.c", "Shoes::ImageError","StandardError",,,,,"shoes/ruby.c", "Shoes::Ins","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Inscription","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Link","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::LinkHover","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::LinkUrl","Object",,,,,"shoes/ruby.c", "Shoes::ListBox","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Mask","Shoes",,,,,"shoes/ruby.c", "Shoes::Native","Object",,,,,"shoes/ruby.c", "Shoes::NotImplementedError","StandardError",,,,,"shoes/ruby.c", "Shoes::Para","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Pattern","Object",,,,,"shoes/ruby.c", "Shoes::Progress","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Radio","Shoes::Native",,,,,"shoes/ruby.c", "Shoes::Shadow","Shoes::Effect",,,,,"shoes/ruby.c", "Shoes::Shape","Object",,,,,"shoes/ruby.c", "Shoes::Span","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Stack","Shoes",,,,,"shoes/ruby.c", "Shoes::Strong","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Sub","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Subtitle","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Sup","Shoes::Text",,,,,"shoes/ruby.c", "Shoes::Tagline","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Text","Object",,,,,"shoes/ruby.c", "Shoes::TextBlock","Object",,,,,"shoes/ruby.c", "Shoes::Timer","Shoes::TimerBase",,,,,"shoes/ruby.c", "Shoes::TimerBase","Object",,,,,"shoes/ruby.c", "Shoes::Title","Shoes::TextBlock",,,,,"shoes/ruby.c", "Shoes::Video","Object",,,,,"shoes/ruby.c", "Shoes::VideoError","StandardError",,,,,"shoes/ruby.c", "Shoes::Widget","Shoes",,,,,"shoes/ruby.c", "Window","Object",,,,,"shoes/ruby.c", "Shoes::Slot","Native ? ",,,"repaint",,"shoes/app.c",
