mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 02:59:33 +07:00
[PyCharm] PY-81850 Python Settings follow-up improvements #PY-81850 Ready for Merge
* Added a description for the "Python" group of Settings * Added a description for the "Type Renderers" settings page * Added a description for the "External Documentation" settings page * Added a helpId for the "Type Renderers" settings page (cherry picked from commit 29e93e8dd7fc7f54adea825b60cf8d95540fc6b0) IJ-CR-166515 GitOrigin-RevId: f8fd3f2ca9d6e2d34077a5424673adeb66bc05d1
This commit is contained in:
committed by
intellij-monorepo-bot
parent
35b419badd
commit
84549d7bdf
@@ -58,7 +58,7 @@
|
||||
weight="1000"
|
||||
bundle="messages.PyBundle"
|
||||
displayNameKey="settings.python.group.title"
|
||||
descriptionKey="settings.python.group.title"/>
|
||||
descriptionKey="settings.python.group.description"/>
|
||||
|
||||
<projectConfigurable groupId="python.group.settings"
|
||||
id="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable"
|
||||
|
||||
@@ -211,6 +211,7 @@ settings.memory.indicator.row.comment=Displays current memory usage in the statu
|
||||
|
||||
# Main Python Settings Group
|
||||
settings.python.group.title=Python
|
||||
settings.python.group.description=<html><body>Configure key Python development settings to customize your coding, debugging, data visualization, and documentation workflows.
|
||||
|
||||
runcfg.autodetect.display_name=Autodetect
|
||||
runcfg.autodetect.parameters.group.name=Python test
|
||||
@@ -676,6 +677,7 @@ configurable.PyActiveSdkModuleConfigurable.python.interpreter.display.name=Pytho
|
||||
configurable.PyActiveSdkModuleConfigurable.pycharm.interpreter.display.name=Interpreter
|
||||
configurable.PyUserTypeRenderersConfigurable.display.name=Python Type Renderers
|
||||
configurable.PyUserTypeRenderersConfigurable.pycharm.display.name=Type Renderers
|
||||
configurable.PyUserTypeRenderersConfigurable.description= Define custom display formats for various data types across your application.
|
||||
configurable.plots.pycharm.display.name=Plots
|
||||
flask.name=Flask
|
||||
settings.default.remote.interpreter=Default Python Remote Interpreter
|
||||
@@ -914,6 +916,7 @@ pydev.console.python.interpreter.is.not.selected=Python interpreter is not selec
|
||||
|
||||
external.documentation.python.plugin=Python External Documentation
|
||||
external.documentation.pycharm=External Documentation
|
||||
external.documentation.description=Configure URLs for Python external documentation to enable quick access to relevant resources.
|
||||
external.documentation.edit.documentation.url=Edit Documentation URL
|
||||
external.documentation.title=Python External Documentation
|
||||
external.documentation.configure.description=No external documentation URL is configured for module {0}.\nWould you like to configure it now?
|
||||
|
||||
@@ -15,11 +15,13 @@ import com.intellij.openapi.ui.ValidationInfo
|
||||
import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.psi.util.QualifiedName
|
||||
import com.intellij.ui.*
|
||||
import com.intellij.ui.components.JBLabel
|
||||
import com.intellij.ui.dsl.builder.AlignX
|
||||
import com.intellij.ui.dsl.builder.LabelPosition
|
||||
import com.intellij.ui.dsl.builder.panel
|
||||
import com.intellij.ui.table.JBTable
|
||||
import com.intellij.util.textCompletion.TextFieldWithCompletion
|
||||
import com.intellij.util.ui.JBUI
|
||||
import com.intellij.xdebugger.XDebuggerManager
|
||||
import com.intellij.xdebugger.impl.XSourcePositionImpl
|
||||
import com.intellij.xdebugger.impl.breakpoints.XExpressionImpl
|
||||
@@ -91,6 +93,14 @@ class PyUserTypeRenderersConfigurable : SearchableConfigurable {
|
||||
myRendererChooser.selectElements(listOf(first))
|
||||
}
|
||||
myMainPanel.removeAll()
|
||||
val border = IdeBorderFactory.createEmptyBorder(JBUI.insets(10, 0))
|
||||
val message = PyBundle.message("configurable.PyUserTypeRenderersConfigurable.description")
|
||||
|
||||
myMainPanel.add(
|
||||
JBUI.Panels.simplePanel(JBLabel(message)).withBorder(border),
|
||||
BorderLayout.NORTH
|
||||
)
|
||||
|
||||
myMainPanel.add(splitter, BorderLayout.CENTER)
|
||||
}
|
||||
return myMainPanel
|
||||
@@ -164,6 +174,8 @@ class PyUserTypeRenderersConfigurable : SearchableConfigurable {
|
||||
|
||||
override fun getId(): String = CONFIGURABLE_ID
|
||||
|
||||
override fun getHelpTopic(): String = "reference.idesettings.debugger.typerenderers"
|
||||
|
||||
private fun setupRendererChooser() {
|
||||
myRendererChooser.emptyText.text = PyBundle.message("form.debugger.variables.view.user.type.renderers.no.renderers")
|
||||
myRendererChooser.addElementsMarkListener(ElementsChooser.ElementsMarkListener { element, isMarked ->
|
||||
|
||||
@@ -6,17 +6,19 @@ import com.intellij.openapi.options.Configurable;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.options.SearchableConfigurable;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.ui.AddEditRemovePanel;
|
||||
import com.intellij.ui.ColoredTableCellRenderer;
|
||||
import com.intellij.ui.JBColor;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.ui.*;
|
||||
import com.intellij.ui.components.JBLabel;
|
||||
import com.intellij.util.PlatformUtils;
|
||||
import com.intellij.util.ui.JBUI;
|
||||
import com.intellij.util.ui.components.BorderLayoutPanel;
|
||||
import com.jetbrains.python.PyBundle;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.border.Border;
|
||||
import java.awt.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -42,9 +44,17 @@ public final class PythonDocumentationConfigurable implements SearchableConfigur
|
||||
|
||||
@Override
|
||||
public JComponent createComponent() {
|
||||
Border border = IdeBorderFactory.createEmptyBorder(JBUI.insets(10, 0));
|
||||
JPanel panelWithDescription = JBUI.Panels.simplePanel(new JBLabel(PyBundle.message("external.documentation.description"))).withBorder(border);
|
||||
|
||||
SwingUtilities.updateComponentTreeUI(myPanel); // TODO: create Swing components in this method (see javadoc)
|
||||
myPanel.getTable().setShowGrid(false);
|
||||
return myPanel;
|
||||
|
||||
BorderLayoutPanel myComponent = new BorderLayoutPanel()
|
||||
.addToTop(panelWithDescription)
|
||||
.addToCenter(myPanel);
|
||||
|
||||
return myComponent;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user