Revert "diff: allow to redefine DialogWrapper's actions in diff window"
authorAleksey Pivovarov <AMPivovarov@gmail.com>
Tue, 25 Aug 2015 16:23:44 +0000 (19:23 +0300)
committerAleksey Pivovarov <AMPivovarov@gmail.com>
Mon, 31 Aug 2015 09:50:32 +0000 (12:50 +0300)
This reverts commit 0a020a8eada3f66848ca806c4caf099503d627ea.

platform/diff-api/src/com/intellij/diff/DiffDialogHints.java
platform/diff-impl/src/com/intellij/diff/impl/DiffWindowBase.java
platform/diff-impl/src/com/intellij/diff/util/DiffUtil.java
platform/platform-impl/src/com/intellij/openapi/ui/WindowWrapperBuilder.java

index b44548d1e92470fae76481e534886761a3848326..c921ff64f97c49e3676e52d16ac1eaf1143b0adc 100644 (file)
 package com.intellij.diff;
 
 import com.intellij.openapi.ui.WindowWrapper;
-import com.intellij.openapi.util.BooleanGetter;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
-import javax.swing.*;
 import java.awt.*;
 
 public class DiffDialogHints {
@@ -35,8 +33,6 @@ public class DiffDialogHints {
 
   @Nullable private final WindowWrapper.Mode myMode;
   @Nullable private Component myParent;
-  @Nullable private BooleanGetter myOkAction;
-  @Nullable private BooleanGetter myCancelAction;
 
   public DiffDialogHints(@Nullable WindowWrapper.Mode mode) {
     this(mode, null);
@@ -51,14 +47,6 @@ public class DiffDialogHints {
     myParent = value;
   }
 
-  public void setOkAction(@Nullable BooleanGetter value) {
-    myOkAction = value;
-  }
-
-  public void setCancelAction(@Nullable BooleanGetter value) {
-    myCancelAction = value;
-  }
-
   //
   // Getters
   //
@@ -72,14 +60,4 @@ public class DiffDialogHints {
   public Component getParent() {
     return myParent;
   }
-
-  @Nullable
-  public BooleanGetter getOkAction() {
-    return myOkAction;
-  }
-
-  @Nullable
-  public BooleanGetter getCancelAction() {
-    return myCancelAction;
-  }
 }
index 424c2fa68e84b90cc7574ee2e8ac659f4a0b9077..06bcacc16fe026ebaf052f42bf99fcc4952b5439 100644 (file)
@@ -63,8 +63,6 @@ public abstract class DiffWindowBase {
           myProcessor.requestFocus(); // TODO: not needed for modal dialogs. Make a flag in WindowWrapperBuilder ?
         }
       })
-      .setOkAction(myHints.getOkAction())
-      .setCancelAction(myHints.getCancelAction())
       .build();
     myWrapper.setImage(ImageLoader.loadFromResource("/diff/Diff.png"));
     Disposer.register(myWrapper, myProcessor);
index 8a7b65eb2ce11a8e3b39f509b6feee6127681b06..860a59f1a3f0568e3cd9f01aa972f04c18d7c26c 100644 (file)
@@ -834,10 +834,6 @@ public class DiffUtil {
       boolean isUnderDialog = LaterInvocator.isInModalContext();
       mode = isUnderDialog ? WindowWrapper.Mode.MODAL : WindowWrapper.Mode.FRAME;
     }
-    if (mode == WindowWrapper.Mode.FRAME &&
-        (hints.getOkAction() != null || hints.getCancelAction() != null)) {
-      mode = WindowWrapper.Mode.MODAL;
-    }
     return mode;
   }
 
index 8527180251472aec455c22d5d77e72dfadf00b81..3f30e572d6a01ef5f08e013e919d0276e5eed478 100644 (file)
@@ -2,7 +2,6 @@ package com.intellij.openapi.ui;
 
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.WindowWrapper.Mode;
-import com.intellij.openapi.util.BooleanGetter;
 import com.intellij.openapi.util.Disposer;
 import com.intellij.openapi.util.text.StringUtil;
 import org.jetbrains.annotations.NotNull;
