mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
major release date in AppInfo
This commit is contained in:
@@ -27,6 +27,7 @@ package com.intellij.openapi.application.ex;
|
||||
import com.intellij.openapi.application.ApplicationInfo;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
|
||||
public abstract class ApplicationInfoEx extends ApplicationInfo {
|
||||
@@ -35,6 +36,8 @@ public abstract class ApplicationInfoEx extends ApplicationInfo {
|
||||
return (ApplicationInfoEx) getInstance();
|
||||
}
|
||||
|
||||
public abstract Calendar getMajorReleaseBuildDate();
|
||||
|
||||
public abstract String getLogoUrl();
|
||||
|
||||
public abstract Color getLogoTextColor();
|
||||
|
||||
+29
-15
@@ -51,6 +51,7 @@ public class ApplicationInfoImpl extends ApplicationInfoEx implements JDOMExtern
|
||||
@NonNls private String myOpaqueIconUrl = "/icon.png";
|
||||
@NonNls private String myToolWindowIconUrl = "/general/toolWindowProject.png";
|
||||
private Calendar myBuildDate = null;
|
||||
private Calendar myMajorReleaseBuildDate = null;
|
||||
private String myPackageCode = null;
|
||||
private boolean myShowLicensee = true;
|
||||
private String myWelcomeScreenCaptionUrl;
|
||||
@@ -81,6 +82,7 @@ public class ApplicationInfoImpl extends ApplicationInfoEx implements JDOMExtern
|
||||
@NonNls private static final String ELEMENT_BUILD = "build";
|
||||
@NonNls private static final String ATTRIBUTE_NUMBER = "number";
|
||||
@NonNls private static final String ATTRIBUTE_DATE = "date";
|
||||
@NonNls private static final String ATTRIBUTE_MAJOR_RELEASE_DATE = "majorReleaseDate";
|
||||
@NonNls private static final String ELEMENT_LOGO = "logo";
|
||||
@NonNls private static final String ATTRIBUTE_URL = "url";
|
||||
@NonNls private static final String ATTRIBUTE_TEXTCOLOR = "textcolor";
|
||||
@@ -128,6 +130,10 @@ public class ApplicationInfoImpl extends ApplicationInfoEx implements JDOMExtern
|
||||
return myBuildDate;
|
||||
}
|
||||
|
||||
public Calendar getMajorReleaseBuildDate() {
|
||||
return myMajorReleaseBuildDate != null ? myMajorReleaseBuildDate : myBuildDate;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BuildNumber getBuild() {
|
||||
return BuildNumber.fromString(myBuildNumber);
|
||||
@@ -314,21 +320,11 @@ public class ApplicationInfoImpl extends ApplicationInfoEx implements JDOMExtern
|
||||
myBuildDate = new GregorianCalendar();
|
||||
}
|
||||
else {
|
||||
int year = 0;
|
||||
int month = 0;
|
||||
int day = 0;
|
||||
try {
|
||||
year = Integer.parseInt(dateString.substring(0, 4));
|
||||
month = Integer.parseInt(dateString.substring(4, 6));
|
||||
day = Integer.parseInt(dateString.substring(6, 8));
|
||||
}
|
||||
catch (Exception ex) {
|
||||
//ignore
|
||||
}
|
||||
if (month > 0) {
|
||||
month--;
|
||||
}
|
||||
myBuildDate = new GregorianCalendar(year, month, day);
|
||||
myBuildDate = parseDate(dateString);
|
||||
}
|
||||
String majorReleaseDateString = buildElement.getAttributeValue(ATTRIBUTE_MAJOR_RELEASE_DATE);
|
||||
if (majorReleaseDateString != null) {
|
||||
myMajorReleaseBuildDate = parseDate(majorReleaseDateString);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -446,6 +442,24 @@ public class ApplicationInfoImpl extends ApplicationInfoEx implements JDOMExtern
|
||||
}
|
||||
}
|
||||
|
||||
private static GregorianCalendar parseDate(String dateString) {
|
||||
int year = 0;
|
||||
int month = 0;
|
||||
int day = 0;
|
||||
try {
|
||||
year = Integer.parseInt(dateString.substring(0, 4));
|
||||
month = Integer.parseInt(dateString.substring(4, 6));
|
||||
day = Integer.parseInt(dateString.substring(6, 8));
|
||||
}
|
||||
catch (Exception ex) {
|
||||
//ignore
|
||||
}
|
||||
if (month > 0) {
|
||||
month--;
|
||||
}
|
||||
return new GregorianCalendar(year, month, day);
|
||||
}
|
||||
|
||||
public List<PluginChooserPage> getPluginChooserPages() {
|
||||
return myPluginChooserPages;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user