backport: 18.0.0
This commit is contained in:
parent
9b3e849f96
commit
b054009ee0
7 changed files with 49 additions and 13 deletions
|
@ -17,10 +17,17 @@ Changelog structure reference:
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [18.0.0]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Zig
|
||||||
|
- Labeled switch statements
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- LSP
|
- LSP
|
||||||
- Updated to LSP4IJ 0.6.1-20241003-152535
|
- Updated to LSP4IJ 0.7.0
|
||||||
|
|
||||||
## [17.3.0]
|
## [17.3.0]
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,7 @@ val clionVersion = properties("clionVersion").get()
|
||||||
val clionPlugins = listOf("com.intellij.clion", "com.intellij.cidr.lang", "com.intellij.cidr.base", "com.intellij.nativeDebug")
|
val clionPlugins = listOf("com.intellij.clion", "com.intellij.cidr.lang", "com.intellij.cidr.base", "com.intellij.nativeDebug")
|
||||||
|
|
||||||
val lsp4jVersion = "0.21.1"
|
val lsp4jVersion = "0.21.1"
|
||||||
val lsp4ijVersion = "0.6.1-20241003-152535"
|
val lsp4ijVersion = "0.7.0"
|
||||||
|
|
||||||
val lsp4ijNightly = lsp4ijVersion.contains("-")
|
val lsp4ijNightly = lsp4ijVersion.contains("-")
|
||||||
val lsp4ijDepString = "${if (lsp4ijNightly) "nightly." else ""}com.jetbrains.plugins:com.redhat.devtools.lsp4ij:$lsp4ijVersion"
|
val lsp4ijDepString = "${if (lsp4ijNightly) "nightly." else ""}com.jetbrains.plugins:com.redhat.devtools.lsp4ij:$lsp4ijVersion"
|
||||||
|
|
|
@ -11,7 +11,7 @@ baseIDE=clion
|
||||||
ideaVersion=2024.2.2
|
ideaVersion=2024.2.2
|
||||||
clionVersion=2024.2.2
|
clionVersion=2024.2.2
|
||||||
|
|
||||||
pluginVersion=17.3.1-dev001
|
pluginVersion=18.0.0
|
||||||
|
|
||||||
# Gradle Releases -> https://github.com/gradle/gradle/releases
|
# Gradle Releases -> https://github.com/gradle/gradle/releases
|
||||||
gradleVersion=8.10.2
|
gradleVersion=8.10.2
|
||||||
|
|
|
@ -74,7 +74,7 @@ public class ZigModuleBuilder extends ModuleBuilder {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JComponent getComponent() {
|
public JComponent getComponent() {
|
||||||
return withBorderIfNeeded(peer.getComponent());
|
return withBorderIfNeeded(peer.createComponent());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -64,7 +64,7 @@ public class ZigNewProjectWizard implements LanguageGeneratorNewProjectWizard {
|
||||||
@Override
|
@Override
|
||||||
public void setupUI(@NotNull Panel builder) {
|
public void setupUI(@NotNull Panel builder) {
|
||||||
builder.row((JLabel) null, (r) -> {
|
builder.row((JLabel) null, (r) -> {
|
||||||
r.cell(peer.getComponent())
|
r.cell(peer.createComponent())
|
||||||
.align(AlignX.FILL);
|
.align(AlignX.FILL);
|
||||||
return null;
|
return null;
|
||||||
});
|
});
|
||||||
|
|
|
@ -16,29 +16,59 @@
|
||||||
|
|
||||||
package com.falsepattern.zigbrains.project.ide.newproject;
|
package com.falsepattern.zigbrains.project.ide.newproject;
|
||||||
|
|
||||||
|
import com.intellij.ide.util.projectWizard.SettingsStep;
|
||||||
|
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||||
|
import com.intellij.openapi.ui.ValidationInfo;
|
||||||
import com.intellij.openapi.util.Disposer;
|
import com.intellij.openapi.util.Disposer;
|
||||||
import com.intellij.platform.GeneratorPeerImpl;
|
import com.intellij.platform.ProjectGeneratorPeer;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
|
|
||||||
import static com.falsepattern.zigbrains.common.util.dsl.JavaPanel.newPanel;
|
import static com.falsepattern.zigbrains.common.util.dsl.JavaPanel.newPanel;
|
||||||
|
|
||||||
public class ZigProjectGeneratorPeer extends GeneratorPeerImpl<ZigProjectConfigurationData> {
|
public class ZigProjectGeneratorPeer implements ProjectGeneratorPeer<ZigProjectConfigurationData> {
|
||||||
private final ZigNewProjectPanel newProjectPanel;
|
private final ZigNewProjectPanel newProjectPanel;
|
||||||
|
private volatile JComponent myComponent;
|
||||||
|
|
||||||
public ZigProjectGeneratorPeer(boolean handleGit) {
|
public ZigProjectGeneratorPeer(boolean handleGit) {
|
||||||
newProjectPanel = new ZigNewProjectPanel(handleGit);
|
newProjectPanel = new ZigNewProjectPanel(handleGit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public @NotNull JComponent getComponent() {
|
||||||
|
return createComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void buildUI(@NotNull SettingsStep settingsStep) {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public @NotNull ZigProjectConfigurationData getSettings() {
|
public @NotNull ZigProjectConfigurationData getSettings() {
|
||||||
return newProjectPanel.getData();
|
return newProjectPanel.getData();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public @NotNull JComponent getComponent() {
|
public @Nullable ValidationInfo validate() {
|
||||||
return newPanel(newProjectPanel::attachPanelTo);
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isBackgroundJobRunning() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public @NotNull JComponent createComponent() {
|
||||||
|
if (myComponent == null) {
|
||||||
|
synchronized (this) {
|
||||||
|
if (myComponent == null) {
|
||||||
|
return myComponent = newPanel(newProjectPanel::attachPanelTo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return myComponent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void dispose() {
|
public void dispose() {
|
||||||
|
|
|
@ -197,7 +197,6 @@ Statement
|
||||||
| KEYWORD_ERRDEFER Payload? BlockExprStatement
|
| KEYWORD_ERRDEFER Payload? BlockExprStatement
|
||||||
| IfStatement
|
| IfStatement
|
||||||
| LabeledStatement
|
| LabeledStatement
|
||||||
| SwitchExpr
|
|
||||||
| VarDeclExprStatement
|
| VarDeclExprStatement
|
||||||
|
|
||||||
ComptimeStatement
|
ComptimeStatement
|
||||||
|
@ -211,7 +210,7 @@ private ZB_IfStatement_Body
|
||||||
::= BlockExpr ( KEYWORD_ELSE Payload? Statement )?
|
::= BlockExpr ( KEYWORD_ELSE Payload? Statement )?
|
||||||
| AssignExpr ( SEMICOLON | KEYWORD_ELSE Payload? Statement )
|
| AssignExpr ( SEMICOLON | KEYWORD_ELSE Payload? Statement )
|
||||||
|
|
||||||
LabeledStatement ::= BlockLabel? (Block | LoopStatement)
|
LabeledStatement ::= BlockLabel? (Block | LoopStatement | SwitchExpr)
|
||||||
|
|
||||||
LoopStatement ::= KEYWORD_INLINE? (ForStatement | WhileStatement)
|
LoopStatement ::= KEYWORD_INLINE? (ForStatement | WhileStatement)
|
||||||
|
|
||||||
|
@ -273,7 +272,7 @@ PrimaryExpr
|
||||||
| KEYWORD_BREAK BreakLabel? Expr?
|
| KEYWORD_BREAK BreakLabel? Expr?
|
||||||
| KEYWORD_COMPTIME Expr
|
| KEYWORD_COMPTIME Expr
|
||||||
| KEYWORD_NOSUSPEND Expr
|
| KEYWORD_NOSUSPEND Expr
|
||||||
| KEYWORD_CONTINUE BreakLabel?
|
| KEYWORD_CONTINUE BreakLabel? Expr?
|
||||||
| KEYWORD_RESUME Expr
|
| KEYWORD_RESUME Expr
|
||||||
| KEYWORD_RETURN Expr?
|
| KEYWORD_RETURN Expr?
|
||||||
| BlockLabel? LoopExpr
|
| BlockLabel? LoopExpr
|
||||||
|
@ -336,7 +335,6 @@ PrimaryTypeExpr
|
||||||
| KEYWORD_ANYFRAME
|
| KEYWORD_ANYFRAME
|
||||||
| KEYWORD_UNREACHABLE
|
| KEYWORD_UNREACHABLE
|
||||||
| StringLiteral
|
| StringLiteral
|
||||||
| SwitchExpr
|
|
||||||
|
|
||||||
ContainerDecl ::= (KEYWORD_EXTERN | KEYWORD_PACKED)? ContainerDeclAuto
|
ContainerDecl ::= (KEYWORD_EXTERN | KEYWORD_PACKED)? ContainerDeclAuto
|
||||||
|
|
||||||
|
@ -349,6 +347,7 @@ IfTypeExpr ::= IfPrefix TypeExpr (KEYWORD_ELSE Payload? TypeExpr)?
|
||||||
LabeledTypeExpr
|
LabeledTypeExpr
|
||||||
::= BlockLabel Block
|
::= BlockLabel Block
|
||||||
| BlockLabel? LoopTypeExpr
|
| BlockLabel? LoopTypeExpr
|
||||||
|
| BlockLabel? SwitchExpr
|
||||||
|
|
||||||
LoopTypeExpr ::= KEYWORD_INLINE? (ForTypeExpr | WhileTypeExpr)
|
LoopTypeExpr ::= KEYWORD_INLINE? (ForTypeExpr | WhileTypeExpr)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue