1919import com .cleanroommc .modularui .utils .*;
2020import com .cleanroommc .modularui .utils .fakeworld .ArraySchema ;
2121import com .cleanroommc .modularui .utils .fakeworld .ISchema ;
22+ import com .cleanroommc .modularui .value .StringValue ;
2223import com .cleanroommc .modularui .widget .DraggableWidget ;
2324import com .cleanroommc .modularui .widget .Widget ;
2425import com .cleanroommc .modularui .widgets .ListWidget ;
2728import com .cleanroommc .modularui .widgets .SortableListWidget ;
2829import com .cleanroommc .modularui .widgets .TransformWidget ;
2930import com .cleanroommc .modularui .widgets .layout .Column ;
31+ import com .cleanroommc .modularui .widgets .layout .Flow ;
3032import com .cleanroommc .modularui .widgets .layout .Row ;
3133import com .cleanroommc .modularui .widgets .TextWidget ;
3234
35+ import com .cleanroommc .modularui .widgets .textfield .TextFieldWidget ;
36+
3337import net .minecraft .client .renderer .GlStateManager ;
3438import net .minecraft .client .renderer .texture .TextureAtlasSprite ;
3539import net .minecraft .init .Blocks ;
4145import org .jetbrains .annotations .NotNull ;
4246
4347import java .util .ArrayList ;
48+ import java .util .Arrays ;
4449import java .util .List ;
4550import java .util .Random ;
4651import java .util .stream .IntStream ;
@@ -49,7 +54,7 @@ public class TestGuis extends CustomModularScreen {
4954
5055 @ Override
5156 public @ NotNull ModularPanel buildUI (ModularGuiContext context ) {
52- return buildRichTextUI (context );
57+ return buildSearchTest (context );
5358 }
5459
5560 public @ NotNull ModularPanel buildAnimationUI (ModularGuiContext context ) {
@@ -276,4 +281,27 @@ public ModularPanel buildListUi(ModularGuiContext context) {
276281 }
277282 })));
278283 }
284+
285+ public @ NotNull ModularPanel buildSearchTest (ModularGuiContext context ) {
286+ List <String > items = Arrays .asList ("Chicken" , "Jockey" , "Flint" , "Steel" , "Steve" , "Diamond" , "Ingot" , "Iron" , "Armor" , "Greg" );
287+ StringValue searchValue = new StringValue ("" );
288+ return ModularPanel .defaultPanel ("search" , 100 , 150 )
289+ .child (Flow .column ()
290+ .padding (5 )
291+ .child (new TextFieldWidget ()
292+ .value (searchValue )
293+ .height (16 )
294+ .widthRel (1f ))
295+ .child (new ListWidget <>()
296+ .collapseDisabledChild ()
297+ .expanded ()
298+ .widthRel (1f )
299+ .children (items .size (), i -> new TextWidget (IKey .str (items .get (i )))
300+ .alignment (Alignment .Center )
301+ .color (Color .WHITE .main )
302+ .widthRel (1f )
303+ .height (16 )
304+ .background (GuiTextures .MC_BUTTON )
305+ .setEnabledIf (w -> items .get (i ).toLowerCase ().contains (searchValue .getStringValue ())))));
306+ }
279307}
0 commit comments