[ultimate] IDEA-321299 Promo Spring wizard
GitOrigin-RevId: 5fa041923b7d5ee2b7db23a56d6cee24577a3cdf
@@ -16,4 +16,5 @@ public final class JavaUIIcons {
|
||||
}
|
||||
/** 16x16 */ public static final @NotNull Icon IdeaUltimatePromoSmall = load("icons/idea-ultimate-promo-small.svg", -1976155593, 0);
|
||||
/** 40x40 */ public static final @NotNull Icon IdeaUltimatePromo = load("icons/idea-ultimate-promo.svg", -28146501, 0);
|
||||
/** 16x16 */ public static final @NotNull Icon SpringPromo = load("icons/spring-promo.svg", -1690195316, 0);
|
||||
}
|
||||
|
||||
7
java/idea-ui/resources/JavaUIIconsMapping.json
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"icons": {
|
||||
"newui": {
|
||||
"spring-promo.svg": "icons/spring-promo.svg"
|
||||
}
|
||||
}
|
||||
}
|
||||
1
java/idea-ui/resources/icons/newui/icon-robots.txt
Normal file
@@ -0,0 +1 @@
|
||||
skip: *
|
||||
5
java/idea-ui/resources/icons/newui/spring-promo.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.19306 6.34848C5.04122 6.0281 5.85274 5.96513 6.55611 5.92719C6.64623 5.92233 6.73427 5.91786 6.82055 5.91348C7.43529 5.88228 7.96186 5.85554 8.52154 5.72433L8.52266 5.72407C9.90789 5.40096 11.4581 4.36933 12.0449 3.17167L13.1088 1L13.8934 3.28357C14.3228 4.53336 14.8172 6.1955 14.9587 7.87787C15.0991 9.54668 14.9047 11.3859 13.7858 12.8498C12.6316 14.3595 10.8669 14.7865 9.2918 14.903C8.49416 14.962 7.68694 14.9453 6.95762 14.9236L6.67181 14.9149C6.04413 14.8954 5.49374 14.8783 5.00581 14.8996L4.9978 14.9001L4.95111 14.9032C4.90953 14.9062 4.84878 14.9109 4.77532 14.9176C4.62629 14.9312 4.43448 14.9523 4.24795 14.9826C4.03864 15.0165 3.80724 15.0043 3.57859 14.9162C3.35522 14.8302 3.19454 14.695 3.08492 14.572C2.90264 14.3675 2.80274 14.1231 2.76153 14.0223L2.72278 13.9275C2.70621 13.8868 2.69455 13.8582 2.68495 13.836C1.33026 13.1485 0.845643 11.5236 1.04186 10.1251C1.25338 8.61754 2.25367 7.08072 4.19306 6.34848ZM6.70602 13.9328C8.95611 14.003 11.5907 14.0851 12.9862 12.2597C14.7995 9.88712 13.7885 6.0505 12.9458 3.59782C12.1953 5.12988 10.3486 6.308 8.75357 6.68003C8.09855 6.8336 7.47651 6.86467 6.86792 6.89507C6.08745 6.93405 5.3291 6.97193 4.55165 7.26564C1.3967 8.45667 1.44493 12.1521 3.18287 12.9822L3.28634 13.0365C3.28634 13.0365 5.84152 12.5361 7.25502 12.0246C9.31827 11.2771 11.585 9.43241 12.3303 7.28803C11.9348 9.5168 9.98556 11.662 8.02841 12.6472C7.36711 12.981 6.79894 13.1502 6.03436 13.3778C5.59352 13.5091 5.08739 13.6598 4.46046 13.8727C4.25001 13.9442 4.08516 14.0131 4.08516 14.0131C4.52096 13.9425 4.95325 13.9184 4.95325 13.9184C5.48453 13.8948 6.08041 13.9133 6.70602 13.9328Z" fill="#208A3C"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.9857 12.2597C11.2022 14.5927 7.39483 13.8099 4.95277 13.9184C4.95277 13.9184 4.52047 13.9425 4.08467 14.0131C4.08467 14.0131 4.24952 13.9442 4.45997 13.8727C6.17423 13.2906 6.98533 13.1734 8.02792 12.6472C9.98507 11.662 11.9343 9.51681 12.3298 7.28804C11.5845 9.43241 9.31778 11.2771 7.25453 12.0246C5.84103 12.5362 3.28585 13.0356 3.28585 13.0365L3.18238 12.9823C1.44444 12.1521 1.39622 8.45668 4.55116 7.26565C5.93485 6.7429 7.25804 7.03054 8.75308 6.68004C10.3481 6.308 12.1948 5.12989 12.9454 3.59782C13.788 6.0505 14.799 9.88712 12.9857 12.2597Z" fill="#F2FCF3"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.5 KiB |
4
java/idea-ui/resources/icons/newui/spring-promo_dark.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.19306 6.34848C5.04122 6.0281 5.85274 5.96513 6.55611 5.92719C6.64623 5.92233 6.73427 5.91786 6.82055 5.91348C7.43529 5.88228 7.96186 5.85554 8.52154 5.72433L8.52266 5.72407C9.90789 5.40096 11.4581 4.36933 12.0449 3.17167L13.1088 1L13.8934 3.28357C14.3228 4.53336 14.8172 6.1955 14.9587 7.87787C15.0991 9.54668 14.9047 11.3859 13.7858 12.8498C12.6316 14.3595 10.8669 14.7865 9.2918 14.903C8.49416 14.962 7.68694 14.9453 6.95762 14.9236L6.67181 14.9149C6.04413 14.8954 5.49374 14.8783 5.00581 14.8996L4.9978 14.9001L4.95111 14.9032C4.90953 14.9062 4.84878 14.9109 4.77532 14.9176C4.62629 14.9312 4.43448 14.9523 4.24795 14.9826C4.03864 15.0165 3.80724 15.0043 3.57859 14.9162C3.35522 14.8302 3.19454 14.695 3.08492 14.572C2.90264 14.3675 2.80274 14.1231 2.76153 14.0223L2.72278 13.9275C2.70621 13.8868 2.69455 13.8582 2.68495 13.836C1.33026 13.1485 0.845643 11.5236 1.04186 10.1251C1.25338 8.61754 2.25367 7.08072 4.19306 6.34848ZM6.70602 13.9328C8.95611 14.003 11.5907 14.0851 12.9862 12.2597C14.7995 9.88712 13.7885 6.0505 12.9458 3.59782C12.1953 5.12988 10.3486 6.308 8.75357 6.68003C8.09855 6.8336 7.47651 6.86467 6.86792 6.89507C6.08745 6.93405 5.3291 6.97193 4.55165 7.26564C1.3967 8.45667 1.44493 12.1521 3.18287 12.9822L3.28634 13.0365C3.28634 13.0365 5.84152 12.5361 7.25502 12.0246C9.31827 11.2771 11.585 9.43241 12.3303 7.28803C11.9348 9.5168 9.98556 11.662 8.02841 12.6472C7.36711 12.981 6.79894 13.1502 6.03436 13.3778C5.59352 13.5091 5.08739 13.6598 4.46046 13.8727C4.25001 13.9442 4.08516 14.0131 4.08516 14.0131C4.52096 13.9425 4.95325 13.9184 4.95325 13.9184C5.48453 13.8948 6.08041 13.9133 6.70602 13.9328Z" fill="#57965C"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.9857 12.2597C11.2022 14.5927 7.39483 13.8099 4.95277 13.9184C4.95277 13.9184 4.52047 13.9425 4.08467 14.0131C4.08467 14.0131 4.24952 13.9442 4.45997 13.8727C6.17423 13.2906 6.98533 13.1734 8.02792 12.6472C9.98507 11.662 11.9343 9.51681 12.3298 7.28804C11.5845 9.43241 9.31778 11.2771 7.25453 12.0246C5.84103 12.5362 3.28585 13.0356 3.28585 13.0365L3.18238 12.9823C1.44444 12.1521 1.39622 8.45668 4.55116 7.26565C5.93485 6.7429 7.25804 7.03054 8.75308 6.68004C10.3481 6.308 12.1948 5.12989 12.9454 3.59782C13.788 6.0505 14.799 9.88712 12.9857 12.2597Z" fill="#253627"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.4 KiB |
4
java/idea-ui/resources/icons/spring-promo.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||
<path fill="#62B543" fill-opacity=".7" fill-rule="evenodd" d="M13.8189229,12.2851118 C11.7381304,15.0552815 7.29624189,14.1257561 4.44717245,14.2546012 C4.44717245,14.2546012 3.94283089,14.2832335 3.43439732,14.3670851 C3.43439732,14.3670851 3.62672229,14.2852786 3.87224354,14.2004045 C5.87221867,13.5091403 6.81849847,13.3700694 8.03485163,12.7452728 C10.3181992,11.5754411 12.5923397,9.02819378 13.0537151,6.3817562 C12.1841607,8.92798092 9.53969226,11.1183477 7.13256106,12.0059474 C5.4834767,12.61336 2.50243959,13.2064565 2.50243959,13.2074791 L2.38172498,13.1430565 C0.354128707,12.1572892 0.297863422,7.76939754 3.97863607,6.35516911 C5.59293826,5.73446293 7.13665308,6.07600472 8.88087692,5.65981457 C10.7417233,5.21805992 12.8961723,3.81917019 13.7718647,2 C14.7549727,4.91230844 15.9344977,9.46790327 13.8189229,12.2851118 Z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -711,4 +711,11 @@ action.PromoEndpoints.text=Endpoints
|
||||
action.PromoDatabase.text=Database
|
||||
action.PromoKubernetes.text=Kubernetes
|
||||
action.PromoPersistence.text=Persistence
|
||||
action.PromoProfiler.text=IntelliJ Profiler
|
||||
action.PromoProfiler.text=IntelliJ Profiler
|
||||
|
||||
feature.spring.wizard.description=Spring Boot integration is available in IntelliJ IDEA Ultimate
|
||||
feature.spring.description.html=Use a rich set of built-in developer tools and support for the Spring framework in both Java and Kotlin code, including Spring MVC, Spring Data, Spring Security, and Spring Cloud:
|
||||
feature.spring.run.config=Dedicated run configuration
|
||||
feature.spring.config.files=Rich configuration files support
|
||||
feature.spring.data=JPA and SQL code assistance
|
||||
feature.spring.navigation=Advanced navigation and visualization
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.intellij.ide.projectWizard;
|
||||
|
||||
import com.intellij.diagnostic.PluginException;
|
||||
import com.intellij.framework.addSupport.FrameworkSupportInModuleProvider;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.ide.JavaUiBundle;
|
||||
import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.ide.util.frameworkSupport.FrameworkRole;
|
||||
@@ -554,8 +555,9 @@ public final class ProjectTypeStep extends ModuleWizardStep implements SettingsS
|
||||
|
||||
myContext.setProjectBuilder(builder);
|
||||
step.updateStep();
|
||||
|
||||
JComponent component = step.getComponent();
|
||||
if (isNewWizard()) {
|
||||
if (isNewWizard() && !(builder instanceof PromoModuleBuilder)) {
|
||||
component = new JBScrollPane(component);
|
||||
component.setBorder(JBUI.Borders.empty());
|
||||
}
|
||||
@@ -932,6 +934,17 @@ public final class ProjectTypeStep extends ModuleWizardStep implements SettingsS
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public Component getListCellRendererComponent(JList<? extends TemplatesGroup> list,
|
||||
TemplatesGroup value,
|
||||
int index,
|
||||
boolean isSelected,
|
||||
boolean cellHasFocus) {
|
||||
Component component = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
|
||||
myNextStepLabel.setIcon(value.isPromo() ? AllIcons.Ultimate.Lock : null);
|
||||
return component;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected JComponent createItemComponent() {
|
||||
JComponent component = super.createItemComponent();
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.ultimatepromo
|
||||
|
||||
import com.intellij.icons.AllIcons
|
||||
import com.intellij.ide.JavaUiBundle
|
||||
import com.intellij.ide.util.projectWizard.*
|
||||
import com.intellij.ide.wizard.withVisualPadding
|
||||
import com.intellij.java.ui.icons.JavaUIIcons
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
import com.intellij.openapi.module.ModuleType
|
||||
import com.intellij.openapi.module.StdModuleTypes
|
||||
import com.intellij.openapi.updateSettings.impl.pluginsAdvertisement.*
|
||||
import com.intellij.openapi.util.NlsSafe
|
||||
import javax.swing.Icon
|
||||
import javax.swing.JComponent
|
||||
|
||||
@NlsSafe
|
||||
private const val SPRING_NAME = "Spring"
|
||||
private const val SPRING_PLUGIN_ID = "com.intellij.spring"
|
||||
|
||||
internal class PromoSpringModuleBuilder: ModuleBuilder(), PromoModuleBuilder {
|
||||
override fun getModuleType(): ModuleType<*> = StdModuleTypes.JAVA
|
||||
override fun getWeight(): Int = JVM_WEIGHT
|
||||
|
||||
override fun getBuilderId(): String = "promo-spring"
|
||||
override fun getNodeIcon(): Icon = JavaUIIcons.SpringPromo
|
||||
override fun getPresentableName(): String = SPRING_NAME
|
||||
override fun getDescription(): String = JavaUiBundle.message("feature.spring.wizard.description")
|
||||
|
||||
override fun modifyProjectTypeStep(settingsStep: SettingsStep): ModuleWizardStep? = null
|
||||
|
||||
override fun getCustomOptionsStep(context: WizardContext?, parentDisposable: Disposable?): ModuleWizardStep {
|
||||
return object : ModuleWizardStep() {
|
||||
private val panel: JComponent = PromoPages.build(
|
||||
PromoFeaturePage(
|
||||
JavaUIIcons.IdeaUltimatePromo,
|
||||
PluginAdvertiserService.ideaUltimate,
|
||||
JavaUiBundle.message("feature.spring.description.html"),
|
||||
listOf(
|
||||
PromoFeatureListItem(
|
||||
AllIcons.RunConfigurations.Application,
|
||||
JavaUiBundle.message("feature.spring.run.config")
|
||||
),
|
||||
PromoFeatureListItem(
|
||||
AllIcons.FileTypes.Properties,
|
||||
JavaUiBundle.message("feature.spring.config.files")
|
||||
),
|
||||
PromoFeatureListItem(
|
||||
AllIcons.Nodes.DataTables,
|
||||
JavaUiBundle.message("feature.spring.data")
|
||||
),
|
||||
PromoFeatureListItem(
|
||||
AllIcons.FileTypes.Diagram,
|
||||
JavaUiBundle.message("feature.spring.navigation")
|
||||
)
|
||||
),
|
||||
FeaturePromoBundle.message("free.trial.hint"),
|
||||
SPRING_PLUGIN_ID
|
||||
),
|
||||
FUSEventSource.NEW_PROJECT_WIZARD
|
||||
).withVisualPadding()
|
||||
|
||||
override fun updateDataModel(): Unit = Unit
|
||||
override fun getComponent(): JComponent = panel
|
||||
override fun validate(): Boolean {
|
||||
FUSEventSource.NEW_PROJECT_WIZARD.openDownloadPageAndLog(null, PluginAdvertiserService.ideaUltimate.downloadUrl,
|
||||
PluginId.getId(SPRING_PLUGIN_ID))
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
override fun updateStep() {
|
||||
FUSEventSource.NEW_PROJECT_WIZARD.logPluginSuggested(null, PluginId.getId(SPRING_PLUGIN_ID))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@ package com.intellij.ide.util.newProjectWizard;
|
||||
|
||||
import com.intellij.ide.projectWizard.ProjectCategory;
|
||||
import com.intellij.ide.util.projectWizard.ModuleBuilder;
|
||||
import com.intellij.ide.util.projectWizard.PromoModuleBuilder;
|
||||
import com.intellij.internal.statistic.utils.PluginInfo;
|
||||
import com.intellij.internal.statistic.utils.PluginInfoDetectorKt;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
@@ -121,4 +122,8 @@ public final class TemplatesGroup implements Comparable<TemplatesGroup> {
|
||||
public void setPluginInfo(PluginInfo pluginInfo) {
|
||||
myPluginInfo = pluginInfo;
|
||||
}
|
||||
|
||||
public boolean isPromo() {
|
||||
return myModuleBuilder instanceof PromoModuleBuilder;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2449,6 +2449,8 @@
|
||||
|
||||
<statistics.counterUsagesCollector implementationClass="com.intellij.ide.compilation.InvalidCompilationStatistics"/>
|
||||
<notificationGroup id="Invalid Compilation Errors" displayType="STICKY_BALLOON" hideFromSettings="true" />
|
||||
|
||||
<iconMapper mappingFile="JavaUIIconsMapping.json"/>
|
||||
</extensions>
|
||||
|
||||
<extensions defaultExtensionNs="org.jetbrains">
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
provider="com.intellij.ide.ultimatepromo.PromoDatabaseConfigurableProvider"
|
||||
bundle="messages.FeaturePromoBundle"
|
||||
key="promo.configurable.database"/>
|
||||
|
||||
<moduleBuilder builderClass="com.intellij.ide.ultimatepromo.PromoSpringModuleBuilder"/>
|
||||
</extensions>
|
||||
|
||||
<actions resource-bundle="messages.JavaUiBundle">
|
||||
|
||||
@@ -823,6 +823,9 @@
|
||||
"createNewProjectTab.svg": "welcome/createNewProjectTab.svg",
|
||||
"fromVCSTab.svg": "welcome/fromVCSTab.svg",
|
||||
"open.svg": "welcome/open.svg"
|
||||
},
|
||||
"ultimate": {
|
||||
"lock.svg": "ultimate/lock.svg"
|
||||
}
|
||||
}
|
||||
}
|
||||
11
platform/icons/src/expui/ultimate/lock.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V6C12.1046 6 13 6.89543 13 8V12C13 13.1046 12.1046 14 11 14H5C3.89543 14 3 13.1046 3 12V8C3 6.89543 3.89543 6 5 6V5ZM10 5V6H6V5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5ZM5 7C4.44772 7 4 7.44772 4 8V12C4 12.5523 4.44772 13 5 13H11C11.5523 13 12 12.5523 12 12V8C12 7.44772 11.5523 7 11 7H5ZM8 8.5C7.72386 8.5 7.5 8.72386 7.5 9V11C7.5 11.2761 7.72386 11.5 8 11.5C8.27614 11.5 8.5 11.2761 8.5 11V9C8.5 8.72386 8.27614 8.5 8 8.5Z" fill="url(#paint0_angular_287_40753)"/>
|
||||
<defs>
|
||||
<radialGradient id="paint0_angular_287_40753" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.5 7.5) rotate(49.7636) scale(8.51469 6.06958)">
|
||||
<stop offset="0.27057" stop-color="#FF6B8E"/>
|
||||
<stop offset="0.675324" stop-color="#E748BE"/>
|
||||
<stop offset="0.825441" stop-color="#C85FFF"/>
|
||||
<stop offset="0.950633" stop-color="#5F93FF"/>
|
||||
</radialGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
11
platform/icons/src/expui/ultimate/lock_dark.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V6C12.1046 6 13 6.89543 13 8V12C13 13.1046 12.1046 14 11 14H5C3.89543 14 3 13.1046 3 12V8C3 6.89543 3.89543 6 5 6V5ZM10 5V6H6V5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5ZM5 7C4.44772 7 4 7.44772 4 8V12C4 12.5523 4.44772 13 5 13H11C11.5523 13 12 12.5523 12 12V8C12 7.44772 11.5523 7 11 7H5ZM8 8.5C7.72386 8.5 7.5 8.72386 7.5 9V11C7.5 11.2761 7.72386 11.5 8 11.5C8.27614 11.5 8.5 11.2761 8.5 11V9C8.5 8.72386 8.27614 8.5 8 8.5Z" fill="url(#paint0_angular_287_40774)"/>
|
||||
<defs>
|
||||
<radialGradient id="paint0_angular_287_40774" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.5 7.5) rotate(49.7636) scale(8.51469 6.06958)">
|
||||
<stop offset="0.27057" stop-color="#FF6B8E"/>
|
||||
<stop offset="0.675324" stop-color="#E748BE"/>
|
||||
<stop offset="0.825441" stop-color="#C85FFF"/>
|
||||
<stop offset="0.950633" stop-color="#5F93FF"/>
|
||||
</radialGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -1,11 +1,7 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V6C12.1046 6 13 6.89543 13 8V12C13 13.1046 12.1046 14 11 14H5C3.89543 14 3 13.1046 3 12V8C3 6.89543 3.89543 6 5 6V5ZM10 5V6H6V5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5ZM5 7C4.44772 7 4 7.44772 4 8V12C4 12.5523 4.44772 13 5 13H11C11.5523 13 12 12.5523 12 12V8C12 7.44772 11.5523 7 11 7H5ZM8 8.5C7.72386 8.5 7.5 8.72386 7.5 9V11C7.5 11.2761 7.72386 11.5 8 11.5C8.27614 11.5 8.5 11.2761 8.5 11V9C8.5 8.72386 8.27614 8.5 8 8.5Z" fill="url(#paint0_angular_287_40753)"/>
|
||||
<defs>
|
||||
<radialGradient id="paint0_angular_287_40753" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.5 7.5) rotate(49.7636) scale(8.51469 6.06958)">
|
||||
<stop offset="0.27057" stop-color="#FF6B8E"/>
|
||||
<stop offset="0.675324" stop-color="#E748BE"/>
|
||||
<stop offset="0.825441" stop-color="#C85FFF"/>
|
||||
<stop offset="0.950633" stop-color="#5F93FF"/>
|
||||
</radialGradient>
|
||||
</defs>
|
||||
<!-- Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||
<g fill="none" fill-rule="evenodd">
|
||||
<rect width="8" height="6" x="4" y="7" fill="#6E6E6E"/>
|
||||
<path fill="#6E6E6E" fill-rule="nonzero" d="M8,3.5 C7.17157288,3.5 6.5,4.12360338 6.5,4.89285714 L6.5,8.10714286 C6.5,8.87639662 7.17157288,9.5 8,9.5 C8.82842712,9.5 9.5,8.87639662 9.5,8.10714286 L9.5,4.89285714 C9.5,4.12360338 8.82842712,3.5 8,3.5 Z M8,2 C9.65685425,2 11,3.34314575 11,5 L11,8 C11,9.65685425 9.65685425,11 8,11 C6.34314575,11 5,9.65685425 5,8 L5,5 C5,3.34314575 6.34314575,2 8,2 Z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 749 B |
@@ -1,11 +1,4 @@
|
||||
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M5 5C5 3.34315 6.34315 2 8 2C9.65685 2 11 3.34315 11 5V6C12.1046 6 13 6.89543 13 8V12C13 13.1046 12.1046 14 11 14H5C3.89543 14 3 13.1046 3 12V8C3 6.89543 3.89543 6 5 6V5ZM10 5V6H6V5C6 3.89543 6.89543 3 8 3C9.10457 3 10 3.89543 10 5ZM5 7C4.44772 7 4 7.44772 4 8V12C4 12.5523 4.44772 13 5 13H11C11.5523 13 12 12.5523 12 12V8C12 7.44772 11.5523 7 11 7H5ZM8 8.5C7.72386 8.5 7.5 8.72386 7.5 9V11C7.5 11.2761 7.72386 11.5 8 11.5C8.27614 11.5 8.5 11.2761 8.5 11V9C8.5 8.72386 8.27614 8.5 8 8.5Z" fill="url(#paint0_angular_287_40774)"/>
|
||||
<defs>
|
||||
<radialGradient id="paint0_angular_287_40774" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.5 7.5) rotate(49.7636) scale(8.51469 6.06958)">
|
||||
<stop offset="0.27057" stop-color="#FF6B8E"/>
|
||||
<stop offset="0.675324" stop-color="#E748BE"/>
|
||||
<stop offset="0.825441" stop-color="#C85FFF"/>
|
||||
<stop offset="0.950633" stop-color="#5F93FF"/>
|
||||
</radialGradient>
|
||||
</defs>
|
||||
<!-- Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||
<path fill="#AFB1B3" d="M4,7 L12,7 L12,13 L4,13 L4,7 Z M8,3.5 C7.17157288,3.5 6.5,4.12360338 6.5,4.89285714 L6.5,8.10714286 C6.5,8.87639662 7.17157288,9.5 8,9.5 C8.82842712,9.5 9.5,8.87639662 9.5,8.10714286 L9.5,4.89285714 C9.5,4.12360338 8.82842712,3.5 8,3.5 Z M8,2 C9.65685425,2 11,3.34314575 11,5 L11,8 C11,9.65685425 9.65685425,11 8,11 C6.34314575,11 5,9.65685425 5,8 L5,5 C5,3.34314575 6.34314575,2 8,2 Z"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 653 B |
@@ -0,0 +1,5 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.util.projectWizard;
|
||||
|
||||
public interface PromoModuleBuilder {
|
||||
}
|
||||
@@ -17,7 +17,7 @@ class PluginAdvertiserUsageCollector : CounterUsagesCollector() {
|
||||
|
||||
private const val FUS_GROUP_ID = "plugins.advertiser"
|
||||
|
||||
private val GROUP = EventLogGroup(FUS_GROUP_ID, 8)
|
||||
private val GROUP = EventLogGroup(FUS_GROUP_ID, 9)
|
||||
|
||||
private val SOURCE_FIELD = EventFields.Enum(
|
||||
"source",
|
||||
@@ -91,6 +91,7 @@ enum class FUSEventSource {
|
||||
PLUGINS_SUGGESTED_GROUP,
|
||||
ACTIONS,
|
||||
SETTINGS,
|
||||
NEW_PROJECT_WIZARD,
|
||||
|
||||
@Deprecated("Use PLUGINS_SEARCH instead")
|
||||
SEARCH;
|
||||
|
||||
@@ -4,12 +4,10 @@ package com.intellij.openapi.updateSettings.impl.pluginsAdvertisement
|
||||
import com.intellij.icons.AllIcons
|
||||
import com.intellij.ide.ui.laf.darcula.ui.DarculaButtonUI
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
import com.intellij.openapi.ui.DialogPanel
|
||||
import com.intellij.openapi.util.NlsContexts
|
||||
import com.intellij.ui.ClientProperty
|
||||
import com.intellij.ui.dsl.builder.BottomGap
|
||||
import com.intellij.ui.dsl.builder.RightGap
|
||||
import com.intellij.ui.dsl.builder.RowLayout
|
||||
import com.intellij.ui.dsl.builder.panel
|
||||
import com.intellij.ui.dsl.builder.*
|
||||
import com.intellij.util.ui.JBFont
|
||||
import javax.swing.Icon
|
||||
import javax.swing.JComponent
|
||||
@@ -30,7 +28,11 @@ class PromoFeatureListItem(
|
||||
)
|
||||
|
||||
object PromoPages {
|
||||
fun build(page: PromoFeaturePage): JComponent {
|
||||
fun build(page: PromoFeaturePage): DialogPanel {
|
||||
return build(page, FUSEventSource.SETTINGS)
|
||||
}
|
||||
|
||||
fun build(page: PromoFeaturePage, source: FUSEventSource): DialogPanel {
|
||||
val panel = panel {
|
||||
row {
|
||||
icon(page.productIcon)
|
||||
@@ -45,7 +47,7 @@ object PromoPages {
|
||||
cell()
|
||||
|
||||
text(page.descriptionHtml) {
|
||||
FUSEventSource.SETTINGS.learnMoreAndLog(null, it.url.toExternalForm(), page.pluginId?.let(PluginId::getId))
|
||||
source.learnMoreAndLog(null, it.url.toExternalForm(), page.pluginId?.let(PluginId::getId))
|
||||
}
|
||||
}.layout(RowLayout.PARENT_GRID)
|
||||
|
||||
|
||||
@@ -1209,7 +1209,7 @@ public class AllIcons {
|
||||
}
|
||||
|
||||
public static final class Ultimate {
|
||||
/** 16x16 */ public static final @NotNull Icon Lock = load("ultimate/lock.svg", 26662807, 2);
|
||||
/** 16x16 */ public static final @NotNull Icon Lock = load("ultimate/lock.svg", 2079176291, 2);
|
||||
/** 16x16 */ public static final @NotNull Icon LockWhite = load("ultimate/lockWhite.svg", -1751542808, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -701,6 +701,10 @@ public final class ExpUiIcons {
|
||||
/** 20x20 */ public static final @NotNull Icon Web_20x20 = load("expui/toolwindow/web@20x20.svg", 1824952426, 2);
|
||||
}
|
||||
|
||||
public static final class Ultimate {
|
||||
/** 16x16 */ public static final @NotNull Icon Lock = load("expui/ultimate/lock.svg", 26662807, 2);
|
||||
}
|
||||
|
||||
public static final class Vcs {
|
||||
/** 16x16 */ public static final @NotNull Icon BranchLabel = load("expui/vcs/branchLabel.svg", 2143717139, 2);
|
||||
/** 16x16 */ public static final @NotNull Icon Changelist = load("expui/vcs/changelist.svg", -1628126378, 2);
|
||||
|
||||