Example usage for org.apache.wicket.markup.html.link Link setAutoEnable

List of usage examples for org.apache.wicket.markup.html.link Link setAutoEnable

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.link Link setAutoEnable.

Prototype

public final Link<T> setAutoEnable(final boolean autoEnable) 

Source Link

Document

Sets whether this link should automatically enable/disable based on current page.

Usage

From source file:org.modelibra.wicket.app.domain.DomainMenuPanel.java

License:Apache License

/**
 * Constructs the domain menu panel.// www .ja  v  a 2s  .  c om
 * 
 * @param wicketId
 *            Wicket id
 */
public DomainMenuPanel(final String wicketId) {
    super(wicketId);

    DomainApp app = (DomainApp) getApplication();

    Link homePageLink = new PageLink("home", app.getHomePage());
    homePageLink.setAutoEnable(true);
    add(homePageLink);

    String domainTitle = LocalizedText.getDomainTitle(this);
    add(new Label("domainTitle", domainTitle));
}

From source file:org.modelibra.wicket.container.DmMenuPanel.java

License:Apache License

/**
 * Constructs a dm menu panel.// ww w . jav  a2s  .  co m
 * 
 * @param viewModel
 *            view model
 * @param view
 *            view
 */
public DmMenuPanel(final ViewModel viewModel, final View view) {
    super(viewModel, view);
    final DomainApp app = (DomainApp) getApplication();

    Link homePageLink = new PageLink("home", app.getHomePageClass());
    homePageLink.setAutoEnable(true);
    add(homePageLink);

    Link domainPageLink = new Link("domain") {
        public void onClick() {
            setResponsePage(app.getDomainPageClass());
        }
    };
    domainPageLink.setAutoEnable(true);
    add(domainPageLink);
    AppSession appSession = getAppSession();
    if (appSession.isUserSignedIn()) {
        IEntity<?> user = appSession.getSignedInUser();
        if (user != null) {
            String role = (String) user.getProperty("role");
            if (role != null) {
                if (!role.equals("admin") && !role.equals("manager")) {
                    domainPageLink.setVisible(false);
                }
            }
        }
    } else {
        domainPageLink.setVisible(false);
    }

    Link contextLink = new PageLink("context", app.getHomePageClass());
    View contextView = view.getContextView();
    if (contextView != null) {
        if (!contextView.isRecreateContext()) {
            final Page contextViewPage = contextView.getPage();
            if (contextViewPage != null) {
                contextLink = new Link("context") {
                    public void onClick() {
                        setResponsePage(contextViewPage);
                    }
                };
            }
        } else {
            Page contextPage = null;
            ViewModel contextModel = viewModel.getContextViewModel();
            if (contextModel != null) {
                String modelCode = viewModel.getModel().getModelConfig().getCode();
                contextPage = app.getViewMeta(modelCode).getPage(contextModel, contextView);
                if (contextPage != null) {
                    final Page recreatedContextPage = contextPage;
                    contextLink = new Link("context") {
                        public void onClick() {
                            setResponsePage(recreatedContextPage);
                        }
                    };
                } else {
                    Page contextViewPage = contextView.getPage();
                    if (contextViewPage != null) {
                        contextPage = app.getViewMeta(modelCode).getPage(contextViewPage);
                        if (contextPage != null) {
                            final Page recreatedContextPage = contextPage;
                            contextLink = new Link("context") {
                                public void onClick() {
                                    setResponsePage(recreatedContextPage);
                                }
                            };
                        }
                    }
                } // if (contextPage != null) {
            } // if (contextModel != null) {
        } // if (!contextView.isRecreateContext()) {
    } // if (contextView != null) {

    contextLink.setAutoEnable(true);
    add(contextLink);

    String modelName = LocalizedText.getModelName(this, viewModel.getModel());
    add(new Label("modelName", modelName));
}

From source file:org.modelibra.wicket.container.MainMenuPanel.java

License:Apache License

/**
 * Constructs a main menu panel./*w ww  .j  a  v  a 2 s. c o m*/
 * 
 * @param viewModel
 *            view model
 * @param view
 *            view
 */
public MainMenuPanel(final ViewModel viewModel, final View view) {
    super(viewModel, view);
    final DomainApp domainApp = (DomainApp) getApplication();

    Link domainPageLink = new Link("domain") {
        public void onClick() {
            setResponsePage(domainApp.getDomainPageClass());
        }
    };
    domainPageLink.setAutoEnable(true);
    add(domainPageLink);

    // Sign in & out
    final AppSession appSession = getAppSession();

    Link signinLink = new PageLink("signin", SigninPage.class);
    add(signinLink);
    Link signoutLink = new Link("signout") {
        public void onClick() {
            appSession.invalidate();
            setResponsePage(view.getPage().getClass());
        }
    };
    add(signoutLink);
    if (!domainApp.getDomain().getDomainConfig().isSignin()) {
        signinLink.setVisible(false);
        signoutLink.setVisible(false);
    } else if (appSession.isUserSignedIn()) {
        signinLink.setVisible(false);
    } else {
        signoutLink.setVisible(false);
    }

    // I18n
    ViewModel languageViewModel = new ViewModel();
    IDomainModel reference = viewModel.getModel();
    languageViewModel.setModel(reference);
    Entities<?> languages = (Entities<?>) viewModel.getEntities();
    languageViewModel.setEntities(languages);
    String languageCode = null;
    IEntity<?> defaultLanguage = null;
    languageCode = appSession.getLocale().getLanguage();
    defaultLanguage = languages.retrieveByCode(languageCode);
    if (defaultLanguage == null) {
        defaultLanguage = languages.retrieveByCode("en");
    }
    languageViewModel.setEntity(defaultLanguage);

    View languageView = new View();
    languageView.setWicketId("languageChoiceSection");

    Panel languageChoicePanel = new CountryLanguageChoicePanel(languageViewModel, languageView);
    add(languageChoicePanel);
    if (!domainApp.getDomain().getDomainConfig().isI18n()) {
        languageChoicePanel.setVisible(false);
    }
}