Author: snjeza
Date: 2012-04-01 14:04:31 -0400 (Sun, 01 Apr 2012)
New Revision: 39957
Modified:
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/ProjectExamplesActivator.java
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencePage.java
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencesInitializer.java
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/wizard/NewProjectExamplesReadyPage.java
Log:
JBIDE-11054 - Project Examples : Last wizard page popping up should have a "Don't
show next time" checkbox
Modified:
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/ProjectExamplesActivator.java
===================================================================
---
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/ProjectExamplesActivator.java 2012-04-01
14:27:37 UTC (rev 39956)
+++
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/ProjectExamplesActivator.java 2012-04-01
18:04:31 UTC (rev 39957)
@@ -57,6 +57,7 @@
import org.eclipse.core.runtime.jobs.IJobChangeEvent;
import org.eclipse.core.runtime.jobs.IJobChangeListener;
import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.MessageDialogWithToggle;
@@ -106,6 +107,7 @@
import org.eclipse.wst.validation.internal.operations.ValidationBuilder;
import org.jboss.tools.project.examples.configurators.DefaultJBossCentralConfigurator;
import org.jboss.tools.project.examples.configurators.IJBossCentralConfigurator;
+import org.jboss.tools.project.examples.dialog.MarkerDialog;
import org.jboss.tools.project.examples.fixes.PluginFix;
import org.jboss.tools.project.examples.fixes.ProjectExamplesFix;
import org.jboss.tools.project.examples.fixes.SeamRuntimeFix;
@@ -154,7 +156,16 @@
public static final String PROJECT_EXAMPLES_OUTPUT_DIRECTORY =
"projectExamplesOutputDirectory"; //$NON-NLS-1$
public static final String PROJECT_EXAMPLES_DEFAULT =
"projectExamplesDefaultLocation"; //$NON-NLS-1$
public static final boolean PROJECT_EXAMPLES_DEFAULT_VALUE = true;
+
+ public static final String SHOW_PROJECT_READY_WIZARD =
"showProjectRadyWizard"; //$NON-NLS-1$
+ public static final boolean SHOW_PROJECT_READY_WIZARD_VALUE = true;
+ public static final String SHOW_README = "showReadme"; //$NON-NLS-1$
+ public static final boolean SHOW_README_VALUE = true;
+
+ public static final String SHOW_QUICK_FIX = "showQuickFix"; //$NON-NLS-1$
+ public static final boolean SHOW_QUICK_FIX_VALUE = true;
+
private static final String IMPORT_PROJECT_EXAMPLES_EXTENSION_ID =
"org.jboss.tools.project.examples.importProjectExamples"; //$NON-NLS-1$
private static final String NAME = "name"; //$NON-NLS-1$
private static final String TYPE = "type"; //$NON-NLS-1$
@@ -951,6 +962,31 @@
public static void showReadyWizard(final List<ProjectExample> projects) {
+ IPreferenceStore store = ProjectExamplesActivator.getDefault().getPreferenceStore();
+
+ boolean showProjectReadyWizard = store.getBoolean(SHOW_PROJECT_READY_WIZARD);
+ if (!showProjectReadyWizard) {
+ boolean openWelcome = store.getBoolean(SHOW_README);
+ if (openWelcome) {
+ ProjectExamplesActivator.openWelcome(projects);
+ }
+ boolean showQuickFix = store.getBoolean(SHOW_QUICK_FIX);
+ if (showQuickFix) {
+ List<IMarker> markers = getMarkers(projects);
+ if (markers != null && markers.size() > 0) {
+
+ Display.getCurrent().asyncExec(new Runnable() {
+
+ @Override
+ public void run() {
+ Dialog dialog = new MarkerDialog(Display.getCurrent().getActiveShell(),
projects);
+ dialog.open();
+ }
+ });
+ }
+ }
+ return;
+ }
Display.getDefault().asyncExec(new Runnable() {
public void run() {
Modified:
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencePage.java
===================================================================
---
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencePage.java 2012-04-01
14:27:37 UTC (rev 39956)
+++
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencePage.java 2012-04-01
18:04:31 UTC (rev 39957)
@@ -62,6 +62,9 @@
private Button showInvalidSites;
private Text outputDirectoryText;
private Button isWorkspace;
+ private Button showProjectReadyWizard;
+ private Button showReadme;
+ private Button showQuickFix;
@Override
protected Control createContents(Composite parent) {
@@ -126,6 +129,18 @@
});
+ showProjectReadyWizard = new Button(composite,SWT.CHECK);
+ showProjectReadyWizard.setText("Show Project Ready wizard");
+ showProjectReadyWizard.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD));
+
+ showReadme = new Button(composite,SWT.CHECK);
+ showReadme.setText("Show readme/cheatsheet file");
+ showReadme.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_README));
+
+ showQuickFix = new Button(composite,SWT.CHECK);
+ showQuickFix.setText("Show Quick Fix dialog");
+ showQuickFix.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_QUICK_FIX));
+
showExperimentalSites = new Button(composite,SWT.CHECK);
showExperimentalSites.setText(Messages.ProjectExamplesPreferencePage_Show_experimental_sites);
showExperimentalSites.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_EXPERIMENTAL_SITES));
@@ -261,6 +276,10 @@
@Override
protected void performDefaults() {
+ showProjectReadyWizard.setSelection(ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD_VALUE);
+ showReadme.setSelection(ProjectExamplesActivator.SHOW_README_VALUE);
+ showQuickFix.setSelection(ProjectExamplesActivator.SHOW_QUICK_FIX_VALUE);
+
showExperimentalSites.setSelection(ProjectExamplesActivator.SHOW_EXPERIMENTAL_SITES_VALUE);
showInvalidSites.setSelection(ProjectExamplesActivator.SHOW_INVALID_SITES_VALUE);
isWorkspace.setSelection(ProjectExamplesActivator.PROJECT_EXAMPLES_DEFAULT_VALUE);
@@ -278,6 +297,10 @@
private void storePreferences() {
IPreferenceStore store = ProjectExamplesActivator.getDefault().getPreferenceStore();
+ store.setValue(ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD,
showProjectReadyWizard.getSelection());
+ store.setValue(ProjectExamplesActivator.SHOW_README, showReadme.getSelection());
+ store.setValue(ProjectExamplesActivator.SHOW_QUICK_FIX, showQuickFix.getSelection());
+
store.setValue(ProjectExamplesActivator.SHOW_EXPERIMENTAL_SITES,
showExperimentalSites.getSelection());
store.setValue(ProjectExamplesActivator.SHOW_INVALID_SITES,
showInvalidSites.getSelection());
store.setValue(ProjectExamplesActivator.PROJECT_EXAMPLES_DEFAULT,
isWorkspace.getSelection());
Modified:
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencesInitializer.java
===================================================================
---
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencesInitializer.java 2012-04-01
14:27:37 UTC (rev 39956)
+++
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/preferences/ProjectExamplesPreferencesInitializer.java 2012-04-01
18:04:31 UTC (rev 39957)
@@ -26,7 +26,7 @@
@Override
public void initializeDefaultPreferences() {
- IEclipsePreferences node = new
DefaultScope().getNode("org.jboss.tools.project.examples"); //$NON-NLS-1$
+ IEclipsePreferences node =
DefaultScope.INSTANCE.getNode("org.jboss.tools.project.examples");
//$NON-NLS-1$
node.putBoolean(
ProjectExamplesActivator.SHOW_EXPERIMENTAL_SITES,
@@ -38,6 +38,15 @@
node.putBoolean(
ProjectExamplesActivator.PROJECT_EXAMPLES_DEFAULT,
ProjectExamplesActivator.PROJECT_EXAMPLES_DEFAULT_VALUE);
+ node.putBoolean(
+ ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD,
+ ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD_VALUE);
+ node.putBoolean(
+ ProjectExamplesActivator.SHOW_README,
+ ProjectExamplesActivator.SHOW_README_VALUE);
+ node.putBoolean(
+ ProjectExamplesActivator.SHOW_QUICK_FIX,
+ ProjectExamplesActivator.SHOW_QUICK_FIX_VALUE);
}
}
Modified:
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/wizard/NewProjectExamplesReadyPage.java
===================================================================
---
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/wizard/NewProjectExamplesReadyPage.java 2012-04-01
14:27:37 UTC (rev 39956)
+++
trunk/examples/plugins/org.jboss.tools.project.examples/src/org/jboss/tools/project/examples/wizard/NewProjectExamplesReadyPage.java 2012-04-01
18:04:31 UTC (rev 39957)
@@ -4,10 +4,13 @@
import org.eclipse.core.resources.IMarker;
import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.wizard.IWizard;
import org.eclipse.jface.wizard.IWizardPage;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
@@ -33,7 +36,7 @@
public void createControl(Composite parent) {
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout(1,false));
- GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
+ GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true);
composite.setLayoutData(gd);
Dialog.applyDialogFont(composite);
setControl(composite);
@@ -52,27 +55,80 @@
showReadme.setSelection(false);
showReadme.setEnabled(false);
+ final Button showMe = new Button(composite, SWT.CHECK);
+ gd = new GridData(SWT.FILL, SWT.FILL, true, true);
+ gd.verticalAlignment = SWT.BOTTOM;
+ showMe.setLayoutData(gd);
+ showMe.setText("Do not show this page again");
+ final IPreferenceStore store =
ProjectExamplesActivator.getDefault().getPreferenceStore();
+
+ showMe.setSelection(!store.getBoolean(ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD));
+
+ showMe.addSelectionListener(new SelectionListener() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ store.setValue(ProjectExamplesActivator.SHOW_PROJECT_READY_WIZARD,
!showMe.getSelection());
+ }
+
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+
+ }
+ });
+
if (projectExamples != null && projectExamples.size() > 0) {
configure(projectExamples);
}
setPageComplete(true);
+
+ if (showReadme.isEnabled()) {
+ showReadme.addSelectionListener(new SelectionListener() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ store.setValue(ProjectExamplesActivator.SHOW_README, showReadme.getSelection());
+ }
+
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+
+ }
+ });
+ }
+ if (showQuickFix.isEnabled()) {
+ showQuickFix.addSelectionListener(new SelectionListener() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ store.setValue(ProjectExamplesActivator.SHOW_QUICK_FIX,
showQuickFix.getSelection());
+ }
+
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+
+ }
+ });
+ }
}
public void configure(List<ProjectExample> projectExamples) {
ProjectExample projectExample = projectExamples.get(0);
+ IPreferenceStore store = ProjectExamplesActivator.getDefault().getPreferenceStore();
+
if (projectExample != null) {
setTitle(projectExample.getShortDescription());
setDescription("'" + projectExample.getShortDescription() + "'
Project is now ready");
if (showReadme != null) {
if (projectExample.isWelcome()) {
showReadme.setEnabled(true);
- showReadme.setSelection(true);
+ showReadme.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_README));
String urlString = projectExample.getWelcomeURL();
String welcomeURL = ProjectExamplesActivator.replace(urlString, projectExample);
showReadme.setText("Show '" + welcomeURL + "' for further
instructions");
} else {
showReadme.setEnabled(false);
- showReadme.setSelection(false);
+ showReadme.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_README));
showReadme.setText(SHOW_README_FILE_FOR_FURTHER_INSTRUCTIONS);
}
}
@@ -80,7 +136,7 @@
.getMarkers(projectExamples);
if (markers != null && markers.size() > 0) {
showQuickFix.setEnabled(true);
- showQuickFix.setSelection(true);
+ showQuickFix.setSelection(store.getBoolean(ProjectExamplesActivator.SHOW_QUICK_FIX));
}
}
}