/** Redraws app for GUI (with menu) */ public static void redrawGuiWithMenu() { bodySplitter.clear(); bodySplitter.addSouth(ft, 23); bodySplitter.addWest(leftMenu, 280); bodySplitter.add(contentPanel); leftMenu.setHeight("100%"); contentPanel.setHeight("100%"); }
private void loadModule() { // basic settings session.setUiElements(new UiElements(null)); // Get web page's BODY RootLayoutPanel body = RootLayoutPanel.get(); // check RPC url if (session.getRpcUrl().isEmpty()) { VerticalPanel bodyContents = new VerticalPanel(); bodyContents.setSize("100%", "300px"); bodyContents.add( new HTML(new Image(LargeIcons.INSTANCE.errorIcon()) + "<h2>RPC SERVER NOT FOUND!</h2>")); bodyContents.setCellHorizontalAlignment( bodyContents.getWidget(0), HasHorizontalAlignment.ALIGN_CENTER); bodyContents.setCellVerticalAlignment( bodyContents.getWidget(0), HasVerticalAlignment.ALIGN_BOTTOM); body.add(bodyContents); return; } // WEB PAGE SPLITTER bodySplitter.getElement().setId("appFormGUI"); body.add(bodySplitter); // left menu leftMenu = new ApplicationFormLeftMenu(); // show loading box loadingBox = session.getUiElements().perunLoadingBox(); loadingBox.show(); // switch menu event JsonCallbackEvents events = new JsonCallbackEvents() { @Override public void onFinished(JavaScriptObject jso) { bodySplitter.clear(); bodySplitter.addSouth(getFooter(), 23); ArrayList<Application> apps = JsonUtils.jsoAsList(jso); if (apps != null && !apps.isEmpty()) { // show menu bodySplitter.addWest(leftMenu, 280); } // else don't show menu // MAIN CONTENT contentPanel.setSize("100%", "100%"); contentPanel.add(leftMenu.getContent()); bodySplitter.add(contentPanel); // Append more GUI elements from UiElements class which are not part of splitted design // WE DON'T WANT TO CONFUSE USER WITH STATUS MESSAGES // bodySplitter.getElement().appendChild(session.getUiElements().getStatus().getElement()); // status // starts loading isUserMemberOfVo(); // hides the loading box loadingBox.hide(); } @Override public void onError(PerunError error) { // MAIN CONTENT bodySplitter.clear(); bodySplitter.addSouth(getFooter(), 23); contentPanel.clear(); contentPanel.setSize("100%", "100%"); contentPanel.add(leftMenu.getContent()); bodySplitter.add(contentPanel); // Append more GUI elements from UiElements class which are not part of splitted design // bodySplitter.getElement().appendChild(session.getUiElements().getStatus().getElement()); // status // starts loading isUserMemberOfVo(); // hides the loading box loadingBox.hide(); } }; // load VO to check if exists loadVo(events); }