mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PythonSdkDetailsStep renamed
This commit is contained in:
@@ -44,9 +44,9 @@ import com.intellij.webcore.packaging.PackagesNotificationPanel;
|
||||
import com.jetbrains.python.packaging.ui.PyInstalledPackagesPanel;
|
||||
import com.jetbrains.python.packaging.ui.PyPackageManagementService;
|
||||
import com.jetbrains.python.psi.LanguageLevel;
|
||||
import com.jetbrains.python.sdk.DetailsChooser;
|
||||
import com.jetbrains.python.sdk.PyDetectedSdk;
|
||||
import com.jetbrains.python.sdk.PySdkListCellRenderer;
|
||||
import com.jetbrains.python.sdk.PythonSdkDetailsStep;
|
||||
import com.jetbrains.python.sdk.PythonSdkType;
|
||||
import com.jetbrains.python.sdk.flavors.PythonSdkFlavor;
|
||||
import icons.PythonIcons;
|
||||
@@ -108,19 +108,20 @@ public class PyActiveSdkConfigurable implements UnnamedConfigurable {
|
||||
myDetailsButton.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
DetailsChooser.show(myProject, myProjectSdksModel.getSdks(), new PythonSdkOptions(myProject),
|
||||
RelativePoint.fromScreen(myDetailsButton.getLocationOnScreen()), true,
|
||||
new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(Sdk sdk) {
|
||||
if (sdk == null) return;
|
||||
mySdkAdded = true;
|
||||
updateSdkList(false);
|
||||
mySdkCombo.getModel().setSelectedItem(sdk);
|
||||
myPackagesPanel.updatePackages(new PyPackageManagementService(myProject, sdk));
|
||||
}
|
||||
}
|
||||
);
|
||||
PythonSdkDetailsStep
|
||||
.show(myProject, myProjectSdksModel.getSdks(), new PythonSdkOptions(myProject),
|
||||
RelativePoint.fromScreen(myDetailsButton.getLocationOnScreen()), true,
|
||||
new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(Sdk sdk) {
|
||||
if (sdk == null) return;
|
||||
mySdkAdded = true;
|
||||
updateSdkList(false);
|
||||
mySdkCombo.getModel().setSelectedItem(sdk);
|
||||
myPackagesPanel.updatePackages(new PyPackageManagementService(myProject, sdk));
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
@@ -359,13 +359,14 @@ public class PythonSdkConfigurable implements Configurable, Configurable.NoScrol
|
||||
}
|
||||
|
||||
private void addSdk(AnActionButton button) {
|
||||
DetailsChooser
|
||||
.show(myProject, myProjectSdksModel.getSdks(), new PythonSdkOptions(myProject), button.getPreferredPopupPoint(), false, new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(Sdk sdk) {
|
||||
addCreatedSdk(sdk, false);
|
||||
}
|
||||
});
|
||||
PythonSdkDetailsStep
|
||||
.show(myProject, myProjectSdksModel.getSdks(), new PythonSdkOptions(myProject), button.getPreferredPopupPoint(), false,
|
||||
new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(Sdk sdk) {
|
||||
addCreatedSdk(sdk, false);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void addCreatedSdk(@Nullable final Sdk sdk, boolean newVirtualEnv) {
|
||||
|
||||
@@ -269,7 +269,7 @@ public class PythonSdkOptions extends DialogWrapper {
|
||||
}
|
||||
|
||||
private void addSdk(AnActionButton button) {
|
||||
DetailsChooser
|
||||
PythonSdkDetailsStep
|
||||
.show(myProject, myProjectSdksModel.getSdks(), this, button.getPreferredPopupPoint(), false, new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(Sdk sdk) {
|
||||
|
||||
+7
-10
@@ -36,10 +36,7 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
*/
|
||||
public class DetailsChooser extends BaseListPopupStep<String> {
|
||||
public class PythonSdkDetailsStep extends BaseListPopupStep<String> {
|
||||
private static DialogWrapper myMore;
|
||||
private final Project myProject;
|
||||
private final Component myOwnerComponent;
|
||||
@@ -57,16 +54,16 @@ public class DetailsChooser extends BaseListPopupStep<String> {
|
||||
final boolean showMore,
|
||||
final NullableConsumer<Sdk> callback) {
|
||||
myMore = component;
|
||||
final ListPopupStep sdkHomesStep = new DetailsChooser(project, popupPoint.getComponent(), existingSdks, showMore, callback);
|
||||
final ListPopupStep sdkHomesStep = new PythonSdkDetailsStep(project, popupPoint.getComponent(), existingSdks, showMore, callback);
|
||||
final ListPopup popup = JBPopupFactory.getInstance().createListPopup(sdkHomesStep);
|
||||
popup.show(popupPoint);
|
||||
}
|
||||
|
||||
public DetailsChooser(Project project,
|
||||
Component ownerComponent,
|
||||
Sdk[] existingSdks,
|
||||
boolean showMore,
|
||||
NullableConsumer<Sdk> callback) {
|
||||
public PythonSdkDetailsStep(Project project,
|
||||
Component ownerComponent,
|
||||
Sdk[] existingSdks,
|
||||
boolean showMore,
|
||||
NullableConsumer<Sdk> callback) {
|
||||
super(null, getAvailableOptions(showMore));
|
||||
myProject = project;
|
||||
myOwnerComponent = ownerComponent;
|
||||
@@ -45,7 +45,10 @@ import com.intellij.openapi.util.io.FileSystemUtil;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.CharFilter;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.vfs.*;
|
||||
import com.intellij.openapi.vfs.JarFileSystem;
|
||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.reference.SoftReference;
|
||||
import com.intellij.remotesdk.RemoteSdkData;
|
||||
@@ -277,15 +280,16 @@ public class PythonSdkType extends SdkType {
|
||||
|
||||
public void showCustomCreateUI(SdkModel sdkModel, final JComponent parentComponent, final Consumer<Sdk> sdkCreatedCallback) {
|
||||
Project project = CommonDataKeys.PROJECT.getData(DataManager.getInstance().getDataContext(parentComponent));
|
||||
DetailsChooser.show(project, sdkModel.getSdks(), null, RelativePoint.getCenterOf(parentComponent), true, new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(@Nullable Sdk sdk) {
|
||||
if (sdk != null) {
|
||||
sdk.putUserData(SDK_CREATOR_COMPONENT_KEY, new WeakReference<Component>(parentComponent));
|
||||
sdkCreatedCallback.consume(sdk);
|
||||
PythonSdkDetailsStep
|
||||
.show(project, sdkModel.getSdks(), null, RelativePoint.getCenterOf(parentComponent), true, new NullableConsumer<Sdk>() {
|
||||
@Override
|
||||
public void consume(@Nullable Sdk sdk) {
|
||||
if (sdk != null) {
|
||||
sdk.putUserData(SDK_CREATOR_COMPONENT_KEY, new WeakReference<Component>(parentComponent));
|
||||
sdkCreatedCallback.consume(sdk);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
public static boolean isVirtualEnv(Sdk sdk) {
|
||||
|
||||
Reference in New Issue
Block a user