camelot n'impose qu'un minimum et laisse la liste s'elargir si une entree
est plus longue. A la demande, c'est desormais une egalite : la liste
prend exactement la largeur de son bouton, quitte a serrer le texte d'une
entree plus longue.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Camelot etire common-dropdown-bg d'un bord a l'autre. Mesure sur l'image
68 x 68 : le panneau n'occupe que x 9..58 et y 6..55, le reste est une
ombre de 9 / 6 / 9 / 12 et les angles sont coupes sur 6. Etiree sur une
liste de 200 x 130, cette ombre est multipliee par 3,3 en largeur et par
2 en hauteur -- le filet rentre d'une vingtaine de pixels, les angles
s'ecrasent et le bas du panneau remonte au-dessus de la derniere ligne.
ForeverUI.CreateNineSlice decoupe une image en neuf : coins a leur
taille, bords etires dans un seul sens, centre dans les deux. Coin de 18
(ombre la plus epaisse 12 + pan coupe 6), marges prises sur l'image pour
que le filet tombe sur le bord du cadre.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
DropdownButtonMixin:RegisterMenu pose SetMinimumWidth(self:GetWidth())
quand la description du menu n'impose rien : la liste fait au moins la
largeur du bouton qui l'ouvre. 3.3.5 ne la taillait que sur son texte le
plus long.
Le plancher se pose a l'affichage de la liste -- ToggleDropDownMenu
retient UIDROPDOWNMENU_OPEN_MENU avant de la montrer et ne verifie le
debord d'ecran qu'apres -- et se repose derriere UIDropDownMenu_Refresh,
qui retaille. Les lignes gardent l'ecart de 25 du client.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Un seul cadre pour tout le jeu : DropDownList1 et 2. camelot fait pareil
-- GetDefaultMenuMixin et GetDefaultContextMenuMixin rendent le meme
MenuStyle1Mixin -- donc l'habillage vaut pour tous les menus.
Saveur tranchee par l'art : les atlas common-dropdown-classic-* que cite
classic/ n'existent nulle part dans ce client, tandis que les
common-dropdown-* de mainline/ ont tous leur variante c60.
Fond common-dropdown-bg-c60 a (-10, 3) / (10, -3), alpha 0,925, a la
place des deux Backdrop d'epoque -- retires par SetBackdrop(nil), car
ToggleDropDownMenu relevera un cadre masque. Lignes de 20, police
GameFontHighlightLeft, case common-dropdown-ticksquare avec la coche
jaune par-dessus. Surbrillance et fleche de sous-menu etaient deja
identiques.
Deux feuilles versees : commondropdownc60 et commondropdown (la case et
la coche n'ont pas de variante c60).
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>