はじめまして、Ruby歴3カ月のAkitaです。

クリップボードビューアの内容をコマンドラインに出力したいというプログラムです。
Gtk v1.3 まで待てないので無理矢理作ろうとしています。

Gtk::timeout_addのところでエラーがでてうまくいきません。
最終目的はLANのWindowsマシンを含むクリップボードを共有することですから
CygwinとLinuxマシンで動けばいいと思っています。

require 'gtk'

class ClipboardViewer
  def initialize
    window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)
    
    @text = Gtk::Text.new
    @text.set_editable true		# テキストの入力・編集を許可する
    
    Gtk::timeout_add(100) do
      #  @text.paste_clipboardを実行しようとすると以下のエラーがでます。
      # Gdk-CRITICAL **: file gdkevents.c: line 724 (gdk_event_free): assertion `event != NULL' failed.
      # エラー      ↓
      @text.paste_clipboard
    end

    window.add @text
    window.show_all

    Gtk::main()
  end
  
  def get_clipboard
    @text.paste_clipboard
    p @text.get_chars(0,-1)
  end
end

if $0 == __FILE__
  ClipboardViewer.new
end

--
秋田一輝 (Akita Kazuki)
http://tat6.ice.ous.ac.jp/akita/