@@ -23,8 +22,6 @@ public class WindowWrapperBuilder {
   @Nullable private JComponent myPreferredFocusedComponent;
   @Nullable private String myDimensionServiceKey;
   @Nullable private Runnable myOnShowCallback;
-  @Nullable private BooleanGetter myOkAction;
-  @Nullable private BooleanGetter myCancelAction;
 
   public WindowWrapperBuilder(@NotNull Mode mode, @NotNull JComponent component) {
     myMode = mode;
@@ -67,18 +64,6 @@ public class WindowWrapperBuilder {
     return this;
   }
 
-  @NotNull
-  public WindowWrapperBuilder setOkAction(@Nullable BooleanGetter value) {
-    myOkAction = value;
-    return this;
-  }
-
-  @NotNull
-  public WindowWrapperBuilder setCancelAction(@Nullable BooleanGetter value) {
-    myCancelAction = value;
-    return this;
-  }
-
   @NotNull
   public WindowWrapper build() {
     switch (myMode) {
@@ -107,10 +92,7 @@ public class WindowWrapperBuilder {
       myDialog = builder.myParent != null
                  ? new MyDialogWrapper(builder.myParent, builder.myComponent)
                  : new MyDialogWrapper(builder.myProject, builder.myComponent);
-      myDialog.setParameters(builder.myDimensionServiceKey,
-                             builder.myPreferredFocusedComponent,
-                             builder.myOkAction,
-                             builder.myCancelAction);
+      myDialog.setParameters(builder.myDimensionServiceKey, builder.myPreferredFocusedComponent);
 
       final Runnable onShowCallback = builder.myOnShowCallback;
       if (onShowCallback != null) {
@@ -182,15 +164,13 @@ public class WindowWrapperBuilder {
 
     @Override
     public void close() {
-      myDialog.getCancelAction().actionPerformed(null);
+      myDialog.close(DialogWrapper.CANCEL_EXIT_CODE);
     }
 
     private static class MyDialogWrapper extends DialogWrapper {
       @NotNull private JComponent myComponent;
       @Nullable private String myDimensionServiceKey;
       @Nullable private JComponent myPreferredFocusedComponent;
-      @Nullable private BooleanGetter myOkAction;
-      @Nullable private BooleanGetter myCancelAction;
 
       public MyDialogWrapper(@Nullable Project project, @NotNull JComponent component) {
         super(project, true);
@@ -203,20 +183,15 @@ public class WindowWrapperBuilder {
       }
 
       public void setParameters(@Nullable String dimensionServiceKey,
-                                @Nullable JComponent preferredFocusedComponent,
-                                @Nullable BooleanGetter okAction,
-                                @Nullable BooleanGetter cancelAction) {
+                                @Nullable JComponent preferredFocusedComponent) {
         myDimensionServiceKey = dimensionServiceKey;
         myPreferredFocusedComponent = preferredFocusedComponent;
-        myOkAction = okAction;
-        myCancelAction = cancelAction;
       }
 
       @Nullable
       @Override
       protected Border createContentPaneBorder() {
-        if (myOkAction == null && myCancelAction == null) return null;
-        return super.createContentPaneBorder();
+        return null;
       }
 
       @Override
@@ -228,25 +203,13 @@ public class WindowWrapperBuilder {
       @NotNull
       @Override
       protected Action[] createActions() {
-        if (myOkAction == null && myCancelAction == null) return new Action[0];
-        return super.createActions();
-      }
-
-      @Override
-      protected void doOKAction() {
-        if (myOkAction == null || myOkAction.get()) super.doOKAction();
-      }
-
-      @Override
-      public void doCancelAction() {
-        if (myCancelAction == null || myCancelAction.get()) super.doCancelAction();
+        return new Action[0];
       }
 
       @Nullable
       @Override
       protected JComponent createSouthPanel() {
-        if (myOkAction == null && myCancelAction == null) return null;
-        return super.createSouthPanel();
+        return null;
       }
 
       @Nullable
@@ -273,7 +236,6 @@ public class WindowWrapperBuilder {
 
     public FrameWindowWrapper(@NotNull WindowWrapperBuilder builder) {
       assert builder.myMode == Mode.FRAME;
-      if (builder.myOkAction != null || builder.myCancelAction != null) throw new IllegalArgumentException();
 
       myProject = builder.myProject;
       myComponent = builder.myComponent;