private int labelType;
private EventHandler onClick;
private int[] states;
+ private int[] visibilityStates;
public ButtonBuilder(UiObject obj, MethodHandle widgetConstructor) {
this.obj = obj;
return this;
}
+ public ButtonBuilder visibilityStates(int... states) {
+ this.visibilityStates = states;
+ return this;
+ }
+
public MemorySegment createArgs(Arena arena) throws Throwable {
ArgFuncs ui = ArgFuncs.getInstance();
MemorySegment.copy(states, 0, st, ValueLayout.JAVA_INT, 0, states.length);
ui.button_args_set_states.invoke(args, st, states.length);
}
+ if(visibilityStates != null) {
+ MemorySegment st = arena.allocate(ValueLayout.JAVA_INT, visibilityStates.length);
+ MemorySegment.copy(visibilityStates, 0, st, ValueLayout.JAVA_INT, 0, visibilityStates.length);
+ ui.button_args_set_visibility_states.invoke(args, st, visibilityStates.length);
+ }
ui.button_args_set_labeltype.invoke(args, labelType);
if(onClick != null) {
private boolean nofollow;
private LinkButtonType type;
private int[] states;
+ private int[] visibilityStates;
public LinkButtonBuilder(UiObject obj, MethodHandle widgetConstructor) {
this.obj = obj;
return this;
}
+ public LinkButtonBuilder visibilityStates(int... states) {
+ this.visibilityStates = states;
+ return this;
+ }
+
public MemorySegment createArgs(Arena arena) throws Throwable {
ArgFuncs ui = ArgFuncs.getInstance();
MemorySegment.copy(states, 0, st, ValueLayout.JAVA_INT, 0, states.length);
ui.linkbutton_args_set_states.invoke(args, st, states.length);
}
+ if(visibilityStates != null) {
+ MemorySegment st = arena.allocate(ValueLayout.JAVA_INT, visibilityStates.length);
+ MemorySegment.copy(visibilityStates, 0, st, ValueLayout.JAVA_INT, 0, visibilityStates.length);
+ ui.linkbutton_args_set_visibility_states.invoke(args, st, visibilityStates.length);
+ }
return args;
}
private int enableState;
private EventHandler onChange;
private int[] states;
+ private int[] visibilityStates;
public ToggleBuilder(UiObject obj, MethodHandle widgetConstructor) {
this.obj = obj;
return this;
}
+ public ToggleBuilder visibilityStates(int... states) {
+ this.visibilityStates = states;
+ return this;
+ }
+
public MemorySegment createArgs(Arena arena) throws Throwable {
ArgFuncs ui = ArgFuncs.getInstance();
MemorySegment.copy(states, 0, st, ValueLayout.JAVA_INT, 0, states.length);
ui.toggle_args_set_states.invoke(args, st, states.length);
}
+ if(visibilityStates != null) {
+ MemorySegment st = arena.allocate(ValueLayout.JAVA_INT, visibilityStates.length);
+ MemorySegment.copy(visibilityStates, 0, st, ValueLayout.JAVA_INT, 0, visibilityStates.length);
+ ui.toggle_args_set_visibility_states.invoke(args, st, visibilityStates.length);
+ }
if(onChange != null) {
EventWrapper event = new EventWrapper(obj, onChange);
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onClick: EventHandler? = null
): UiWidget {
val button = Button.button(this)
states?.let {
button.states(*it)
}
+ visibilityStates?.let {
+ button.visibilityStates(*it)
+ }
onClick?.let {
button.onClick(onClick)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onChange: EventHandler? = null
): UiWidget {
label?.let {
states?.let {
button.states(*it)
}
+ visibilityStates?.let {
+ button.visibilityStates(*it)
+ }
onChange?.let {
button.onChange(onChange)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onChange: EventHandler? = null
): UiWidget {
return createToggleButton(
name = name,
styleClass = styleClass,
states = states,
+ visibilityStates = visibilityStates,
onChange = onChange
)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onChange: EventHandler? = null
): UiWidget {
return createToggleButton(
name = name,
styleClass = styleClass,
states = states,
+ visibilityStates = visibilityStates,
onChange = onChange
)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onChange: EventHandler? = null
): UiWidget {
return createToggleButton(
name = name,
styleClass = styleClass,
states = states,
+ visibilityStates = visibilityStates,
onChange = onChange
)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onChange: EventHandler? = null
): UiWidget {
return createToggleButton(
name = name,
styleClass = styleClass,
states = states,
+ visibilityStates = visibilityStates,
onChange = onChange
)
}
name: String? = null,
styleClass: String? = null,
states: IntArray? = null,
+ visibilityStates: IntArray? = null,
onClick: EventHandler? = null
): UiWidget {
val button = Button.linkButton(this)
states?.let {
button.states(*it)
}
+ visibilityStates?.let {
+ button.visibilityStates(*it)
+ }
return button.create()
}