private IView<JComponent> createListView(IListViewDescriptor viewDescriptor, @SuppressWarnings("unused") IActionHandler actionHandler, @SuppressWarnings("unused") Locale locale) { ICollectionDescriptorProvider<?> modelDescriptor = ((ICollectionDescriptorProvider<?>) viewDescriptor .getModelDescriptor()); ICompositeValueConnector rowConnectorPrototype = connectorFactory .createCompositeValueConnector(modelDescriptor.getName() + "Element", viewDescriptor.getRenderedProperty()); ICollectionConnector connector = connectorFactory .createCollectionConnector(modelDescriptor.getName(), mvcBinder, rowConnectorPrototype); JList viewComponent = createJList(); JScrollPane scrollPane = createJScrollPane(); scrollPane.setViewportView(viewComponent); IView<JComponent> view = constructView(scrollPane, viewDescriptor, connector); if (viewDescriptor.getRenderedProperty() != null) { IValueConnector cellConnector = createColumnConnector(viewDescriptor .getRenderedProperty(), modelDescriptor.getCollectionDescriptor() .getElementDescriptor()); rowConnectorPrototype.addChildConnector(cellConnector); } viewComponent.setCellRenderer(new EvenOddListCellRenderer()); viewComponent.setModel(new CollectionConnectorListModel(connector)); listSelectionModelBinder.bindSelectionModel(connector, viewComponent .getSelectionModel(), null); return view; }
private IValueConnector createCardViewConnector( final IMapView<JComponent> cardView, final IActionHandler actionHandler) { IValueConnector cardViewConnector = connectorFactory .createValueConnector(cardView.getDescriptor().getName()); cardViewConnector .addConnectorValueChangeListener(new IConnectorValueChangeListener() {
private ICollectionConnectorProvider createCompositeNodeGroupConnector( ITreeViewDescriptor viewDescriptor, ICompositeTreeLevelDescriptor subtreeViewDescriptor, int depth) { ICollectionDescriptorProvider<?> nodeGroupModelDescriptor = ((ICollectionDescriptorProvider<?>) subtreeViewDescriptor .getNodeGroupDescriptor().getModelDescriptor()); IConfigurableCollectionConnectorListProvider nodeGroupPrototypeConnector = connectorFactory .createConfigurableCollectionConnectorListProvider( nodeGroupModelDescriptor.getName() + "Element", subtreeViewDescriptor.getNodeGroupDescriptor() .getRenderedProperty()); List<ICollectionConnectorProvider> subtreeConnectors = new ArrayList<ICollectionConnectorProvider>(); if (subtreeViewDescriptor.getChildrenDescriptors() != null && depth < viewDescriptor.getMaxDepth()) { for (ITreeLevelDescriptor childDescriptor : subtreeViewDescriptor .getChildrenDescriptors()) { ICollectionConnectorProvider childConnector = createNodeGroupConnector( viewDescriptor, childDescriptor, depth + 1); nodeGroupPrototypeConnector.addChildConnector(childConnector); subtreeConnectors.add(childConnector); } } nodeGroupPrototypeConnector .setCollectionConnectorProviders(subtreeConnectors); ICollectionConnector nodeGroupCollectionConnector = connectorFactory .createCollectionConnector(nodeGroupModelDescriptor.getName(), mvcBinder, nodeGroupPrototypeConnector); return nodeGroupCollectionConnector; }
private IValueConnector createColumnConnector(String columnId, IComponentDescriptor<?> descriptor) { IPropertyDescriptor propertyDescriptor = descriptor .getPropertyDescriptor(columnId); if (propertyDescriptor == null) { throw new ViewException("No property " + columnId + " defined for " + descriptor.getComponentContract()); } if (propertyDescriptor instanceof IReferencePropertyDescriptor) { return connectorFactory.createCompositeValueConnector(columnId, ((IReferencePropertyDescriptor<?>) propertyDescriptor) .getReferencedDescriptor().getToStringProperty()); } return connectorFactory.createValueConnector(propertyDescriptor.getName()); }
.getModelDescriptor()); IComponentDescriptor<?> rowDescriptor = modelDescriptor.getCollectionDescriptor().getElementDescriptor(); ICompositeValueConnector rowConnectorPrototype = getConnectorFactory().createCompositeValueConnector( modelDescriptor.getName() + "Element", rowDescriptor.getToHtmlProperty()); ICollectionConnector connector = getConnectorFactory().createCollectionConnector(modelDescriptor.getName(), getMvcBinder(), rowConnectorPrototype); final EnhancedJTable viewComponent = createJTable(viewDescriptor); IValueConnector backgroundConnector = rowConnectorPrototype.getChildConnector(dynamicBackgroundProperty); if (backgroundConnector == null) { backgroundConnector = getConnectorFactory().createValueConnector(dynamicBackgroundProperty); rowConnectorPrototype.addChildConnector(dynamicBackgroundProperty, backgroundConnector); IValueConnector backgroundConnector = rowConnectorPrototype.getChildConnector(dynamicForegroundProperty); if (backgroundConnector == null) { backgroundConnector = getConnectorFactory().createValueConnector(dynamicForegroundProperty); rowConnectorPrototype.addChildConnector(dynamicForegroundProperty, backgroundConnector); IValueConnector backgroundConnector = rowConnectorPrototype.getChildConnector(dynamicFontProperty); if (backgroundConnector == null) { backgroundConnector = getConnectorFactory().createValueConnector(dynamicFontProperty); rowConnectorPrototype.addChildConnector(dynamicFontProperty, backgroundConnector);
private IView<JComponent> createNestingView( INestingViewDescriptor viewDescriptor, IActionHandler actionHandler, Locale locale) { ICompositeValueConnector connector = connectorFactory .createCompositeValueConnector(viewDescriptor.getModelDescriptor() .getName(), null); JPanel viewComponent = createJPanel(); BorderLayout layout = new BorderLayout(); viewComponent.setLayout(layout); IView<JComponent> view = constructView(viewComponent, viewDescriptor, connector); IView<JComponent> nestedView = createView(viewDescriptor .getNestedViewDescriptor(), actionHandler, locale); connector.addChildConnector(nestedView.getConnector()); viewComponent.add(nestedView.getPeer(), BorderLayout.CENTER); return view; }
connector = getConnectorFactory().createFormattedValueConnector(propertyDescriptor.getName(), formatter); viewComponent = createRLink(propertyViewDescriptor, false); ((RLabel) viewComponent).setMaxLength( getFormatLength(formatter, getEnumerationTemplateValue(propertyDescriptor, actionHandler, locale))); } else { connector = getConnectorFactory().createValueConnector(propertyDescriptor.getName()); List<String> values = new ArrayList<>(); List<String> translations = new ArrayList<>();
private ICollectionConnectorProvider createSimpleNodeGroupConnector( ITreeViewDescriptor viewDescriptor, ISimpleTreeLevelDescriptor subtreeViewDescriptor, int depth) { ICollectionPropertyDescriptor<?> nodeGroupModelDescriptor = (ICollectionPropertyDescriptor<?>) subtreeViewDescriptor .getNodeGroupDescriptor().getModelDescriptor(); IConfigurableCollectionConnectorProvider nodeGroupPrototypeConnector = connectorFactory .createConfigurableCollectionConnectorProvider(nodeGroupModelDescriptor .getName() + "Element", subtreeViewDescriptor.getNodeGroupDescriptor() .getRenderedProperty()); if (subtreeViewDescriptor.getChildDescriptor() != null && depth < viewDescriptor.getMaxDepth()) { ICollectionConnectorProvider childConnector = createNodeGroupConnector( viewDescriptor, subtreeViewDescriptor.getChildDescriptor(), depth + 1); nodeGroupPrototypeConnector.addChildConnector(childConnector); nodeGroupPrototypeConnector .setCollectionConnectorProvider(childConnector); } ICollectionConnector nodeGroupCollectionConnector = connectorFactory .createCollectionConnector(nodeGroupModelDescriptor.getName(), mvcBinder, nodeGroupPrototypeConnector); return nodeGroupCollectionConnector; }
if (detailView.getDescriptor().getModelDescriptor() instanceof IPropertyDescriptor) { IConfigurableCollectionConnectorProvider wrapper = connectorFactory .createConfigurableCollectionConnectorProvider( ModelRefPropertyConnector.THIS_PROPERTY, null); wrapper.addChildConnector(detailView.getConnector()); .createCompositeValueConnector(connectorId, null); view.setConnector(connector); for (IView<SComponent> childView : view.getChildren()) {
if (rootDescriptor instanceof ICompositeTreeLevelDescriptor) { IConfigurableCollectionConnectorListProvider compositeConnector = connectorFactory .createConfigurableCollectionConnectorListProvider( ModelRefPropertyConnector.THIS_PROPERTY, ((ICompositeTreeLevelDescriptor) rootDescriptor) } else if (rootDescriptor instanceof ISimpleTreeLevelDescriptor) { IConfigurableCollectionConnectorProvider simpleConnector = connectorFactory .createConfigurableCollectionConnectorProvider( ModelRefPropertyConnector.THIS_PROPERTY, ((ISimpleTreeLevelDescriptor) rootDescriptor)
/** * {@inheritDoc} */ @SuppressWarnings("MagicConstant") @Override protected IView<JComponent> createRepeaterView(IRepeaterViewDescriptor viewDescriptor, IActionHandler actionHandler, Locale locale) { ICollectionDescriptorProvider<?> modelDescriptor = ((ICollectionDescriptorProvider<?>) viewDescriptor .getModelDescriptor()); IView<JComponent> repeated = createView(viewDescriptor.getRepeatedViewDescriptor(), actionHandler, locale); ICompositeValueConnector elementConnectorPrototype = (ICompositeValueConnector) repeated.getConnector(); ICollectionConnector connector = getConnectorFactory().createCollectionConnector(modelDescriptor.getName(), getMvcBinder(), elementConnectorPrototype); JScrollablePanel repeaterContainer = createJPanel(); repeaterContainer.setScrollableTracksViewportWidth(true); repeaterContainer.setLayout(new BoxLayout(repeaterContainer, BoxLayout.PAGE_AXIS)); JScrollPane scrollPane = createJScrollPane(); scrollPane.setViewportView(repeaterContainer); IView<JComponent> view = constructView(scrollPane, viewDescriptor, connector); Action rowAction = null; if (viewDescriptor.getRowAction() != null) { rowAction = getActionFactory().createAction(viewDescriptor.getRowAction(), actionHandler, view, locale); } new JRepeater(view, repeaterContainer, this, getMvcBinder(), rowAction, actionHandler, locale); return view; }
private IValueConnector createColumnConnector(String columnId, IComponentDescriptor<?> descriptor) { IPropertyDescriptor propertyDescriptor = descriptor .getPropertyDescriptor(columnId); if (propertyDescriptor == null) { throw new ViewException("No property " + columnId + " defined for " + descriptor.getComponentContract()); } if (propertyDescriptor instanceof IReferencePropertyDescriptor) { return connectorFactory.createCompositeValueConnector(columnId, ((IReferencePropertyDescriptor<?>) propertyDescriptor) .getReferencedDescriptor().getToStringProperty()); } return connectorFactory.createValueConnector(propertyDescriptor.getName()); }
private IView<ULCComponent> createNestingView( INestingViewDescriptor viewDescriptor, IActionHandler actionHandler, Locale locale) { ICompositeValueConnector connector = connectorFactory .createCompositeValueConnector(viewDescriptor.getModelDescriptor() .getName(), null); ULCBorderLayoutPane viewComponent = createBorderLayoutPane(); IView<ULCComponent> view = constructView(viewComponent, viewDescriptor, connector); IView<ULCComponent> nestedView = createView(viewDescriptor .getNestedViewDescriptor(), actionHandler, locale); connector.addChildConnector(nestedView.getConnector()); viewComponent.add(nestedView.getPeer(), ULCBorderLayoutPane.CENTER); return view; }
actionHandler, locale); if (propertyViewDescriptor.isReadOnly()) { connector = getConnectorFactory().createFormattedValueConnector(propertyDescriptor.getName(), formatter); if (propertyViewDescriptor.getAction() != null && actionHandler.isAccessGranted( propertyViewDescriptor.getAction())) { } else { if (isNumberServerParse() || getOverloadedPattern(propertyViewDescriptor, propertyDescriptor) != null) { connector = getConnectorFactory().createFormattedValueConnector(propertyDescriptor.getName(), formatter); viewComponent = createRTextField(propertyViewDescriptor); } else { connector = getConnectorFactory().createValueConnector(propertyDescriptor.getName()); viewComponent = createRIntegerField(propertyViewDescriptor);
private ICollectionConnectorProvider createSimpleNodeGroupConnector( ITreeViewDescriptor viewDescriptor, ISimpleTreeLevelDescriptor subtreeViewDescriptor, int depth) { ICollectionPropertyDescriptor<?> nodeGroupModelDescriptor = (ICollectionPropertyDescriptor<?>) subtreeViewDescriptor .getNodeGroupDescriptor().getModelDescriptor(); IConfigurableCollectionConnectorProvider nodeGroupPrototypeConnector = connectorFactory .createConfigurableCollectionConnectorProvider(nodeGroupModelDescriptor .getName() + "Element", subtreeViewDescriptor.getNodeGroupDescriptor() .getRenderedProperty()); if (subtreeViewDescriptor.getChildDescriptor() != null && depth < viewDescriptor.getMaxDepth()) { ICollectionConnectorProvider childConnector = createNodeGroupConnector( viewDescriptor, subtreeViewDescriptor.getChildDescriptor(), depth + 1); nodeGroupPrototypeConnector.addChildConnector(childConnector); nodeGroupPrototypeConnector .setCollectionConnectorProvider(childConnector); } ICollectionConnector nodeGroupCollectionConnector = connectorFactory .createCollectionConnector(nodeGroupModelDescriptor.getName(), mvcBinder, nodeGroupPrototypeConnector); return nodeGroupCollectionConnector; }
if (detailView.getDescriptor().getModelDescriptor() instanceof IPropertyDescriptor) { IConfigurableCollectionConnectorProvider wrapper = connectorFactory .createConfigurableCollectionConnectorProvider( ModelRefPropertyConnector.THIS_PROPERTY, null); wrapper.addChildConnector(detailView.getConnector()); .createCompositeValueConnector(connectorId, null); view.setConnector(connector); for (IView<ULCComponent> childView : view.getChildren()) {
if (rootDescriptor instanceof ICompositeTreeLevelDescriptor) { IConfigurableCollectionConnectorListProvider compositeConnector = connectorFactory .createConfigurableCollectionConnectorListProvider( ModelRefPropertyConnector.THIS_PROPERTY, ((ICompositeTreeLevelDescriptor) rootDescriptor) } else if (rootDescriptor instanceof ISimpleTreeLevelDescriptor) { IConfigurableCollectionConnectorProvider simpleConnector = connectorFactory .createConfigurableCollectionConnectorProvider( ModelRefPropertyConnector.THIS_PROPERTY, ((ISimpleTreeLevelDescriptor) rootDescriptor)
/** * {@inheritDoc} */ @Override protected IView<RComponent> createRepeaterView(final IRepeaterViewDescriptor viewDescriptor, final IActionHandler actionHandler, final Locale locale) { ICollectionDescriptorProvider<?> modelDescriptor = ((ICollectionDescriptorProvider<?>) viewDescriptor .getModelDescriptor()); final IView<RComponent> repeated = createView(viewDescriptor.getRepeatedViewDescriptor(), actionHandler, locale); ICompositeValueConnector elementConnectorPrototype = (ICompositeValueConnector) repeated.getConnector(); ICollectionConnector connector = getConnectorFactory().createCollectionConnector(modelDescriptor.getName(), getMvcBinder(), elementConnectorPrototype); RRepeater viewComponent = createRRepeater(viewDescriptor); IView<RComponent> view = constructView(viewComponent, viewDescriptor, connector); viewComponent.setSelectionMode(viewDescriptor.getSelectionMode().name()); if (viewDescriptor.getRowAction() != null) { viewComponent.setRowAction( getActionFactory().createAction(viewDescriptor.getRowAction(), actionHandler, view, locale)); } bindRepeaterConnector(view, actionHandler, locale); return view; }
.getModelDescriptor()); ICompositeValueConnector rowConnectorPrototype = connectorFactory .createCompositeValueConnector(modelDescriptor.getName() + "Element", modelDescriptor.getCollectionDescriptor().getElementDescriptor() .getToStringProperty()); ICollectionConnector connector = connectorFactory .createCollectionConnector(modelDescriptor.getName(), mvcBinder, rowConnectorPrototype); JTable viewComponent = createJTable();
private IValueConnector createCardViewConnector( final IMapView<SComponent> cardView, final IActionHandler actionHandler) { IValueConnector cardViewConnector = connectorFactory .createValueConnector(cardView.getDescriptor().getName()); cardViewConnector .addConnectorValueChangeListener(new IConnectorValueChangeListener() {