Example usage for org.eclipse.jface.preference PreferenceDialog setBlockOnOpen

List of usage examples for org.eclipse.jface.preference PreferenceDialog setBlockOnOpen

Introduction

In this page you can find the example usage for org.eclipse.jface.preference PreferenceDialog setBlockOnOpen.

Prototype

public void setBlockOnOpen(boolean shouldBlock) 

Source Link

Document

Sets whether the open method should block until the window closes.

Usage

From source file:org.jboss.tools.seam.ui.test.preferences.SeamSettingsPreferencesPageTest.java

License:Open Source License

public void testSettingsPage() throws Exception {
    PreferenceDialog dialog = WorkbenchUtils
            .createPropertyDialog("org.jboss.tools.seam.ui.propertyPages.SeamSettingsPreferencePage", project);
    dialog.setBlockOnOpen(false);
    dialog.open();/*from w w  w.j  a  v  a2 s .com*/
    try {
        SeamSettingsPreferencePage page = (SeamSettingsPreferencePage) dialog.getSelectedPage();
        IFieldEditor seamSuport = page
                .getEditor(SeamPreferencesMessages.SEAM_SETTINGS_PREFERENCE_PAGE_SEAM_SUPPORT);
        seamSuport.setValue(Boolean.TRUE);

        Bundle seamCoreTest = Platform.getBundle("org.jboss.tools.seam.core.test");
        File folder = new File(SEAM_1_2_HOME_PATH);
        SeamRuntimeManager manager = SeamRuntimeManager.getInstance();
        assertNotNull("Cannot obtainSeamRuntimeManager instance", manager);
        manager.addRuntime(RUNTIME_NAME, folder.getAbsolutePath(), SeamVersion.SEAM_1_2, true);

        IFieldEditor seamRuntime = page.getEditor(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME);
        SeamRuntime newRuntime = manager.findRuntimeByName(RUNTIME_NAME);
        assertNotNull("New runtime was not added to SeamRuntimeManager.", newRuntime);
        seamRuntime.setValue(newRuntime.getName());

        IFieldEditor viewFolder = page.getEditor(ISeamFacetDataModelProperties.WEB_CONTENTS_FOLDER);
        viewFolder.setValue("/" + PROJECT_NAME);

        IFieldEditor createTest = page.getEditor(ISeamFacetDataModelProperties.TEST_CREATING);
        createTest.setValue(Boolean.TRUE);

        assertTrue("Settings page is not valid: " + page.getErrorMessage(), page.okToLeave());
        page.performOk();
    } finally {
        dialog.close();
    }

    JobUtils.waitForIdle();

    ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, false);
    assertNotNull(
            "Can't load seam project. It seems seam nature was not added to rpoject by seam settings page.",
            seamProject);

    IEclipsePreferences pref = SeamCorePlugin.getSeamPreferences(project);
    assertEquals("Seam settings version 1.1 property is not set",
            pref.get(ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION, ""),
            ISeamFacetDataModelProperties.SEAM_SETTINGS_VERSION_1_1);
    assertEquals("Seam runtime property is not set",
            pref.get(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME, ""), RUNTIME_NAME);
    assertEquals("Seam deployment type property is not set",
            pref.get(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS, ""),
            ISeamFacetDataModelProperties.DEPLOY_AS_WAR);
    assertEquals("Model package name property is not set", MODEL_PACKAGE_NAME,
            pref.get(ISeamFacetDataModelProperties.ENTITY_BEAN_PACKAGE_NAME, ""));
    assertEquals("Model source folder property is not set",
            pref.get(ISeamFacetDataModelProperties.ENTITY_BEAN_SOURCE_FOLDER, ""), "/" + PROJECT_NAME + "/src");
    assertEquals("Action package name property is not set", ACTION_PACKAGE_NAME,
            pref.get(ISeamFacetDataModelProperties.SESSION_BEAN_PACKAGE_NAME, ""));
    assertEquals("Action source folder property is not set",
            pref.get(ISeamFacetDataModelProperties.SESSION_BEAN_SOURCE_FOLDER, ""),
            "/" + PROJECT_NAME + "/src");
    assertEquals("Seam 'create tests' property is not set",
            pref.get(ISeamFacetDataModelProperties.TEST_CREATING, ""), "true");
    assertEquals("Test project property is not set",
            pref.get(ISeamFacetDataModelProperties.SEAM_TEST_PROJECT, ""), PROJECT_NAME);
    assertEquals("Test package name property is not set", TEST_PACKAGE_NAME,
            pref.get(ISeamFacetDataModelProperties.TEST_CASES_PACKAGE_NAME, ""));
    assertEquals("Test source folder property is not set",
            pref.get(ISeamFacetDataModelProperties.TEST_SOURCE_FOLDER, ""), "/" + PROJECT_NAME + "/src");
    assertEquals("View folder property is not set",
            pref.get(ISeamFacetDataModelProperties.WEB_CONTENTS_FOLDER, ""), "/" + PROJECT_NAME);

    assertTrue("Seam Nature was not enabled for project \"" + project.getName() + "\"",
            project.hasNature(ISeamProject.NATURE_ID));
}

From source file:org.jboss.tools.test.util.PreferencePageAbstractTest.java

