public void show( ModelerWorkspace workspace, ColumnBackedNode node, String columnType ) { show( workspace, node, columnType, null ); }
public void success( GeoContext geoContext ) { model.setGeoContext( geoContext ); ModelerUiHelper.configureControllers( container, model, bf, controller, new ColResolverController() ); ModelerDialog.this.constructorListener.asyncConstructorDone( ModelerDialog.this ); }
public static void configureControllers( XulDomContainer container, ModelerWorkspace workspace, BindingFactory bf, ModelerController controller, ColResolverController colController ) { bf.setDocument( container.getDocumentRoot() ); container.addEventHandler( controller ); controller.setBindingFactory( bf ); controller.setWorkspaceHelper( workspace.getWorkspaceHelper() ); // Arrays.asList isn't working properly in GWT, manually adding them one at at time List<AbstractModelerNodeForm<? extends AbstractMetaDataModelNode>> forms = new ArrayList<AbstractModelerNodeForm<? extends AbstractMetaDataModelNode>>(); forms.add( new MeasuresPropertiesForm( LocalizedString.DEFAULT_LOCALE ) ); forms.add( new DimensionPropertiesForm() ); forms.add( new LevelsPropertiesForm( LocalizedString.DEFAULT_LOCALE ) ); forms.add( new MemberPropertyPropertiesForm( LocalizedString.DEFAULT_LOCALE ) ); forms.add( new HierarchyPropertiesForm() ); forms.add( new MainModelerNodePropertiesForm() ); forms.add( new GenericPropertiesForm() ); forms.add( new CategoryPropertiesForm() ); forms.add( new FieldsPropertiesForm( LocalizedString.DEFAULT_LOCALE ) ); forms.add( new RelationalModelNodePropertiesForm() ); for ( AbstractModelerNodeForm<? extends AbstractMetaDataModelNode> propController : forms ) { container.addEventHandler( propController ); controller.addPropertyForm( propController ); propController.setBindingFactory( bf ); propController.init( workspace ); } colController.setBindingFactory( bf ); container.addEventHandler( colController ); controller.setColResolver( colController ); colController.init(); }
public void error( String s, Throwable throwable ) { throwable.printStackTrace(); // put in a stub to ensure the rest of the dialog works model.setGeoContext( new GeoContext() ); ModelerUiHelper.configureControllers( container, model, bf, controller, new ColResolverController() ); ModelerDialog.this.constructorListener.asyncConstructorDone( ModelerDialog.this ); } } );
public void xulLoaded( GwtXulRunner gwtXulRunner ) { IModelerMessages messages = new GwtModelerMessages( (ResourceBundle) gwtXulRunner.getXulDomContainers().get( 0 ).getResourceBundles().get( 0 ) ); BogoPojo bogo = new BogoPojo(); XulDomContainer container = gwtXulRunner.getXulDomContainers().get( 0 ); GwtModelerWorkspaceHelper helper = new GwtModelerWorkspaceHelper(); ModelerWorkspace model = new ModelerWorkspace( helper ); model.setDomain( this.domain ); ModelerController controller = new ModelerController( model ); controller.setWorkspaceHelper( helper ); try { ModelerMessagesHolder.setMessages( messages ); } catch ( IllegalStateException e ) { // ignore, it was already set by someone else boolean ignore = true; } BindingFactory bf = new GwtBindingFactory( container.getDocumentRoot() ); controller.setBindingFactory( bf ); container.addEventHandler( controller ); ModelerUiHelper.configureControllers( container, model, bf, controller, new ColResolverController() ); RootPanel.get().add( (Widget) container.getDocumentRoot().getRootElement().getManagedObject() ); try { gwtXulRunner.initialize(); } catch ( XulException e ) { e.printStackTrace(); // To change body of catch statement use File | Settings | File Templates. } }
public void changeColumn( String columnType ) { Object selectedTreeItem = getSelectedTreeItem(); if ( selectedTreeItem == null ) { return; } ColumnBackedNode selectedColumnBackedNode = (ColumnBackedNode) selectedTreeItem; // only restrict to a table if this node needs to & the node has siblings that might conflict when changing the // parent IPhysicalTable restrictedPhysicalTable = selectedColumnBackedNode.getTableRestriction(); if ( restrictedPhysicalTable == null ) { colController.show( workspace, selectedColumnBackedNode, columnType ); return; } AvailableTable restrictToTable = null; AvailableItemCollection availableTables = workspace.getAvailableTables(); String name = restrictedPhysicalTable.getName( getWorkspaceHelper().getLocale() ); restrictToTable = availableTables.findAvailableTable( name ); colController.show( workspace, selectedColumnBackedNode, columnType, restrictToTable ); }