Package org.pentaho.mantle.client.events

Examples of org.pentaho.mantle.client.events.PerspectivesLoadedEventHandler


    favoriteMenu = (XulMenubar) document.getElementById( "favoritesmenu" ); //$NON-NLS-1$

    if ( PerspectiveManager.getInstance().isLoaded() ) {
      PerspectiveManager.getInstance().enablePerspective( PerspectiveManager.OPENED_PERSPECTIVE, false );
    } else {
      EventBusUtil.EVENT_BUS.addHandler( PerspectivesLoadedEvent.TYPE, new PerspectivesLoadedEventHandler() {
        public void onPerspectivesLoaded( PerspectivesLoadedEvent event ) {
          PerspectiveManager.getInstance().enablePerspective( PerspectiveManager.OPENED_PERSPECTIVE, false );
        }
      } );
    }

    // install language sub-menus
    Map<String, String> supportedLanguages = Messages.getResourceBundle().getSupportedLanguages();
    if ( supportedLanguages != null && supportedLanguages.keySet() != null && !supportedLanguages.isEmpty() ) {
      MenuBar langMenu = (MenuBar) languageMenu.getManagedObject();
      langMenu.insertSeparator( 0 );
      for ( String lang : supportedLanguages.keySet() ) {
        MenuItem langMenuItem = new MenuItem( supportedLanguages.get( lang ), new SwitchLocaleCommand( lang ) );
        langMenuItem.getElement().setId( supportedLanguages.get( lang ) + "_menu_item" ); //$NON-NLS-1$
        langMenu.insertItem( langMenuItem, 0 );
      }
    }
    buildFavoritesAndRecent( false );

    UserSettingsManager.getInstance().getUserSettings( new AsyncCallback<JsArray<JsSetting>>() {
      public void onSuccess( JsArray<JsSetting> settings ) {
        processSettings( settings );
      }

      public void onFailure( Throwable caught ) {
      }
    }, false );

    EventBusUtil.EVENT_BUS.addHandler( UserSettingsLoadedEvent.TYPE, new UserSettingsLoadedEventHandler() {
      public void onUserSettingsLoaded( UserSettingsLoadedEvent event ) {
        processSettings( event.getSettings() );
      }

    } );

    // install themes
    RequestBuilder getActiveThemeRequestBuilder =
        new RequestBuilder( RequestBuilder.GET, GWT.getHostPageBaseURL() + "api/theme/active" ); //$NON-NLS-1$
    try {
      getActiveThemeRequestBuilder.setHeader( "If-Modified-Since", "01 Jan 1970 00:00:00 GMT" );
      getActiveThemeRequestBuilder.sendRequest( null, new RequestCallback() {

        public void onError( Request request, Throwable exception ) {
          // showError(exception);
        }

        public void onResponseReceived( Request request, Response response ) {
          final String activeTheme = response.getText();
          RequestBuilder getThemesRequestBuilder =
              new RequestBuilder( RequestBuilder.GET, GWT.getHostPageBaseURL() + "api/theme/list" ); //$NON-NLS-1$
          getThemesRequestBuilder.setHeader( "If-Modified-Since", "01 Jan 1970 00:00:00 GMT" );
          getThemesRequestBuilder.setHeader( "accept", "application/json" ); //$NON-NLS-1$ //$NON-NLS-2$

          try {
            getThemesRequestBuilder.sendRequest( null, new RequestCallback() {
              public void onError( Request arg0, Throwable arg1 ) {
              }

              public void onResponseReceived( Request request, Response response ) {
                try {
                  final String url = GWT.getHostPageBaseURL() + "api/repo/files/canAdminister"; //$NON-NLS-1$
                  RequestBuilder requestBuilder = new RequestBuilder( RequestBuilder.GET, url );
                  requestBuilder.setHeader( "If-Modified-Since", "01 Jan 1970 00:00:00 GMT" );
                  requestBuilder.setHeader( "accept", "text/plain" ); //$NON-NLS-1$ //$NON-NLS-2$
                  requestBuilder.sendRequest( null, new RequestCallback() {

                    public void onError( Request request, Throwable caught ) {
                    }

                    public void onResponseReceived( Request request, Response response ) {
                      toolsMenu.setVisible( "true".equalsIgnoreCase( response.getText() ) ); //$NON-NLS-1$
                      showHiddenFilesMenuItem.setVisible( "true".equalsIgnoreCase( response.getText() ) ); //$NON-NLS-1$
                    }

                  } );
                } catch ( RequestException e ) {
                  Window.alert( e.getMessage() );
                }

                JsArray<JsTheme> themes = JsTheme.getThemes( JsonUtils.escapeJsonForEval( response.getText() ) );

                for ( int i = 0; i < themes.length(); i++ ) {
                  JsTheme theme = themes.get( i );
                  PentahoMenuItem themeMenuItem =
                      new PentahoMenuItem( theme.getName(), new SwitchThemeCommand( theme.getId() ) );
                  themeMenuItem.getElement().setId( theme.getId() + "_menu_item" ); //$NON-NLS-1$
                  themeMenuItem.setChecked( theme.getId().equals( activeTheme ) );
                  ( (MenuBar) themesMenu.getManagedObject() ).addItem( themeMenuItem );
                }

                bf.createBinding( model, "saveEnabled", saveMenuItem, "!disabled" ); //$NON-NLS-1$ //$NON-NLS-2$
                bf.createBinding( model, "saveAsEnabled", saveAsMenuItem, "!disabled" ); //$NON-NLS-1$ //$NON-NLS-2$

                if ( PerspectiveManager.getInstance().isLoaded() ) {
                  executeAdminContent();
                } else {
                  EventBusUtil.EVENT_BUS.addHandler( PerspectivesLoadedEvent.TYPE,
                      new PerspectivesLoadedEventHandler() {
                        public void onPerspectivesLoaded( PerspectivesLoadedEvent event ) {
                          executeAdminContent();
                        }
                      } );
                }
View Full Code Here


    if ( !StringUtils.isEmpty( startupPerspective ) ) {
      if ( PerspectiveManager.getInstance().isLoaded() ) {
        PerspectiveManager.getInstance().setPerspective( startupPerspective );
      } else {
        EventBusUtil.EVENT_BUS.addHandler( PerspectivesLoadedEvent.TYPE, new PerspectivesLoadedEventHandler() {
          public void onPerspectivesLoaded( PerspectivesLoadedEvent event ) {
            PerspectiveManager.getInstance().setPerspective( startupPerspective );
          }
        } );
      }
View Full Code Here

TOP

Related Classes of org.pentaho.mantle.client.events.PerspectivesLoadedEventHandler

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.