もりきゅうです.長文になりました.

http://www.users.yun.co.jp/~moriq/ruby/ruby-xlib-0.4.tar.gz

追加したこと:

* ウィンドウの背景色の set.
  Window.background= alias: bg=

* タイトルバーなしウィンドウ(transient)

* サイズ変更可能なウィンドウ(rasizable)
 
* 子ウィンドウの作成.
  Window.new(win, width, height, bg)

* Pixmap.
  Pixmap.new(win, width, height)
  Window.new_pixmap(width, height)

* event
  enter_notify
  leave_notify

* RGUI
  RGUI::Hscrollbar (まともじゃない)
  RGUI::Vscrollbar (まともじゃない)
  RGUI::Entry
  RGUI::Label
  RGUI::Frame
  RGUI::Panel

* RGUI_simple
  RGUI をより簡単に使えるように,ひとつ上位の module を用意.
  (GDK に対する GTK のようなものかな)
  例: sample/entry.rb


などなど.

変更したこと:

* event を拾うところを XNextEvent から XCheckMaskEvent など
  に(display.c).イベントループが回りつづけるようになった.
  例: sample/anime?.rb

* RGUI の部品を子ウィンドウで実装した.

* RGUI の部品を module にした(Xlib::Window を拡張する).

* RGUI::Hbox, RGUI::Vbox の引数を変更.

などなど.


RGUI_simple について.
RGUI はもともと *簡単に書けること* という目標があるのですが
部品を module にしちゃったので,表現がかなり助長になります.
実際,RGUI は機能(lib/rgui.rb)と見た目(lib/rgui/*)を分けて
記述できます.
見た目を 'simple' という名の GC module に固定して使うのが
RGUI_simple module です.

  win.extend RGUI_simple
  win.extend_rgui_simple

とさえ書けば

  button = win.new_button "ぽちっとな"

と書けます.

# イテレータをまったく使ってないなあ^^;
# RGUI は ext ネタでもないし.^^;

----
Kazuhiro Yoshida  moriq / ma2.seikyou.ne.jp