Browse Source

Pull request #1920: REPORT-35544 国际化-切换到韩文,内置服务器启动的时候,显示异常

Merge in DESIGN/design from ~HENRY.WANG/design:release/10.0 to release/10.0

* commit '6a9e3db2f178904d6e0de4508d3229d6917ff49b':
  REPORT-35544 国际化-切换到韩文,内置服务器启动的时候,显示异常 修改代码
  REPORT-35544 国际化-切换到韩文,内置服务器启动的时候,显示异常
feature/big-screen
Henry.Wang 4 years ago
parent
commit
45c04db287
  1. 7
      designer-base/src/main/java/com/fr/design/gui/iprogressbar/ProgressDialog.java
  2. 13
      designer-base/src/main/java/com/fr/design/locale/impl/SupportLocaleImpl.java
  3. 22
      designer-base/src/main/java/com/fr/start/server/FineEmbedServerMonitor.java

7
designer-base/src/main/java/com/fr/design/gui/iprogressbar/ProgressDialog.java

@ -96,4 +96,11 @@ public class ProgressDialog extends UIDialog {
public void updateLoadingText(String text) {
this.text.setText(text);
}
public void updateLoadingText(String text, FRFont font) {
if (font != null) {
this.text.setFont(font);
}
this.text.setText(text);
}
}

13
designer-base/src/main/java/com/fr/design/locale/impl/SupportLocaleImpl.java

@ -38,7 +38,18 @@ public enum SupportLocaleImpl implements SupportLocale {
set.add(Locale.TAIWAN);
return set;
}
}
},
/**
* 支持韩文
*/
SUPPORT_KOREA {
@Override
public Set<Locale> support() {
Set<Locale> set = new HashSet<Locale>();
set.add(Locale.KOREA);
return set;
}
}
}

22
designer-base/src/main/java/com/fr/start/server/FineEmbedServerMonitor.java

@ -2,12 +2,18 @@ package com.fr.start.server;
import com.fr.concurrent.NamedThreadFactory;
import com.fr.design.gui.iprogressbar.ProgressDialog;
import com.fr.design.i18n.Toolkit;
import com.fr.design.locale.impl.SupportLocaleImpl;
import com.fr.design.mainframe.DesignerContext;
import com.fr.event.Event;
import com.fr.event.EventDispatcher;
import com.fr.event.Listener;
import com.fr.event.Null;
import com.fr.general.FRFont;
import com.fr.general.locale.LocaleAction;
import com.fr.general.locale.LocaleCenter;
import javax.swing.plaf.ColorUIResource;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
@ -27,6 +33,11 @@ public class FineEmbedServerMonitor {
private static final int STEP_HEARTBEAT = 40;
private static volatile FineEmbedServerMonitor monitor;
private static ProgressDialog progressBar = DesignerContext.getDesignerFrame().getProgressDialog();
//由于默认值的字体不支持韩文,所以要对韩文单独生成字体
private FRFont font = null;
private static final int FONT_RGB = 333334;
private static final int FONT_SIZE = 14;
private static final String FONT_NAME = "Dialog";
private FineEmbedServerMonitor() {
}
@ -86,8 +97,15 @@ public class FineEmbedServerMonitor {
}
if (!DesignerContext.getDesignerFrame().getProgressDialog().isVisible()) {
DesignerContext.getDesignerFrame().showProgressDialog();
DesignerContext.getDesignerFrame().getProgressDialog()
.updateLoadingText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Loading_Embed_Server"));
//如果为韩文则改变字体
LocaleCenter.buildAction(new LocaleAction() {
@Override
public void execute() {
font = FRFont.getInstance().applySize(FONT_SIZE).applyForeground(new ColorUIResource(FONT_RGB)).applyName(FONT_NAME);
}
}, SupportLocaleImpl.SUPPORT_KOREA);
String text = Toolkit.i18nText("Fine-Design_Basic_Loading_Embed_Server");
DesignerContext.getDesignerFrame().getProgressDialog().updateLoadingText(text, font);
}
DesignerContext.getDesignerFrame().updateProgress(getProgress());
}

Loading…
Cancel
Save