List of usage examples for com.vaadin.ui HorizontalLayout setWidth
@Override public void setWidth(String width)
From source file:es.mdef.clientmanager.ui.GestionClientesUI.java
License:Apache License
private Component getMenuTitleComponent() { final HorizontalLayout top = new HorizontalLayout(); top.setWidth("100%"); top.setDefaultComponentAlignment(Alignment.MIDDLE_LEFT); top.addStyleName("valo-menu-title"); final Label title = new Label("<h3><strong>Gestión de clientes</strong></h3>", ContentMode.HTML); title.setSizeUndefined();/*w ww . j a v a 2 s . c o m*/ top.addComponent(title); top.setExpandRatio(title, 1); return top; }
From source file:eu.lod2.LOD2Demo.java
License:Apache License
@Override public void init() { state = new LOD2DemoState(); mainWindow = new Window("LOD2 Prototype"); setTheme("lod2"); mainContainer = new VerticalLayout(); mainWindow.addComponent(mainContainer); mainContainer.setSizeFull();//from w w w . ja va 2 s .c o m final AbsoluteLayout welcomeSlagzin = new AbsoluteLayout(); welcomeSlagzin.setWidth("370px"); welcomeSlagzin.setHeight("75px"); final Link homepage = new Link(); homepage.setResource(new ExternalResource("http://lod2.eu")); final ThemeResource logo = new ThemeResource("app_images/logo-lod2-small.png"); homepage.setIcon(logo); welcomeSlagzin.addComponent(homepage, "top:0px; left:5px"); homepage.setSizeFull(); homepage.addStyleName("logo"); // the current graph as label /* currentgraphlabel = new Label("no current graph selected"); currentgraphlabel.addStyleName("currentgraphlabel"); */ Button homeb = new Button("home"); homeb.setDebugId(this.getClass().getSimpleName() + "_homeb"); homeb.addListener(new ClickListener() { public void buttonClick(ClickEvent event) { home(); } }); homeb.setStyleName(BaseTheme.BUTTON_LINK); homeb.addStyleName("currentgraphlabel"); currentgraphlabel = state.cGraph; currentgraphlabel.addStyleName("currentgraphlabel"); // Create an horizontal container HorizontalLayout welcomeContainer = new HorizontalLayout(); //menubarContainer.addComponent(lod2logo); welcomeContainer.addComponent(welcomeSlagzin); welcomeContainer.setComponentAlignment(welcomeSlagzin, Alignment.TOP_LEFT); welcomeContainer.addComponent(homeb); welcomeContainer.setComponentAlignment(homeb, Alignment.TOP_RIGHT); welcomeContainer.addComponent(currentgraphlabel); welcomeContainer.setComponentAlignment(currentgraphlabel, Alignment.TOP_RIGHT); final VerticalLayout welcome = new VerticalLayout(); welcome.addComponent(welcomeContainer); // unfortunately, we need to be able to build components from outside // this initialization function and the welcome component needs to be // resized properly afterward this.welcome = welcome; mainContainer.addComponent(welcome); //************************************************************************ // menu bar style // MenuBar menubar = new MenuBar(); menubar.setDebugId(this.getClass().getSimpleName() + "_menubar"); // First define all menu commands MenuBar.Command me1c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); ELoadRDFFile content = new ELoadRDFFile(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command me3c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); EXML me3c_content = new EXML(state); workspace.addComponent(me3c_content); // stretch the content to the full workspace area welcome.setHeight("110px"); me3c_content.setSizeFull(); } }; MenuBar.Command me3cbis = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); EXMLExtended content = new EXMLExtended(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); } }; MenuBar.Command me4c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); ESpotlight content = new ESpotlight(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command me5c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); EPoolPartyExtractor me5c_content = new EPoolPartyExtractor(state); workspace.addComponent(me5c_content); // stretch the content to the full workspace area welcome.setHeight("110px"); me5c_content.setHeight("90%"); } }; MenuBar.Command me6c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); D2RCordis content = new D2RCordis(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command me7c_1 = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); IframedUrl content = new IframedUrl(state, "http://publicdata.eu/dataset?res_format=RDF&q=rdf"); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command me7c_2 = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); IframedUrl content = new IframedUrl(state, "http://datahub.io/dataset?groups=lodcloud"); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command me8c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); EURL content = new EURL(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setHeight("90%"); } }; MenuBar.Command me9c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); EPoolPartyLabel content = new EPoolPartyLabel(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setHeight("90%"); } }; MenuBar.Command silk = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); LinkingTab lsilk = new LinkingTab(state); workspace.addComponent(lsilk); // stretch the content to the full workspace area welcome.setHeight("110px"); lsilk.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(lsilk, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command limes = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); Limes limes = new Limes(state); workspace.addComponent(limes); // stretch the content to the full workspace area welcome.setHeight("110px"); limes.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(limes, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command sameaslinking = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); SameAsLinking content = new SameAsLinking(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); } }; MenuBar.Command ore = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); ORE content = new ORE(state); workspace.addComponent(content); welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command lodrefine = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); Lodrefine content = new Lodrefine(state); workspace.addComponent(content); welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mconfiguration = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); ConfigurationTab content = new ConfigurationTab(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setHeight("500px"); } }; MenuBar.Command mabout = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); About content = new About(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); } }; MenuBar.Command mau = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); OntoWiki content = new OntoWiki(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mq1c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); SesameSPARQL content = new SesameSPARQL(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mq2c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); OntoWikiQuery content = new OntoWikiQuery(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mq3c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); VirtuosoSPARQL content = new VirtuosoSPARQL(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mq4c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); VirtuosoISPARQL content = new VirtuosoISPARQL(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; /** Deprecated temporarily MenuBar.Command mq5c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); GeoSpatial content = new GeoSpatial(state); workspace.addComponent(content); resetSizeFull(workspace); welcome.setHeight("110px"); workspace.setSizeFull(); workspace.setHeight("500px"); workspace.setExpandRatio(content,1.0f); mainContainer.setExpandRatio(workspace, 2.0f); } }; MenuBar.Command mq_s_6c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); Sparqled content = new Sparqled(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mq_s_7c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); SparqledManager content = new SparqledManager(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; */ MenuBar.Command mo1c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); SameAs content = new SameAs(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setHeight("500px"); } }; /** Deprecated temporarily MenuBar.Command mo2c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); Sigma content = new Sigma(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; */ MenuBar.Command mo3c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); LODCloud content = new LODCloud(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo4c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); DBpedia content = new DBpedia(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo5c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); SPARQLPoolParty content = new SPARQLPoolParty(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo6c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); OnlinePoolParty content = new OnlinePoolParty(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo7c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); MondecaSPARQLList content = new MondecaSPARQLList(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo8c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); CKAN content = new CKAN(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command mo9c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); IframedUrl content = new IframedUrl(state, "http://publicdata.eu"); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; /** Deprecated temporarily MenuBar.Command mo10c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); IframedUrl content = new IframedUrl(state, "http://sig.ma"); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; */ MenuBar.Command mo11c = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); IframedUrl content = new IframedUrl(state, "http://sindice.com"); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setSizeFull(); workspace.setSizeFull(); workspace.setExpandRatio(content, 1.0f); mainContainer.setExpandRatio(workspace, 2.0f); mainWindow.getContent().setSizeFull(); } }; MenuBar.Command userinfoCommand = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(/*new Authenticator(*/new UserInformation(state)/*, state)*/); } }; MenuBar.Command publishCommand = new Command() { public void menuSelected(MenuItem selectedItem) { // publishing should be protected with an authenticator, otherwise a store could be published // without provenance information! showInWorkspace(/*new Authenticator(*/new CKANPublisherPanel(state)/*, state)*/); } }; MenuBar.Command mDeleteGraphs = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(/*new Authenticator(*/new DeleteGraphs(state)/*, state)*/); } }; // Secondly define menu layout // root menu's MenuBar.MenuItem extraction = menubar.addItem("Extraction & Loading", null, null); MenuBar.MenuItem querying = menubar.addItem("Querying & Exploration", null, null); MenuBar.MenuItem authoring = menubar.addItem("Authoring", null, null); MenuBar.MenuItem linking = menubar.addItem("Linking", null, null); MenuBar.MenuItem enrichment = menubar.addItem("Enrichment & Data Cleaning", null, null); MenuBar.MenuItem onlinetools = menubar.addItem("Online Tools & Services", null, null); MenuBar.MenuItem configuration = menubar.addItem("Configuration", null, null); // sub menu's MenuBar.MenuItem me1 = extraction.addItem("Upload RDF file or RDF from URL", null, me1c); // MenuBar.MenuItem me1b = extraction.addItem("Import RDF data from URL", null, me8c); MenuBar.MenuItem me2_1 = extraction.addItem("Load RDF data from publicdata.eu", null, me7c_1); MenuBar.MenuItem me2_2 = extraction.addItem("Load LOD cloud RDF data from the Data Hub", null, me7c_2); MenuBar.MenuItem me3 = extraction.addItem("Extract RDF from XML", null, null); MenuBar.MenuItem me6 = extraction.addItem("Extract RDF from SQL", null, me6c); MenuBar.MenuItem me4 = extraction.addItem("Extract RDF from text w.r.t. DBpedia", null, me4c); MenuBar.MenuItem me5 = extraction.addItem("Extract RDF from text w.r.t. a controlled vocabulary", null, me5c); // MenuBar.MenuItem me9 = extraction.addItem("Complete RDF w.r.t. a controlled vocabulary", null, me9c); MenuBar.MenuItem exml = me3.addItem("Basic extraction", null, me3c); MenuBar.MenuItem extended = me3.addItem("Extended extraction", null, me3cbis); MenuBar.MenuItem mq1 = querying.addItem("SPARQL querying", null, null); // Deprecated temporarily //MenuBar.MenuItem mq2 = querying.addItem("Sig.ma EE", null, mo2c); //MenuBar.MenuItem mq3 = querying.addItem("Geo-spatial exploration", null, mq5c); // TODO: replace this with a menu with two entries, editor and manager, after stephane fixes the manager //MenuBar.MenuItem mqs5 = mq1.addItem("SparQLed - Assisted Querying", null, mq_s_6c); //MenuBar.MenuItem mqsparqled1 = mqs5.addItem("Use currently selected graph", null, mq_s_6c); //MenuBar.MenuItem mqsparqled2 = mqs5.addItem("Use manager to calculate summary graph", null, mq_s_7c); //MenuBar.MenuItem mqs1 = mq1.addItem("Direct via Sesame API", null, mq1c); MenuBar.MenuItem mqs2 = mq1.addItem("OntoWiki SPARQL endpoint", null, mq2c); MenuBar.MenuItem mqs3 = mq1.addItem("Virtuoso SPARQL endpoint", null, mq3c); MenuBar.MenuItem mqs4 = mq1.addItem("Virtuoso interactive SPARQL endpoint", null, mq4c); MenuBar.MenuItem ma = authoring.addItem("OntoWiki", null, mau); MenuBar.MenuItem publishing = authoring.addItem("Publish to CKAN", null, publishCommand); MenuBar.MenuItem linking1 = linking.addItem("Silk", null, silk); MenuBar.MenuItem linking2 = linking.addItem("Limes", null, limes); MenuBar.MenuItem linking3 = linking.addItem("SameAs Linking", null, sameaslinking); MenuBar.MenuItem enrichment1 = enrichment.addItem("ORE", null, ore); MenuBar.MenuItem enrichment2 = enrichment.addItem("LOD enabled Refine", null, lodrefine); MenuBar.MenuItem sameAs = onlinetools.addItem("SameAs", null, mo1c); MenuBar.MenuItem sindice = onlinetools.addItem("Sindice", null, mo11c); //Deprecated temporarily //MenuBar.MenuItem sigmaOnline = onlinetools.addItem("Sigma", null, mo10c); MenuBar.MenuItem ckan = onlinetools.addItem("CKAN", null, mo8c); MenuBar.MenuItem publicdata = onlinetools.addItem("Europe's Public Data", null, mo9c); MenuBar.MenuItem poolparty = onlinetools.addItem("PoolParty", null, mo6c); MenuBar.MenuItem sparqlonline = onlinetools.addItem("Online SPARQL endpoints", null, null); MenuBar.MenuItem lodcloud = sparqlonline.addItem("LOD cloud", null, mo3c); MenuBar.MenuItem dbpedia = sparqlonline.addItem("DBpedia", null, mo4c); MenuBar.MenuItem sparqlpoolparty = sparqlonline.addItem("PoolParty SPARQL endpoint", null, mo5c); MenuBar.MenuItem mondecalist = sparqlonline.addItem("Mondeca SPARQL endpoint Collection", null, mo7c); MenuBar.MenuItem conf = configuration.addItem("Demonstrator configuration", null, mconfiguration); MenuBar.MenuItem userconf = configuration.addItem("UserConfiguration", null, userinfoCommand); MenuBar.MenuItem about = configuration.addItem("About", null, mabout); MenuBar.MenuItem delgraphs = configuration.addItem("Delete Graphs", null, mDeleteGraphs); HorizontalLayout menubarContainer = new HorizontalLayout(); menubarContainer.addComponent(menubar); menubarContainer.addStyleName("menubarContainer"); menubarContainer.setWidth("100%"); welcome.addComponent(menubarContainer); welcome.setHeight("110px"); //************************************************************************ // add workspace workspace = new VerticalLayout(); mainContainer.addComponent(workspace); //create login/logout component that shows currently logged in user LoginStatus login = new LoginStatus(state, this.workspace); welcomeContainer.addComponent(login); welcomeContainer.setComponentAlignment(login, Alignment.TOP_RIGHT); welcomeContainer.setWidth("100%"); /* workspace.setHeight("80%"); HorizontalLayout introH = new HorizontalLayout(); Embedded lod2cycle = new Embedded("", new ThemeResource("app_images/lod-lifecycle-small.png")); lod2cycle.setMimeType("image/png"); introH.addComponent(lod2cycle); introH.setComponentAlignment(lod2cycle, Alignment.MIDDLE_LEFT); VerticalLayout introV = new VerticalLayout(); introH.addComponent(introV); Label introtextl = new Label(introtext, Label.CONTENT_XHTML); introV.addComponent(introtextl); introtextl.setWidth("400px"); HorizontalLayout introVH = new HorizontalLayout(); introV.addComponent(introVH); Embedded euflag = new Embedded("", new ThemeResource("app_images/eu-flag.gif")); euflag.setMimeType("image/gif"); introVH.addComponent(euflag); euflag.addStyleName("eugif"); euflag.setHeight("50px"); Embedded fp7 = new Embedded("", new ThemeResource("app_images/fp7-gen-rgb_small.gif")); fp7.setMimeType("image/gif"); fp7.addStyleName("eugif"); fp7.setHeight("50px"); introVH.addComponent(fp7); workspace.addComponent(introH); */ home(); // Create a tracker for the demo.lod2.eu domain. if (!state.googleAnalyticsID.equals("")) { // GoogleAnalyticsTracker tracker = new GoogleAnalyticsTracker("UA-26375798-1", "demo.lod2.eu"); GoogleAnalyticsTracker tracker = new GoogleAnalyticsTracker(state.googleAnalyticsID, state.googleAnalyticsDomain); mainWindow.addComponent(tracker); tracker.trackPageview("/lod2statworkbench"); } ; setMainWindow(mainWindow); // mainWindow.setExpandRatio(workspace, 1.0f); if (!state.InitStatus) { mainWindow.showNotification("Initialization Demonstration Failed", state.ErrorMessage, Notification.TYPE_ERROR_MESSAGE); } ; }
From source file:eu.lod2.stat.dsdrepo.DSDRepoComponent.java
public DSDRepoComponent(Repository repository, String dataGraph, String repoGraph) { this.repository = repository; this.dataGraph = dataGraph; this.repoGraph = repoGraph; initializeRepoGraph();// www . j av a 2 s . c o m dcRepo = new SparqlDCRepository(repository); graph = new SparqlDCGraph(repository, dataGraph); setSizeFull(); VerticalLayout rootLayout = new VerticalLayout(); rootLayout.setSizeFull(); rootLayout.setSpacing(true); setDebugId("dsd-repo"); mainLayout = new VerticalLayout(); mainLayout.setSizeUndefined(); mainLayout.setWidth("100%"); // mainLayout.setHeight("800px"); mainLayout.setSpacing(true); HorizontalLayout menuLayout = new HorizontalLayout(); menuLayout.setSpacing(true); menuLayout.setWidth("100%"); rootLayout.addComponent(menuLayout); rootLayout.setExpandRatio(menuLayout, 0.0f); final MenuBar menu = new MenuBar(); menu.addStyleName("dsd"); cmdFindDSD = new MenuBar.Command() { public void menuSelected(MenuBar.MenuItem selectedItem) { for (MenuBar.MenuItem item : menu.getItems()) { if (item == selectedItem) { if (!item.getStyleName().contains("selected")) { if (ds != null) item.setStyleName("selected"); findDSDs(); } } else item.setStyleName("bleja"); } } }; menu.addItem("Find Suitable DSDs", cmdFindDSD).setStyleName("bleja"); cmdCreateDSD = new MenuBar.Command() { public void menuSelected(MenuBar.MenuItem selectedItem) { for (MenuBar.MenuItem item : menu.getItems()) { if (item == selectedItem) { if (!item.getStyleName().contains("selected")) { if (ds != null) item.setStyleName("selected"); createDSD(); } } else item.setStyleName("bleja"); } } }; menu.addItem("Create DSD", cmdCreateDSD).setStyleName("bleja"); cmdStoreDSD = new MenuBar.Command() { public void menuSelected(MenuBar.MenuItem selectedItem) { for (MenuBar.MenuItem item : menu.getItems()) { if (item == selectedItem) { if (!item.getStyleName().contains("selected")) { if (ds != null) item.setStyleName("selected"); storeDSD(); } } else item.setStyleName("bleja"); } } }; menu.addItem("Store DSD", cmdStoreDSD).setStyleName("bleja"); menuLayout.addComponent(menu); Label spaceLbl = new Label(""); menuLayout.addComponent(spaceLbl); menuLayout.setExpandRatio(spaceLbl, 2.0f); Label lbl = new Label("Choose dataset: "); lbl.setSizeUndefined(); menuLayout.addComponent(lbl); Collection<DataSet> colDataSets = graph.getDataSets(); if (colDataSets == null) colDataSets = new LinkedList<DataSet>(); selectDataSet = new ComboBox(null, colDataSets); selectDataSet.setImmediate(true); selectDataSet.setNewItemsAllowed(false); selectDataSet.setNullSelectionAllowed(false); selectDataSet.setWidth("300px"); selectDataSet.addListener(new Property.ValueChangeListener() { public void valueChange(Property.ValueChangeEvent event) { ds = (DataSet) event.getProperty().getValue(); } }); menuLayout.addComponent(selectDataSet); Panel mainPanel = new Panel(mainLayout); mainPanel.setSizeFull(); mainPanel.setScrollable(true); mainPanel.setStyleName(Reindeer.PANEL_LIGHT); Label hrLabel = new Label("<hr/>", Label.CONTENT_XHTML); rootLayout.addComponent(hrLabel); rootLayout.setExpandRatio(hrLabel, 0.0f); rootLayout.addComponent(mainPanel); rootLayout.setExpandRatio(mainPanel, 2.0f); rootLayout.setMargin(true, false, true, false); setCompositionRoot(rootLayout); }
From source file:eu.lod2.stat.StatLOD2Demo.java
License:Apache License
@Override public void init() { ensureState();/*from ww w . java2 s . c o m*/ customComponentFactory = new CustomComponentFactory(state); mainWindow = new Window("LOD2 Statistical Workbench DEMO"); setTheme("lod2"); mainContainer = new VerticalLayout(); mainWindow.addComponent(mainContainer); mainContainer.setSizeFull(); final AbsoluteLayout welcomeSlagzin = new AbsoluteLayout(); welcomeSlagzin.setWidth("370px"); welcomeSlagzin.setHeight("75px"); final Link homepage = new Link(); homepage.setResource(new ExternalResource("http://lod2.eu")); final ThemeResource logo = new ThemeResource("app_images/logo-lod2-small.png"); homepage.setIcon(logo); welcomeSlagzin.addComponent(homepage, "top:0px; left:5px"); homepage.setSizeFull(); homepage.addStyleName("logo"); // the current graph as label /* currentgraphlabel = new Label("no current graph selected"); currentgraphlabel.addStyleName("currentgraphlabel"); */ Button homeb = new Button("home"); homeb.setDebugId(this.getClass().getSimpleName() + "_homeb"); homeb.addListener(new ClickListener() { public void buttonClick(ClickEvent event) { home(); } }); homeb.setStyleName(BaseTheme.BUTTON_LINK); homeb.addStyleName("currentgraphlabel"); currentgraphlabel = state.cGraph; currentgraphlabel.addStyleName("currentgraphlabel"); // Create an horizontal container HorizontalLayout welcomeContainer = new HorizontalLayout(); HorizontalLayout stateContainer = new HorizontalLayout(); VerticalLayout toolsContainer = new VerticalLayout(); toolsContainer.setWidth("100%"); welcomeContainer.setWidth("100%"); //menubarContainer.addComponent(lod2logo); welcomeContainer.addComponent(welcomeSlagzin); welcomeContainer.addComponent(toolsContainer); toolsContainer.addComponent(stateContainer); welcomeContainer.setComponentAlignment(welcomeSlagzin, Alignment.TOP_LEFT); stateContainer.addComponent(homeb); welcomeContainer.setComponentAlignment(toolsContainer, Alignment.TOP_RIGHT); stateContainer.addComponent(currentgraphlabel); stateContainer.setComponentAlignment(homeb, Alignment.TOP_LEFT); stateContainer.setComponentAlignment(currentgraphlabel, Alignment.TOP_RIGHT); final VerticalLayout welcome = new VerticalLayout(); welcome.addComponent(welcomeContainer); // unfortunately, we need to be able to build components from outside // this initialization function and the welcome component needs to be // resized properly afterward this.welcome = welcome; mainContainer.addComponent(welcome); //************************************************************************ // menu bar style // MenuBar menubar = new MenuBar(); menubar.setDebugId(this.getClass().getSimpleName() + "_menubar"); // First define all menu commands String sparqlAuthURL; if (state.getHostName().equals("http://localhost:8080")) { sparqlAuthURL = "http://localhost:8890/sparql-auth"; } else { sparqlAuthURL = state.getHostName() + "/virtuoso/sparql-auth"; } ; MenuBar.Command cmdOntoWikiCreateKB = getCustomComponentCommand(CompType.CreateKB); MenuBar.Command cmdOntoWikiImport = getCustomComponentCommand(CompType.ImportCSV); MenuBar.Command cmdSearchCubes = getCustomComponentCommand(CompType.SearchCubes); // MenuBar.Command cmdConfigGUI = getCustomComponentCommand(CompType.ConfigGUIStat); MenuBar.Command cmdManageDSD = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new DSDRepoComponentWrapper(state, workspace)); // showInWorkspace(new DSDRepoComponent(state.getRdfStore(), state.getCurrentGraph())); } }; MenuBar.Command cmdValidation = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new Validation(state, workspace)); } }; //MenuBar.Command cmdUploadRDF = getCustomComponentCommand(CompType.UploadRDF); //MenuBar.Command cmdExtractXML = getCustomComponentCommand(CompType.ExtractFromXML, false); //MenuBar.Command cmdExtractXMLE = getCustomComponentCommand(CompType.ExtractFromXMLExtended, false); MenuBar.Command cmdLoadFromPublicData = getFramedUrlCommand( "http://publicdata.eu/dataset?q=statistical&res_format=application%2Frdf%2Bxml&_res_format_limit=0&sort=relevance+asc"); MenuBar.Command cmdLoadFromDataHub = getFramedUrlCommand( "http://datahub.io/dataset?tags=statistics&q=&groups=lodcloud"); //MenuBar.Command cmdD2R = getCustomComponentCommand(CompType.D2R); MenuBar.Command cmdSparqled = getCustomComponentCommand(CompType.Sparqled); MenuBar.Command cmdSparqledManager = getCustomComponentCommand(CompType.SparqledManager); MenuBar.Command cmdSparqlOntowiki = getCustomComponentCommand(CompType.SparqlOW); MenuBar.Command cmdSparqlVirtuoso = getCustomComponentCommand(CompType.SparqlVirtuoso); MenuBar.Command cmdSparqlVirtuosoI = getCustomComponentCommand(CompType.SparqlIVirtuoso); MenuBar.Command cmdOntoWikiEdit = getCustomComponentCommand(CompType.EditWithOW); MenuBar.Command cmdSparqlUpdateVirtuoso = getFramedUrlCommand(sparqlAuthURL); MenuBar.Command cmdPoolPartyEdit = getCustomComponentCommand(CompType.OnlinePoolParty); MenuBar.Command cmdMergeDatasets = getCustomComponentCommand(CompType.MergeDatasets); MenuBar.Command cmdMergeDimensions = getCustomComponentCommand(CompType.MergeDimensions); MenuBar.Command cmdSliceDatasets = getCustomComponentCommand(CompType.SliceDatasets); //MenuBar.Command cmdCkan = getCustomComponentCommand(CompType.CKAN); MenuBar.Command cmdGeoSpatial = getCustomComponentCommand(CompType.GeoSpatial); MenuBar.Command cmdSilk = getCustomComponentCommand(CompType.Silk); MenuBar.Command cmdLodRefine = getCustomComponentCommand(CompType.LodRefine); MenuBar.Command cmdLimes = getCustomComponentCommand(CompType.Limes); MenuBar.Command cmdSameAs = getCustomComponentCommand(CompType.SameAs); //MenuBar.Command cmdPublicData = getFramedUrlCommand("http://publicdata.eu"); //MenuBar.Command cmdSigMa = getFramedUrlCommand("http://sig.ma"); MenuBar.Command cmdSindice = getFramedUrlCommand("http://sindice.com/main/submit"); //MenuBar.Command cmdLODCloud = getCustomComponentCommand(CompType.LODCloud); MenuBar.Command cmdDBPedia = getCustomComponentCommand(CompType.DBPedia); MenuBar.Command cmdSPARQLPoolParty = getCustomComponentCommand(CompType.SPARQLPoolParty); MenuBar.Command cmdMondecaSPARQLList = getCustomComponentCommand(CompType.MondecaSPARQLList); MenuBar.Command cmdEditDataset = this.getEditDatasetCommand(this.state); MenuBar.Command cmdEditStructureDef = this.getEditStructureDefinition(this.state); MenuBar.Command cmdEditComponentProp = this.getEditComponentPropertyCommand(this.state); MenuBar.Command cmdVisualizeCubeviz = getCustomComponentCommand(CompType.VisualizeCubeviz); MenuBar.Command cmdDemoConfig = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { workspace.removeAllComponents(); ConfigurationTab content = new ConfigurationTab(state); workspace.addComponent(content); // stretch the content to the full workspace area welcome.setHeight("110px"); content.setHeight("500px"); } }; /*MenuBar.Command userinfoCommand = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new Authenticator(new UserInformation(state), new HashSet<String>(Arrays.asList(state.userRole)), state)); } }; removed due to WebID issues */ MenuBar.Command publishCommand = new Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new CKANPublisherPanel(state)); } }; MenuBar.Command publishDataHubCommand = new Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new DataHubPublisher(state)); } }; MenuBar.Command mDeleteGraphs = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new DeleteGraphs(state)); } }; MenuBar.Command extractXML = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new EXML(state)); } }; MenuBar.Command extractXMLExtended = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new EXMLExtended(state)); } }; MenuBar.Command extractSDMX = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new LinkedSDMX(state)); } }; MenuBar.Command importDirectly = new MenuBar.Command() { public void menuSelected(MenuItem selectedItem) { showInWorkspace(new OntoWikiPathExtended(state, "/model/add", true)); } }; MenuBar.Command exportRDFXML = getOWExportCommand("rdfxml"); MenuBar.Command exportTurtle = getOWExportCommand("turtle"); MenuBar.Command exportRDFJson = getOWExportCommand("rdfjson"); MenuBar.Command exportRDFN3 = getOWExportCommand("rdfn3"); MenuBar.Command cmdExamples = getFramedUrlCommand( "http://wiki.lod2.eu/display/LOD2DOC/LOD2+Statistical+Workbench"); /* legend for menu item names: - *: stub - !: incomplete functionality */ // root menus MenuBar.MenuItem menuGraph = menubar.addItem("Manage Graph", null, null); MenuBar.MenuItem menuExtraction = menubar.addItem("Find more Data Online", null, null); MenuBar.MenuItem menuEdit = menubar.addItem("Edit & Transform", null, null); //MenuBar.MenuItem menuQuery = menubar.addItem("Querying & Exploration", null, null); MenuBar.MenuItem menuEnrich = menubar.addItem("Enrich Datacube", null, null); //MenuBar.MenuItem menuOnline = menubar.addItem("Online Tools & Services", null, null); MenuBar.MenuItem menuPresent = menubar.addItem("Present & Publish", null, null); MenuBar.MenuItem menuHelp = menubar.addItem("Help", null, null); //graph menu menuGraph.addItem("Select Default Graph", null, cmdDemoConfig); menuGraph.addItem("Create Graph", null, cmdOntoWikiCreateKB); menuGraph.addItem("Search Cubes", cmdSearchCubes); // menuGraph.addItem("Configure URIs", cmdConfigGUI); MenuBar.MenuItem menuImport = menuGraph.addItem("Import", null, null); menuImport.addItem("Import from CSV", null, cmdOntoWikiImport); MenuBar.MenuItem excelImport = menuImport.addItem("Import from XML", null, null); MenuBar.MenuItem directImport = menuImport.addItem("Import triples from file", null, importDirectly); excelImport.addItem("From Text", null, extractXML); excelImport.addItem("From File", null, extractXMLExtended); excelImport.addItem("From SDMX", null, extractSDMX); MenuBar.MenuItem menuExport = menuGraph.addItem("Export", null, null); menuExport.addItem("Export as RDF/XML", null, exportRDFXML); menuExport.addItem("Export as Turtle", null, exportTurtle); menuExport.addItem("Export as RDF/JSON", null, exportRDFJson); menuExport.addItem("Export as Notation 3", null, exportRDFN3); menuGraph.addItem("DSD Management", cmdManageDSD); menuGraph.addItem("Validate", null, cmdValidation); menuGraph.addItem("Remove Graphs", null, mDeleteGraphs); // edit menu MenuItem editmenu = menuEdit.addItem("Edit Graph (OntoWiki)", null, cmdOntoWikiEdit); editmenu.addItem("Edit qb:Dataset", null, cmdEditDataset); editmenu.addItem("Edit qb:StructureDefinition", null, cmdEditStructureDef); editmenu.addItem("Edit qb:ComponentProperty", null, cmdEditComponentProp); menuEdit.addItem("Edit Code Lists (PoolParty)", null, cmdPoolPartyEdit); menuEdit.addItem("Reconcile dimensions", null, cmdMergeDimensions); menuEdit.addItem("Merge datasets", null, cmdMergeDatasets); menuEdit.addItem("Slice datasets", null, cmdSliceDatasets); menuEdit.addItem("Transform and Update Graph (SPARQL Update Endpoint)", null, cmdSparqlUpdateVirtuoso); menuEdit.addItem("Transform and Update Graph (R2R rules)", null, getCustomComponentCommand(CompType.R2R)); // extraction menus //menuExtraction.addItem("Upload RDF File or RDF from URL", null, cmdUploadRDF); //MenuBar.MenuItem itemExtractFromXML = menuExtraction.addItem("Extract RDF from XML", null, null); //itemExtractFromXML.addItem("Basic extraction", null, cmdExtractXML); //itemExtractFromXML.addItem("Extended extraction", null, cmdExtractXMLE); menuExtraction.addItem("Load RDF data from publicdata.eu", null, cmdLoadFromPublicData); menuExtraction.addItem("Load RDF data from Data Hub", null, cmdLoadFromDataHub); //menuExtraction.addItem("Extract RDF from SQL", null, cmdD2R); // querying menu // many sparql query frontends are attached to the same endpoint (virtuoso) Removing duplicates //MenuBar.MenuItem itemSparqlQuerying = menuEdit.addItem("SPARQL querying", null, null); //Deprecated temporarily //MenuBar.MenuItem itemSparqled = menuEdit.addItem("SparQLed - Assisted Querying", null, cmdSparqled); //itemSparqled.addItem("Use currently selected graph", null, cmdSparqled); //itemSparqled.addItem("Use manager to calculate summary graph", null, cmdSparqledManager); //itemSparqlQuerying.addItem("OntoWiki SPARQL endpoint", null, cmdSparqlOntowiki); //itemSparqlQuerying.addItem("Virtuoso SPARQL endpoint", null, cmdSparqlVirtuoso); //itemSparqlQuerying.addItem("Virtuoso interactive SPARQL endpoint", null, cmdSparqlVirtuosoI); // menuQuery.addItem("Find RDF Data Cubes", null, null); // menuQuery.addItem("RDF Data Cube Matching Analysis", null, null); menuPresent.addItem("Visualization with CubeViz", null, cmdVisualizeCubeviz); // seems like duplicate of publicdata.eu //menuQuery.addItem("CKAN", null, cmdCkan); //menuPresent.addItem("Geo-Spatial exploration", null, cmdGeoSpatial); menuPresent.addItem("Publish to CKAN", null, publishCommand); menuPresent.addItem("Publish to datahub.io", null, publishDataHubCommand); // enrichment menu menuEnrich.addItem("Interlinking dimensions (Silk)", null, cmdSilk); menuEnrich.addItem("Data enrichment and reconciliation (LODRefine)", null, cmdLodRefine); menuEnrich.addItem("Interlinking with Limes", null, cmdLimes); menuEnrich.addItem("Interlinking with SameAs", null, cmdSameAs); // online menu //moved to present and publish menuPresent.addItem("Publish to Sindice", null, cmdSindice); //menuOnline.addItem("Sig.ma", null, cmdSigMa); // not a fitting case for stat wb? // duplicate? //menuOnline.addItem("Europe's Public Data", null, cmdPublicData); //MenuBar.MenuItem itemOnlineSparql = menuOnline.addItem("Online SPARQL Endpoints", null, null); // no longer working //itemOnlineSparql.addItem("LOD cloud", null, cmdLODCloud); // moved to find more data menuExtraction.addItem("DBPedia", null, cmdDBPedia); // moved to sparql querying menuEdit.addItem("PoolParty Code Lists SPARQL endpoint", null, cmdSPARQLPoolParty); // moved to extract menuExtraction.addItem("Mondeca SPARQL endpoint Collection", null, cmdMondecaSPARQLList); // help menu /* menuHelp.addItem("User Configuration", null, userinfoCommand); removed due to WebID issues */ //menuHelp.addItem("*Documentation", null, null); menuHelp.addItem("Examples", null, cmdExamples); //menuHelp.addItem("*About", null, null); HorizontalLayout menubarContainer = new HorizontalLayout(); menubarContainer.addComponent(menubar); menubarContainer.addStyleName("menubarContainer"); menubarContainer.setWidth("100%"); welcome.addComponent(menubarContainer); welcome.setHeight("110px"); //************************************************************************ // add workspace workspace = new VerticalLayout(); mainContainer.addComponent(workspace); //create login/logout component that shows currently logged in user LoginStatus login = new LoginStatus(state, workspace); toolsContainer.addComponent(login); //welcome.setComponentAlignment(login, Alignment.TOP_RIGHT); /* workspace.setHeight("80%"); HorizontalLayout introH = new HorizontalLayout(); Embedded lod2cycle = new Embedded("", new ThemeResource("app_images/lod-lifecycle-small.png")); lod2cycle.setMimeType("image/png"); introH.addComponent(lod2cycle); introH.setComponentAlignment(lod2cycle, Alignment.MIDDLE_LEFT); VerticalLayout introV = new VerticalLayout(); introH.addComponent(introV); Label introtextl = new Label(introtext, Label.CONTENT_XHTML); introV.addComponent(introtextl); introtextl.setWidth("400px"); HorizontalLayout introVH = new HorizontalLayout(); introV.addComponent(introVH); Embedded euflag = new Embedded("", new ThemeResource("app_images/eu-flag.gif")); euflag.setMimeType("image/gif"); introVH.addComponent(euflag); euflag.addStyleName("eugif"); euflag.setHeight("50px"); Embedded fp7 = new Embedded("", new ThemeResource("app_images/fp7-gen-rgb_small.gif")); fp7.setMimeType("image/gif"); fp7.addStyleName("eugif"); fp7.setHeight("50px"); introVH.addComponent(fp7); workspace.addComponent(introH); */ home(); // Create a tracker for the demo.lod2.eu domain. if (!state.googleAnalyticsID.equals("")) { // GoogleAnalyticsTracker tracker = new GoogleAnalyticsTracker("UA-26375798-1", "demo.lod2.eu"); GoogleAnalyticsTracker tracker = new GoogleAnalyticsTracker(state.googleAnalyticsID, state.googleAnalyticsDomain); mainWindow.addComponent(tracker); tracker.trackPageview("/lod2statworkbench"); } ; setMainWindow(mainWindow); // mainWindow.setExpandRatio(workspace, 1.0f); if (!state.InitStatus) { mainWindow.showNotification("Initialization Demonstration Failed", state.ErrorMessage, Notification.TYPE_ERROR_MESSAGE); } ; }
From source file:eu.maxschuster.vaadin.signaturefield.demo.DemoUI.java
License:Apache License
@Override protected void init(VaadinRequest request) { getPage().setTitle(pageTitle);// ww w . j a va2s. c o m final VerticalLayout margin = new VerticalLayout(); setContent(margin); final VerticalLayout layout = new VerticalLayout(); layout.setMargin(true); layout.setSpacing(true); layout.setWidth("658px"); margin.addComponent(layout); margin.setComponentAlignment(layout, Alignment.TOP_CENTER); final Label header1 = new Label(pageTitle); header1.addStyleName("h1"); header1.setSizeUndefined(); layout.addComponent(header1); layout.setComponentAlignment(header1, Alignment.TOP_CENTER); final TabSheet tabSheet = new TabSheet(); tabSheet.setWidth("100%"); layout.addComponent(tabSheet); layout.setComponentAlignment(tabSheet, Alignment.TOP_CENTER); final Panel signaturePanel = new Panel(); signaturePanel.addStyleName("signature-panel"); signaturePanel.setWidth("100%"); tabSheet.addTab(signaturePanel, "Demo"); final VerticalLayout signatureLayout = new VerticalLayout(); signatureLayout.setMargin(true); signatureLayout.setSpacing(true); signatureLayout.setSizeFull(); signaturePanel.setContent(signatureLayout); final SignatureField signatureField = new SignatureField(); signatureField.setWidth("100%"); signatureField.setHeight("318px"); signatureField.setPenColor(Color.ULTRAMARINE); signatureField.setBackgroundColor("white"); signatureField.setConverter(new StringToDataUrlConverter()); signatureField.setPropertyDataSource(dataUrlProperty); signatureField.setVelocityFilterWeight(0.7); signatureLayout.addComponent(signatureField); signatureLayout.setComponentAlignment(signatureField, Alignment.MIDDLE_CENTER); final HorizontalLayout buttonLayout = new HorizontalLayout(); buttonLayout.setSpacing(true); buttonLayout.setWidth("100%"); signatureLayout.addComponent(buttonLayout); final Button clearButton = new Button("Clear", new ClickListener() { @Override public void buttonClick(ClickEvent event) { signatureField.clear(); } }); buttonLayout.addComponent(clearButton); buttonLayout.setComponentAlignment(clearButton, Alignment.MIDDLE_LEFT); final Label message = new Label("Sign above"); message.setSizeUndefined(); buttonLayout.addComponent(message); buttonLayout.setComponentAlignment(message, Alignment.MIDDLE_CENTER); final ButtonLink saveButtonLink = new ButtonLink("Save", null); saveButtonLink.setTargetName("_blank"); buttonLayout.addComponent(saveButtonLink); buttonLayout.setComponentAlignment(saveButtonLink, Alignment.MIDDLE_RIGHT); final Panel optionsPanel = new Panel(); optionsPanel.setSizeFull(); tabSheet.addTab(optionsPanel, "Options"); final FormLayout optionsLayout = new FormLayout(); optionsLayout.setMargin(true); optionsLayout.setSpacing(true); optionsPanel.setContent(optionsLayout); final ComboBox mimeTypeComboBox = new ComboBox(null, mimeTypeContainer); optionsLayout.addComponent(mimeTypeComboBox); mimeTypeComboBox.setItemCaptionPropertyId("mimeType"); mimeTypeComboBox.setNullSelectionAllowed(false); mimeTypeComboBox.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { MimeType mimeType = (MimeType) event.getProperty().getValue(); signatureField.setMimeType(mimeType); } }); mimeTypeComboBox.setValue(MimeType.PNG); mimeTypeComboBox.setCaption("Result MIME-Type"); final CheckBox immediateCheckBox = new CheckBox("immediate", false); optionsLayout.addComponent(immediateCheckBox); immediateCheckBox.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean immediate = (Boolean) event.getProperty().getValue(); signatureField.setImmediate(immediate); } }); final CheckBox readOnlyCheckBox = new CheckBox("readOnly", false); optionsLayout.addComponent(readOnlyCheckBox); readOnlyCheckBox.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean readOnly = (Boolean) event.getProperty().getValue(); signatureField.setReadOnly(readOnly); mimeTypeComboBox.setReadOnly(readOnly); clearButton.setEnabled(!readOnly); } }); final CheckBox requiredCheckBox = new CheckBox("required (causes bug that clears field)", false); optionsLayout.addComponent(requiredCheckBox); requiredCheckBox.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean required = (Boolean) event.getProperty().getValue(); signatureField.setRequired(required); } }); final CheckBox clearButtonEnabledButton = new CheckBox("clearButtonEnabled", false); optionsLayout.addComponent(clearButtonEnabledButton); clearButtonEnabledButton.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { boolean clearButtonEnabled = (Boolean) event.getProperty().getValue(); signatureField.setClearButtonEnabled(clearButtonEnabled); } }); final Panel resultPanel = new Panel("Results:"); resultPanel.setWidth("100%"); layout.addComponent(resultPanel); final VerticalLayout resultLayout = new VerticalLayout(); resultLayout.setMargin(true); resultPanel.setContent(resultLayout); final Image stringPreviewImage = new Image("String preview image:"); stringPreviewImage.setWidth("500px"); resultLayout.addComponent(stringPreviewImage); final Image dataUrlPreviewImage = new Image("DataURL preview image:"); dataUrlPreviewImage.setWidth("500px"); resultLayout.addComponent(dataUrlPreviewImage); final TextArea textArea = new TextArea("DataURL:"); textArea.setWidth("100%"); textArea.setHeight("300px"); resultLayout.addComponent(textArea); final Label emptyLabel = new Label(); emptyLabel.setCaption("Is Empty:"); emptyLabel.setValue(String.valueOf(signatureField.isEmpty())); resultLayout.addComponent(emptyLabel); signatureField.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { String signature = (String) event.getProperty().getValue(); stringPreviewImage.setSource(signature != null ? new ExternalResource(signature) : null); textArea.setValue(signature); emptyLabel.setValue(String.valueOf(signatureField.isEmpty())); } }); dataUrlProperty.addValueChangeListener(new ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { try { final DataUrl signature = (DataUrl) event.getProperty().getValue(); dataUrlPreviewImage.setSource( signature != null ? new ExternalResource(serializer.serialize(signature)) : null); StreamResource streamResource = null; if (signature != null) { StreamSource streamSource = new StreamSource() { @Override public InputStream getStream() { return new ByteArrayInputStream(signature.getData()); } }; MimeType mimeType = MimeType.valueOfMimeType(signature.getMimeType()); String extension = null; switch (mimeType) { case JPEG: extension = "jpg"; break; case PNG: extension = "png"; break; } streamResource = new StreamResource(streamSource, "signature." + extension); streamResource.setMIMEType(signature.getMimeType()); streamResource.setCacheTime(0); } saveButtonLink.setResource(streamResource); } catch (MalformedURLException e) { logger.error(e.getMessage(), e); } } }); }
From source file:fi.jasoft.remoteconnection.ServerExampleUI.java
License:Apache License
private void buildUI() { FormLayout vl = new FormLayout(); setContent(vl);/*w w w . ja v a2 s . co m*/ // Our id myId = new Label("Connecting..."); myId.setCaption("My id:"); vl.addComponent(myId); // Remote id final TextField remoteId = new TextField(); remoteId.setWidth("100%"); NativeButton connectToRemote = new NativeButton("Connect", new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { final RemoteChannel channel = peer.openChannel(remoteId.getValue()); channel.addConnectedListener(new ConnectedListener() { @Override public void connected(String channelId) { remoteId.setReadOnly(true); event.getButton().setVisible(false); Notification.show("Connected to " + channelId, Type.TRAY_NOTIFICATION); } }); } }); HorizontalLayout hl = new HorizontalLayout(remoteId, connectToRemote); hl.setExpandRatio(remoteId, 1); hl.setWidth("100%"); hl.setCaption("Remote id: "); vl.addComponent(hl); // Message display where messages are displayed messages = new TextArea(); messages.setWidth("100%"); vl.addComponent(messages); // Message field final TextField message = new TextField(); message.setWidth("100%"); NativeButton send = new NativeButton("Send", new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { // Show message in message window messages.setValue( messages.getValue() + peer.getConfiguration().getId() + " >> " + message.getValue() + "\n"); // Broadcast the message to all connected peers peer.broadcast(message.getValue()); message.setValue(""); } }); hl = new HorizontalLayout(message, send); hl.setExpandRatio(message, 1); hl.setWidth("100%"); hl.setCaption("Send message: "); vl.addComponent(hl); }
From source file:fi.jasoft.simplecalendar.demo.SimpleCalendarDemoUI.java
License:Apache License
@Override protected void init(VaadinRequest request) { setLocale(DEFAULT_LOCALE);/*from w w w . ja v a 2s.c o m*/ VerticalLayout content = new VerticalLayout(); content.setMargin(true); content.setSpacing(true); Label lbl = new Label("SimpleCalendar"); lbl.setStyleName(Reindeer.LABEL_H1); content.addComponent(lbl); HorizontalLayout layout = new HorizontalLayout(); layout.setWidth("100%"); layout.setSpacing(true); final SimpleCalendar calendar = new SimpleCalendar(); calendar.setImmediate(true); calendar.addValueChangeListener(new Property.ValueChangeListener() { public void valueChange(ValueChangeEvent event) { Notification.show(calendar.getValue().toString()); } }); calendar.setMultiSelect(true); layout.addComponent(calendar); Label description = new Label("A calendar component that supports the following features:<ul>" + "<li>Selecting multiple dates by control click</li>" + "<li>Range selection with shift click</li>" + "<li>Keyboard navigation with arrow keys</li>" + "<li>Possibility to disable certain dates</li>" + "<li>Date tooltips</li>" + "<li>Limit start and end dates of calendar</li>" + "<li>Selecting multiple locales", ContentMode.HTML); layout.addComponent(description); layout.setExpandRatio(description, 1); content.addComponent(layout); BeanItemContainer<Locale> locales = new BeanItemContainer<Locale>(Locale.class); locales.addAll(Arrays.asList(Locale.getAvailableLocales())); NativeSelect localeSelect = new NativeSelect(); localeSelect.setContainerDataSource(locales); localeSelect.setValue(DEFAULT_LOCALE); localeSelect.setImmediate(true); localeSelect.setItemCaptionMode(ItemCaptionMode.PROPERTY); localeSelect.setItemCaptionPropertyId("displayName"); localeSelect.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { calendar.setLocale((Locale) event.getProperty().getValue()); } }); content.addComponent(new HorizontalLayout(new Label("Locale:"), localeSelect)); final CheckBox disableWeekends = new CheckBox("Disable weekends", false); disableWeekends.setImmediate(true); disableWeekends.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { if (disableWeekends.getValue()) { calendar.setDisabledWeekDays(Weekday.SATURDAY, Weekday.SUNDAY); } else { calendar.setDisabledWeekDays(); } } }); content.addComponent(disableWeekends); final CheckBox disable15th = new CheckBox("Disable 15th each month", false); disable15th.setImmediate(true); disable15th.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { if (disable15th.getValue()) { calendar.setDisabledMonthlyDates(15); } else { calendar.setDisabledMonthlyDates(); } } }); content.addComponent(disable15th); final CheckBox disableToday = new CheckBox("Disable todays date", false); disableToday.setImmediate(true); disableToday.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { if (disableToday.getValue()) { calendar.setDisabledDates(new Date()); } else { calendar.setDisabledDates(); } } }); content.addComponent(disableToday); final CheckBox allowFutureDate = new CheckBox("Only allow future dates", false); allowFutureDate.setImmediate(true); allowFutureDate.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { if (allowFutureDate.getValue()) { calendar.setStartDate(new Date()); } else { calendar.setStartDate(null); } } }); content.addComponent(allowFutureDate); final CheckBox allowPastDate = new CheckBox("Only allow past dates", false); allowPastDate.setImmediate(true); allowPastDate.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(ValueChangeEvent event) { if (allowPastDate.getValue()) { calendar.setEndDate(new Date()); } else { calendar.setEndDate(null); } } }); content.addComponent(allowPastDate); setContent(content); }
From source file:fi.semantum.strategia.Main.java
License:Open Source License
@Override protected void init(VaadinRequest request) { getPage().addUriFragmentChangedListener(new UriFragmentChangedListener() { public void uriFragmentChanged(UriFragmentChangedEvent source) { applyFragment(source.getUriFragment(), true); }/* w w w. j ava2s .c om*/ }); String pathInfo = request.getPathInfo(); if (pathInfo.startsWith("/")) pathInfo = pathInfo.substring(1); if (pathInfo.endsWith("/")) pathInfo = pathInfo.substring(0, pathInfo.length() - 1); String databaseId = validatePathInfo(pathInfo); setWindowWidth(Page.getCurrent().getBrowserWindowWidth(), Page.getCurrent().getBrowserWindowHeight()); // Find the application directory String basepath = VaadinService.getCurrent().getBaseDirectory().getAbsolutePath(); // Image as a file resource redResource = new FileResource(new File(basepath + "/WEB-INF/images/bullet_red.png")); greenResource = new FileResource(new File(basepath + "/WEB-INF/images/bullet_green.png")); blackResource = new FileResource(new File(basepath + "/WEB-INF/images/bullet_black.png")); mapMagnify = new FileResource(new File(basepath + "/WEB-INF/images/map_magnify.png")); abs = new AbsoluteLayout(); final VerticalLayout vs = new VerticalLayout(); vs.setSizeFull(); abs.addComponent(vs); setContent(abs); // This will set the login cookie Wiki.login(this); // Make sure that the printing directory exists new File(Main.baseDirectory(), "printing").mkdirs(); database = Database.load(this, databaseId); database.getOrCreateTag("Tavoite"); database.getOrCreateTag("Painopiste"); for (Strategiakartta map : Strategiakartta.enumerate(database)) { Strategiakartta parent = map.getPossibleParent(database); if (parent == null) uiState.setCurrentMap(parent); } if (uiState.getCurrentMap() == null) uiState.setCurrentMap(database.getRoot()); uiState.currentPosition = uiState.getCurrentMap(); uiState.currentItem = uiState.getCurrentMap(); setPollInterval(10000); addPollListener(new PollListener() { @Override public void poll(PollEvent event) { if (database.checkChanges()) { String curr = uiState.getCurrentMap().uuid; database = Database.load(Main.this, database.getDatabaseId()); uiState.setCurrentMap((Strategiakartta) database.find(curr)); Updates.updateJS(Main.this, false); } } }); js.addListener(new MapListener(this, false)); js2.addListener(new MapListener(this, true)); browser_.addListener(new BrowserListener() { @Override public void select(double x, double y, String uuid) { Base b = database.find(uuid); Actions.selectAction(Main.this, x, y, null, b); } @Override public void save(String name, Map<String, BrowserNodeState> states) { UIState state = getUIState().duplicate(name); state.browserStates = states; account.uiStates.add(state); Updates.update(Main.this, true); } }); Page.getCurrent().addBrowserWindowResizeListener(new BrowserWindowResizeListener() { @Override public void browserWindowResized(BrowserWindowResizeEvent event) { setWindowWidth(event.getWidth(), event.getHeight()); Updates.updateJS(Main.this, false); } }); modeLabel = new Label("Katselutila"); modeLabel.setWidth("95px"); modeLabel.addStyleName("viewMode"); mode = new Button(); mode.setDescription("Siirry tiedon sytttilaan"); mode.setIcon(FontAwesome.EYE); mode.addStyleName(ValoTheme.BUTTON_TINY); mode.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if ("Siirry tiedon sytttilaan".equals(mode.getDescription())) { mode.setDescription("Siirry katselutilaan"); mode.setIcon(FontAwesome.PENCIL); modeLabel.setValue("Sytttila"); modeLabel.removeStyleName("viewMode"); modeLabel.addStyleName("editMode"); UIState s = uiState.duplicate(Main.this); s.input = true; setFragment(s, true); } else { mode.setDescription("Siirry tiedon sytttilaan"); mode.setIcon(FontAwesome.EYE); modeLabel.setValue("Katselutila"); modeLabel.removeStyleName("editMode"); modeLabel.addStyleName("viewMode"); UIState s = uiState.duplicate(Main.this); s.input = false; setFragment(s, true); } } }); meterMode = new Button(); meterMode.setDescription("Vaihda toteumamittareihin"); meterMode.setCaption("Ennuste"); meterMode.addStyleName(ValoTheme.BUTTON_TINY); meterMode.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if ("Vaihda toteumamittareihin".equals(meterMode.getDescription())) { meterMode.setDescription("Vaihda ennustemittareihin"); meterMode.setCaption("Toteuma"); UIState s = uiState.duplicate(Main.this); s.setActualMeters(); setFragment(s, true); } else { meterMode.setDescription("Vaihda toteumamittareihin"); meterMode.setCaption("Ennuste"); UIState s = uiState.duplicate(Main.this); s.setForecastMeters(); setFragment(s, true); } } }); pdf = new PDFButton(); pdf.setDescription("Tallenna kartta PDF-muodossa"); pdf.setIcon(FontAwesome.PRINT); pdf.addStyleName(ValoTheme.BUTTON_TINY); pdf.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { Utils.print(Main.this); } }); propertyExcelButton = new Button(); propertyExcelButton.setDescription("Tallenna tiedot Excel-tiedostona"); propertyExcelButton.setIcon(FontAwesome.PRINT); propertyExcelButton.addStyleName(ValoTheme.BUTTON_TINY); OnDemandFileDownloader dl = new OnDemandFileDownloader(new OnDemandStreamSource() { private static final long serialVersionUID = 981769438054780731L; File f; Date date = new Date(); @Override public InputStream getStream() { String uuid = UUID.randomUUID().toString(); File printing = new File(Main.baseDirectory(), "printing"); f = new File(printing, uuid + ".xlsx"); Workbook w = new XSSFWorkbook(); Sheet sheet = w.createSheet("Sheet1"); int row = 1; for (List<String> cells : propertyCells) { Row r = sheet.createRow(row++); for (int i = 0; i < cells.size(); i++) { String value = cells.get(i); r.createCell(i).setCellValue(value); } } try { FileOutputStream s = new FileOutputStream(f); w.write(s); s.close(); } catch (Exception e) { e.printStackTrace(); } try { return new FileInputStream(f); } catch (FileNotFoundException e) { e.printStackTrace(); } throw new IllegalStateException(); } @Override public void onRequest() { } @Override public long getFileSize() { return f.length(); } @Override public String getFileName() { return "Strategiakartta_" + Utils.dateString(date) + ".xlsx"; } }); dl.getResource().setCacheTime(0); dl.extend(propertyExcelButton); states = new ComboBox(); states.setWidth("250px"); states.addStyleName(ValoTheme.COMBOBOX_TINY); states.setInvalidAllowed(false); states.setNullSelectionAllowed(false); states.addValueChangeListener(statesListener); saveState = new Button(); saveState.setEnabled(false); saveState.setDescription("Tallenna nykyinen nkym"); saveState.setIcon(FontAwesome.BOOKMARK); saveState.addStyleName(ValoTheme.BUTTON_TINY); saveState.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { Utils.saveCurrentState(Main.this); } }); class SearchTextField extends TextField { public boolean hasFocus = false; } final SearchTextField search = new SearchTextField(); search.setWidth("100%"); search.addStyleName(ValoTheme.TEXTFIELD_TINY); search.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); search.setInputPrompt("hae vapaasanahaulla valitun asian alta"); search.setId("searchTextField"); search.addShortcutListener(new ShortcutListener("Shortcut Name", ShortcutAction.KeyCode.ENTER, null) { @Override public void handleAction(Object sender, Object target) { if (!search.hasFocus) return; String text = search.getValue().toLowerCase(); try { Map<String, String> content = new HashMap<String, String>(); List<String> hits = Lucene.search(database.getDatabaseId(), text + "*"); for (String uuid : hits) { Base b = database.find(uuid); if (b != null) { String report = ""; Map<String, String> map = b.searchMap(database); for (Map.Entry<String, String> e : map.entrySet()) { if (e.getValue().contains(text)) { if (!report.isEmpty()) report += ", "; report += e.getKey(); } } if (!report.isEmpty()) content.put(uuid, report); } } uiState.setCurrentFilter(new SearchFilter(Main.this, content)); Updates.updateJS(Main.this, false); switchToBrowser(); } catch (IOException e) { e.printStackTrace(); } } }); search.addFocusListener(new FocusListener() { @Override public void focus(FocusEvent event) { search.hasFocus = true; } }); search.addBlurListener(new BlurListener() { @Override public void blur(BlurEvent event) { search.hasFocus = false; } }); hallinnoi = new Button("Hallinnoi"); hallinnoi.setWidthUndefined(); hallinnoi.setVisible(false); hallinnoi.addStyleName(ValoTheme.BUTTON_TINY); hallinnoi.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if (account != null) { if (account.isAdmin()) { Utils.manage(Main.this); } } } }); tili = new Button("Kyttjtili"); tili.setWidthUndefined(); tili.setVisible(false); tili.addStyleName(ValoTheme.BUTTON_TINY); tili.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if (account != null) { Utils.modifyAccount(Main.this); } } }); duplicate = new Button("Avaa ikkunassa"); duplicate2 = new Button("Avaa alas"); duplicate.setWidthUndefined(); duplicate.addStyleName(ValoTheme.BUTTON_TINY); duplicate.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { MapVis model = js2.getModel(); if (model == null) { UIState s = uiState.duplicate(Main.this); s.reference = s.current; mapDialog = new Window(s.reference.getText(database), new VerticalLayout()); mapDialog.setWidth(dialogWidth()); mapDialog.setHeight(dialogHeight()); mapDialog.setResizable(true); mapDialog.setContent(js2Container); mapDialog.setVisible(true); mapDialog.setResizeLazy(false); mapDialog.addCloseListener(new CloseListener() { @Override public void windowClose(CloseEvent e) { duplicate.setCaption("Avaa ikkunassa"); duplicate2.setVisible(true); UIState s = uiState.duplicate(Main.this); mapDialog.close(); mapDialog = null; s.reference = null; setFragment(s, true); } }); mapDialog.addResizeListener(new ResizeListener() { @Override public void windowResized(ResizeEvent e) { Updates.updateJS(Main.this, false); } }); setFragment(s, true); addWindow(mapDialog); duplicate.setCaption("Sulje referenssi"); duplicate2.setVisible(false); } else { UIState s = uiState.duplicate(Main.this); if (mapDialog != null) { mapDialog.close(); mapDialog = null; } panelLayout.removeComponent(js2Container); s.reference = null; setFragment(s, true); duplicate.setCaption("Avaa ikkunassa"); duplicate2.setVisible(true); } } }); duplicate2.setWidthUndefined(); duplicate2.addStyleName(ValoTheme.BUTTON_TINY); duplicate2.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { MapVis model = js2.getModel(); assert (model == null); UIState s = uiState.duplicate(Main.this); s.reference = s.current; setFragment(s, true); panelLayout.addComponent(js2Container); duplicate.setCaption("Sulje referenssi"); duplicate2.setVisible(false); } }); login = new Button("Kirjaudu"); login.setWidthUndefined(); login.addStyleName(ValoTheme.BUTTON_TINY); login.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if (account != null) { account = null; hallinnoi.setVisible(false); tili.setVisible(false); Updates.update(Main.this, true); login.setCaption("Kirjaudu"); } else { Login.login(Main.this); } } }); times = new ComboBox(); times.setWidth("130px"); times.addStyleName(ValoTheme.COMBOBOX_SMALL); times.addItem(Property.AIKAVALI_KAIKKI); times.addItem("2016"); times.addItem("2017"); times.addItem("2018"); times.addItem("2019"); times.select("2016"); times.setInvalidAllowed(false); times.setNullSelectionAllowed(false); times.addValueChangeListener(timesListener); final HorizontalLayout hl0 = new HorizontalLayout(); hl0.setWidth("100%"); hl0.setHeight("32px"); hl0.setSpacing(true); hl0.addComponent(pdf); hl0.setComponentAlignment(pdf, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(pdf, 0.0f); hl0.addComponent(propertyExcelButton); hl0.setComponentAlignment(propertyExcelButton, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(propertyExcelButton, 0.0f); hl0.addComponent(states); hl0.setComponentAlignment(states, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(states, 0.0f); hl0.addComponent(saveState); hl0.setComponentAlignment(saveState, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(saveState, 0.0f); hl0.addComponent(times); hl0.setComponentAlignment(times, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(times, 0.0f); hl0.addComponent(search); hl0.setComponentAlignment(search, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(search, 1.0f); hl0.addComponent(modeLabel); hl0.setComponentAlignment(modeLabel, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(modeLabel, 0.0f); hl0.addComponent(mode); hl0.setComponentAlignment(mode, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(mode, 0.0f); hl0.addComponent(meterMode); hl0.setComponentAlignment(meterMode, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(meterMode, 0.0f); hl0.addComponent(hallinnoi); hl0.setComponentAlignment(hallinnoi, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(hallinnoi, 0.0f); hl0.addComponent(tili); hl0.setComponentAlignment(tili, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(tili, 0.0f); hl0.addComponent(duplicate); hl0.setComponentAlignment(duplicate, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(duplicate, 0.0f); hl0.addComponent(duplicate2); hl0.setComponentAlignment(duplicate2, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(duplicate2, 0.0f); hl0.addComponent(login); hl0.setComponentAlignment(login, Alignment.MIDDLE_LEFT); hl0.setExpandRatio(login, 0.0f); propertiesPanel = new Panel(); propertiesPanel.setSizeFull(); properties = new VerticalLayout(); properties.setSpacing(true); properties.setMargin(true); propertiesPanel.setContent(properties); propertiesPanel.setVisible(false); tags = new VerticalLayout(); tags.setSpacing(true); Updates.updateTags(this); AbsoluteLayout tabs = new AbsoluteLayout(); tabs.setSizeFull(); { panel = new Panel(); panel.addStyleName(ValoTheme.PANEL_BORDERLESS); panel.setSizeFull(); panel.setId("mapContainer1"); panelLayout = new VerticalLayout(); panelLayout.addComponent(js); panelLayout.setHeight("100%"); js2Container = new VerticalLayout(); js2Container.setHeight("100%"); js2Container.addComponent(new Label("<hr />", ContentMode.HTML)); js2Container.addComponent(js2); panel.setContent(panelLayout); tabs.addComponent(panel); } wiki = new BrowserFrame(); wiki.setSource(new ExternalResource(Wiki.wikiAddress() + "/")); wiki.setWidth("100%"); wiki.setHeight("100%"); { wiki_ = new VerticalLayout(); wiki_.setSizeFull(); Button b = new Button("Palaa sovellukseen"); b.setWidth("100%"); b.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { applyFragment(backFragment, true); String content = Wiki.get(wikiPage); if (content == null) return; int first = content.indexOf("<rev contentformat"); if (first == -1) return; content = content.substring(first); int term = content.indexOf(">"); content = content.substring(term + 1); int end = content.indexOf("</rev>"); content = content.substring(0, end); if (wikiBase.modifyMarkup(Main.this, content)) { Updates.update(Main.this, true); } } }); wiki_.addComponent(b); wiki_.addComponent(wiki); wiki_.setVisible(false); wiki_.setExpandRatio(b, 0.0f); wiki_.setExpandRatio(wiki, 1.0f); tabs.addComponent(wiki_); } hs = new HorizontalSplitPanel(); hs.setSplitPosition(0, Unit.PIXELS); hs.setHeight("100%"); hs.setWidth("100%"); browser = new VerticalLayout(); browser.setSizeFull(); HorizontalLayout browserWidgets = new HorizontalLayout(); browserWidgets.setWidth("100%"); hori = new Button(); hori.setDescription("Nyt asiat taulukkona"); hori.setEnabled(true); hori.setIcon(FontAwesome.ARROW_RIGHT); hori.addStyleName(ValoTheme.BUTTON_TINY); hori.addClickListener(new ClickListener() { boolean right = false; @Override public void buttonClick(ClickEvent event) { if (right) { hs.setSplitPosition(0, Unit.PIXELS); hori.setIcon(FontAwesome.ARROW_RIGHT); hori.setDescription("Nyt asiat taulukkona"); right = false; } else { hs.setSplitPosition(windowWidth / 2, Unit.PIXELS); hori.setIcon(FontAwesome.ARROW_LEFT); hori.setDescription("Piilota taulukko"); right = true; } } }); more = new Button(); more.setDescription("Laajenna nytettvien asioiden joukkoa"); more.setIcon(FontAwesome.PLUS_SQUARE); more.addStyleName(ValoTheme.BUTTON_TINY); more.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { uiState.level++; Updates.updateJS(Main.this, false); if (uiState.level >= 2) less.setEnabled(true); } }); less = new Button(); less.setDescription("Supista nytettvien asioiden joukkoa"); less.setIcon(FontAwesome.MINUS_SQUARE); less.addStyleName(ValoTheme.BUTTON_TINY); less.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if (uiState.level > 1) { uiState.level--; Updates.updateJS(Main.this, false); } if (uiState.level <= 1) less.setEnabled(false); } }); reportAllButton = new Button(); reportAllButton.setCaption("Nkyvt tulokset"); reportAllButton.addStyleName(ValoTheme.BUTTON_TINY); reportAllButton.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { if (uiState.reportAll) { reportAllButton.setCaption("Nkyvt tulokset"); uiState.reportAll = false; } else { reportAllButton.setCaption("Kaikki tulokset"); uiState.reportAll = true; } Updates.updateJS(Main.this, false); } }); reportStatus = new Label("0 tulosta."); reportStatus.setWidth("100px"); filter = new ComboBox(); filter.setWidth("100%"); filter.addStyleName(ValoTheme.COMBOBOX_SMALL); filter.setInvalidAllowed(false); filter.setNullSelectionAllowed(false); filter.addValueChangeListener(filterListener); browserWidgets.addComponent(hori); browserWidgets.setComponentAlignment(hori, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(hori, 0.0f); browserWidgets.addComponent(more); browserWidgets.setComponentAlignment(more, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(more, 0.0f); browserWidgets.addComponent(less); browserWidgets.setComponentAlignment(less, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(less, 0.0f); browserWidgets.addComponent(reportAllButton); browserWidgets.setComponentAlignment(reportAllButton, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(reportAllButton, 0.0f); browserWidgets.addComponent(reportStatus); browserWidgets.setComponentAlignment(reportStatus, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(reportStatus, 0.0f); browserWidgets.addComponent(filter); browserWidgets.setComponentAlignment(filter, Alignment.MIDDLE_LEFT); browserWidgets.setExpandRatio(filter, 1.0f); browser.addComponent(browserWidgets); browser.addComponent(hs); browser.setExpandRatio(browserWidgets, 0.0f); browser.setExpandRatio(hs, 1.0f); browser.setVisible(false); tabs.addComponent(browser); { gridPanelLayout = new VerticalLayout(); gridPanelLayout.setMargin(false); gridPanelLayout.setSpacing(false); gridPanelLayout.setSizeFull(); hs.addComponent(gridPanelLayout); } CssLayout browserLayout = new CssLayout(); browserLayout.setSizeFull(); browserLayout.addComponent(browser_); hs.addComponent(browserLayout); tabs.addComponent(propertiesPanel); vs.addComponent(hl0); vs.addComponent(tabs); vs.setExpandRatio(hl0, 0.0f); vs.setExpandRatio(tabs, 1.0f); // Ground state fragments.put("", uiState); setCurrentItem(uiState.currentItem, (Strategiakartta) uiState.currentItem); }
From source file:fi.semantum.strategia.Updates.java
License:Open Source License
private static void updateQueryGrid(final Main main, final FilterState state) { main.gridPanelLayout.removeAllComponents(); main.gridPanelLayout.setMargin(false); final List<String> keys = state.reportColumns; if (keys.isEmpty()) { Label l = new Label("Kysely ei tuottanut yhtn tulosta."); l.addStyleName(ValoTheme.LABEL_BOLD); l.addStyleName(ValoTheme.LABEL_HUGE); main.gridPanelLayout.addComponent(l); return;/*from w w w .j av a2 s . co m*/ } final IndexedContainer container = new IndexedContainer(); for (String key : keys) { container.addContainerProperty(key, String.class, ""); } rows: for (Map<String, ReportCell> map : state.report) { Object item = container.addItem(); for (String key : keys) if (map.get(key) == null) continue rows; for (Map.Entry<String, ReportCell> entry : map.entrySet()) { @SuppressWarnings("unchecked") com.vaadin.data.Property<String> p = container.getContainerProperty(item, entry.getKey()); p.setValue(entry.getValue().get()); } } HorizontalLayout hl = new HorizontalLayout(); hl.setWidth("100%"); final TextField filter = new TextField(); filter.addStyleName(ValoTheme.TEXTFIELD_TINY); filter.setInputPrompt("rajaa hakutuloksia - kirjoitetun sanan tulee lyty rivin teksteist"); filter.setWidth("100%"); final Image clipboard = new Image(); clipboard.setSource(new ThemeResource("page_white_excel.png")); clipboard.setHeight("24px"); clipboard.setWidth("24px"); hl.addComponent(filter); hl.setExpandRatio(filter, 1.0f); hl.setComponentAlignment(filter, Alignment.BOTTOM_CENTER); hl.addComponent(clipboard); hl.setComponentAlignment(clipboard, Alignment.BOTTOM_CENTER); hl.setExpandRatio(clipboard, 0.0f); main.gridPanelLayout.addComponent(hl); main.gridPanelLayout.setExpandRatio(hl, 0f); filter.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 3033918399018888150L; @Override public void valueChange(ValueChangeEvent event) { container.removeAllContainerFilters(); container.addContainerFilter(new QueryFilter(filter.getValue(), true, false)); } }); AbsoluteLayout abs = new AbsoluteLayout(); abs.setSizeFull(); final Grid queryGrid = new Grid(container); queryGrid.setSelectionMode(SelectionMode.NONE); queryGrid.setHeightMode(HeightMode.CSS); queryGrid.setHeight("100%"); queryGrid.setWidth("100%"); for (String key : keys) { Column col = queryGrid.getColumn(key); col.setExpandRatio(1); } abs.addComponent(queryGrid); OnDemandFileDownloader dl = new OnDemandFileDownloader(new OnDemandStreamSource() { private static final long serialVersionUID = 981769438054780731L; File f; Date date = new Date(); @Override public InputStream getStream() { String uuid = UUID.randomUUID().toString(); File printing = new File(Main.baseDirectory(), "printing"); f = new File(printing, uuid + ".xlsx"); Workbook w = new XSSFWorkbook(); Sheet sheet = w.createSheet("Sheet1"); Row header = sheet.createRow(0); for (int i = 0; i < keys.size(); i++) { Cell cell = header.createCell(i); cell.setCellValue(keys.get(i)); } int row = 1; rows: for (Map<String, ReportCell> map : state.report) { for (String key : keys) if (map.get(key) == null) continue rows; Row r = sheet.createRow(row++); int column = 0; for (int i = 0; i < keys.size(); i++) { Cell cell = r.createCell(column++); ReportCell rc = map.get(keys.get(i)); cell.setCellValue(rc.getLong()); } } try { FileOutputStream s = new FileOutputStream(f); w.write(s); s.close(); } catch (Exception e) { e.printStackTrace(); } try { return new FileInputStream(f); } catch (FileNotFoundException e) { e.printStackTrace(); } throw new IllegalStateException(); } @Override public void onRequest() { // TODO Auto-generated method stub } @Override public long getFileSize() { return f.length(); } @Override public String getFileName() { return "Strategiakartta_" + Utils.dateString(date) + ".xlsx"; } }); dl.getResource().setCacheTime(0); dl.extend(clipboard); main.gridPanelLayout.addComponent(abs); main.gridPanelLayout.setExpandRatio(abs, 1f); }
From source file:fi.semantum.strategia.Utils.java
License:Open Source License
public static void manage(final Main main) { final Database database = main.getDatabase(); VerticalLayout content = new VerticalLayout(); content.setSizeFull();/*from w w w .j a v a2 s . c om*/ content.setSpacing(true); HorizontalLayout hl1 = new HorizontalLayout(); hl1.setSpacing(true); hl1.setWidth("100%"); final ComboBox users = new ComboBox(); users.setWidth("100%"); users.setNullSelectionAllowed(false); users.addStyleName(ValoTheme.COMBOBOX_SMALL); users.setCaption("Valitse kyttj:"); final Map<String, Account> accountMap = new HashMap<String, Account>(); makeAccountCombo(main, accountMap, users); for (Account a : Account.enumerate(database)) { accountMap.put(a.getId(database), a); users.addItem(a.getId(database)); users.select(a.getId(database)); } final Table table = new Table(); table.setSelectable(true); table.setMultiSelect(true); table.addStyleName(ValoTheme.TABLE_SMALL); table.addStyleName(ValoTheme.TABLE_SMALL); table.addStyleName(ValoTheme.TABLE_COMPACT); users.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 5036991262418844060L; @Override public void valueChange(ValueChangeEvent event) { users.removeValueChangeListener(this); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); users.addValueChangeListener(this); } }); final TextField tf = new TextField(); Validator nameValidator = new Validator() { private static final long serialVersionUID = -4779239111120669168L; @Override public void validate(Object value) throws InvalidValueException { String s = (String) value; if (s.isEmpty()) throw new InvalidValueException("Nimi ei saa olla tyhj"); if (accountMap.containsKey(s)) throw new InvalidValueException("Nimi on jo kytss"); } }; final Button save = new Button("Luo", new Button.ClickListener() { private static final long serialVersionUID = -6053708137324681886L; public void buttonClick(ClickEvent event) { if (!tf.isValid()) return; String pass = Long.toString(Math.abs(UUID.randomUUID().getLeastSignificantBits()), 36); Account.create(database, tf.getValue(), "", Utils.hash(pass)); Updates.update(main, true); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); Dialogs.infoDialog(main, "Uusi kyttj '" + tf.getValue() + "' luotu", "Kyttjn salasana on " + pass + "", null); } }); save.addStyleName(ValoTheme.BUTTON_SMALL); final Button remove = new Button("Poista", new Button.ClickListener() { private static final long serialVersionUID = -5359199320445328801L; public void buttonClick(ClickEvent event) { Object selection = users.getValue(); Account state = accountMap.get(selection); // System cannot be removed if ("System".equals(state.getId(database))) return; state.remove(database); Updates.update(main, true); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); } }); remove.addStyleName(ValoTheme.BUTTON_SMALL); tf.setWidth("100%"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf.setCaption("Luo uusi kyttj nimell:"); tf.setValue(findFreshUserName(nameValidator)); tf.setCursorPosition(tf.getValue().length()); tf.setValidationVisible(true); tf.setInvalidCommitted(true); tf.setImmediate(true); tf.addTextChangeListener(new TextChangeListener() { private static final long serialVersionUID = -8274588731607481635L; @Override public void textChange(TextChangeEvent event) { tf.setValue(event.getText()); try { tf.validate(); } catch (InvalidValueException e) { save.setEnabled(false); return; } save.setEnabled(true); } }); tf.addValidator(nameValidator); if (!tf.isValid()) save.setEnabled(false); hl1.addComponent(users); hl1.setExpandRatio(users, 1.0f); hl1.setComponentAlignment(users, Alignment.BOTTOM_CENTER); hl1.addComponent(tf); hl1.setExpandRatio(tf, 1.0f); hl1.setComponentAlignment(tf, Alignment.BOTTOM_CENTER); hl1.addComponent(save); hl1.setExpandRatio(save, 0.0f); hl1.setComponentAlignment(save, Alignment.BOTTOM_CENTER); hl1.addComponent(remove); hl1.setExpandRatio(remove, 0.0f); hl1.setComponentAlignment(remove, Alignment.BOTTOM_CENTER); content.addComponent(hl1); content.setExpandRatio(hl1, 0.0f); table.addContainerProperty("Kartta", String.class, null); table.addContainerProperty("Oikeus", String.class, null); table.addContainerProperty("Laajuus", String.class, null); table.setWidth("100%"); table.setHeight("100%"); table.setNullSelectionAllowed(true); table.setMultiSelect(true); table.setCaption("Kyttjn oikeudet"); makeAccountTable(database, users, accountMap, table); content.addComponent(table); content.setExpandRatio(table, 1.0f); final Button removeRights = new Button("Poista valitut rivit", new Button.ClickListener() { private static final long serialVersionUID = 4699670345358079045L; public void buttonClick(ClickEvent event) { Object user = users.getValue(); Account state = accountMap.get(user); Object selection = table.getValue(); Collection<?> sel = (Collection<?>) selection; List<Right> toRemove = new ArrayList<Right>(); for (Object s : sel) { Integer index = (Integer) s; toRemove.add(state.rights.get(index - 1)); } for (Right r : toRemove) state.rights.remove(r); Updates.update(main, true); makeAccountTable(database, users, accountMap, table); } }); removeRights.addStyleName(ValoTheme.BUTTON_SMALL); table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 1188285609779556446L; @Override public void valueChange(ValueChangeEvent event) { Object selection = table.getValue(); Collection<?> sel = (Collection<?>) selection; if (sel.isEmpty()) removeRights.setEnabled(false); else removeRights.setEnabled(true); } }); final ComboBox mapSelect = new ComboBox(); mapSelect.setWidth("100%"); mapSelect.setNullSelectionAllowed(false); mapSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); mapSelect.setCaption("Valitse kartta:"); for (Strategiakartta a : Strategiakartta.enumerate(database)) { mapSelect.addItem(a.uuid); mapSelect.setItemCaption(a.uuid, a.getText(database)); mapSelect.select(a.uuid); } final ComboBox rightSelect = new ComboBox(); rightSelect.setWidth("100px"); rightSelect.setNullSelectionAllowed(false); rightSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); rightSelect.setCaption("Valitse oikeus:"); rightSelect.addItem("Muokkaus"); rightSelect.addItem("Luku"); rightSelect.select("Luku"); final ComboBox propagateSelect = new ComboBox(); propagateSelect.setWidth("130px"); propagateSelect.setNullSelectionAllowed(false); propagateSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); propagateSelect.setCaption("Valitse laajuus:"); propagateSelect.addItem(VALITTU_KARTTA); propagateSelect.addItem(ALATASON_KARTAT); propagateSelect.select(VALITTU_KARTTA); final Button addRight = new Button("Lis rivi", new Button.ClickListener() { private static final long serialVersionUID = -4841787792917761055L; public void buttonClick(ClickEvent event) { Object user = users.getValue(); Account state = accountMap.get(user); String mapUUID = (String) mapSelect.getValue(); Strategiakartta map = database.find(mapUUID); String right = (String) rightSelect.getValue(); String propagate = (String) propagateSelect.getValue(); Right r = new Right(map, right.equals("Muokkaus"), propagate.equals(ALATASON_KARTAT)); state.rights.add(r); Updates.update(main, true); makeAccountTable(database, users, accountMap, table); } }); addRight.addStyleName(ValoTheme.BUTTON_SMALL); table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 6439090862804667322L; @Override public void valueChange(ValueChangeEvent event) { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (!selected.isEmpty()) { removeRights.setEnabled(true); } else { removeRights.setEnabled(false); } } }); HorizontalLayout hl2 = new HorizontalLayout(); hl2.setSpacing(true); hl2.setWidth("100%"); hl2.addComponent(removeRights); hl2.setComponentAlignment(removeRights, Alignment.TOP_LEFT); hl2.setExpandRatio(removeRights, 0.0f); hl2.addComponent(addRight); hl2.setComponentAlignment(addRight, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(addRight, 0.0f); hl2.addComponent(mapSelect); hl2.setComponentAlignment(mapSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(mapSelect, 1.0f); hl2.addComponent(rightSelect); hl2.setComponentAlignment(rightSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(rightSelect, 0.0f); hl2.addComponent(propagateSelect); hl2.setComponentAlignment(propagateSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(propagateSelect, 0.0f); content.addComponent(hl2); content.setComponentAlignment(hl2, Alignment.BOTTOM_LEFT); content.setExpandRatio(hl2, 0.0f); final VerticalLayout vl = new VerticalLayout(); final Panel p = new Panel(); p.setWidth("100%"); p.setHeight("200px"); p.setContent(vl); final TimeConfiguration tc = TimeConfiguration.getInstance(database); final TextField tf2 = new TextField(); tf2.setWidth("200px"); tf2.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf2.setCaption("Strategiakartan mritysaika:"); tf2.setValue(tc.getRange()); tf2.setCursorPosition(tf.getValue().length()); tf2.setValidationVisible(true); tf2.setInvalidCommitted(true); tf2.setImmediate(true); tf2.addTextChangeListener(new TextChangeListener() { private static final long serialVersionUID = -8274588731607481635L; @Override public void textChange(TextChangeEvent event) { tf2.setValue(event.getText()); try { tf2.validate(); tc.setRange(event.getText()); updateYears(database, vl); Updates.update(main, true); } catch (InvalidValueException e) { return; } } }); tf2.addValidator(new Validator() { private static final long serialVersionUID = -4779239111120669168L; @Override public void validate(Object value) throws InvalidValueException { String s = (String) value; TimeInterval ti = TimeInterval.parse(s); long start = ti.startYear; long end = ti.endYear; if (start < 2015) throw new InvalidValueException("Alkuvuosi ei voi olla aikaisempi kuin 2015."); if (end > 2025) throw new InvalidValueException("Pttymisvuosi ei voi olla myhisempi kuin 2025."); if (end - start > 9) throw new InvalidValueException("Strategiakartta ei tue yli 10 vuoden tarkasteluja."); } }); content.addComponent(tf2); content.setComponentAlignment(tf2, Alignment.BOTTOM_LEFT); content.setExpandRatio(tf2, 0.0f); updateYears(database, vl); content.addComponent(p); content.setComponentAlignment(p, Alignment.BOTTOM_LEFT); content.setExpandRatio(p, 0.0f); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); Dialogs.makeDialog(main, main.dialogWidth(), main.dialogHeight(0.8), "Hallinnoi strategiakarttaa", "Sulje", content, buttons); }