private void copyStyle(IPropertyViewDescriptor source, BasicPropertyViewDescriptor dest) { dest.setAction(source.getAction()); dest.setBackground(source.getBackground()); dest.setBorderType(source.getBorderType()); dest.setCollapsible(source.isCollapsible()); dest.setCollapsed(source.isCollapsed()); dest.setDescription(source.getDescription()); dest.setFont(source.getFont()); dest.setForeground(source.getForeground()); dest.setGrantedRoles(source.getGrantedRoles()); dest.setHorizontalAlignment(source.getHorizontalAlignment()); if (source instanceof DefaultDescriptor) { dest.setI18nNameKey(((DefaultDescriptor) source).getI18nNameKey()); dest.setIcon(source.getIcon()); dest.setLabelBackground(source.getLabelBackground()); dest.setLabelFont(source.getLabelFont()); dest.setLabelForeground(source.getLabelForeground()); dest.setModelDescriptor(source.getModelDescriptor()); dest.setName(source.getName()); dest.setPermId(source.getPermId()); dest.setPreferredSize(source.getPreferredSize()); dest.setReadabilityGates(source.getReadabilityGates()); if (source.isReadOnlyExplicitlyConfigured()) { dest.setReadOnly(source.isReadOnly()); dest.setWritabilityGates(source.getWritabilityGates()); dest.setWidth(source.getWidth()); dest.setForClientTypes(source.getForClientTypes());
private IView<JComponent> createPropertyView( IPropertyViewDescriptor viewDescriptor, IActionHandler actionHandler, Locale locale) { IView<JComponent> view = createPropertyView( (IPropertyDescriptor) viewDescriptor.getModelDescriptor(), viewDescriptor.getRenderedChildProperties(), actionHandler, locale); return constructView(view.getPeer(), viewDescriptor, view.getConnector()); }
protected IView<RComponent> createPropertyView(IPropertyViewDescriptor propertyViewDescriptor, IActionHandler actionHandler, Locale locale) { IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor) propertyViewDescriptor.getModelDescriptor(); IView<RComponent> propertyView = super.createPropertyView(propertyViewDescriptor, actionHandler, locale); if (propertyView != null) { configureAlignment((RLabel) peer, propertyViewDescriptor.getHorizontalAlignment()); } else if (peer instanceof RTextField) { configureAlignment((RTextField) peer, propertyViewDescriptor.getHorizontalAlignment()); } else if (peer instanceof RNumericComponent) { configureAlignment((RNumericComponent) peer, propertyViewDescriptor.getHorizontalAlignment()); } else if (peer instanceof RImageComponent) { configureAlignment((RImageComponent) peer, propertyViewDescriptor.getHorizontalAlignment()); if (propertyViewDescriptor.getFocusGainedAction() != null) { peer.setFocusGainedAction(getActionFactory() .createAction(propertyViewDescriptor.getFocusGainedAction(), actionHandler, propertyView, locale)); if (propertyViewDescriptor.getFocusLostAction() != null) { peer.setFocusLostAction(getActionFactory() .createAction(propertyViewDescriptor.getFocusLostAction(), actionHandler, propertyView, locale));
private void configurePropertyLabel(JLabel propertyLabel, IPropertyViewDescriptor propertyViewDescriptor) { if (propertyViewDescriptor.getLabelFont() != null) { propertyLabel.setFont(createFont(propertyViewDescriptor.getLabelFont(), propertyLabel.getFont())); } if (propertyViewDescriptor.getLabelForeground() != null) { propertyLabel.setForeground(createColor(propertyViewDescriptor.getLabelForeground())); } if (propertyViewDescriptor.getLabelBackground() != null) { propertyLabel.setBackground(createColor(propertyViewDescriptor.getLabelBackground())); } if (propertyViewDescriptor.getIcon() != null) { propertyLabel.setIcon( getIconFactory().getIcon(propertyViewDescriptor.getIcon(), getIconFactory().getTinyIconSize())); } }
protected IView<JComponent> createImagePropertyView(IPropertyViewDescriptor propertyViewDescriptor, IActionHandler actionHandler, Locale locale) { final IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor) propertyViewDescriptor.getModelDescriptor(); JLabel imageLabel; if (propertyViewDescriptor.getAction() != null && actionHandler.isAccessGranted( propertyViewDescriptor.getAction())) { imageLabel = createJLink(propertyViewDescriptor); } else { scaledHeight = ((IScalableImageAware) propertyDescriptor).getScaledHeight(); JImageConnector connector = new JImageConnector(propertyViewDescriptor.getModelDescriptor().getName(), imageLabel, scaledWidth, scaledHeight); connector.setExceptionHandler(actionHandler); getActionFactory().createAction(propertyViewDescriptor.getAction(), actionHandler, view, locale)); if (propertyDescriptor instanceof IBinaryPropertyDescriptor && !propertyViewDescriptor.isReadOnly()) { List<Action> binaryActions = createBinaryActions(view, actionHandler, locale); JPanel imagePanel = createJPanel();
/** * Will create an image picker if the component is not read-only. * {@inheritDoc} */ @Override protected RImageComponent createRImageComponent(IPropertyViewDescriptor viewDescriptor) { final IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor) viewDescriptor.getModelDescriptor(); if (viewDescriptor.isReadOnly() || !(propertyDescriptor instanceof IBinaryPropertyDescriptor)) { return super.createRImageComponent(viewDescriptor); } else { if (viewDescriptor instanceof IImageViewDescriptor && ((IImageViewDescriptor) viewDescriptor).isDrawable()) { return new RImageCanvas(getGuidGenerator().generateGUID()); } return new RImagePicker(getGuidGenerator().generateGUID()); } }
for (int i = 0; i < propertyViews.size(); i++) { IPropertyViewDescriptor propertyView = propertyViews.get(i); if ((propertyView.getModelDescriptor() instanceof ComparableQueryStructureDescriptor) || propertyView .getModelDescriptor() instanceof EnumQueryStructureDescriptor) { if (!(propertyView instanceof BasicReferencePropertyViewDescriptor)) { BasicReferencePropertyViewDescriptor refPropertyView = adaptReferencePropertyViewDescriptor(propertyView); if (propertyView.getModelDescriptor() instanceof ComparableQueryStructureDescriptor) { ((BasicReferencePropertyViewDescriptor) propertyView).setLovAction( createComparableEditAction((ComparableQueryStructureDescriptor) propertyView.getModelDescriptor(), null)); } else if (propertyView.getModelDescriptor() instanceof EnumQueryStructureDescriptor) { ((BasicReferencePropertyViewDescriptor) propertyView).setLovAction( createEnumSelectAction((EnumQueryStructureDescriptor) propertyView.getModelDescriptor(), null));
column.setIdentifier(computeColumnIdentifier(viewDescriptor, columnViewDescriptor)); IPropertyDescriptor propertyDescriptor = rowDescriptor.getPropertyDescriptor(propertyName); String columnName = columnViewDescriptor.getI18nName(actionHandler, locale); if (!columnViewDescriptor.isReadOnly() && propertyDescriptor.isMandatory() && !(propertyDescriptor instanceof IBooleanPropertyDescriptor)) { columnName = decorateMandatoryPropertyLabel(columnName); configureHorizontalAlignment((JLabel) cellRenderer, columnViewDescriptor.getHorizontalAlignment()); if (columnViewDescriptor.getAction() != null && columnViewDescriptor.isReadOnly()) { Action colAction = getActionFactory().createAction(columnViewDescriptor.getAction(), actionHandler, view, locale); configurePropertyViewAction(columnViewDescriptor, colAction); cellRenderer = new HyperlinkTableCellRenderer(cellRenderer, colAction, columnIndex); configurePropertyLabel(headerRenderer, columnViewDescriptor); if (propertyDescriptor.isMandatory() && !(propertyDescriptor instanceof IBooleanPropertyDescriptor)) { if (columnViewDescriptor.getLabelForeground() == null) { headerRenderer.setForeground(createColor(getTableHeaderMandatoryPropertyColorHex())); column.setPreferredWidth((Integer) columnViewDescriptorEntry.getValue()[0]); } else { if (columnViewDescriptor.getPreferredSize() != null && columnViewDescriptor.getPreferredSize().getWidth() > 0) { column.setPreferredWidth(columnViewDescriptor.getPreferredSize().getWidth()); } else { int minHeaderWidth = computePixelWidth(table, columnName.length()); final IAction focusGainedAction = columnViewDescriptor.getFocusGainedAction(); if (focusGainedAction != null) { table.getColumnModel().addColumnModelListener(new TableColumnModelListener() {
Locale locale) { IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor) propertyViewDescriptor .getModelDescriptor(); SLabel propertyLabel = createSLabel(false); StringBuffer labelText = new StringBuffer( propertyViewDescriptor.getI18nName(translationProvider, locale)); if (propertyDescriptor.isMandatory() && !(propertyDescriptor instanceof IBooleanPropertyDescriptor)) { if (propertyViewDescriptor.getLabelFont() != null) { propertyLabel.setFont(createFont(propertyViewDescriptor.getLabelFont(), propertyLabel.getFont())); if (propertyViewDescriptor.getLabelForeground() != null) { propertyLabel.setForeground(createColor(propertyViewDescriptor .getLabelForeground())); if (propertyViewDescriptor.getLabelBackground() != null) { propertyLabel.setBackground(createColor(propertyViewDescriptor .getLabelBackground()));
String propertyName = null; IPropertyDescriptor propertyDescriptor = null; IModelDescriptor propertyModelDescriptor = propertyViewDescriptor.getModelDescriptor(); if (propertyModelDescriptor != null) { propertyName = propertyModelDescriptor.getName(); propertyDescriptor, propertyView, forbidden); elementLabels.add(propertyLabel); elementWidths.add(propertyViewDescriptor.getWidth()); EHorizontalPosition labelHorizontalPosition = propertyViewDescriptor.getLabelHorizontalPosition(); if (labelHorizontalPosition == null) { labelHorizontalPosition = viewDescriptor.getLabelsHorizontalPosition(); if (propertyView.getPeer() instanceof RActionable && propertyViewDescriptor.getAction() != null) { IView<RComponent> targetView; if (propertyDescriptor instanceof IRelationshipEndPropertyDescriptor) { targetView = view; RAction action = getActionFactory().createAction(propertyViewDescriptor.getAction(), actionHandler, targetView, locale); configurePropertyViewAction(propertyViewDescriptor, action);
String propertyName = columnViewDescriptor.getModelDescriptor().getName(); rowConnectorPrototype.addChildConnector(propertyName, columnConnector); boolean writable = !columnViewDescriptor.isReadOnly(); if (writable) { try { if (columnViewDescriptor.getAction() != null && !columnViewDescriptor.isReadOnly()) { for (IValueChangeListener listener : columnConnector.getValueChangeListeners()) { if (listener instanceof ConnectorActionAdapter) { new ConnectorActionAdapter<>(columnViewDescriptor.getAction(), getActionFactory(), actionHandler, view)); } else if (columnViewDescriptor.isReadOnlyExplicitlyConfigured()) { columnConnector.setLocallyWritable(!columnViewDescriptor.isReadOnly()); headerLabel.setToolTip(viewDescription); columnHeaders.add(headerLabel); if (!columnViewDescriptor.isReadOnly() && propertyDescriptor.isMandatory() && !(propertyDescriptor instanceof IBooleanPropertyDescriptor)) { if (columnViewDescriptor.getLabelForeground() == null) { headerLabel.setForeground(getTableHeaderMandatoryPropertyColorHex()); if (column.getPeer() instanceof RActionable && columnViewDescriptor.getAction() != null) { RAction action = getActionFactory().createAction(columnViewDescriptor.getAction(), actionHandler, view, locale); configurePropertyViewAction(columnViewDescriptor, action);
if (propertyViewDescriptor.getAction() instanceof IDisplayableAction) { process((IDisplayableAction) propertyViewDescriptor.getAction(), path); if (propertyViewDescriptor.getFocusGainedAction() instanceof IDisplayableAction) { process((IDisplayableAction) propertyViewDescriptor.getFocusGainedAction(), path); if (propertyViewDescriptor.getFocusLostAction() instanceof IDisplayableAction) { process((IDisplayableAction) propertyViewDescriptor.getFocusLostAction(), path); } else if (propertyViewDescriptor.getModelDescriptor() instanceof IReferencePropertyDescriptor) { process(defaultLovAction, path);
for (IPropertyViewDescriptor columnViewDescriptor : viewDescriptor .getColumnViewDescriptors()) { String columnId = columnViewDescriptor.getModelDescriptor().getName(); if (actionHandler.isAccessGranted(columnViewDescriptor)) { try { for (IPropertyViewDescriptor columnViewDescriptor : viewDescriptor .getColumnViewDescriptors()) { String propertyName = columnViewDescriptor.getModelDescriptor().getName(); if (!forbiddenColumns.contains(propertyName)) { STableColumn column = viewComponent.getColumnModel().getColumn( .getPropertyDescriptor(propertyName); StringBuffer columnName = new StringBuffer( columnViewDescriptor.getI18nName(actionHandler, locale)); if (propertyDescriptor.isMandatory()) { columnName.append("*"); columnViewDescriptor.getHorizontalAlignment()); if (columnViewDescriptor.getPreferredSize() != null && columnViewDescriptor.getPreferredSize().getWidth() > 0) { columnWidth = columnViewDescriptor.getPreferredSize().getWidth(); } else { int minHeaderWidth = computePixelWidth(viewComponent,
for (int i = 0; i < propertyViews.size(); i++) { IPropertyViewDescriptor propertyView = propertyViews.get(i); IAction propertyViewAction = propertyView.getAction(); if ((propertyView.getModelDescriptor() instanceof ComparableQueryStructureDescriptor && isUseCompactComparableQueryStructures()) || propertyView .getModelDescriptor() instanceof EnumQueryStructureDescriptor) { if (!(propertyView instanceof BasicReferencePropertyViewDescriptor)) { propertyView = adaptReferencePropertyViewDescriptor(propertyView); if (propertyView.getModelDescriptor() instanceof ComparableQueryStructureDescriptor) { ((BasicReferencePropertyViewDescriptor) propertyView).setLovAction( createComparableEditAction((ComparableQueryStructureDescriptor) propertyView.getModelDescriptor(), propertyViewAction)); } else if (propertyView.getModelDescriptor() instanceof EnumQueryStructureDescriptor) { ((BasicReferencePropertyViewDescriptor) propertyView).setLovAction( createEnumSelectAction((EnumQueryStructureDescriptor) propertyView.getModelDescriptor(), propertyViewAction)); } else if (propertyView.getModelDescriptor() instanceof ComparableQueryStructureDescriptor) { BasicPropertyViewDescriptor nestedComparablePropertyViewDescriptor = createNestedComparablePropertyViewDescriptor( propertyView.getName(), (IPropertyDescriptor) propertyView.getModelDescriptor(), propertyViewAction); copyStyle(propertyView, nestedComparablePropertyViewDescriptor); propertyView = nestedComparablePropertyViewDescriptor;
/** * {@inheritDoc} */ @Override protected IView<JComponent> createPropertyView(final IPropertyViewDescriptor propertyViewDescriptor, final IActionHandler actionHandler, Locale locale) { final IView<JComponent> propertyView = super.createPropertyView(propertyViewDescriptor, actionHandler, locale); final JComponent peer = propertyView.getPeer(); if (peer instanceof JLabel) { configureHorizontalAlignment((JLabel) peer, propertyViewDescriptor.getHorizontalAlignment()); } else if (peer instanceof JTextField) { configureHorizontalAlignment((JTextField) peer, propertyViewDescriptor.getHorizontalAlignment()); } if (propertyViewDescriptor.getFocusGainedAction() != null) { peer.addFocusListener( new FocusGainedListener(actionHandler, propertyView, propertyViewDescriptor.getFocusGainedAction())); } if (propertyViewDescriptor.getFocusLostAction() != null) { peer.addFocusListener( new FocusLostListener(actionHandler, propertyView, propertyViewDescriptor.getFocusLostAction())); } return propertyView; }
.getPropertyViewDescriptors().iterator(); ite.hasNext();) { IPropertyViewDescriptor propertyViewDescriptor = ite.next(); String propertyName = propertyViewDescriptor.getModelDescriptor() .getName(); IPropertyDescriptor propertyDescriptor = ((IComponentDescriptorProvider<?>) viewDescriptor int propertyWidth = propertyViewDescriptor.getWidth().intValue(); if (propertyWidth > viewDescriptor.getColumnCount()) { propertyWidth = viewDescriptor.getColumnCount();
private JLabel createFormPropertyLabel(IActionHandler actionHandler, Locale locale, IPropertyViewDescriptor propertyViewDescriptor, IPropertyDescriptor propertyDescriptor, IView<JComponent> propertyView, boolean forbidden) { JLabel propertyLabel = createPropertyLabel(propertyViewDescriptor, propertyView.getPeer(), actionHandler, locale); if (!propertyViewDescriptor.isReadOnly() && propertyDescriptor != null && propertyDescriptor.isMandatory() && !(propertyDescriptor instanceof IBooleanPropertyDescriptor)) { if (propertyViewDescriptor.getLabelForeground() == null) { propertyLabel.setForeground(createColor(getFormLabelMandatoryPropertyColorHex())); } propertyLabel.setText(decorateMandatoryPropertyLabel(propertyLabel.getText())); } if (forbidden) { propertyLabel.setText(" "); propertyLabel.setIcon(null); } return propertyLabel; }
/** * {@inheritDoc} */ @Override protected IView<SComponent> createPropertyView( IPropertyViewDescriptor propertyViewDescriptor, IActionHandler actionHandler, Locale locale) { IView<SComponent> propertyView = super.createPropertyView( propertyViewDescriptor, actionHandler, locale); if (propertyView.getPeer() instanceof SLabel) { configureHorizontalAlignment((SLabel) propertyView.getPeer(), propertyViewDescriptor.getHorizontalAlignment()); } else if (propertyView.getPeer() instanceof STextField) { configureHorizontalAlignment((STextField) propertyView.getPeer(), propertyViewDescriptor.getHorizontalAlignment()); } return propertyView; } }
tsProperty = ((IReferencePropertyDescriptor) modelDescriptor).getReferencedDescriptor().getToStringProperty(); if (((IPropertyViewDescriptor) viewDescriptor).getRenderedChildProperties() != null && ((IPropertyViewDescriptor) viewDescriptor).getRenderedChildProperties().size() > 0) { childPropertiesToExtract = ((IPropertyViewDescriptor) viewDescriptor).getRenderedChildProperties();
/** * Adapt reference property view descriptor basic reference property view descriptor. * * @param propertyView * the property view * @return the basic reference property view descriptor */ protected BasicReferencePropertyViewDescriptor adaptReferencePropertyViewDescriptor( IPropertyViewDescriptor propertyView) { BasicReferencePropertyViewDescriptor refPropertyView = new BasicReferencePropertyViewDescriptor(); copyStyle(propertyView, refPropertyView); refPropertyView.setAction(propertyView.getAction()); refPropertyView.setAutoCompleteEnabled(false); return refPropertyView; }