[fxruby-users] Not receiving FXTopWindow events

Leslie Viljoen leslieviljoen at gmail.com
Wed Nov 11 15:16:22 EST 2009


Hi everyone

I'm afraid I posted here:
http://www.ruby-forum.com/topic/199028
..before seeing that that forum looks almost totally dead. Should one
of these forums not be shut down to save people some time and false
hopes?  :-)

So I'm going to repost here and reply there to close the topic, thus,
hopefully remaining a good netizen.

Here is my question:


I am trying to listen for the FXTopWindow events SEL_CLOSE,
SEL_MINIMIZE, SEL_MAXIMIZE, SEL_RESTORE because I want to execute some
code when a person presses the X button to close the window, etc.

None of my code gets executed though. Can anyone help?

class TextDialog
  def initialize(parent)
    construct_widget_tree(parent)
    init if respond_to? 'init'
  end

  def construct_widget_tree(parent)
    @topwin = FXMainWindow.new(parent, 'title')
    @topwin.width = 300
    @topwin.height = 200
  end

  attr_reader :topwin
end

if __FILE__==$0
  require 'fox16'
  include Fox

  app=FXApp.new
  w=TextDialog.new(app)

  w.topwin.connect(SEL_CLOSE) { app.exit }
  w.topwin.connect(SEL_MINIMIZE) { puts "MIN" }
  w.topwin.connect(SEL_MAXIMIZE) { puts "MAX" }
  w.topwin.connect(SEL_RESTORE) { puts "RESTORE" }

  w.topwin.show
  app.create
  app.run
end


More information about the fxruby-users mailing list