Forums
New posts
Search forums
Members
Current visitors
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Install the app
Install
Forums
Archive
Archive
Ruby
Help! Can't get the FXRuby clipboard example to work...
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
[QUOTE="Kevin Pratt, post: 4444510"] There were several mistakes in your code I corrected them and below is the corrected program Hope this helps. # customer.rb require 'fox' include Fox customer = Struct.new("Customer", :name, :address,:zip) $customers = [] $customers << customer.new("Reed Richards", "123 Maple, Central City, NY", 010111) $customers << customer.new("Sue Storm", "123 Maple, Anytown, NC", 12345) $customers << customer.new("Benjamin J. Grimm", "124 Maple, Anytown, NC", 12345) $customers << customer.new("Johnny Storm", "123 Maple, Anytown, NC", 12324) class ClipMainWindow < FXMainWindow def initialize(anApp) # Initialize base class first super(anApp, "Clipboard Example", nil, nil,DECOR_ALL, 0, 0, 400, 300) #declare member variable clippedCustomer @clippedCustomer="" # Horizontal frame contains buttons buttons = FXHorizontalFrame.new(self, LAYOUT_SIDE_BOTTOM|LAYOUT_FILL_X|PACK_UNIFORM_WIDTH) # Cut and paste buttons copyButton = FXButton.new(buttons, "Copy") pasteButton = FXButton.new(buttons, "Paste") # Place the list in a sunken frame sunkenFrame = FXVerticalFrame.new(self, LAYOUT_FILL_X|LAYOUT_FILL_Y|FRAME_SUNKEN|FRAME_THICK, 0, 0, 0, 0, 0, 0, 0, 0) # Customer list customerList = FXList.new(sunkenFrame, 6, nil, 0, LIST_BROWSESELECT|LAYOUT_FILL_X|LAYOUT_FILL_Y) $customers.each do |customer| customerList.appendItem(customer.name, nil,customer) end #Moved this code from the bottome of the file as in needs to be in the initalization of the window. #User clicks Copy copyButton.connect(SEL_COMMAND) do customer = customerList.getItemData(customerList.currentItem) types = [ FXWindow.stringType ] if acquireClipboard(types) @clippedCustomer = customer end end #moved this code as well. #Must connect the the _Window_ SEL_CLIPBOARD_REQUREST not the buttons #Handle clipboard request self.connect(SEL_CLIPBOARD_REQUEST) do #setDNDData was misspelled. setDNDData(FROM_CLIPBOARD, FXWindow.stringType, Fox.fxencodeStringData(@clippedCustomer.to_s)) end end def create super show(PLACEMENT_SCREEN) end end if __FILE__ == $0 FXApp.new("ClipboardExample", "FXRuby") do |theApp| ClipMainWindow.new(theApp) theApp.create theApp.run end end [/QUOTE]
Verification
Post reply
Forums
Archive
Archive
Ruby
Help! Can't get the FXRuby clipboard example to work...
Top