I have been using similar method as @ErraticAttack demonstrated to get "col list box" (filter col selector) to easily get filterable column listing.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
nw = New Window("",
flc = Filter Col Selector(dt, nlines(10)),
((flc << Parent) << Xpath("//IfBox")) << set(1)
);
Filter col selector can also be used to create "lazy" filterable list to limit selections from columns, by first creating a data table with column names as the possible options
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp", invisible);
dt_filter = dt_temp << Split(
output table("filter table"),
Split By(:name),
Split(:name),
Remaining Columns(Drop All),
Sort by Column Property,
invisible
);
Close(dt_temp, no save);
nw = New Window("filterable list", << modal,
V List Box(
fcs = Filter Col Selector(dt_filter, nlines(10)),
((fcs << Parent) << Xpath("//IfBox")) << set(1),
H List Box(
Button Box("OK", sel = fcs << Get selected),
Button Box("Cancel")
)
);
);
Close(dt_filter, no save);
show(sel);
-Jarmo