[fxruby-users] Option Menu help
Nick Brutyn
brutyn_nick at hotmail.com
Wed Feb 1 13:03:10 EST 2006
hey,
this is a little update
i want to make an option menu when the first list is selected, the second will be filled.
the first list contains a list of clients
the second list contains all locations of the selected client
this is my code:
Making the client list
# Second row
FXLabel.new(matrix, "Client")
# Popup menu
clientPane = FXPopup.new(self)
#Connect to webservice (FetchClients)
@clients = @driver.FetchClients(@@twa, @user.id)
for client in @clients
FXOption.new(clientPane, client.name , nil, nil, 0, JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) { getGeotagsByClient() }
end
# Option menu
@clientMenu = FXOptionMenu.new(matrix, clientPane, (FRAME_RAISED|FRAME_THICK|
JUSTIFY_HZ_APART|ICON_AFTER_TEXT|LAYOUT_RIGHT|LAYOUT_CENTER_Y))
Making the location list (first time, locations from first client)
# Third row
FXLabel.new(matrix, "Geotag")
# Popup menu
geotagPane = FXPopup.new(self)
#Connect to webservice (FetchGeotagsByClient)
@geotags = @driver.FetchGeotagsByClient(@@twa, @user.id, @clients[0].id)
for geotag in @geotags
FXOption.new(geotagPane, geotag.address1 + ", " + geotag.address2 + ", " + geotag.floor, nil, nil, 0, JUSTIFY_HZ_APART|ICON_AFTER_TEXT)
end
# Option menu
@geotagMenu = FXOptionMenu.new(matrix, geotagPane, (FRAME_RAISED|FRAME_THICK|
JUSTIFY_HZ_APART|ICON_AFTER_TEXT|LAYOUT_RIGHT|LAYOUT_CENTER_Y))
when i select an item in the first list the getGeotagsByClient() is actived.
def self.getGeotagsByClient()
getApp().beginWaitCursor() do
current_option = @clientMenu.getCurrentNo()
current_client_id = @clients[current_option].id
pane = FXPopup.new(self, (FRAME_RAISED|FRAME_THICK|
JUSTIFY_HZ_APART|ICON_AFTER_TEXT|LAYOUT_RIGHT|LAYOUT_CENTER_Y))
#Connect to webservice (FetchGeotagsByClient)
@geotags = @driver.FetchGeotagsByClient(@@twa, @user.id, current_client_id)
test = ""
for geotag in @geotags
FXOption.new(pane, geotag.address1 + ", " + geotag.address2 + ", " + geotag.floor, nil, nil, 0, JUSTIFY_HZ_APART|ICON_AFTER_TEXT)
test += geotag.address1 + "\n "
end
@user_text.text = test
@geotagMenu.menu = pane
@geotagMenu.setCurrentNo(2)
end
end
here the second list should be filled but isnt.
"@testing" contains all the locations => CORRECT
" @geotagMenu" only contains the one item (selects the 3rd, no the whole list)
Can some help me?
Thanks in adance
Nick
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/fxruby-users/attachments/20060201/039586eb/attachment.htm
More information about the fxruby-users
mailing list