litesoft
@ 947
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.GWT.forms.client.components.factories.others; import org.litesoft.GWT.client.widgets.*; import org.litesoft.GWT.client.widgets.nonpublic.*; import org.litesoft.GWT.forms.client.components.nonpublic.*; import org.litesoft.ui.def.nonpublic.support.*; import org.litesoft.uispecification.*; public class HorizontalLayoutWidgetFactory extends AbstractVerticalOrHorizontalLayoutWidgetFactory { protected boolean shouldHaveSplitters( StretchableStruct pStretchableStruct ) { int zStretchables = pStretchableStruct.getHorizontals(); pStretchableStruct.setOrientationStretchables( zStretchables ); return (zStretchables > 1) && (zStretchables != pStretchableStruct.getHorizontalSpacers()); } protected boolean isBlockStretchable( DefWidgetStruct pChildDefWidget ) { return pChildDefWidget.isStretchableHorizontally(); } protected AbstractSizeableOneDimensionalPanel createSplittersTitledBorderedPanel( String pTitle, UiFont pTitleFont ) { return new SizeableTitledBorderedHorizontalSplitPairPanel( pTitle, pTitleFont ); } protected AbstractSizeableOneDimensionalPanel createSplittersBorderedPanel() { return new SizeableBorderedHorizontalSplitPairPanel(); } protected AbstractSizeableOneDimensionalPanel createSplittersNonBorderedPanel() { return new SizeableHorizontalSplitPairPanel(); } protected AbstractSizeableOneDimensionalPanel createRegularTitledBorderedPanel( Overflow pOverflowPolicy, String pTitle, UiFont pTitleFont ) { boolean zOverflow = !Overflow.Scrolled.equals( pOverflowPolicy ); // todo: replace with 3 options return new SizeableTitledBorderedHorizontalPanel( zOverflow, pTitle, pTitleFont ); } protected AbstractSizeableOneDimensionalPanel createRegularBorderedPanel( Overflow pOverflowPolicy ) { boolean zOverflow = !Overflow.Scrolled.equals( pOverflowPolicy ); // todo: replace with 3 options return new SizeableBorderedHorizontalPanel( zOverflow ); } protected AbstractSizeableOneDimensionalPanel createRegularNonBorderedPanel( Overflow pOverflowPolicy ) { boolean zOverflow = !Overflow.Scrolled.equals( pOverflowPolicy ); // todo: replace with 3 options return new SizeableHorizontalPanel( zOverflow ); } protected AbstractSizeableOneDimensionalPanel createRegularPanel( FormMetaData pFormMetaData, UiLayoutOneDimensionalDef pUiDef, DefWidgetStruct[] pChildDefWidgets ) { AbstractSizeableOneDimensionalPanel panel = super.createRegularPanel( pFormMetaData, pUiDef, pChildDefWidgets ); if ( pUiDef.areAllCellsSameSize() ) { AbstractSizeableHorizontalRegularPanel zHpanel = (AbstractSizeableHorizontalRegularPanel) panel; int zPer = 100 / pChildDefWidgets.length; zHpanel.setEachTDwidth( zPer + "%" ); } return panel; } } |