Putting selected buttons in another place


#1

Hi, I’m trying to solve my problem but I don’t know how. I want to put these selected buttons in other places and I would like them to appear in the designated place, according to the order of selection!

I would also like to after clicking on the button [ … ] a list with all selected buttons, not just the first few, expand.

I’m hoping you can help me with :slight_smile:


#2

Hi @kolelka !

I’ve faced a similar issue before :blush: and I pulled it off by

  • Putting the buttons into a first repeater (they can then still be selected!)
  • Have another Repeater at your destination (this should have the selected style)

All the interactions are on the first repeater:

  1. On click, the first repeater item selects itself
    image

  2. On selection, it adds a row with the button label to the destination repeater

  3. On unselect, it removes that row

So the end product looks like this:

Initial state
image

User selects one item
image

User selects another item. The order is kept.
image

Please let me know if you have any questions!


#3

A repeater is probably your best solution approach. Here are some recent threads with demonstrated solutions…


You can put your button list in a dynamic panel (dp) and resize that dp with enough height to show all the buttons. For example, to resize it to the window height, keeping the same top-left location, and keeping space for the footer, use an expression like,
Set Size MyDynamicPanel to [[Window.height - Target.top - LVAR1.height]]
(where LVAR1 is a local variable pointing to your Footer dp or group)

Or, you can “nest” two dp’s, where the inner dp is set to “Fit to Content” --thus automatically resizing based on how many buttons are in the list; and the outer dp does not “Fit to Content”, but rather you set the size programmatically. Then, clicking the […] button can have a simpler expression, like:
Set Size MyOuterDynamicPanel to [[LVAR1]]
(where LVAR1 points to the inner dp)

Or, with a repeater list, there are a few methods you can use directly.

  • Add a filter to show only the first 8 buttons. An expression like this should work:
    Add Filter "MyFilterName" to MyRepeater with Rule: [[Item.index < 9]]
    …Then clicking the […] button can just remove this filter.

  • Set the repeater’s Page Size to 8 (in the STYLE pane, look at the bottom for PAGINATION) so initially only the first page (of 8 buttons) would be shown. Then, clicking […] can include an action like,
    Set Items per Page
    MyRepeater to All items per page


#4

Hi Rebecca, thanks for your reply. I have a lot of questions! :smile: I’m very new to Axure and I don’t know how to do it.

I should make Repeater from this :point_down: but how put these tags in another place?

Thanks for your help!


#5

Hi @kolelka,

I’ve put together a sample :blush: .
This might be easier to explain:
Sample_Buttons-in-another-place.rp (95.9 KB)

Best regards,
Rebecca


#6

Thank you Rebecca! Everything is clear now. :wink: It was very helpful. :hugs: