1 module widgets.scroll; 2 3 import dlangui; 4 5 class ScrollExample : ScrollWidget 6 { 7 this(string ID) 8 { 9 super(ID); 10 11 layoutWidth(FILL_PARENT).layoutHeight(FILL_PARENT); 12 WidgetGroup scrollContent = new VerticalLayout("CONTENT"); 13 scrollContent.layoutWidth(FILL_PARENT).layoutHeight(FILL_PARENT); 14 15 TableLayout table2 = new TableLayout("TABLE2"); 16 table2.colCount = 2; 17 // headers 18 table2.addChild((new TextWidget(null, "Parameter Name"d)).alignment(Align.Right | Align.VCenter)); 19 table2.addChild((new TextWidget(null, "Edit Box to edit parameter"d)).alignment(Align.Left | Align.VCenter)); 20 // row 1 21 table2.addChild((new TextWidget(null, "Parameter 1 name"d)).alignment(Align.Right | Align.VCenter)); 22 table2.addChild((new EditLine("edit1", "Text 1"d)).layoutWidth(FILL_PARENT)); 23 // row 2 24 table2.addChild((new TextWidget(null, "Parameter 2 name bla bla"d)).alignment(Align.Right | Align.VCenter)); 25 table2.addChild((new EditLine("edit2", "Some text for parameter 2 blah blah blah"d)).layoutWidth(FILL_PARENT)); 26 // row 3 27 table2.addChild((new TextWidget(null, "Param 3"d)).alignment(Align.Right | Align.VCenter)); 28 table2.addChild((new EditLine("edit3", "Parameter 3 value"d)).layoutWidth(FILL_PARENT)); 29 // row 4 30 table2.addChild((new TextWidget(null, "Param 4"d)).alignment(Align.Right | Align.VCenter)); 31 table2.addChild((new EditLine("edit3", "Parameter 4 value shdjksdfh hsjdfas hdjkf hdjsfk ah"d)).layoutWidth(FILL_PARENT)); 32 // row 5 33 table2.addChild((new TextWidget(null, "Param 5 - edit text here - blah blah blah"d)).alignment(Align.Right | Align.VCenter)); 34 table2.addChild((new EditLine("edit3", "Parameter 5 value"d)).layoutWidth(FILL_PARENT)); 35 // row 6 36 table2.addChild((new TextWidget(null, "Param 6 - just to fill content widget (DISABLED)"d)).alignment(Align.Right | Align.VCenter).enabled(false)); 37 table2.addChild((new EditLine("edit3", "Parameter 5 value"d)).layoutWidth(FILL_PARENT).enabled(false)); 38 // row 7 39 table2.addChild((new TextWidget(null, "Param 7 - just to fill content widget (DISABLED)"d)).alignment(Align.Right | Align.VCenter).enabled(false)); 40 table2.addChild((new EditLine("edit3", "Parameter 5 value"d)).layoutWidth(FILL_PARENT).enabled(false)); 41 // row 8 42 table2.addChild((new TextWidget(null, "Param 8 - just to fill content widget"d)).alignment(Align.Right | Align.VCenter)); 43 table2.addChild((new EditLine("edit3", "Parameter 5 value"d)).layoutWidth(FILL_PARENT)); 44 table2.margins(Rect(10,10,10,10)).layoutWidth(FILL_PARENT); 45 scrollContent.addChild(table2); 46 47 scrollContent.addChild(new TextWidget(null, "Now - some buttons"d)); 48 scrollContent.addChild(new ImageTextButton("btn1", "fileclose", "Close"d)); 49 scrollContent.addChild(new ImageTextButton("btn2", "fileopen", "Open"d)); 50 scrollContent.addChild(new TextWidget(null, "And checkboxes"d)); 51 scrollContent.addChild(new CheckBox("btn1", "CheckBox 1"d)); 52 scrollContent.addChild(new CheckBox("btn2", "CheckBox 2"d)); 53 54 contentWidget = scrollContent; 55 } 56 }