/** * For form bodies. * @param makeColumnsEqualWidth * @param numColumns */ public static TableWrapLayout createFormTableWrapLayout(boolean makeColumnsEqualWidth, int numColumns) { TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = FORM_BODY_MARGIN_TOP; layout.bottomMargin = FORM_BODY_MARGIN_BOTTOM; layout.leftMargin = FORM_BODY_MARGIN_LEFT; layout.rightMargin = FORM_BODY_MARGIN_RIGHT; layout.horizontalSpacing = FORM_BODY_HORIZONTAL_SPACING; layout.verticalSpacing = FORM_BODY_VERTICAL_SPACING; layout.makeColumnsEqualWidth = makeColumnsEqualWidth; layout.numColumns = numColumns; return layout; }
initializeIfNeeded(parent, changed); if (initialLayout) { changed = true; changed = true; grid = new Vector<>(); createGrid(parent); resetColumnWidths(); int minWidth = internalGetMinimumWidth(parent, changed); int maxWidth = internalGetMaximumWidth(parent, changed); int tableWidth = parentWidth; int[] columnWidths; for (int i = 0; i < numColumns; i++) { columnWidths[i] = maxColumnWidths[i]; if (isGrowingColumn(i)) { columnWidths[i] += colExtra; columnWidths = assignExtraSpace(tableWidth, maxWidth, minWidth); int[] rowHeights = computeRowHeights(children, columnWidths, changed); for (int i = 0; i < grid.size(); i++) { int rowHeight = rowHeights[i]; if (td.isItemData) { Control child = children[td.childIndex]; placeControl(child, td, x, y, rowHeights, i);
int internalGetMaximumWidth(Composite parent, boolean changed) { if (changed) //calculateMaximumColumnWidths(parent, true); calculateColumnWidths(parent, maxColumnWidths, true, true, makeColumnsEqualWidth); int maximumWidth = 0; for (int i = 0; i < numColumns; i++) { if (i > 0) maximumWidth += horizontalSpacing; maximumWidth += maxColumnWidths[i]; } // add margins maximumWidth += leftMargin + rightMargin; return maximumWidth; }
initializeIfNeeded(parent, changed); if (initialLayout) { changed = true; changed = true; grid = new Vector<>(); createGrid(parent); resetColumnWidths(); int minWidth = internalGetMinimumWidth(parent, changed); int maxWidth = internalGetMaximumWidth(parent, changed); columnWidths = assignExtraSpace(tableWidth, maxWidth, minWidth); Point size = computeSize(td.childIndex, cwidth, td.indent, td.maxWidth, td.maxHeight); cy = size.y; updateRowSpans(i, rowHeight); if (i > 0) innerHeight += verticalSpacing; innerHeight = compensateForRowSpans(innerHeight); totalHeight = topMargin + innerHeight + bottomMargin; return new Point(tableWidth, totalHeight);
return; grid.addElement(createEmptyRow()); row = 0; column = 0; column = 0; if (row >= grid.size()) { grid.addElement(createEmptyRow()); grid.addElement(createEmptyRow()); row = row + 1; column = 0; grid.addElement(createEmptyRow()); spec.childIndex = i; if (spec.grabHorizontal) { updateGrowingColumns(growingCols, spec, column); updateGrowingRows(growingRows, spec, row);
initializeIfNeeded(parent, changed); if (initialLayout) { changed = true; changed = true; grid = new Vector<>(); createGrid(parent); resetColumnWidths(); int minWidth = internalGetMinimumWidth(parent, changed); int maxWidth = internalGetMaximumWidth(parent, changed); columnWidths = assignExtraSpace(tableWidth, maxWidth, minWidth); SizeCache controlCache = cache.getCache(td.childIndex); Point size = FormUtil.computeControlSize(controlCache, cwidth - td.indent, td.maxWidth, td.maxHeight, isFillAligned(child)); cy = size.y; updateRowSpans(i, rowHeight); if (i > 0) innerHeight += verticalSpacing; innerHeight = compensateForRowSpans(innerHeight); totalHeight = topMargin + innerHeight + bottomMargin; return new Point(tableWidth, totalHeight);
return; grid.addElement(createEmptyRow()); row = 0; column = 0; column = 0; if (row >= grid.size()) { grid.addElement(createEmptyRow()); grid.addElement(createEmptyRow()); row = row + 1; column = 0; grid.addElement(createEmptyRow()); spec.childIndex = i; if (spec.grabHorizontal) { updateGrowingColumns(growingCols, spec, column); updateGrowingRows(growingRows, spec, row);
/** * For miscellaneous grouping composites. * For sections (as a whole - header plus client). * @param makeColumnsEqualWidth * @param numColumns */ public static TableWrapLayout createClearTableWrapLayout(boolean makeColumnsEqualWidth, int numColumns) { TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = CLEAR_MARGIN_TOP; layout.bottomMargin = CLEAR_MARGIN_BOTTOM; layout.leftMargin = CLEAR_MARGIN_LEFT; layout.rightMargin = CLEAR_MARGIN_RIGHT; layout.horizontalSpacing = CLEAR_HORIZONTAL_SPACING; layout.verticalSpacing = CLEAR_VERTICAL_SPACING; layout.makeColumnsEqualWidth = makeColumnsEqualWidth; layout.numColumns = numColumns; return layout; }
initializeIfNeeded(parent, changed); if (initialLayout) { changed = true; changed = true; grid = new Vector<>(); createGrid(parent); resetColumnWidths(); int minWidth = internalGetMinimumWidth(parent, changed); int maxWidth = internalGetMaximumWidth(parent, changed); int tableWidth = parentWidth; int[] columnWidths; for (int i = 0; i < numColumns; i++) { columnWidths[i] = maxColumnWidths[i]; if (isGrowingColumn(i)) { columnWidths[i] += colExtra; columnWidths = assignExtraSpace(tableWidth, maxWidth, minWidth); int[] rowHeights = computeRowHeights(children, columnWidths, changed); for (int i = 0; i < grid.size(); i++) { int rowHeight = rowHeights[i]; if (td.isItemData) { Control child = children[td.childIndex]; placeControl(child, td, x, y, rowHeights, i);
int internalGetMaximumWidth(Composite parent, boolean changed) { if (changed) //calculateMaximumColumnWidths(parent, true); calculateColumnWidths(parent, maxColumnWidths, true, true, makeColumnsEqualWidth); int maximumWidth = 0; for (int i = 0; i < numColumns; i++) { if (i > 0) maximumWidth += horizontalSpacing; maximumWidth += maxColumnWidths[i]; } // add margins maximumWidth += leftMargin + rightMargin; return maximumWidth; }
/** * For composites set as section clients. * For composites containg form text. * @param makeColumnsEqualWidth * @param numColumns */ public static TableWrapLayout createSectionClientTableWrapLayout(boolean makeColumnsEqualWidth, int numColumns) { TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = SECTION_CLIENT_MARGIN_TOP; layout.bottomMargin = SECTION_CLIENT_MARGIN_BOTTOM; layout.leftMargin = SECTION_CLIENT_MARGIN_LEFT; layout.rightMargin = SECTION_CLIENT_MARGIN_RIGHT; layout.horizontalSpacing = SECTION_CLIENT_HORIZONTAL_SPACING; layout.verticalSpacing = SECTION_CLIENT_VERTICAL_SPACING; layout.makeColumnsEqualWidth = makeColumnsEqualWidth; layout.numColumns = numColumns; return layout; }
int internalGetMinimumWidth(Composite parent, boolean changed) { if (changed) //calculateMinimumColumnWidths(parent, true); calculateColumnWidths(parent, minColumnWidths, false, true, makeColumnsEqualWidth); int minimumWidth = 0; widestColumnWidth = 0; if (makeColumnsEqualWidth) { for (int i = 0; i < numColumns; i++) { widestColumnWidth = Math.max(widestColumnWidth, minColumnWidths[i]); } } for (int i = 0; i < numColumns; i++) { if (i > 0) minimumWidth += horizontalSpacing; if (makeColumnsEqualWidth) minimumWidth += widestColumnWidth; else minimumWidth += minColumnWidths[i]; } // add margins minimumWidth += leftMargin + rightMargin; return minimumWidth; }
/** * For composites used to group sections in left and right panes. * @param makeColumnsEqualWidth * @param numColumns */ public static TableWrapLayout createFormPaneTableWrapLayout(boolean makeColumnsEqualWidth, int numColumns) { TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = FORM_PANE_MARGIN_TOP; layout.bottomMargin = FORM_PANE_MARGIN_BOTTOM; layout.leftMargin = FORM_PANE_MARGIN_LEFT; layout.rightMargin = FORM_PANE_MARGIN_RIGHT; layout.horizontalSpacing = FORM_PANE_HORIZONTAL_SPACING; layout.verticalSpacing = FORM_PANE_VERTICAL_SPACING; layout.makeColumnsEqualWidth = makeColumnsEqualWidth; layout.numColumns = numColumns; return layout; }
int internalGetMinimumWidth(Composite parent, boolean changed) { if (changed) //calculateMinimumColumnWidths(parent, true); calculateColumnWidths(parent, minColumnWidths, false, true, makeColumnsEqualWidth); int minimumWidth = 0; widestColumnWidth = 0; if (makeColumnsEqualWidth) { for (int i = 0; i < numColumns; i++) { widestColumnWidth = Math.max(widestColumnWidth, minColumnWidths[i]); } } for (int i = 0; i < numColumns; i++) { if (i > 0) minimumWidth += horizontalSpacing; if (makeColumnsEqualWidth) minimumWidth += widestColumnWidth; else minimumWidth += minColumnWidths[i]; } // add margins minimumWidth += leftMargin + rightMargin; return minimumWidth; }
private Composite createComposite(Composite parent, FormToolkit toolkit) { Composite comp = toolkit.createComposite(parent); TableWrapLayout layout = new TableWrapLayout(); layout.bottomMargin = layout.topMargin = layout.leftMargin = layout.rightMargin = 0; layout.numColumns = 3; comp.setLayout(layout); return comp; }
/** * {@inheritDoc} */ public void createContents( Composite parent ) { FormToolkit toolkit = mform.getToolkit(); TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = 5; layout.leftMargin = 5; layout.rightMargin = 2; layout.bottomMargin = 2; parent.setLayout( layout ); createDetailsSection( parent, toolkit ); }
/** * {@inheritDoc} */ public void createContents( Composite parent ) { FormToolkit toolkit = mform.getToolkit(); TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = 5; layout.leftMargin = 5; layout.rightMargin = 2; layout.bottomMargin = 2; parent.setLayout( layout ); createDetailsSection( parent, toolkit ); }
/** * {@inheritDoc} */ public void createContents( Composite parent ) { FormToolkit toolkit = mform.getToolkit(); TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = 5; layout.leftMargin = 5; layout.rightMargin = 2; layout.bottomMargin = 2; parent.setLayout( layout ); createDetailsSection( parent, toolkit ); }
/** * {@inheritDoc} */ public void createContents( Composite parent ) { FormToolkit toolkit = mform.getToolkit(); TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = 5; layout.leftMargin = 5; layout.rightMargin = 2; layout.bottomMargin = 2; parent.setLayout( layout ); createDetailsSection( parent, toolkit ); }
/** * {@inheritDoc} */ public void createContents( Composite parent ) { FormToolkit toolkit = mform.getToolkit(); TableWrapLayout layout = new TableWrapLayout(); layout.topMargin = 5; layout.leftMargin = 5; layout.rightMargin = 2; layout.bottomMargin = 2; parent.setLayout( layout ); createDetailsSection( parent, toolkit ); }