mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
moved ReST preferences to PyIntegratedToolsCofigurable
This commit is contained in:
@@ -1,15 +1,19 @@
|
||||
package com.jetbrains.python.configuration;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.options.Configurable;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.options.NonDefaultProjectConfigurable;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.ui.CollectionComboBoxModel;
|
||||
import com.jetbrains.python.documentation.DocStringFormat;
|
||||
import com.jetbrains.python.documentation.PyDocumentationSettings;
|
||||
import com.jetbrains.python.testing.PythonTestConfigurationsModel;
|
||||
import com.jetbrains.python.testing.TestRunnerService;
|
||||
import com.jetbrains.rest.ReSTService;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -25,11 +29,17 @@ public class PyIntegratedToolsConfigurable implements Configurable, NonDefaultPr
|
||||
private PythonTestConfigurationsModel myModel;
|
||||
private Project myProject;
|
||||
private final PyDocumentationSettings myDocumentationSettings;
|
||||
private TextFieldWithBrowseButton myWorkDir;
|
||||
|
||||
public PyIntegratedToolsConfigurable(Project project) {
|
||||
myProject = project;
|
||||
myDocumentationSettings = PyDocumentationSettings.getInstance(project);
|
||||
myDocstringFormatComboBox.setModel(new CollectionComboBoxModel(DocStringFormat.ALL, myDocumentationSettings.myDocStringFormat));
|
||||
|
||||
final FileChooserDescriptor fileChooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
myWorkDir.addBrowseFolderListener("Please, choose working directory:", null, project, fileChooserDescriptor);
|
||||
ReSTService service = ReSTService.getInstance(myProject);
|
||||
myWorkDir.setText(service.getWorkdir());
|
||||
}
|
||||
|
||||
@Nls
|
||||
@@ -69,6 +79,8 @@ public class PyIntegratedToolsConfigurable implements Configurable, NonDefaultPr
|
||||
if (!Comparing.equal(myDocstringFormatComboBox.getSelectedItem(), myDocumentationSettings.myDocStringFormat)) {
|
||||
return true;
|
||||
}
|
||||
if (!ReSTService.getInstance(myProject).getWorkdir().equals(myWorkDir.getText()))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -76,6 +88,7 @@ public class PyIntegratedToolsConfigurable implements Configurable, NonDefaultPr
|
||||
public void apply() throws ConfigurationException {
|
||||
myModel.apply();
|
||||
myDocumentationSettings.myDocStringFormat = (String) myDocstringFormatComboBox.getSelectedItem();
|
||||
ReSTService.getInstance(myProject).setWorkdir(myWorkDir.getText());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -84,6 +97,7 @@ public class PyIntegratedToolsConfigurable implements Configurable, NonDefaultPr
|
||||
myTestRunnerComboBox.repaint();
|
||||
myModel.reset();
|
||||
myDocstringFormatComboBox.setSelectedItem(myDocumentationSettings.myDocStringFormat);
|
||||
myWorkDir.setText(ReSTService.getInstance(myProject).getWorkdir());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="com.jetbrains.python.configuration.PyIntegratedToolsConfigurable">
|
||||
<grid id="27dc6" binding="myMainPanel" layout-manager="GridLayoutManager" row-count="3" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||
<grid id="27dc6" binding="myMainPanel" layout-manager="GridLayoutManager" row-count="4" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||
<margin top="0" left="0" bottom="0" right="0"/>
|
||||
<constraints>
|
||||
<xy x="20" y="20" width="547" height="302"/>
|
||||
<xy x="20" y="20" width="602" height="302"/>
|
||||
</constraints>
|
||||
<properties/>
|
||||
<border type="none"/>
|
||||
@@ -22,11 +22,6 @@
|
||||
<text value="Default test runner:"/>
|
||||
</properties>
|
||||
</component>
|
||||
<vspacer id="fc19e">
|
||||
<constraints>
|
||||
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
|
||||
</constraints>
|
||||
</vspacer>
|
||||
<component id="88016" class="com.intellij.ui.components.JBLabel">
|
||||
<constraints>
|
||||
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
|
||||
@@ -44,6 +39,26 @@
|
||||
<model/>
|
||||
</properties>
|
||||
</component>
|
||||
<component id="653de" class="com.intellij.ui.components.JBLabel">
|
||||
<constraints>
|
||||
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
|
||||
</constraints>
|
||||
<properties>
|
||||
<labelFor value="e486b"/>
|
||||
<text value="Path to the ReST root directory:"/>
|
||||
</properties>
|
||||
</component>
|
||||
<component id="bef7c" class="com.intellij.openapi.ui.TextFieldWithBrowseButton" binding="myWorkDir">
|
||||
<constraints>
|
||||
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
|
||||
</constraints>
|
||||
<properties/>
|
||||
</component>
|
||||
<vspacer id="fc19e">
|
||||
<constraints>
|
||||
<grid row="3" column="1" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
|
||||
</constraints>
|
||||
</vspacer>
|
||||
</children>
|
||||
</grid>
|
||||
</form>
|
||||
|
||||
Reference in New Issue
Block a user