License:Open Source License

public boolean createPreferencePage(String id, Class expectedInstance) {
    PreferenceDialog prefDialog = createPreferenceDialog(id);

    try {/* ww w  .ja  v a2s.c o  m*/
        prefDialog.setBlockOnOpen(false);
        prefDialog.open();

        Object selectedPage = prefDialog.getSelectedPage();
        return expectedInstance.isInstance(selectedPage); //$NON-NLS-1$
    } finally {
        prefDialog.close();
    }

}

From source file:org.jboss.tools.test.util.PreferencePageAbstractTest.java

License:Open Source License

public void pressOkOnPreferencePage(String ID) {
    PreferenceDialog prefDialog = WorkbenchUtils.createPreferenceDialog(ID);

    try {/*from   w w w . j av  a2s.c  o m*/
        prefDialog.setBlockOnOpen(false);
        prefDialog.open();

        PreferencePage selectedPage = (PreferencePage) prefDialog.getSelectedPage();
        selectedPage.performOk();
    } finally {
        prefDialog.close();
    }
}

From source file:org.jboss.tools.test.util.PreferencePageAbstractTest.java

License:Open Source License

public static PreferenceDialog createPreferenceDialog(String pageId) {
    PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(
            PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), pageId, new String[] { pageId },
            null);//w  ww  .jav a 2  s . co  m
    dialog.setBlockOnOpen(false);
    return dialog;
}

From source file:org.jboss.tools.test.util.WorkbenchUtils.java

License:Open Source License

public static PreferenceDialog createPreferenceDialog(String pageId) {
    PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(WorkbenchUtils.getActiveShell(), pageId,
            new String[] { pageId }, null);
    dialog.setBlockOnOpen(false);
    return dialog;
}

From source file:org.jboss.tools.tests.PreferencePageTest.java

License:Open Source License

/**
 * This method performs simple test for provided preference page. It 
 * opens preference dialog with page loaded by a provided prefPageId
 * and verifies that it is an instance of provided class
 *//*w ww  .  j a  va 2 s .com*/
public void doDefaultTest(String id, Class instanceOf) {
    PreferenceDialog prefDialog = WorkbenchUtils.createPreferenceDialog(id);

    try {
        prefDialog.setBlockOnOpen(false);
        prefDialog.open();

        Object selectedPage = prefDialog.getSelectedPage();
        assertTrue("Selected page is not an instance of PreferencePage", instanceOf.isInstance(selectedPage)); //$NON-NLS-1$
    } finally {
        prefDialog.close();
    }
}

From source file:org.jboss.tools.ws.ui.test.preferences.JBossWSRuntimePreferencePageTest.java

License:Open Source License

private Object openPreferencepage(PreferenceDialog prefDialog) {
    prefDialog.setBlockOnOpen(false);
    prefDialog.open();
    return prefDialog.getSelectedPage();
}

From source file:org2.eclipse.php.internal.debug.ui.preferences.PHPDebugPreferencesAddon.java

License:Open Source License

private void addLink(Composite parent, String label, final String propertyPageID) {
    Link link = new Link(parent, SWT.NONE);
    link.setFont(parent.getFont());// w w  w . j a  va  2s.co m
    link.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, true, false));
    link.setText(label);
    link.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(
                    PHPDebugPreferencesAddon.this.propertyPage.getShell(), propertyPageID, null, null);
            dialog.setBlockOnOpen(true);
            dialog.addPageChangedListener(new IPageChangedListener() {
                public void pageChanged(PageChangedEvent event) {
                    Display.getDefault().asyncExec(new Runnable() {
                        public void run() {
                            String selectedDebugger = PHPDebugPreferencesAddon.this.fDefaultDebugger.getText();
                            String selectedServer = PHPDebugPreferencesAddon.this.fDefaultServer.getText();
                            String selectedPHP = PHPDebugPreferencesAddon.this.fDefaultPHPExe.getText();
                            PHPDebugPreferencesAddon.this
                                    .loadDebuggers(PHPDebugPreferencesAddon.this.fDefaultDebugger);
                            PHPDebugPreferencesAddon.this
                                    .loadServers(PHPDebugPreferencesAddon.this.fDefaultServer);
                            loadPHPExes(PHPDebugPreferencesAddon.this.fDefaultPHPExe, PHPexes.getInstance()
                                    .getItems(PHPDebugPreferencesAddon.this.getSelectedDebuggerId()));
                            PHPDebugPreferencesAddon.this.selectComboItem(
                                    PHPDebugPreferencesAddon.this.fDefaultDebugger,
                                    PHPDebugPreferencesAddon.this.fDefaultDebugger.indexOf(selectedDebugger));
                            PHPDebugPreferencesAddon.this.selectComboItem(
                                    PHPDebugPreferencesAddon.this.fDefaultServer,
                                    PHPDebugPreferencesAddon.this.fDefaultServer.indexOf(selectedServer));
                            PHPDebugPreferencesAddon.this.selectComboItem(
                                    PHPDebugPreferencesAddon.this.fDefaultPHPExe,
                                    PHPDebugPreferencesAddon.this.fDefaultPHPExe.indexOf(selectedPHP));
                        }
                    });
                }
            });
            dialog.open();
        }
    });
}