This is apparently impossible. No matter what I do with anchor and pos and align, I get one of two things happening. If I set "yfill True" in the vbox everything spreads out an equal distance from each other, resulting in the stuff that should be clustering up top to be spread out all over the box. If I set "yfill False" that stops happening, and each element only takes up as much space as it needs. However, then the button that is supposed to be on the bottom of the frame winds up halfway up the frame, at the bottom of the vbox.
I tried inserting a fixed to maybe take up the extra space, setting ITS "yfill" property to True. This wound up shoving my button down to the very bottom of the SCREEN instead of the frame it's supposed to be in. Using a frame with an invisible background as my "spacer" did the exact same thing. Setting a yminimum and ymaximum didn't seem to do anything, really - the fixed/frame expanded to the ymaximum size no matter what. This is a problem, because the number of things in the "upper" part of the vbox is going to vary, and so I need some dynamic way of making sure the button is always at the bottom of the frame. My "spacer" can't just be a fixed size.
I'm losing my mind here. It really SEEMS like if I set a frame to be a certain size, then inside that frame a put a vbox with "yfill True", then inside that vbox I SHOULD be able to put some elements as far towards the TOP of that vbox as they can go without conflicting with the other elements using align or "ypos 0.0", and then put another element at the very BOTTOM of the vbox with "ypos 1.0" and have empty space in-between. What on earth am I doing wrong here?
This is the spreading out problem:
And this is my code:
Code: Select all
style silent_auction_catalog_card_frame:
background Frame("gui/frame2.png", 8, 8)
xysize (250, 800)
padding (10, 10)
style silent_auction_catalog_card_vbox:
xfill True
yfill True
align(0.5, 0.0)
spacing 5
style silent_auction_bid_button:
background Frame("gui/frame2.png", 8, 8)
xysize (200, 100)
align (0.5, 1.0)
top_padding 10
left_padding 10
right_padding 10
bottom_padding 10
screen silent_auction_catalog():
frame:
xysize (1350, 950)
align (0.5, 0.25)
top_padding 15
hbox: #Top row of four cards (only one implemented right now)
spacing 15.0
align (0.5, 0.0)
frame:
style "silent_auction_catalog_card_frame"
vbox:
style "silent_auction_catalog_card_vbox"
add "portrait placeholder" align (0.5, 0.0)
text "Bachelor Name":
align (0.5, 0.0)
size 24
text "Description paragraph blah blah blah" size 22 align(0.0, 0.0)
text "CURRENT BIDS" size 20 align(1.0, 0.0)
if psa_slot0_bids[1]:
text "[psa_slot0_bids[1]]" size 18 align(1.0, 0.0)
if psa_slot0_bids[2]:
text "[psa_slot0_bids[2]]" size 18 align(1.0, 0.0)
if psa_slot0_bids[3]:
text "[psa_slot0_bids[3]]" size 18 align(1.0, 0.0)
if psa_slot0_bids[4]:
text "[psa_slot0_bids[4]]" size 18 align(1.0, 0.0)
button:
style "silent_auction_bid_button"
action Notify("Bid Placed"), Return()
text "BID":
size 36
align (0.5, 0.5)
hbox: #Bottom row of catalog page nav stuff, currently empty because I haven't made it yet
spacing 15.0
align (0.5, 1.0)