Aller au contenu principal

ProgressBar

Barre de progression horizontale avec label et affichage du pourcentage optionnel.

package ca.tawess123.apocalyinterface.api.widget;

Builder

ProgressBar bar = ProgressBar.builder()
.value(DataSource<Float> source) // progression [0.0–1.0] (requis)
.value(float v) // raccourci statique
.labelKey(String key) // clé i18n du label
.showPercent(boolean show) // afficher "Label X%" (défaut : true)
.fillColor(int color) // couleur de remplissage
.backgroundColor(int color) // couleur du fond
.visibleIf(boolean visible) // visibilité conditionnelle
.build();

Options du builder

OptionTypeDéfautDescription
.value(DataSource<Float>)DataSource<Float>Progression entre 0.0 et 1.0. Requis (une des deux formes).
.value(float)floatRaccourci pour valeur statique. Requis (une des deux formes).
.labelKey(String)StringnullClé i18n du label affiché.
.showPercent(boolean)booleantrueAffiche le pourcentage à droite du label ("Label 75%"). Si false, le label seul est affiché.
.fillColor(int)int (ARGB)ApocalyColors.ACCENTCouleur de remplissage de la barre.
.backgroundColor(int)int (ARGB)ApocalyColors.PANEL_BGCouleur du fond (partie non remplie).
.visibleIf(boolean)booleantrueMasque la barre si false (0 px).

Hauteur

14 px.


Exemple

import ca.tawess123.apocalyinterface.api.theme.ApocalyColors;
import ca.tawess123.apocalyinterface.api.widget.ProgressBar;

// Barre de XP — valeur statique, affichage pourcentage
root.add(ProgressBar.builder()
.value(0.65f)
.labelKey("monmod.bar.xp")
.showPercent(true)
.build());

// Barre de membres — valeur dynamique, couleur verte
root.add(ProgressBar.builder()
.value(() -> membres / (float) maxMembres)
.labelKey("monmod.bar.membres")
.fillColor(ApocalyColors.SUCCESS)
.build());

// Barre de vie — rouge, sans label
root.add(ProgressBar.builder()
.value(0.30f)
.fillColor(ApocalyColors.DANGER)
.showPercent(false)
.build());

// Barre de disponibilité stock — sans pourcentage
root.add(ProgressBar.builder()
.value(0.75f)
.labelKey("monmod.bar.stock")
.showPercent(false)
.build());

Couleurs recommandées par usage

Usage.fillColor()
Progression standardApocalyColors.ACCENT (défaut)
Santé, membresApocalyColors.SUCCESS
Vie critique, dangerApocalyColors.DANGER
Expérience, réputationApocalyColors.GOLD

Voir aussi