diff --git a/designer-base/src/main/java/com/fr/design/actions/community/BBSAction.java b/designer-base/src/main/java/com/fr/design/actions/community/BBSAction.java
index 778ecc2a7..9b689bc97 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/BBSAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/BBSAction.java
@@ -44,7 +44,7 @@ public class BBSAction extends UpdateAction
 	        try {
 	            Desktop.getDesktop().browse(new URI(url));
 	        } catch (IOException exp) {
-	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
 	        } catch (URISyntaxException exp) {
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/BugAction.java b/designer-base/src/main/java/com/fr/design/actions/community/BugAction.java
index e7c08b3fa..b22093060 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/BugAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/BugAction.java
@@ -38,7 +38,7 @@ public void actionPerformed(ActionEvent arg0)
      try {
          Desktop.getDesktop().browse(new URI(url));
      } catch (IOException exp) {
-         JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+         JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
          FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
      } catch (URISyntaxException exp) {
          FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/NeedAction.java b/designer-base/src/main/java/com/fr/design/actions/community/NeedAction.java
index 8dd07ea27..c49a484f7 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/NeedAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/NeedAction.java
@@ -39,7 +39,7 @@ public class NeedAction extends UpdateAction
 	        try {
 	            Desktop.getDesktop().browse(new URI(url));
 	        } catch (IOException exp) {
-	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
 	        } catch (URISyntaxException exp) {
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/QuestionAction.java b/designer-base/src/main/java/com/fr/design/actions/community/QuestionAction.java
index 2589d0872..390827f16 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/QuestionAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/QuestionAction.java
@@ -38,7 +38,7 @@ public void actionPerformed(ActionEvent arg0)
        try {
            Desktop.getDesktop().browse(new URI(url));
        } catch (IOException exp) {
-           JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+           JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
        } catch (URISyntaxException exp) {
            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/SignAction.java b/designer-base/src/main/java/com/fr/design/actions/community/SignAction.java
index b3ce597a4..fe59c01f5 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/SignAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/SignAction.java
@@ -39,7 +39,7 @@ public class SignAction extends UpdateAction
 	        try {
 	            Desktop.getDesktop().browse(new URI(url));
 	        } catch (IOException exp) {
-	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
 	        } catch (URISyntaxException exp) {
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/UpAction.java b/designer-base/src/main/java/com/fr/design/actions/community/UpAction.java
index 402afc304..d1baef84f 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/UpAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/UpAction.java
@@ -39,7 +39,7 @@ public class UpAction extends UpdateAction
 	        try {
 	            Desktop.getDesktop().browse(new URI(url));
 	        } catch (IOException exp) {
-	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+	            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
 	        } catch (URISyntaxException exp) {
 	            FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/community/VideoAction.java b/designer-base/src/main/java/com/fr/design/actions/community/VideoAction.java
index 4e790777e..662fe689b 100644
--- a/designer-base/src/main/java/com/fr/design/actions/community/VideoAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/community/VideoAction.java
@@ -45,7 +45,7 @@ public class VideoAction extends UpdateAction
 		try {
 			Desktop.getDesktop().browse(new URI(url));
 		} catch (IOException exp) {
-			JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set_default_browser"));
+			JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser_Duplicate"));
 			FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
 		} catch (URISyntaxException exp) {
 			FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
diff --git a/designer-base/src/main/java/com/fr/design/actions/file/LocalePane.java b/designer-base/src/main/java/com/fr/design/actions/file/LocalePane.java
index ee1592486..634af28b9 100644
--- a/designer-base/src/main/java/com/fr/design/actions/file/LocalePane.java
+++ b/designer-base/src/main/java/com/fr/design/actions/file/LocalePane.java
@@ -146,7 +146,7 @@ public class LocalePane extends BasicPane {
         keyVector.addAll(sortKeys);
 
 
-        predefineTableModel.addColumn(com.fr.design.i18n.Toolkit.i18nText("Key"), keyVector);
+        predefineTableModel.addColumn(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Key"), keyVector);
         for (Map.Entry<Locale, Vector<String>> entry : data.entrySet()) {
             predefineTableModel.addColumn(entry.getKey().getDisplayName(), entry.getValue());
         }
@@ -161,7 +161,7 @@ public class LocalePane extends BasicPane {
 
         List<Properties> list = new ArrayList<Properties>();
         Set<String> keys = new HashSet<String>();
-        customTableModel.addColumn(com.fr.design.i18n.Toolkit.i18nText("Key"));
+        customTableModel.addColumn(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Key"));
         for (FileNode fileNode : fileNodes) {
             String fileName = fileNode.getName();
             if (fileName.endsWith(".properties")) {
@@ -220,4 +220,4 @@ public class LocalePane extends BasicPane {
     protected String title4PopupWindow() {
         return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_Locale");
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java b/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java
index 6b5067a4e..72b4d81af 100644
--- a/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java
+++ b/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java
@@ -130,7 +130,7 @@ public class PreferencePane extends BasicPane {
         JPanel generalPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane();
         jtabPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_General"), generalPane);
         JPanel advancePane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane();
-        jtabPane.addTab(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Advanced"), advancePane);
+        jtabPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Advanced"), advancePane);
         contentPane.add(jtabPane, BorderLayout.NORTH);
 
 
@@ -375,7 +375,7 @@ public class PreferencePane extends BasicPane {
                 dlg.setVisible(true);
             }
         });
-        UILabel noticeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Work_After_Restart_Designer"));//sail:提示重启后生效
+        UILabel noticeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"));//sail:提示重启后生效
         double p = TableLayout.PREFERRED;
         double rowSize[] = {p};
         double columnSize[] = {p, p, p};
@@ -422,10 +422,10 @@ public class PreferencePane extends BasicPane {
         // 长度单位选择
         JPanel lengthPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Setting_Ruler_Units"));
         advancePane.add(lengthPane);
-        pageLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_INCH")});
+        pageLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH")});
         pageLengthComboBox.setPreferredSize(new Dimension(80, 20));
         pageLengthComboBox.setMinimumSize(new Dimension(80, 20));
-        reportLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_INCH"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_PT")});
+        reportLengthComboBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_MM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_PT_Duplicate")});
         reportLengthComboBox.setPreferredSize(new Dimension(80, 20));
         reportLengthComboBox.setMinimumSize(new Dimension(80, 20));
         UILabel pagelengthLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Page_Setup_Scale_Units") + ":");
@@ -447,7 +447,7 @@ public class PreferencePane extends BasicPane {
         portEditor = new IntegerEditor();
         portEditor.setPreferredSize(new Dimension(80, 20));
         portEditor.setMinimumSize(new Dimension(80, 20));
-        UILabel notiJlabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Work_After_Restart_Designer"));
+        UILabel notiJlabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"));
         UILabel serverPortLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Web_Preview_Port") + ":");
         Component[][] portComponents = {
                 {serverPortLabel, portEditor, notiJlabel},
@@ -483,7 +483,7 @@ public class PreferencePane extends BasicPane {
             }
         });
         panel.setPreferredSize(new Dimension(300, 20));
-        UILabel notiJlabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Work_After_Restart_Designer"));
+        UILabel notiJlabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"));
         UILabel serverPortLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preference_JDK_Home") + ":");
         Component[][] portComponents = {
                 {serverPortLabel, panel, notiJlabel},
@@ -646,7 +646,7 @@ public class PreferencePane extends BasicPane {
         int rv = JOptionPane.showOptionDialog(
                 null,
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Language_Change_Successful"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                 JOptionPane.YES_NO_OPTION,
                 JOptionPane.INFORMATION_MESSAGE,
                 null,
diff --git a/designer-base/src/main/java/com/fr/design/actions/help/AboutDialog.java b/designer-base/src/main/java/com/fr/design/actions/help/AboutDialog.java
index af62e25fc..b4b6d53c6 100644
--- a/designer-base/src/main/java/com/fr/design/actions/help/AboutDialog.java
+++ b/designer-base/src/main/java/com/fr/design/actions/help/AboutDialog.java
@@ -47,7 +47,7 @@ public class AboutDialog extends JDialog implements ActionListener {
         sysPane = new SystemInfoPane();
 
         tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_About"), aboutPanel);
-        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("System"), sysPane);
+        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Basic_System"), sysPane);
 
         buttonPanel = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane();
         buttonPanel.add(okButton);
diff --git a/designer-base/src/main/java/com/fr/design/actions/help/ForumAction.java b/designer-base/src/main/java/com/fr/design/actions/help/ForumAction.java
index ebfb10083..621e05578 100644
--- a/designer-base/src/main/java/com/fr/design/actions/help/ForumAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/help/ForumAction.java
@@ -48,7 +48,7 @@ public class ForumAction extends UpdateAction {
         try {
             Desktop.getDesktop().browse(new URI(url));
         } catch (IOException exp) {
-            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
             FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
         } catch (URISyntaxException exp) {
             FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
@@ -74,4 +74,4 @@ public class ForumAction extends UpdateAction {
             return null;
         }
     };
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/actions/help/SupportQQAction.java b/designer-base/src/main/java/com/fr/design/actions/help/SupportQQAction.java
index 6e08a7258..a118f9d87 100644
--- a/designer-base/src/main/java/com/fr/design/actions/help/SupportQQAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/help/SupportQQAction.java
@@ -37,7 +37,7 @@ public class SupportQQAction extends UpdateAction {
         try {
             Desktop.getDesktop().browse(new URI(ProductConstants.SUPPORT_QQ));
         } catch (IOException exp) {
-            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Set_default_browser"));
+            JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser"));
             FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
         } catch (URISyntaxException exp) {
             FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
@@ -52,7 +52,7 @@ public class SupportQQAction extends UpdateAction {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("Support_QQ");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Support_QQ");
         }
 
         @Override
@@ -60,4 +60,4 @@ public class SupportQQAction extends UpdateAction {
             return null;
         }
     };
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/actions/help/TutorialAction.java b/designer-base/src/main/java/com/fr/design/actions/help/TutorialAction.java
index c0e255af7..91cfb5712 100644
--- a/designer-base/src/main/java/com/fr/design/actions/help/TutorialAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/help/TutorialAction.java
@@ -107,7 +107,7 @@ public class TutorialAction extends UpdateAction {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help");
         }
 
         @Override
diff --git a/designer-base/src/main/java/com/fr/design/actions/help/alphafine/AlphaFineConfigPane.java b/designer-base/src/main/java/com/fr/design/actions/help/alphafine/AlphaFineConfigPane.java
index dd6e3e362..ddb8e425c 100644
--- a/designer-base/src/main/java/com/fr/design/actions/help/alphafine/AlphaFineConfigPane.java
+++ b/designer-base/src/main/java/com/fr/design/actions/help/alphafine/AlphaFineConfigPane.java
@@ -88,11 +88,11 @@ public class AlphaFineConfigPane extends BasicPane {
         double[] columnSize = {COLUMN_GAP, COLUMN_GAP, COLUMN_GAP};
 
         JPanel northPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_AlphaFine_Search_Range"));
-        isContainRecommendCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_AlphaFine_Recommend"));
-        isContainActionCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set"));
-        isContainPluginCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Addon"));
-        isContainDocumentCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP"));
-        isContainTemplateCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Templates"));
+        isContainRecommendCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_AlphaFine_Recommend"));
+        isContainActionCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set"));
+        isContainPluginCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Plugin_Addon"));
+        isContainDocumentCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help"));
+        isContainTemplateCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Templates"));
         isContainFileContentCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Templates_Content"));
         JPanel searchConfigPane = TableLayoutHelper.createTableLayoutPane(initSearchRangeComponents(), rowSize, columnSize);
         northPane.add(searchConfigPane);
@@ -106,7 +106,7 @@ public class AlphaFineConfigPane extends BasicPane {
         shortcutsField.selectAll();
         shortcutsField.setPreferredSize(new Dimension(100, 20));
         initFieldListener();
-        northPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Open") + ":"));
+        northPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Open") + ":"));
         northPane.add(shortcutsField);
         UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_AlphaFine_SetShortcuts"));
         label.setForeground(Color.RED);
@@ -162,7 +162,7 @@ public class AlphaFineConfigPane extends BasicPane {
     }
 
     private void createOpenPane(JPanel contentPane) {
-        JPanel northPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_AlphaFine_Enable"));
+        JPanel northPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_AlphaFine_Enable"));
         isEnabledCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_AlphaFine_Enable_AlphaFine"));
         northPane.add(isEnabledCheckbox);
         contentPane.add(northPane);
diff --git a/designer-base/src/main/java/com/fr/design/actions/server/ProcedureListAction.java b/designer-base/src/main/java/com/fr/design/actions/server/ProcedureListAction.java
index 076156884..9989182d4 100644
--- a/designer-base/src/main/java/com/fr/design/actions/server/ProcedureListAction.java
+++ b/designer-base/src/main/java/com/fr/design/actions/server/ProcedureListAction.java
@@ -20,7 +20,7 @@ import java.awt.event.ActionEvent;
 
 public class ProcedureListAction extends UpdateAction {
     public ProcedureListAction() {
-        this.setName(com.fr.design.i18n.Toolkit.i18nText("Datasource-Stored_Procedure") + "(P)" + "...");
+        this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Stored_Procedure") + "(P)" + "...");
         this.setMnemonic('P');
         this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/data/store_procedure.png"));
     }
diff --git a/designer-base/src/main/java/com/fr/design/border/UITitledBorder.java b/designer-base/src/main/java/com/fr/design/border/UITitledBorder.java
index 0c5adcc48..3987844cf 100644
--- a/designer-base/src/main/java/com/fr/design/border/UITitledBorder.java
+++ b/designer-base/src/main/java/com/fr/design/border/UITitledBorder.java
@@ -17,6 +17,10 @@ public class UITitledBorder extends TitledBorder {
         return new UITitledBorder(title);
     }
 
+    public static UITitledBorder createBorderWithTitle(String title, int roundedCorner) {
+        return new UITitledBorder(title, roundedCorner);
+    }
+
     private UITitledBorder(String title) {
         super(
                 BorderFactory.createCompoundBorder(
@@ -37,4 +41,29 @@ public class UITitledBorder extends TitledBorder {
                 new Color(1, 159, 222)
         );
     }
+
+    /**
+     * @param title title
+     * @param roundedCorner corner width 圆弧宽度,即圆角直径
+     */
+    private UITitledBorder(String title, int roundedCorner) {
+        super(
+                BorderFactory.createCompoundBorder(
+                        BorderFactory.createEmptyBorder(
+                                0,
+                                0,
+                                5,
+                                0),
+                        new UIRoundedBorder(
+                                UIConstants.TITLED_BORDER_COLOR,
+                                1,
+                                roundedCorner)
+                ),
+                title,
+                TitledBorder.LEADING,
+                TitledBorder.TOP,
+                null,
+                new Color(1, 159, 222)
+        );
+    }
 }
\ No newline at end of file
diff --git a/designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java b/designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java
index 29a030870..9a6cd609e 100644
--- a/designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java
+++ b/designer-base/src/main/java/com/fr/design/condition/LiteConditionPane.java
@@ -223,7 +223,7 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
             }
 
             int returnVal = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(LiteConditionPane.this),
-                    com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?", com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"),
                     JOptionPane.OK_CANCEL_OPTION);
             if (returnVal == JOptionPane.OK_OPTION) {
                 DefaultTreeModel treeModel = (DefaultTreeModel) conditionsTree.getModel();
@@ -447,18 +447,18 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
 
 
     private void initButtonPane(JPanel buttonPane) {
-        removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+        removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
         buttonPane.add(removeButton);
         removeButton.setIcon(BaseUtils.readIcon("com/fr/base/images/cell/control/remove.png"));
         removeButton.setEnabled(false);
         removeButton.addActionListener(actionListener3);
 
-        moveUpButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
+        moveUpButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
         buttonPane.add(moveUpButton);
         moveUpButton.setIcon(BaseUtils.readIcon("com/fr/design/images/control/up.png"));
         moveUpButton.addActionListener(actionListener4);
 
-        moveDownButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+        moveDownButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
         buttonPane.add(moveDownButton);
         moveDownButton.setIcon(BaseUtils.readIcon("com/fr/design/images/control/down.png"));
         moveDownButton.addActionListener(actionListener5);
@@ -492,7 +492,7 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
         this.add(conditonTypePane, BorderLayout.NORTH);
         conditonTypePane.setBorder(new ModLineBorder(ModLineBorder.BOTTOM));
 
-        UILabel conditionTypeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type") + ":");
+        UILabel conditionTypeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Type") + ":");
         conditonTypePane.add(conditionTypeLabel, BorderLayout.WEST);
         conditionTypeLabel.setBorder(BorderFactory.createEmptyBorder(0, 0, DOWN_PADDING, 0));
 
@@ -564,7 +564,7 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
 
         addControlPane.add(Box.createHorizontalStrut(STRUT_ONE));
 
-        addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add"), BaseUtils.readIcon("com/fr/base/images/cell/control/add.png"));
+        addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add"), BaseUtils.readIcon("com/fr/base/images/cell/control/add.png"));
         addButton.setMnemonic('A');
         addControlPane.add(addButton);
         addButton.addActionListener(actionListener2);
@@ -583,7 +583,7 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Submit_Condition");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Submit_Condition");
     }
 
     // samuel:移出来,方便调用
@@ -971,4 +971,4 @@ public abstract class LiteConditionPane<T extends Condition> extends BasicBeanPa
             return newCondition;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java
index 5bf3709b6..6dac67b1f 100644
--- a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java
+++ b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java
@@ -138,7 +138,7 @@ public abstract class BasicTableDataTreePane extends DockingView implements Resp
     }
 
     private boolean isProcedureName(String oldName) {
-        return oldName.length() >= PROCEDURE_NAME_INDEX && ComparatorUtils.equals(type, com.fr.design.i18n.Toolkit.i18nText("Datasource-Stored_Procedure"));
+        return oldName.length() >= PROCEDURE_NAME_INDEX && ComparatorUtils.equals(type, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Stored_Procedure"));
     }
 
 
@@ -383,7 +383,7 @@ public abstract class BasicTableDataTreePane extends DockingView implements Resp
         private TableDataTree dataTree;
 
         public PreviewTableDataAction(TableDataTree dataTree) {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
             this.setMnemonic('p');
             this.setSmallIcon(BaseUtils.readIcon(IconPathConstants.PREVIEW_ICON_PATH));
             this.dataTree = dataTree;
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java
index 9a9dccd45..dc891c1c6 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/ChoosePane.java
@@ -210,7 +210,7 @@ public class ChoosePane extends BasicBeanPane<DataBaseItems> implements Refresha
     protected void initComponentsLayout(PreviewLabel previewLabel, int labelSize) {
         UILabel l1 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Database") + ":");
         UILabel l2 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Model") + ":");
-        UILabel l3 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Table") + ":");
+        UILabel l3 = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Table") + ":");
 
         if (labelSize > 0) {
             Dimension pSize = new Dimension(labelSize, 25);
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java
index a24169b09..0107bd0b7 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java
@@ -56,7 +56,7 @@ public class TableDataCreatorProducer {
                 return true;
             }
         };
-        TableDataNameObjectCreator storeProcedure = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Datasource-Stored_Procedure"),
+        TableDataNameObjectCreator storeProcedure = new TableDataNameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Stored_Procedure"),
                 "Proc",
                 "/com/fr/design/images/data/store_procedure.png",
                 StoreProcedure.class, ProcedureDataPane.class) {
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataNameObjectCreator.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataNameObjectCreator.java
index 2b18c3e78..1ec28a97c 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataNameObjectCreator.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataNameObjectCreator.java
@@ -113,7 +113,7 @@ public class TableDataNameObjectCreator extends NameObjectCreator {
      * @return 提示
      */
     public String createTooltip() {
-        return b ? com.fr.design.i18n.Toolkit.i18nText("Connect_SQL_Cannot_Null") : null;
+        return b ? com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connect_SQL_Cannot_Null") : null;
     }
 
     public String getPrefix() {
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataSourceOP.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataSourceOP.java
index f6dcbaa52..9c1901390 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataSourceOP.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataSourceOP.java
@@ -100,7 +100,7 @@ public class TableDataSourceOP implements UserObjectOP<TableDataWrapper> {
     }
 
     private ExpandMutableTreeNode initTemplateDataNode(Map<String, TableDataWrapper> templateDataMap) {
-        ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("DS-TableData"), TEMPLATE_TABLE_DATA), true);
+        ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_DS_TableData"), TEMPLATE_TABLE_DATA), true);
         templateNode.addChildTreeNodes(getNodeArrayFromMap(templateDataMap));
         return templateNode;
     }
@@ -112,7 +112,7 @@ public class TableDataSourceOP implements UserObjectOP<TableDataWrapper> {
     }
 
     private ExpandMutableTreeNode initStoreProcedureNode(Map<String, TableDataWrapper> storeProcedureMap) {
-        ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("Datasource-Stored_Procedure"), STORE_PRECEDURE_DATA), false);
+        ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Stored_Procedure"), STORE_PRECEDURE_DATA), false);
         templateNode.addChildTreeNodes(getNodeArrayFromMap(storeProcedureMap));
         return templateNode;
     }
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java
index 607510aeb..e1d635f55 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataTreePane.java
@@ -233,7 +233,7 @@ public class TableDataTreePane extends BasicTableDataTreePane {
 
     private class EditAction extends UpdateAction {
         public EditAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
             this.setMnemonic('E');
             this.setSmallIcon(BaseUtils.readIcon(IconPathConstants.TD_EDIT_ICON_PATH));
         }
@@ -250,7 +250,7 @@ public class TableDataTreePane extends BasicTableDataTreePane {
     private class RemoveAction extends UpdateAction {
 
         public RemoveAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
             this.setMnemonic('R');
             this.setSmallIcon(BaseUtils.readIcon(IconPathConstants.TD_REMOVE_ICON_PATH));
         }
@@ -263,8 +263,8 @@ public class TableDataTreePane extends BasicTableDataTreePane {
                 return;
             }
 
-            int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + ":" + selectedNO.getName() + "?",
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
+            int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + ":" + selectedNO.getName() + "?",
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
             if (returnVal == JOptionPane.OK_OPTION) {
                 // richer:这个地方为什么要在DataSourceTree里面去remove呢?多此一举吧
                 op.removeAction(selectedNO.getName());
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataDictPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataDictPane.java
index 33a56b399..81c791282 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/TreeTableDataDictPane.java
@@ -127,7 +127,7 @@ public class TreeTableDataDictPane extends BasicPane implements Previewable {
         buildTreePanel.add(xxx, BorderLayout.CENTER);
         centerPane.add(buildTreePanel, BorderLayout.NORTH);
         JPanel previewPanel = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane();
-        UIButton treeDataPreviewButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        UIButton treeDataPreviewButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         previewPanel.add(treeDataPreviewButton);
         treeDataPreviewButton.addActionListener(new ActionListener() {
             @Override
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java
index 5cf887bdd..00b5eecf3 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/DatabaseConnectionPane.java
@@ -57,7 +57,7 @@ public abstract class DatabaseConnectionPane<E extends com.fr.data.impl.Connecti
         // 按钮.
         JPanel testPane = FRGUIPaneFactory.createNormalFlowInnerContainer_M_Pane();
         northPane.add(testPane, BorderLayout.NORTH);
-        UIButton testButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Datasource-Test_Connection"));
+        UIButton testButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection"));
         testPane.add(testButton);
         testButton.addActionListener(testConnectionActionListener);
         testPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 3, 4));
@@ -163,11 +163,11 @@ public abstract class DatabaseConnectionPane<E extends com.fr.data.impl.Connecti
 
     private void initDialogPane() {
 
-        message.setText(com.fr.design.i18n.Toolkit.i18nText("Datasource-Test_Connection") + "...");
+        message.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection") + "...");
         message.setBorder(BorderFactory.createEmptyBorder(8, 5, 0, 0));
         okButton.setEnabled(false);
 
-        dialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(DatabaseConnectionPane.this), com.fr.design.i18n.Toolkit.i18nText("Datasource-Test_Connection"), true);
+        dialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(DatabaseConnectionPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection"), true);
         dialog.setSize(new Dimension(268, 118));
         okButton.setEnabled(false);
         JPanel jp = new JPanel();
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java
index f0ffd8af2..1f999fa27 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/JDBCDefPane.java
@@ -129,7 +129,7 @@ public class JDBCDefPane extends JPanel {
 		urlComPane = TableLayoutHelper.createCommonTableLayoutPane(urlComComponents, urlRowSize, urlColumnSize, 4);
 
 		JPanel userPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane();
-		userPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Username") + ":"));
+		userPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_UserName") + ":"));
 		JPanel userComPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 		Component[][] userComComponents = {{userNameTextField, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Password") + ":"), passwordTextField}};
 		double[] userRowSize = {p};
@@ -336,7 +336,7 @@ public class JDBCDefPane extends JPanel {
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Max_Idle") + ":", SwingConstants.RIGHT), DBCP_MAX_IDLE},
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Min_Idle") + ":", SwingConstants.RIGHT), DBCP_MIN_IDLE},
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connection_Pool_Max_Wait_Time") + ":" , SwingConstants.RIGHT), DBCP_MAX_WAIT},
-					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("DBCP_VALIDATION_QUERY") + ":", SwingConstants.RIGHT), DBCP_VALIDATION_QUERY},
+					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Validation_Query") + ":", SwingConstants.RIGHT), DBCP_VALIDATION_QUERY},
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Borrow") + ":", SwingConstants.RIGHT), DBCP_TESTONBORROW},
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_On_Return") + ":", SwingConstants.RIGHT), DBCP_TESTONRETURN},
 					{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Dbcp_Test_While_Idle") + ":", SwingConstants.RIGHT), DBCP_TESTWHILEIDLE},
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTableModel.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTableModel.java
index 66a8faf50..ffa79ba9c 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTableModel.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTableModel.java
@@ -100,7 +100,7 @@ public class PreviewTableModel extends AbstractTableModel {
         } catch (TableDataException e) {
             FRContext.getLogger().error(e.getMessage(), e);
             DesignUtils.errorMessage(e.getMessage());
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Error");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Error");
         }
     }
 
@@ -149,7 +149,7 @@ public class PreviewTableModel extends AbstractTableModel {
         }
 
         public String getColumnName(int column) {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Error");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Error");
         }
 
         public int getColumnCount() {
@@ -166,7 +166,7 @@ public class PreviewTableModel extends AbstractTableModel {
 
     private String checkType(int column) {
         if (dateIndexs.contain(column)) {
-            String s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date");
+            String s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date");
             return ("(" + s + ")");
         }
 
@@ -192,23 +192,23 @@ public class PreviewTableModel extends AbstractTableModel {
                 Class clzz = ((EmbeddedTDDataModel) dataModel).getColumnClass(column);
                 if (clzz != null) {
                     if (Number.class.isAssignableFrom(clzz)) {
-                    s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Number");//bigdecimal
+                    s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Number");//bigdecimal
                     } else if (java.sql.Date.class.isAssignableFrom(clzz)) {
-                        s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date");
+                        s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date");
                     }
                 }
             }
         } else if (o instanceof Integer) {
             s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Integer");
         } else if (o instanceof Double || o instanceof Float) {
-            s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Double");
+            s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Double");
         } else if (o instanceof java.sql.Date || o instanceof java.util.Date) {
-            s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date");
+            s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date");
         } else if (o instanceof Number) {
-            s = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Number");//bigdecimal
+            s = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Number");//bigdecimal
         } else {
             s = "?";
         }
         return ("(" + s + ")");
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java
index 8fbb37117..6b64f77b7 100644
--- a/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java
+++ b/designer-base/src/main/java/com/fr/design/data/datapane/preview/PreviewTablePane.java
@@ -171,7 +171,7 @@ public class PreviewTablePane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview");
     }
 
     private void addLoadedListener(LoadedEventListener l) {
@@ -265,7 +265,7 @@ public class PreviewTablePane extends BasicPane {
      */
     public static EmbeddedTableData previewTableData(TableData tableData, final int keyIndex, final int valueIndex) {
         PreviewTablePane previewTablePane = new PreviewTablePane();
-        previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Data")));
+        previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Data")));
         try {
             previewTablePane.populate(tableData);
             previewTablePane.resetPreviewTableColumnColor();
@@ -301,7 +301,7 @@ public class PreviewTablePane extends BasicPane {
             return;
         }
         FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
-        JOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), columnErrMessage, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Error"), JOptionPane.ERROR_MESSAGE);
+        JOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), columnErrMessage, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Error"), JOptionPane.ERROR_MESSAGE);
     }
 
     private void populate(TableData tableData) throws Exception {
@@ -420,7 +420,7 @@ public class PreviewTablePane extends BasicPane {
     public static void previewStoreData(final ProcedureDataModel storeProcedureDataModel, final int keyIndex, final int valueIndex) {
         final PreviewTablePane previewTablePane = new PreviewTablePane();
         previewTablePane.storeProcedureDataModel = storeProcedureDataModel;
-        previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Data")));
+        previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Data")));
 
         try {
             previewTablePane.populateStoreDataSQL();
@@ -451,7 +451,7 @@ public class PreviewTablePane extends BasicPane {
         for (int i = 0; i < tableSize; i++) {
             PreviewTablePane previewTablePane = new PreviewTablePane();
             previewTablePane.storeProcedureDataModel = storeProcedureDataModels[i];
-            previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Data")));
+            previewTablePane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Data")));
             try {
                 previewTablePane.populateStoreDataSQL();
             } catch (Exception e) {
@@ -464,7 +464,7 @@ public class PreviewTablePane extends BasicPane {
 
             @Override
             protected String title4PopupWindow() {
-                return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview");
             }
 
         };
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java
index 8debb687d..4640a65a5 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ClassTableDataPane.java
@@ -120,7 +120,7 @@ public class ClassTableDataPane extends AbstractTableDataPane<ClassTableData> {
 
     public class AddParaAction extends UITableEditAction {
         public AddParaAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add"));
             this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/buttonicon/add.png"));
         }
 
@@ -136,7 +136,7 @@ public class ClassTableDataPane extends AbstractTableDataPane<ClassTableData> {
     }
     private class RemoveParaAction extends UITableEditAction {
         public RemoveParaAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
             this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/control/remove.png"));
         }
 
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java
index e6dad40ea..37ba91466 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DBTableDataPane.java
@@ -54,8 +54,8 @@ import java.util.List;
 
 public class DBTableDataPane extends AbstractTableDataPane<DBTableData> {
 	private static final int BOTTOM = 6;
-	private static final String PREVIEW_BUTTON = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview");
-    private static final String REFRESH_BUTTON = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh");
+	private static final String PREVIEW_BUTTON = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview");
+    private static final String REFRESH_BUTTON = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh");
 	private ConnectionTableProcedurePane connectionTableProcedurePane;
 	private UITableEditorPane<ParameterProvider> editorPane;
 
@@ -274,7 +274,7 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> {
 				throw new Exception(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connect_SQL_Cannot_Null") + ".");
 			} catch (Exception e) {
 				// JOptionPane.showMessageDialog(DBTableDataPane.this,
-				// com.fr.design.i18n.Toolkit.i18nText("Connect_SQL_Cannot_Null") + ".");
+				// com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Connect_SQL_Cannot_Null") + ".");
 			}
 		}
 
@@ -383,4 +383,4 @@ public class DBTableDataPane extends AbstractTableDataPane<DBTableData> {
 			return title;
 		}
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DecoratedTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DecoratedTableDataPane.java
index 2ab3fee59..42332f1cf 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DecoratedTableDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/DecoratedTableDataPane.java
@@ -27,7 +27,7 @@ public class DecoratedTableDataPane extends AbstractTableDataPane<DecoratedTable
 		while (serverTableDataNameIterator.hasNext()) {
 			tableDataNameList.add((String)serverTableDataNameIterator.next());
 		}
-		availableTableDataNameList = new CheckBoxList(tableDataNameList.toArray(new String[0]), CheckBoxList.SelectedState.NONE,com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Chart_Field_Name"));
+		availableTableDataNameList = new CheckBoxList(tableDataNameList.toArray(new String[0]), CheckBoxList.SelectedState.NONE,com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Chart_Field_Name"));
 		this.add(availableTableDataNameList, BorderLayout.WEST);
 		availableTableDataNameList.addCheckBoxListSelectionChangeListener(this);
 		
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataDefinedPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataDefinedPane.java
index de0d6974c..0a94d80ff 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataDefinedPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataDefinedPane.java
@@ -214,7 +214,7 @@ public class EmbeddedTableDataDefinedPane extends BasicPane{
         private String[] COLUMN_NAME = {
               	 "", 
               	 com.fr.design.i18n.Toolkit.i18nText("ColumnName"),
-              	 com.fr.design.i18n.Toolkit.i18nText("Type")
+              	 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type")
               };
         private int sum = 0;
 
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java
index 5113b5ac5..1e1e7f453 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/EmbeddedTableDataPane.java
@@ -134,7 +134,7 @@ public class EmbeddedTableDataPane extends AbstractTableDataPane<EmbeddedTableDa
         });
 
         // DataSourceEditor-Insert_Row
-        insertRowButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Insert_Row"));
+        insertRowButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Insert_Row"));
         insertRowButton.setMnemonic('I');
         northPane.add(insertRowButton);
         insertRowButton.addActionListener(new ActionListener() {
@@ -144,7 +144,7 @@ public class EmbeddedTableDataPane extends AbstractTableDataPane<EmbeddedTableDa
         });
 
         // DataSourceEditor-Remove_Row
-        removeRowButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Delete_Row"));
+        removeRowButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Delete_Row"));
         removeRowButton.setMnemonic('R');
         northPane.add(removeRowButton);
         removeRowButton.addActionListener(new ActionListener() {
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java
index 1a37065e4..3a64aa075 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/FileTableDataPane.java
@@ -123,7 +123,7 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
         this.setLayout(new BorderLayout(gap,0));
         JPanel northPanel = new JPanel(new BorderLayout());
         JPanel type = new JPanel();
-        type.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Utils-File_type") + ":"));
+        type.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_File_Type") + ":"));
         String[] item = {"TXT", "Excel", "XML"};
         fileTypeComboBox = new UIComboBox(item);
         fileTypeComboBox.setPreferredSize(new Dimension(100, 20));
@@ -151,7 +151,7 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
         JPanel setPanel = new JPanel();
         southPanel.add(setPanel, BorderLayout.CENTER);
         setPanel.setPreferredSize(new Dimension(setPanelWidth, 460));
-        setPanel.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set")));
+        setPanel.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set")));
         JPanel controlPane = textSetPanel(width,height);
         setPanel.add(controlPane, BorderLayout.NORTH);
         fileTypeComboBox.addActionListener(getFileTypeListener(setPanel,width,height));
@@ -176,10 +176,10 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
         urlText = new UITextField();
         urlText.setPreferredSize(new Dimension(195, 20));
         urlText.setEditable(false);
-        chooseFile = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Selection"));
+        chooseFile = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Selection"));
         chooseFile.addActionListener(chooseFileListener);
 
-        testConnection = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Datasource-Test_Connection"));
+        testConnection = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection"));
         testConnection.setEnabled(false);
         testConnection.addActionListener(testConnectionListener);// 测试连接按钮
 
@@ -236,7 +236,7 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
 
     private void previewPanel(JPanel jPanel){
         JPanel previewPanel = new JPanel(new BorderLayout());
-        UIButton preview = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        UIButton preview = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         preview.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 preview();
@@ -355,8 +355,8 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
         spaceDismenberRadioButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Space"));
         commaDismenberRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Comma_Dismenber"), false);
         commaDismenberRadioButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Comma_Dismenber"));
-        otherDismenberRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other") + ":", false);
-        otherDismenberRadioButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other"));
+        otherDismenberRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other") + ":", false);
+        otherDismenberRadioButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other"));
         otherDismenberTextField = new UITextField(8);
         otherDismenberTextField.setEditable(false);
         otherDismenberRadioButton.addChangeListener(new ChangeListener() {
@@ -487,7 +487,7 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
 
     private class RefreshAction extends UITableEditAction {
         public RefreshAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"));
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/refresh.png"));
         }
 
@@ -800,7 +800,7 @@ public class FileTableDataPane extends AbstractTableDataPane<FileTableData> {
 
         private class RefreshParameterAction extends UpdateAction {
             public RefreshParameterAction() {
-                this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"));
+                this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"));
                 this.setMnemonic('r');
                 this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/refresh.png"));
             }
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureDataPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureDataPane.java
index 169d562e4..1595ee045 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureDataPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureDataPane.java
@@ -51,7 +51,7 @@ public class ProcedureDataPane extends AbstractTableDataPane<StoreProcedure> imp
             "com.mysql.jdbc.Driver",
             "org.gjt.mm.mysql.Driver"
     }; // 需要隐藏面板的数据库的驱动
-    private static final String PREVIEW_BUTTON = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview");
+    private static final String PREVIEW_BUTTON = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview");
     private ConnectionTableProcedurePane connectionTableProcedurePane;
     private JPanel cardpane;
     private CardLayout cardLayout;
@@ -357,7 +357,7 @@ public class ProcedureDataPane extends AbstractTableDataPane<StoreProcedure> imp
 
     protected class RefreshAction extends UITableEditAction {
         public RefreshAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"));
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/refresh.png"));
         }
 
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureManagerPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureManagerPane.java
index 3c306e8df..ff905a3fd 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureManagerPane.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/ProcedureManagerPane.java
@@ -22,7 +22,7 @@ public class ProcedureManagerPane extends LoadingBasicPane {
 	
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Datasource-Stored_Procedure");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Datasource_Stored_Procedure");
 	}
 
 	public void populate(ProcedureConfig procedureConfig) {
diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/StoreProcedureTableModel.java b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/StoreProcedureTableModel.java
index b9276310f..6fce66b48 100644
--- a/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/StoreProcedureTableModel.java
+++ b/designer-base/src/main/java/com/fr/design/data/tabledata/tabledatapane/StoreProcedureTableModel.java
@@ -18,7 +18,7 @@ import com.fr.design.dialog.DialogActionAdapter;
 public class StoreProcedureTableModel extends UITableModelAdapter<StoreProcedureParameter> {
 
 	public StoreProcedureTableModel() {
-		super(new String[] { com.fr.design.i18n.Toolkit.i18nText("Parameter"), com.fr.design.i18n.Toolkit.i18nText("Type"), com.fr.design.i18n.Toolkit.i18nText("Model"), com.fr.design.i18n.Toolkit.i18nText("Value") });
+		super(new String[] { com.fr.design.i18n.Toolkit.i18nText("Parameter"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type"), com.fr.design.i18n.Toolkit.i18nText("Model"), com.fr.design.i18n.Toolkit.i18nText("Value") });
 		if (shouldResponseDoubleClickAction()) {
             table.addMouseListener(new MouseAdapter() {
 
@@ -136,4 +136,4 @@ public class StoreProcedureTableModel extends UITableModelAdapter<StoreProcedure
 		}
 
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java b/designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java
index fbbf114db..804a5057a 100644
--- a/designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java
+++ b/designer-base/src/main/java/com/fr/design/editor/DoubleDeckValueEditorPane.java
@@ -67,7 +67,7 @@ public class DoubleDeckValueEditorPane extends BasicPane implements UIObserver,
         jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         JPanel content = (JPanel) jf.getContentPane();
         content.setLayout(new BorderLayout());
-        content.add(new DoubleDeckValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor(), new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"))}), BorderLayout.NORTH);
+        content.add(new DoubleDeckValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor(), new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"))}), BorderLayout.NORTH);
         GUICoreUtils.centerWindow(jf);
         jf.setSize(290, 400);
         jf.setVisible(true);
@@ -238,7 +238,7 @@ public class DoubleDeckValueEditorPane extends BasicPane implements UIObserver,
         Object columnIndex = currentEditor.getValue();
         Object columnName = StringUtils.EMPTY;
 
-        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula"))) {
+        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula"))) {
             columnIndex = BaseFormula.createFormulaBuilder().build(columnIndex == null ? "" : columnIndex.toString());
         }
 
@@ -254,7 +254,7 @@ public class DoubleDeckValueEditorPane extends BasicPane implements UIObserver,
         Object columnIndex = currentEditor.getValue();
         Object columnName = StringUtils.EMPTY;
 
-        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula"))) {
+        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula"))) {
             columnIndex = BaseFormula.createFormulaBuilder().build(columnIndex == null ? "" : columnIndex.toString());
         }
 
@@ -426,4 +426,4 @@ public class DoubleDeckValueEditorPane extends BasicPane implements UIObserver,
     public boolean shouldResponseChangeListener() {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java
index c7709174f..e77194741 100644
--- a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java
+++ b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPane.java
@@ -219,7 +219,7 @@ public class ValueEditorPane extends BasicPane implements UIObserver, GlobalName
         Object columnIndex = currentEditor.getValue();
         Object columnName = StringUtils.EMPTY;
 
-        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula"))) {
+        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula"))) {
             columnIndex = BaseFormula.createFormulaBuilder().build(columnIndex == null ? "" : columnIndex.toString());
         }
 
@@ -235,7 +235,7 @@ public class ValueEditorPane extends BasicPane implements UIObserver, GlobalName
         Object columnIndex = currentEditor.getValue();
         Object columnName = StringUtils.EMPTY;
 
-        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula"))) {
+        if (ComparatorUtils.equals(name, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula"))) {
             columnIndex = BaseFormula.createFormulaBuilder().build(columnIndex == null ? "" : columnIndex.toString());
         }
 
diff --git a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPaneFactory.java b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPaneFactory.java
index 17e506f70..71959b72d 100644
--- a/designer-base/src/main/java/com/fr/design/editor/ValueEditorPaneFactory.java
+++ b/designer-base/src/main/java/com/fr/design/editor/ValueEditorPaneFactory.java
@@ -83,7 +83,7 @@ public class ValueEditorPaneFactory {
      * @return 返回公式编辑器面板
      */
     public static ValueEditorPane createFormulaValueEditorPane() {
-        return createValueEditorPane(new Editor[]{new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"))},
+        return createValueEditorPane(new Editor[]{new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"))},
                 StringUtils.EMPTY, StringUtils.EMPTY);
     }
 
@@ -227,12 +227,12 @@ public class ValueEditorPaneFactory {
      * @return 值编辑器
      */
     public static Editor<?>[] basicEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new TextEditor(),
                 new SpinnerIntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor
         };
@@ -244,15 +244,15 @@ public class ValueEditorPaneFactory {
      * @return 值编辑器
      */
     public static Editor<?>[] formEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor,
-                new WidgetNameEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget"))
+                new WidgetNameEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget"))
         };
     }
 
@@ -262,16 +262,16 @@ public class ValueEditorPaneFactory {
      * @return 值编辑器
      */
     public static Editor<?>[] extendedEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor,
                 new ParameterEditor(),
-                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"))
+                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"))
         };
     }
 
@@ -281,16 +281,16 @@ public class ValueEditorPaneFactory {
      * @return 值编辑器
      */
     public static Editor<?>[] extendedCellGroupEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor,
                 new ParameterEditor(),
-                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell")),
+                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell")),
                 new ColumnRowGroupEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell_Group"))
         };
     }
@@ -302,7 +302,7 @@ public class ValueEditorPaneFactory {
      */
     public static Editor<?>[] cellGroupEditor() {
         return new Editor[]{
-                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell")),
+                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell")),
                 new ColumnRowGroupEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell_Group"))
         };
     }
@@ -316,7 +316,7 @@ public class ValueEditorPaneFactory {
      */
     public static Editor<?>[] URLEditors(String popupName, String textEditorValue) {
         return new Editor[]{
-                new NoneEditor(textEditorValue, StringUtils.isEmpty(popupName) ? com.fr.design.i18n.Toolkit.i18nText("FR-Designer_None") : popupName),
+                new NoneEditor(textEditorValue, StringUtils.isEmpty(popupName) ? com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_None") : popupName),
                 new TextEditor()
         };
     }
@@ -330,9 +330,9 @@ public class ValueEditorPaneFactory {
      */
     public static Editor<?>[] dateEditors(String popupName, String textEditorValue) {
         return new Editor[]{
-                new NoneEditor(textEditorValue, StringUtils.isEmpty(popupName) ? com.fr.design.i18n.Toolkit.i18nText("FR-Designer_None") : popupName),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
-                new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"))
+                new NoneEditor(textEditorValue, StringUtils.isEmpty(popupName) ? com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_None") : popupName),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
+                new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"))
         };
     }
 
@@ -342,17 +342,17 @@ public class ValueEditorPaneFactory {
      * @return 值编辑器
      */
     public static Editor<?>[] allEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
 //        formulaEditor.setEnabled(true);
         return new Editor[]{
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor,
                 new ParameterEditor(),
-                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell")),
+                new ColumnRowEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell")),
                 new ColumnSelectedEditor(),
                 //23328 allEditors中删除控件选项
 //                new WidgetNameEditor(com.fr.design.i18n.Toolkit.i18nText("Widget"))
@@ -369,7 +369,7 @@ public class ValueEditorPaneFactory {
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
         };
     }
@@ -380,12 +380,12 @@ public class ValueEditorPaneFactory {
      * @return 编辑器
      */
     public static Editor<?>[] noCRnoColumnEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor,
                 new ParameterEditor(),
@@ -398,7 +398,7 @@ public class ValueEditorPaneFactory {
      * @return 编辑器
      */
     public static Editor<?>[] numberEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
                 new IntegerEditor(),
                 new DoubleEditor(),
@@ -413,9 +413,9 @@ public class ValueEditorPaneFactory {
      * @return 编辑器
      */
     public static Editor<?>[] dateEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         return new Editor[]{
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 formulaEditor,
                 new ParameterEditor(),
         };
@@ -427,14 +427,14 @@ public class ValueEditorPaneFactory {
      * @return 存储过程的编辑器
      */
     public static Editor<?>[] StoreProcedureEditors() {
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         formulaEditor.setEnabled(true);
         return new Editor[]{
                 new CursorEditor(),
                 new TextEditor(),
                 new IntegerEditor(),
                 new DoubleEditor(),
-                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")),
+                new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")),
                 new BooleanEditor(),
                 formulaEditor
         };
@@ -451,10 +451,10 @@ public class ValueEditorPaneFactory {
         list.add(new TextEditor());
         list.add(new IntegerEditor());
         list.add(new DoubleEditor());
-        list.add(new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date")));
+        list.add(new DateEditor(true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date")));
         list.add(new BooleanEditor());
 
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         formulaEditor.setEnabled(true);
         list.add(formulaEditor);
 
@@ -498,10 +498,10 @@ public class ValueEditorPaneFactory {
 
         JPanel paneRight = FRGUIPaneFactory.createBorderLayout_S_Pane();
         pane.add(paneRight);
-        paneRight.add(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Display_Value") + ":"), BorderLayout.NORTH);
+        paneRight.add(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value") + ":"), BorderLayout.NORTH);
 
         paneRight.add(valueDictPane, BorderLayout.CENTER);
 
         return pane;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginAbstractLoadingViewPane.java b/designer-base/src/main/java/com/fr/design/extra/PluginAbstractLoadingViewPane.java
index d2b30d312..0eb114466 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginAbstractLoadingViewPane.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginAbstractLoadingViewPane.java
@@ -98,7 +98,7 @@ public abstract class PluginAbstractLoadingViewPane<V, T> extends PluginAbstract
 
             @Override
             public String textForInstallButton() {
-                return com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Install");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install");
             }
 
 
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginFromStorePane.java b/designer-base/src/main/java/com/fr/design/extra/PluginFromStorePane.java
index e8d2c2f10..3f7caf2fb 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginFromStorePane.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginFromStorePane.java
@@ -59,7 +59,7 @@ public class PluginFromStorePane extends PluginAbstractLoadingViewPane<List<Plug
 
             @Override
             public String textForInstallButton() {
-                return com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Install");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install");
             }
 
 
@@ -107,7 +107,7 @@ public class PluginFromStorePane extends PluginAbstractLoadingViewPane<List<Plug
 
             @Override
             public String textForInstallButton() {
-                return com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Install");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install");
             }
 
 
@@ -179,12 +179,12 @@ public class PluginFromStorePane extends PluginAbstractLoadingViewPane<List<Plug
                         FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Install_Success"));
                         JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install_Successful"));
                     } else {
-                        JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+                        JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
                     }
                 }
             });
         } catch (Exception e1) {
-            JOptionPane.showMessageDialog(PluginFromStorePane.this, e1.getMessage(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(PluginFromStorePane.this, e1.getMessage(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 
@@ -235,4 +235,4 @@ public class PluginFromStorePane extends PluginAbstractLoadingViewPane<List<Plug
     protected String title4PopupWindow() {
         return "All";
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginInstalledPane.java b/designer-base/src/main/java/com/fr/design/extra/PluginInstalledPane.java
index 3892ea1cc..0e3fb050a 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginInstalledPane.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginInstalledPane.java
@@ -69,7 +69,7 @@ public class PluginInstalledPane extends PluginAbstractViewPane {
                                 if (result.isSuccess()) {
                                     JOptionPane.showMessageDialog(null, modifyMessage);
                                 } else {
-                                    JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+                                    JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
                                 }
                             }
                         });
@@ -80,7 +80,7 @@ public class PluginInstalledPane extends PluginAbstractViewPane {
                                 if (result.isSuccess()) {
                                     JOptionPane.showMessageDialog(null, modifyMessage);
                                 } else {
-                                    JOptionPane.showMessageDialog(null,PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+                                    JOptionPane.showMessageDialog(null,PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
                                 }
                             }
                         });
@@ -118,7 +118,7 @@ public class PluginInstalledPane extends PluginAbstractViewPane {
         int rv = JOptionPane.showOptionDialog(
                 PluginInstalledPane.this,
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Will_Be_Delete"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                 JOptionPane.YES_NO_CANCEL_OPTION,
                 JOptionPane.INFORMATION_MESSAGE,
                 null,
@@ -135,7 +135,7 @@ public class PluginInstalledPane extends PluginAbstractViewPane {
         try {
             controlPane.deletePlugin(plugin);
         } catch (Exception e) {
-            JOptionPane.showMessageDialog(PluginInstalledPane.this, e.getMessage(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(PluginInstalledPane.this, e.getMessage(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
 
         if (rv == JOptionPane.OK_OPTION) {
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java b/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java
index e2fc12efe..36f325521 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginOperateUtils.java
@@ -95,7 +95,7 @@ public class PluginOperateUtils {
                 int rv = JOptionPane.showConfirmDialog(
                         null,
                         com.fr.design.i18n.Toolkit.i18nText("FR-Plugin_Delete_Confirmed"),
-                        com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                         JOptionPane.OK_CANCEL_OPTION,
                         JOptionPane.INFORMATION_MESSAGE
                 );
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginUpdatePane.java b/designer-base/src/main/java/com/fr/design/extra/PluginUpdatePane.java
index 459164f83..a7fd56205 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginUpdatePane.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginUpdatePane.java
@@ -136,7 +136,7 @@ public class PluginUpdatePane extends PluginAbstractLoadingViewPane<List<PluginV
      */
     public void loadOnSuccess(List<PluginView> plugins) {
         controlPane.loadPlugins(plugins);
-        tabbedPane.setTitleAt(1, com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Update") + "(" + plugins.size() + ")");
+        tabbedPane.setTitleAt(1, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update") + "(" + plugins.size() + ")");
     }
 
     /**
@@ -201,7 +201,7 @@ public class PluginUpdatePane extends PluginAbstractLoadingViewPane<List<PluginV
                     FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Update_Success"));
                     JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install_Successful"));
                 } else {
-                    JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+                    JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
                 }
             }
         });
@@ -221,4 +221,4 @@ public class PluginUpdatePane extends PluginAbstractLoadingViewPane<List<PluginV
     protected String title4PopupWindow() {
         return "Update";
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginUtils.java b/designer-base/src/main/java/com/fr/design/extra/PluginUtils.java
index ce67a97c2..6856bc003 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginUtils.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginUtils.java
@@ -104,7 +104,7 @@ public class PluginUtils {
             writer.flush();
             writer.close();
         } else {
-            throw new com.fr.plugin.PluginVerifyException(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Connect_Server_Error"));
+            throw new com.fr.plugin.PluginVerifyException(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Connect_Server_Error"));
         }
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java b/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java
index 443a2b44e..ba2ee26f3 100644
--- a/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java
+++ b/designer-base/src/main/java/com/fr/design/extra/PluginWebBridge.java
@@ -380,7 +380,7 @@ public class PluginWebBridge {
         int rv = JOptionPane.showOptionDialog(
                 null,
                 message,
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                 JOptionPane.YES_NO_OPTION,
                 JOptionPane.INFORMATION_MESSAGE,
                 null,
diff --git a/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java b/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java
index cc56a9c1b..7c2f09bec 100644
--- a/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java
+++ b/designer-base/src/main/java/com/fr/design/extra/WebViewDlgHelper.java
@@ -65,7 +65,7 @@ public class WebViewDlgHelper {
                 int rv = JOptionPane.showConfirmDialog(
                         null,
                         com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"),
-                        com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                         JOptionPane.OK_CANCEL_OPTION,
                         JOptionPane.INFORMATION_MESSAGE
                 );
@@ -82,7 +82,7 @@ public class WebViewDlgHelper {
                 int rv = JOptionPane.showConfirmDialog(
                         null,
                         com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install_Version"),
-                        com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                         JOptionPane.OK_CANCEL_OPTION,
                         JOptionPane.INFORMATION_MESSAGE
                 );
@@ -202,7 +202,7 @@ public class WebViewDlgHelper {
         int rv = JOptionPane.showConfirmDialog(
                 null,
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Install"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                 JOptionPane.OK_CANCEL_OPTION,
                 JOptionPane.INFORMATION_MESSAGE
         );
@@ -249,7 +249,7 @@ public class WebViewDlgHelper {
         UITabbedPane tabbedPane = new UITabbedPane();
         PluginInstalledPane installedPane = new PluginInstalledPane();
         tabbedPane.addTab(installedPane.tabTitle(), installedPane);
-        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Update"), new PluginUpdatePane(tabbedPane));
+        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update"), new PluginUpdatePane(tabbedPane));
         tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_All_Plugins"), new PluginFromStorePane(tabbedPane));
         return tabbedPane;
     }
@@ -266,7 +266,7 @@ public class WebViewDlgHelper {
                         }
                     });
                 } catch (PluginVerifyException e) {
-                    JOptionPane.showMessageDialog(null, e.getMessage(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+                    JOptionPane.showMessageDialog(null, e.getMessage(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
                     return false;
                 } catch (Exception e) {
                     FineLoggerFactory.getLogger().error(e.getMessage(), e);
@@ -306,7 +306,7 @@ public class WebViewDlgHelper {
                         int rv = JOptionPane.showConfirmDialog(
                                 null,
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Shop_Need_Update"),
-                                com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                                 JOptionPane.OK_CANCEL_OPTION,
                                 JOptionPane.INFORMATION_MESSAGE
                         );
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallFromDiskCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallFromDiskCallback.java
index c489f4db4..27873385a 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallFromDiskCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallFromDiskCallback.java
@@ -43,7 +43,7 @@ public class InstallFromDiskCallback extends AbstractPluginTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install_Dependence")),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
@@ -63,7 +63,7 @@ public class InstallFromDiskCallback extends AbstractPluginTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Has_Install_Lower"),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallOnlineCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallOnlineCallback.java
index 48abd65ac..9b86641e6 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallOnlineCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/InstallOnlineCallback.java
@@ -41,7 +41,7 @@ public class InstallOnlineCallback extends AbstractDealPreTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Has_Install_Lower"),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
@@ -56,7 +56,7 @@ public class InstallOnlineCallback extends AbstractDealPreTaskCallback {
         }else {
             jsCallback.execute("failed");
             FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Install_Failed"));
-            JOptionPane.showMessageDialog(null, pluginInfo, com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, pluginInfo, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/ModifyStatusCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/ModifyStatusCallback.java
index a945e8544..301959423 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/ModifyStatusCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/ModifyStatusCallback.java
@@ -25,7 +25,7 @@ public class ModifyStatusCallback implements PluginTaskCallback{
             String modifyMessage = isActive ? com.fr.design.i18n.Toolkit.i18nText("FR-Plugin_Has_Been_Disabled") : com.fr.design.i18n.Toolkit.i18nText("FR-Plugin_Has_Been_Actived");
             JOptionPane.showMessageDialog(null, modifyMessage);
         } else {
-            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UninstallPluginCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UninstallPluginCallback.java
index 3decde21b..f50377699 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UninstallPluginCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UninstallPluginCallback.java
@@ -31,7 +31,7 @@ public class UninstallPluginCallback extends AbstractPluginTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Delete_Dependence")),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
@@ -45,7 +45,7 @@ public class UninstallPluginCallback extends AbstractPluginTaskCallback {
         } else {
             jsCallback.execute("failed");
             FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Delete_Failed"));
-            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateFromDiskCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateFromDiskCallback.java
index 990da7e20..de753f9ce 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateFromDiskCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateFromDiskCallback.java
@@ -43,7 +43,7 @@ public class UpdateFromDiskCallback extends AbstractPluginTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update_Dependence")),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
@@ -63,7 +63,7 @@ public class UpdateFromDiskCallback extends AbstractPluginTaskCallback {
             int rv = JOptionPane.showOptionDialog(
                     null,
                     com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_No_Plugin_Update"),
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"),
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE,
                     null,
@@ -77,7 +77,7 @@ public class UpdateFromDiskCallback extends AbstractPluginTaskCallback {
         }else {
             jsCallback.execute("failed");
             FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update_Failed"));
-            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateOnlineCallback.java b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateOnlineCallback.java
index 182b4319a..c857960c7 100644
--- a/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateOnlineCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/exe/callback/UpdateOnlineCallback.java
@@ -36,7 +36,7 @@ public class UpdateOnlineCallback extends AbstractDealPreTaskCallback {
         } else {
             jsCallback.execute("failed");
             FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Update_Failed"));
-            JOptionPane.showMessageDialog(null, pluginInfo, com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, pluginInfo, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/extra/tradition/callback/UpdateOnlineCallback.java b/designer-base/src/main/java/com/fr/design/extra/tradition/callback/UpdateOnlineCallback.java
index e08bc9609..193ad0c00 100644
--- a/designer-base/src/main/java/com/fr/design/extra/tradition/callback/UpdateOnlineCallback.java
+++ b/designer-base/src/main/java/com/fr/design/extra/tradition/callback/UpdateOnlineCallback.java
@@ -50,7 +50,7 @@ public class UpdateOnlineCallback implements ProgressCallback {
             PluginManager.getController().update(pluginMarker, toPluginMarker, new UpdateOnlineCallback(pluginMarker, toPluginMarker, pane));
         } else {
             FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Delete_Failed"));
-            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
+            JOptionPane.showMessageDialog(null, PluginUtils.getMessageByErrorCode(result.errorCode()), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Plugin_Warning"), JOptionPane.ERROR_MESSAGE);
         }
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java b/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java
index 20786fa18..b1cb56ede 100644
--- a/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java
+++ b/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java
@@ -167,7 +167,7 @@ public class MutilTempalteTabPane extends JComponent implements MouseListener, M
         this.addMouseMotionListener(this);
         this.setBorder(null);
         this.setForeground(new Color(58, 56, 58));
-        this.setFont(new Font(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Song_TypeFace"), 0, 12));
+        this.setFont(new Font(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Song_TypeFace"), 0, 12));
         openedTemplate = HistoryTemplateListPane.getInstance().getHistoryList();
         selectedIndex = openedTemplate.size() - 1;
         Toolkit.getDefaultToolkit().addAWTEventListener(awt, AWTEvent.MOUSE_EVENT_MASK);
@@ -695,7 +695,7 @@ public class MutilTempalteTabPane extends JComponent implements MouseListener, M
                 if (DesignerMode.isAuthorityEditing() && !openedTemplate.get(selectedIndex).isJWorkBook()) {
                     DesignerContext.getDesignerFrame().addAndActivateJTemplate(openedTemplate.get(tempSelectedIndex));
                     JOptionPane.showMessageDialog(this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Form_Authority_Edited_Cannot_Be_Supported")
-                            + "!", com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Alert"), JOptionPane.WARNING_MESSAGE);
+                            + "!", com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Alert"), JOptionPane.WARNING_MESSAGE);
                     this.repaint();
                     return;
                 }
diff --git a/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java b/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java
index 4a4c03e51..295b63385 100644
--- a/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java
+++ b/designer-base/src/main/java/com/fr/design/file/SaveSomeTemplatePane.java
@@ -1 +1 @@
-package com.fr.design.file;

import com.fr.design.dialog.BasicDialog;
import com.fr.design.dialog.BasicPane;
import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.icontainer.UIScrollPane;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.ilist.UIList;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.JTemplate;
import com.fr.general.ComparatorUtils;

import com.fr.log.FineLoggerFactory;
import com.fr.stable.ProductConstants;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.ArrayList;

/**
 * Author : daisy
 * Date: 13-8-9
 * Time: 下午3:41
 */
public class SaveSomeTemplatePane extends BasicPane {

    private UICheckBox[] templateCheckBoxes = null;
    private BasicDialog dialog;
    private JPanel templatesChoosePane;
    private UIScrollPane scrollPane;
    private java.util.List<JTemplate<?, ?>> unSavedTemplate = new ArrayList<JTemplate<?, ?>>();
    private boolean isAllSaved = false;

    //该变量用来判断是在关闭其他模板或是关闭设计器的时候,是否需要判断当前模板有没有保存
    private boolean isJudgeCurrentEditingTemplate = true;

    public SaveSomeTemplatePane(boolean isNeedTojudgeCurrent) {
        this.setLayout(FRGUIPaneFactory.createBorderLayout());
        if (this.dialog == null) {
            this.dialog = this.showSmallWindow(DesignerContext.getDesignerFrame(), new DialogActionAdapter() {
                @Override
                public void doOk() {
                    for (int i = 0; i < templateCheckBoxes.length; i++) {
                        if (templateCheckBoxes[i].isSelected()) {
                            saveSelectedTemplate(unSavedTemplate.get(i));
                        }
                    }
                    isAllSaved = true;
                }

                public void doCancel() {
                    isAllSaved = false;
                }

            });
        }
        UILabel tip = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_The_Source_To_Save"));
        this.add(tip, BorderLayout.NORTH);
        templatesChoosePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
        UIScrollPane scrollPane = new UIScrollPane(templatesChoosePane);
        this.add(scrollPane, BorderLayout.CENTER);
        this.isJudgeCurrentEditingTemplate = isNeedTojudgeCurrent;
    }

    private void initTemplatesChoosePane() {
        templatesChoosePane.setBorder(BorderFactory.createTitledBorder(""));
        for (int i = 0; i < unSavedTemplate.size(); i++) {
            templateCheckBoxes[i] = new UICheckBox(unSavedTemplate.get(i).getEditingFILE().getName());
            templateCheckBoxes[i].setSelected(true);
        }
        final UIList templatesList = new UIList(templateCheckBoxes);
        templatesList.setModel(new UnSeletedTemplateListDataMode());
        templatesList.setCellRenderer(new UnSelectedListCellRender());
        templatesList.addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                super.mousePressed(e);
                int index = templatesList.getSelectedIndex();
                if (index < 0) {
                    return;
                }
                UICheckBox checkBox = (UICheckBox) templatesList.getModel().getElementAt(index);
                checkBox.setSelected(!checkBox.isSelected());
                templatesList.repaint();
            }
        });

        final UICheckBox filenameCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Choose_All"));
        filenameCheckBox.setSelected(true);
        filenameCheckBox.addItemListener(new ItemListener() {
            public void itemStateChanged(ItemEvent e) {
                boolean isSelected = filenameCheckBox.isSelected();
                for (int i = 0; i < templatesList.getModel().getSize(); i++) {
                    UICheckBox checkBox = (UICheckBox) templatesList.getModel().getElementAt(i);
                    checkBox.setSelected(isSelected);
                }
                templatesList.repaint();
            }
        });
        templatesChoosePane.add(filenameCheckBox, BorderLayout.NORTH);
        templatesChoosePane.add(templatesList, BorderLayout.CENTER);

    }


    public boolean showSavePane() {
        populate();
        //如果有未保存的文件 ,则跳出保存对话框,选择要存储的项目
        if (!unSavedTemplate.isEmpty()) {
            dialog.setVisible(true);
        } else {
            isAllSaved = true;
        }
        return isAllSaved;
    }

    public void populate() {
        java.util.List<JTemplate<?, ?>> opendedTemplate = HistoryTemplateListPane.getInstance().getHistoryList();
        JTemplate<?, ?> currentTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
        for (int i = 0; i < opendedTemplate.size(); i++) {
            if (isneedToAdd(opendedTemplate.get(i), currentTemplate)) {
                unSavedTemplate.add(opendedTemplate.get(i));
            }
        }
        templateCheckBoxes = new UICheckBox[unSavedTemplate.size()];
        initTemplatesChoosePane();
    }

    private boolean isneedToAdd(JTemplate<?, ?> template, JTemplate<?, ?> currentTemplate) {
        //所有模板都判断是不是保存
        if (isJudgeCurrentEditingTemplate) {
            return !template.isALLSaved();
        }

        //当前编辑的模板不判断是否已经保存
        if (ComparatorUtils.equals(template, currentTemplate)) {
            return false;
        } else {
            return !template.isALLSaved();
        }
    }


    private void saveSelectedTemplate(JTemplate<?, ?> specifiedTemplate) {
        if (!specifiedTemplate.isSaved()) {
            specifiedTemplate.stopEditing();
            specifiedTemplate.saveTemplate();
        }
        FineLoggerFactory.getLogger().info( com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Template_Already_Saved", specifiedTemplate.getEditingFILE().getName()));
    }


    public int saveLastOneTemplate() {
        JTemplate<?, ?> specifiedTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
        if (!specifiedTemplate.isALLSaved()) {
            specifiedTemplate.stopEditing();
            int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + specifiedTemplate.getEditingFILE() + "\" ?",
                    ProductConstants.PRODUCT_NAME, JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
            if (returnVal == JOptionPane.YES_OPTION && specifiedTemplate.saveTemplate()) {
                specifiedTemplate.saveTemplate();
                FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Template_Already_Saved", specifiedTemplate.getEditingFILE().getName()));
            }
            return returnVal;
        }
        return JOptionPane.YES_OPTION;
    }


    protected String title4PopupWindow() {
        return com.fr.design.i18n.Toolkit.i18nText("Save");
    }


    private class UnSelectedListCellRender extends DefaultListCellRenderer {

        @Override
        public Component getListCellRendererComponent(JList list, Object value, int index, final boolean isSelected, boolean cellHasFocus) {
            super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
            templateCheckBoxes[index] = (UICheckBox) value;
            templateCheckBoxes[index].setBackground(list.getBackground());
            return templateCheckBoxes[index];
        }

    }


    private class UnSeletedTemplateListDataMode extends AbstractListModel {

        @Override
        public int getSize() {
            return templateCheckBoxes.length;
        }

        @Override
        public UICheckBox getElementAt(int index) {
            if (index > getSize() - 1 || index < 0) {
                return null;
            }
            return templateCheckBoxes[index];
        }

    }


}
\ No newline at end of file
+package com.fr.design.file;

import com.fr.design.dialog.BasicDialog;
import com.fr.design.dialog.BasicPane;
import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.icontainer.UIScrollPane;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.ilist.UIList;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.JTemplate;
import com.fr.general.ComparatorUtils;

import com.fr.log.FineLoggerFactory;
import com.fr.stable.ProductConstants;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.ArrayList;

/**
 * Author : daisy
 * Date: 13-8-9
 * Time: 下午3:41
 */
public class SaveSomeTemplatePane extends BasicPane {

    private UICheckBox[] templateCheckBoxes = null;
    private BasicDialog dialog;
    private JPanel templatesChoosePane;
    private UIScrollPane scrollPane;
    private java.util.List<JTemplate<?, ?>> unSavedTemplate = new ArrayList<JTemplate<?, ?>>();
    private boolean isAllSaved = false;

    //该变量用来判断是在关闭其他模板或是关闭设计器的时候,是否需要判断当前模板有没有保存
    private boolean isJudgeCurrentEditingTemplate = true;

    public SaveSomeTemplatePane(boolean isNeedTojudgeCurrent) {
        this.setLayout(FRGUIPaneFactory.createBorderLayout());
        if (this.dialog == null) {
            this.dialog = this.showSmallWindow(DesignerContext.getDesignerFrame(), new DialogActionAdapter() {
                @Override
                public void doOk() {
                    for (int i = 0; i < templateCheckBoxes.length; i++) {
                        if (templateCheckBoxes[i].isSelected()) {
                            saveSelectedTemplate(unSavedTemplate.get(i));
                        }
                    }
                    isAllSaved = true;
                }

                public void doCancel() {
                    isAllSaved = false;
                }

            });
        }
        UILabel tip = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_The_Source_To_Save"));
        this.add(tip, BorderLayout.NORTH);
        templatesChoosePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
        UIScrollPane scrollPane = new UIScrollPane(templatesChoosePane);
        this.add(scrollPane, BorderLayout.CENTER);
        this.isJudgeCurrentEditingTemplate = isNeedTojudgeCurrent;
    }

    private void initTemplatesChoosePane() {
        templatesChoosePane.setBorder(BorderFactory.createTitledBorder(""));
        for (int i = 0; i < unSavedTemplate.size(); i++) {
            templateCheckBoxes[i] = new UICheckBox(unSavedTemplate.get(i).getEditingFILE().getName());
            templateCheckBoxes[i].setSelected(true);
        }
        final UIList templatesList = new UIList(templateCheckBoxes);
        templatesList.setModel(new UnSeletedTemplateListDataMode());
        templatesList.setCellRenderer(new UnSelectedListCellRender());
        templatesList.addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                super.mousePressed(e);
                int index = templatesList.getSelectedIndex();
                if (index < 0) {
                    return;
                }
                UICheckBox checkBox = (UICheckBox) templatesList.getModel().getElementAt(index);
                checkBox.setSelected(!checkBox.isSelected());
                templatesList.repaint();
            }
        });

        final UICheckBox filenameCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Choose_All"));
        filenameCheckBox.setSelected(true);
        filenameCheckBox.addItemListener(new ItemListener() {
            public void itemStateChanged(ItemEvent e) {
                boolean isSelected = filenameCheckBox.isSelected();
                for (int i = 0; i < templatesList.getModel().getSize(); i++) {
                    UICheckBox checkBox = (UICheckBox) templatesList.getModel().getElementAt(i);
                    checkBox.setSelected(isSelected);
                }
                templatesList.repaint();
            }
        });
        templatesChoosePane.add(filenameCheckBox, BorderLayout.NORTH);
        templatesChoosePane.add(templatesList, BorderLayout.CENTER);

    }


    public boolean showSavePane() {
        populate();
        //如果有未保存的文件 ,则跳出保存对话框,选择要存储的项目
        if (!unSavedTemplate.isEmpty()) {
            dialog.setVisible(true);
        } else {
            isAllSaved = true;
        }
        return isAllSaved;
    }

    public void populate() {
        java.util.List<JTemplate<?, ?>> opendedTemplate = HistoryTemplateListPane.getInstance().getHistoryList();
        JTemplate<?, ?> currentTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
        for (int i = 0; i < opendedTemplate.size(); i++) {
            if (isneedToAdd(opendedTemplate.get(i), currentTemplate)) {
                unSavedTemplate.add(opendedTemplate.get(i));
            }
        }
        templateCheckBoxes = new UICheckBox[unSavedTemplate.size()];
        initTemplatesChoosePane();
    }

    private boolean isneedToAdd(JTemplate<?, ?> template, JTemplate<?, ?> currentTemplate) {
        //所有模板都判断是不是保存
        if (isJudgeCurrentEditingTemplate) {
            return !template.isALLSaved();
        }

        //当前编辑的模板不判断是否已经保存
        if (ComparatorUtils.equals(template, currentTemplate)) {
            return false;
        } else {
            return !template.isALLSaved();
        }
    }


    private void saveSelectedTemplate(JTemplate<?, ?> specifiedTemplate) {
        if (!specifiedTemplate.isSaved()) {
            specifiedTemplate.stopEditing();
            specifiedTemplate.saveTemplate();
        }
        FineLoggerFactory.getLogger().info( com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Template_Already_Saved", specifiedTemplate.getEditingFILE().getName()));
    }


    public int saveLastOneTemplate() {
        JTemplate<?, ?> specifiedTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
        if (!specifiedTemplate.isALLSaved()) {
            specifiedTemplate.stopEditing();
            int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Would_You_Like_To_Save") + " \"" + specifiedTemplate.getEditingFILE() + "\" ?",
                    ProductConstants.PRODUCT_NAME, JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
            if (returnVal == JOptionPane.YES_OPTION && specifiedTemplate.saveTemplate()) {
                specifiedTemplate.saveTemplate();
                FineLoggerFactory.getLogger().info(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Template_Already_Saved", specifiedTemplate.getEditingFILE().getName()));
            }
            return returnVal;
        }
        return JOptionPane.YES_OPTION;
    }


    protected String title4PopupWindow() {
        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save");
    }


    private class UnSelectedListCellRender extends DefaultListCellRenderer {

        @Override
        public Component getListCellRendererComponent(JList list, Object value, int index, final boolean isSelected, boolean cellHasFocus) {
            super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
            templateCheckBoxes[index] = (UICheckBox) value;
            templateCheckBoxes[index].setBackground(list.getBackground());
            return templateCheckBoxes[index];
        }

    }


    private class UnSeletedTemplateListDataMode extends AbstractListModel {

        @Override
        public int getSize() {
            return templateCheckBoxes.length;
        }

        @Override
        public UICheckBox getElementAt(int index) {
            if (index > getSize() - 1 || index < 0) {
                return null;
            }
            return templateCheckBoxes[index];
        }

    }


}
\ No newline at end of file
diff --git a/designer-base/src/main/java/com/fr/design/formula/FunctionManagerPane.java b/designer-base/src/main/java/com/fr/design/formula/FunctionManagerPane.java
index ada9dc48b..64430cb9c 100644
--- a/designer-base/src/main/java/com/fr/design/formula/FunctionManagerPane.java
+++ b/designer-base/src/main/java/com/fr/design/formula/FunctionManagerPane.java
@@ -123,7 +123,7 @@ public class FunctionManagerPane extends BasicPane {
             JPanel reportletNamePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
             classNameTextField = new UITextField(25);
             reportletNamePane.add(classNameTextField);
-            UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Select"));
+            UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select"));
             browserButton.setPreferredSize(new Dimension(browserButton.getPreferredSize().width,  classNameTextField.getPreferredSize().height));
             reportletNamePane.add(browserButton);
             browserButton.addActionListener(new ActionListener() {
@@ -138,7 +138,7 @@ public class FunctionManagerPane extends BasicPane {
 	                    }).setVisible(true);
                 }
             });
-            UIButton editorButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+            UIButton editorButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
             editorButton.setPreferredSize(new Dimension(editorButton.getPreferredSize().width, classNameTextField.getPreferredSize().height));
             reportletNamePane.add(editorButton);
             editorButton.addActionListener(createEditorButtonActionListener());
@@ -211,4 +211,4 @@ public class FunctionManagerPane extends BasicPane {
             return editing;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java
index 1e075ecf2..313f459b2 100644
--- a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java
+++ b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java
@@ -79,7 +79,7 @@ public class JavaEditorPane extends BasicPane {
 
         UIScrollPane jt = new UIScrollPane(javaText);
         JPanel toolbarPane = new JPanel(new FlowLayout(FlowLayout.LEFT));
-        UIButton saveButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Save"));
+        UIButton saveButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save"));
         saveButton.setAction(new SaveAction());
         UIButton compileButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Compile"));
         compileButton.setAction(new CompilerAction());
@@ -141,7 +141,7 @@ public class JavaEditorPane extends BasicPane {
 
     private class SaveAction extends AbstractAction { //新建文件命令
         public SaveAction() {
-            super(com.fr.design.i18n.Toolkit.i18nText("Save"));
+            super(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save"));
         }
         public void actionPerformed(ActionEvent e) {
             saveTextToFile(javaText.getText());
diff --git a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java
index 12df93459..40826b6a1 100644
--- a/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java
+++ b/designer-base/src/main/java/com/fr/design/formula/TinyFormulaPane.java
@@ -39,7 +39,7 @@ public class TinyFormulaPane extends BasicBeanPane<String> implements UIObserver
 
 		// 添加一公式编辑器按钮
 		formulaTextFieldButton = new UIButton(BaseUtils.readIcon("/com/fr/design/images/m_insert/formula.png"));
-		formulaTextFieldButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula") + "...");
+		formulaTextFieldButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula") + "...");
 		formulaTextFieldButton.setPreferredSize(new Dimension(24, 20));
 		formulaTextFieldButton.setOpaque(false);
 		formulaTextFieldButton.setCursor(new Cursor(Cursor.HAND_CURSOR));
diff --git a/designer-base/src/main/java/com/fr/design/gui/HyperlinkFilterHelper.java b/designer-base/src/main/java/com/fr/design/gui/HyperlinkFilterHelper.java
index 122fc19e3..bc2cbdbf9 100644
--- a/designer-base/src/main/java/com/fr/design/gui/HyperlinkFilterHelper.java
+++ b/designer-base/src/main/java/com/fr/design/gui/HyperlinkFilterHelper.java
@@ -53,7 +53,7 @@ public class HyperlinkFilterHelper {
     }
 
     private static boolean whetherAddFormLink(JTemplate jTemplate, String itemName) {
-        String formName = com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Form_link");
+        String formName = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Form_Link");
         return !(jTemplate.isJWorkBook() && ComparatorUtils.equals(itemName, formName));
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java b/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java
index f5da7e2f8..29c8c0602 100644
--- a/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/controlpane/UISimpleListControlPane.java
@@ -228,7 +228,7 @@ public class UISimpleListControlPane extends BasicPane {
      */
     private class MoveUpItemAction extends UpdateAction {
         public MoveUpItemAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
             this.setMnemonic('U');
             this.setSmallIcon(BaseUtils
                     .readIcon("/com/fr/design/images/control/up.png"));
@@ -261,7 +261,7 @@ public class UISimpleListControlPane extends BasicPane {
      */
     private class MoveDownItemAction extends UpdateAction {
         public MoveDownItemAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
             this.setMnemonic('D');
             this.setSmallIcon(BaseUtils
                     .readIcon("/com/fr/design/images/control/down.png"));
diff --git a/designer-base/src/main/java/com/fr/design/gui/core/WidgetConstants.java b/designer-base/src/main/java/com/fr/design/gui/core/WidgetConstants.java
index aa26204b1..02f6a3786 100644
--- a/designer-base/src/main/java/com/fr/design/gui/core/WidgetConstants.java
+++ b/designer-base/src/main/java/com/fr/design/gui/core/WidgetConstants.java
@@ -55,7 +55,7 @@ public class WidgetConstants {
 	public static final int MULTI_FILE = 19;
 	
 	// 默认控件
-	public static final String DEFAULT_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Widget-Form_Widget_Config");
+	public static final String DEFAULT_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Form_Widget_Config");
 	
 	// 报表控件,与默认控件不同,比如label,table,SEARCH等,这里是不需要的
 	public static final String REPORT_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Default_Widget_Config");
@@ -63,11 +63,11 @@ public class WidgetConstants {
 	public static final String FORM_CHARTWIDGET = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Chart_Widget_Config");
 	
 	// 表单容器控件
-	public static final String FORM_WIDGETCONTAINER = com.fr.design.i18n.Toolkit.i18nText("Widget-Form_Widget_Container");
+	public static final String FORM_WIDGETCONTAINER = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Form_Widget_Container");
 	
 	public  static final String POLY_REPORT_WIDGET = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Poly_Report_Component");
 	// 服务器预定义控件
-	public static final String USER_DEFINED_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Widget-User_Defined_Widget_Config");
+	public static final String USER_DEFINED_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_User_Defined_Widget_Config");
 	
 	// 服务器组合控件
 	public static final String COMB_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Comb_Widget_Config");
@@ -75,4 +75,4 @@ public class WidgetConstants {
 	// 服务器自定义控件
 	public static final String CUSTOM_WIDGETCONFIG = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Custom_Widget_Config");
 	
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/core/WidgetOption.java b/designer-base/src/main/java/com/fr/design/gui/core/WidgetOption.java
index ec165b5a6..e3bf61e9d 100644
--- a/designer-base/src/main/java/com/fr/design/gui/core/WidgetOption.java
+++ b/designer-base/src/main/java/com/fr/design/gui/core/WidgetOption.java
@@ -130,10 +130,10 @@ public abstract class WidgetOption implements Serializable {
             BaseUtils.readIcon("/com/fr/design/images/buttonicon/widget/date_16.png"),
             DateEditor.class);
 
-    public static final WidgetOption TREE = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Form-View_Tree"),
+    public static final WidgetOption TREE = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_View_Tree"),
             BaseUtils.readIcon("/com/fr/design/images/buttonicon/widget/tree_16.png"), TreeEditor.class);
 
-    public static final WidgetOption TREECOMBOBOX = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tree-ComboBox"), BaseUtils.readIcon("/com/fr/design/images/buttonicon/widget/comboboxtree.png"),
+    public static final WidgetOption TREECOMBOBOX = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Tree_ComboBox"), BaseUtils.readIcon("/com/fr/design/images/buttonicon/widget/comboboxtree.png"),
             TreeComboBoxEditor.class);
 
     public static final WidgetOption CHECKBOXGROUP = WidgetOptionFactory.createByWidgetClass(
@@ -192,7 +192,7 @@ public abstract class WidgetOption implements Serializable {
             com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Type_Password"),
             BaseUtils.readIcon("/com/fr/design/images/buttonicon/widget/password_field_16.png"), Password.class);
 
-    public static final WidgetOption IFRAMEDITOR = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Form-Iframe"), BaseUtils.readIcon("/com/fr/web/images/form/resources/iframe_16.png"),
+    public static final WidgetOption IFRAMEDITOR = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Iframe"), BaseUtils.readIcon("/com/fr/web/images/form/resources/iframe_16.png"),
             IframeEditor.class);
 
 }
diff --git a/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java b/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java
index 9a8f1c011..b28caa1c7 100644
--- a/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java
+++ b/designer-base/src/main/java/com/fr/design/gui/date/UICalendarPanel.java
@@ -46,7 +46,7 @@ import java.util.Date;
 
 public class UICalendarPanel extends JPanel {
     private static final Font FONT_SONG = new Font(com.fr.design.i18n.Toolkit.i18nText("Song_TypeFace"),0,12);
-    private static final Font FONT_BLACK = new Font(com.fr.design.i18n.Toolkit.i18nText("Black_Font"),0,12);
+    private static final Font FONT_BLACK = new Font(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Black_Font"),0,12);
     private static final int WEEKDAY_COUNT = 7;
     private static final int TOTAL_DAYS_COUNT = 42;
 
@@ -161,9 +161,9 @@ public class UICalendarPanel extends JPanel {
         pWeeks.setPreferredSize(new Dimension(216, 22));
         pWeeks.setBackground(new Color(0xFFFFFF));
         pWeeks.setOpaque(true);
-        String[] strWeeks = new String[] {StringUtils.EMPTY, com.fr.design.i18n.Toolkit.i18nText("Sun"), com.fr.design.i18n.Toolkit.i18nText("Mon"),
-                com.fr.design.i18n.Toolkit.i18nText("Tue"),com.fr.design.i18n.Toolkit.i18nText("Wed"),com.fr.design.i18n.Toolkit.i18nText("Thu"),
-                com.fr.design.i18n.Toolkit.i18nText("Fri"),com.fr.design.i18n.Toolkit.i18nText("Sat")
+        String[] strWeeks = new String[] {StringUtils.EMPTY, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"), com.fr.design.i18n.Toolkit.i18nText("Mon"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tue"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Wed"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Thu"),
+                com.fr.design.i18n.Toolkit.i18nText("Fri"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sat")
         };
         for (int i = 1; i <= WEEKDAY_COUNT; i++) {
             UILabel label = new UILabel();
@@ -202,7 +202,7 @@ public class UICalendarPanel extends JPanel {
         sPane.setPreferredSize(new Dimension(216, 30));
         sPane.setBackground(Color.WHITE);
         sPane.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 6));
-        UILabel timeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Time") + ":");
+        UILabel timeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Time") + ":");
         timeLabel.setBorder(BorderFactory.createEmptyBorder(0,9,0,5));
         timeLabel.setFont(FONT_SONG);
         sPane.add(timeLabel);
@@ -769,4 +769,4 @@ public class UICalendarPanel extends JPanel {
         frame.getContentPane().add(calendarPanel);
         frame.setVisible(true);
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java
index 4b326dd95..345cdc857 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/EditingStringListPane.java
@@ -1,13 +1,11 @@
 package com.fr.design.gui.frpane;
 
-import java.awt.BorderLayout;
-import java.awt.Component;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.util.ArrayList;
-import java.util.List;
+import com.fr.design.beans.BasicBeanPane;
+import com.fr.design.gui.ibutton.UIButton;
+import com.fr.design.layout.FRGUIPaneFactory;
+import com.fr.design.utils.gui.GUICoreUtils;
+import com.fr.design.utils.gui.JListUtils;
+import com.fr.stable.StringUtils;
 
 import javax.swing.BorderFactory;
 import javax.swing.DefaultListCellRenderer;
@@ -20,14 +18,14 @@ import javax.swing.ListSelectionModel;
 import javax.swing.SwingUtilities;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
-
-import com.fr.design.beans.BasicBeanPane;
-import com.fr.design.gui.ibutton.UIButton;
-import com.fr.design.layout.FRGUIPaneFactory;
-
-import com.fr.stable.StringUtils;
-import com.fr.design.utils.gui.GUICoreUtils;
-import com.fr.design.utils.gui.JListUtils;
+import java.awt.BorderLayout;
+import java.awt.Component;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.util.ArrayList;
+import java.util.List;
 
 public abstract class EditingStringListPane extends BasicBeanPane<List<String>> {
 
@@ -60,8 +58,8 @@ public abstract class EditingStringListPane extends BasicBeanPane<List<String>>
 		addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Add"));
 		editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Modify"));
 		removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Remove"));
-		moveUpButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
-		moveDownButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+		moveUpButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
+		moveDownButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
 
 		JPanel eastPane = FRGUIPaneFactory.createNColumnGridInnerContainer_S_Pane(1);
 		eastPane.add(editButton);
@@ -151,7 +149,7 @@ public abstract class EditingStringListPane extends BasicBeanPane<List<String>>
 			public void actionPerformed(ActionEvent e) {
 				Object selected = jlist.getSelectedValue();
 				if (selected != null) {
-					int re = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EditingStringListPane.this), com.fr.design.i18n.Toolkit.i18nText("sure_to_delete") + selected.toString() + "?");
+					int re = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(EditingStringListPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete") + selected.toString() + "?");
 					if (re == JOptionPane.OK_OPTION) {
 						JListUtils.removeSelectedListItems(jlist);
 					}
@@ -205,4 +203,4 @@ public abstract class EditingStringListPane extends BasicBeanPane<List<String>>
 		}
 		return lists;
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/HyperlinkGroupPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/HyperlinkGroupPane.java
index 1fd5b8f4f..3f4ae9b2a 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/HyperlinkGroupPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/HyperlinkGroupPane.java
@@ -82,12 +82,12 @@ public abstract class HyperlinkGroupPane extends UIListControlPane {
      */
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink");
     }
 
     @Override
     protected String getAddItemText() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add_Hyperlink");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add_Hyperlink");
     }
 
     public void populate(NameJavaScriptGroup hyperlinkArray) {
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/ImgChoosePane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/ImgChoosePane.java
index 225d5bcdf..c6f0e5836 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/ImgChoosePane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/ImgChoosePane.java
@@ -73,7 +73,7 @@ public class ImgChoosePane extends BasicPane {
 	}
 
 	private void initButton() {
-		chooseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture"));
+		chooseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture"));
 		chooseButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
 
@@ -115,6 +115,6 @@ public class ImgChoosePane extends BasicPane {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Image");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image");
 	}
 }
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeAutoBuildPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeAutoBuildPane.java
index 49402b950..18ac4e245 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeAutoBuildPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeAutoBuildPane.java
@@ -51,7 +51,7 @@ public class JTreeAutoBuildPane extends BasicPane implements PreviewLabel.Previe
      */
     public void initComponent() {
         this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
-        UILabel selectTreeDataLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Select_A_Tree_DataSource_To_Build") + ": ");
+        UILabel selectTreeDataLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_A_Tree_DataSource_To_Build") + ": ");
         treeTableDataComboBox = new TreeTableDataComboBox(DesignTableDataManager.getEditingTableDataSource());
         treeTableDataComboBox.setPreferredSize(new Dimension(180, 20));
         selectTreeDataPanel = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane();
@@ -78,9 +78,9 @@ public class JTreeAutoBuildPane extends BasicPane implements PreviewLabel.Previe
         formulaEditor.setEnabled(true);
         textPane = ValueEditorPaneFactory.createValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor(), formulaEditor});
         Component[][] coms = {
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Actual_Value") + ":"),
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value") + ":"),
                         valuePane},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Display_Value") + ":"),
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value") + ":"),
                         textPane}};
 
         double p = TableLayout.PREFERRED;
@@ -230,4 +230,4 @@ public class JTreeAutoBuildPane extends BasicPane implements PreviewLabel.Previe
         valuePane.populate(1);
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java
index 6627f8de7..0c266b81a 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/JTreeControlPane.java
@@ -59,7 +59,7 @@ public class JTreeControlPane extends ControlPane {
         JPanel northPane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane();
         DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Root"));
         defaultTreeModel = new DefaultTreeModel(rootNode);
-        DefaultMutableTreeNode firstLayer = new DefaultMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation") + 1, new TreeNodeAttr()));
+        DefaultMutableTreeNode firstLayer = new DefaultMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation") + 1, new TreeNodeAttr()));
         tree = new JTree(defaultTreeModel);
         tree.setRootVisible(false);
         ((DefaultMutableTreeNode) defaultTreeModel.getRoot()).getLastLeaf().add(firstLayer);
@@ -134,7 +134,7 @@ public class JTreeControlPane extends ControlPane {
         for (int i = 0; i < count; i++) {
 
             DefaultMutableTreeNode node4add = new DefaultMutableTreeNode(
-                    new NameObject(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation") + (i + 1), treeNodeAttr[i]));
+                    new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation") + (i + 1), treeNodeAttr[i]));
             node4root.add(node4add);
             node4root = node4add;
         }
@@ -193,7 +193,7 @@ public class JTreeControlPane extends ControlPane {
 
         public AddTreeNodeAction(NameableCreator[] creators) {
             this.creator = creators[0];
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add"));
             this.setMnemonic('A');
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
         }
@@ -224,15 +224,15 @@ public class JTreeControlPane extends ControlPane {
 
     private class RemoveTreeNodeAction extends UpdateAction {
         public RemoveTreeNodeAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
             this.setMnemonic('R');
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/remove.png"));
         }
 
         public void actionPerformed(ActionEvent e) {
             // TODO remove tree node
-            int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?",
-                    com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
+            int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
             if (val != JOptionPane.OK_OPTION) {
                 return;
             }
@@ -267,4 +267,4 @@ public class JTreeControlPane extends ControlPane {
             return this;
         }
     };
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/ListenerUpdatePane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/ListenerUpdatePane.java
index 28025844e..9f5101ae6 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/ListenerUpdatePane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/ListenerUpdatePane.java
@@ -29,7 +29,7 @@ public abstract class ListenerUpdatePane extends BasicBeanPane<Listener> {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Event");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event");
 	}
 
     @Override
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/RegFieldPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/RegFieldPane.java
index 20f28fb08..5d37fb4a9 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/RegFieldPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/RegFieldPane.java
@@ -73,7 +73,7 @@ public class RegFieldPane extends RegPane {
             this.setLayout(FRGUIPaneFactory.createBorderLayout());
             this.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L6, IntervalConstants.INTERVAL_L5, 0, 0));
             initRegErrorMsgField();
-            UILabel tipLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Error_Tip"));
+            UILabel tipLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Error_Tip"));
             tipLabel.setPreferredSize(new Dimension(60, 20));
             JPanel panel = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{tipLabel, regErrorMsgField}}, TableLayoutHelper.FILL_LASTCOLUMN, 10, LayoutConstants.VGAP_MEDIUM);
             this.add(panel);
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java
index 0b1ae55cb..2df45f892 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/RegPane.java
@@ -76,7 +76,7 @@ public class RegPane extends BasicPane {
         regComboBox.setRenderer(listCellRender);
 
         JPanel contentPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Input_Rule")), regComboBox}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Input_Rule")), regComboBox}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
         JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
 
         jPanel.add(contentPane, BorderLayout.NORTH);
@@ -119,7 +119,7 @@ public class RegPane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Input_Rule");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Input_Rule");
     }
 
     private int getRegTypeIndex(RegExp regex) {
@@ -330,7 +330,7 @@ public class RegPane extends BasicPane {
         private static final String REG_PATTERN = "0123456789-*# ";
 
         private UIComboBox dataTypeComboBox;
-        private final String[] dataType = {EMB_REG1, EMB_REG2, EMB_REG3, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom")};
+        private final String[] dataType = {EMB_REG1, EMB_REG2, EMB_REG3, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom")};
         DefaultComboBoxModel DefaultComboBoxModel= new DefaultComboBoxModel(dataType);
         public RegPhonePane() {
             this.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L6, IntervalConstants.INTERVAL_L5, 0, 0));
@@ -490,11 +490,11 @@ public class RegPane extends BasicPane {
                                                       int index, boolean isSelected, boolean cellHasFocus) {
             super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
             if (value instanceof NoneReg){
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_None"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_None"));
             } else if (value instanceof LengthReg){
                 this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Length"));
             } else if (value instanceof MailReg){
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"));
             } else if (value instanceof PhoneReg){
                 this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Phone"));
             } else if (value instanceof MobileReg) {
@@ -504,10 +504,10 @@ public class RegPane extends BasicPane {
             } else if (value instanceof PostCardReg){
                 this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Post_Code"));
             } else if (value instanceof CustomReg){
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom"));
             }
             return this;
         }
 
     };
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/TreeSettingPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/TreeSettingPane.java
index 97d91c160..ba75cce9d 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/TreeSettingPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/TreeSettingPane.java
@@ -99,7 +99,7 @@ public class TreeSettingPane extends BasicPane implements DataCreatorUI {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Create_Tree");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Create_Tree");
 	}
 
 	@Override
@@ -108,7 +108,7 @@ public class TreeSettingPane extends BasicPane implements DataCreatorUI {
 	}
 
 	NameableCreator treeNode = new NameObjectCreator(
-		com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation"),
+		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation"),
 		"/com/fr/design/images/data/source/jdbcTableData.png",
 		TreeNodeAttr.class);
 
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationComboBoxPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationComboBoxPane.java
index 79ed96309..d1c2a087a 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationComboBoxPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationComboBoxPane.java
@@ -380,10 +380,10 @@ public class UICorrelationComboBoxPane extends JPanel implements UIObserver {
         UIMenuNameableCreator reportlet = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Hyperlink_Reportlet"),
                 new ReportletHyperlink(), ReportletHyperlinkPane.class);
 
-        UIMenuNameableCreator email = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email"),
+        UIMenuNameableCreator email = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"),
                 new EmailJavaScript(), EmailPane.class);
 
-        UIMenuNameableCreator web = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link"),
+        UIMenuNameableCreator web = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"),
                 new WebHyperlink(), WebHyperlinkPane.class);
         data.add(reportlet);
         data.add(email);
@@ -411,4 +411,4 @@ public class UICorrelationComboBoxPane extends JPanel implements UIObserver {
     public boolean shouldResponseChangeListener() {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationPane.java
index e8ea9fdaf..3a23a478c 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UICorrelationPane.java
@@ -386,7 +386,7 @@ public class UICorrelationPane extends JPanel implements UIObserver {
      */
     public static void main(String... args) {
         JFrame jf = new JFrame("test");
-        final String[] columnNames = {com.fr.design.i18n.Toolkit.i18nText("Actual_Value"), com.fr.design.i18n.Toolkit.i18nText("Display_Value")};
+        final String[] columnNames = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value")};
         jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         JPanel content = (JPanel) jf.getContentPane();
         content.setLayout(new BorderLayout());
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java
index eb63c0b64..b1958a8c1 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UINumberDragPane.java
@@ -36,7 +36,7 @@ public class UINumberDragPane extends BasicBeanPane<Double> implements GlobalNam
 	public UINumberDragPane(double minValue, double maxValue, double dierta) {
 		dragBar = new NumberDragBar((int) minValue, (int) maxValue);
 		spinner = new UISpinner(minValue, maxValue, dierta, minValue);
-		spinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation"));
+		spinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"));
 		this.setLayout(new BorderLayout(4, 0));
 		this.add(spinner, BorderLayout.EAST);
 		this.add(dragBar, BorderLayout.CENTER);
@@ -137,4 +137,4 @@ public class UINumberDragPane extends BasicBeanPane<Double> implements GlobalNam
 	public boolean shouldResponseNameListener() {
 		return true;
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java
index 288396c29..ee8661a83 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/UITabbedPane.java
@@ -113,10 +113,10 @@ public class UITabbedPane extends JTabbedPane{
      * @param i tab索引
      */
     public void doRemoveTab(int i){
-        int re = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(UITabbedPane.this), com.fr.design.i18n.Toolkit.i18nText("sure_to_delete")+ "?", com.fr.design.i18n.Toolkit.i18nText("Remove")
+        int re = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(UITabbedPane.this), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sure_To_Delete")+ "?", com.fr.design.i18n.Toolkit.i18nText("Remove")
                 , JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
         if (re == JOptionPane.OK_OPTION) {
             super.removeTabAt(i);
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java
index 22ba5b344..128adca1f 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDataControlPane.java
@@ -50,7 +50,7 @@ public class LayerDataControlPane extends ControlPane {
         DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Root"));
         defaultTreeModel = new DefaultTreeModel(rootNode);
         tree = new JTree(defaultTreeModel);
-        DefaultMutableTreeNode firstLayer = new DefaultMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation") + 1, new LayerConfig(1)));
+        DefaultMutableTreeNode firstLayer = new DefaultMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation") + 1, new LayerConfig(1)));
         tree.setRootVisible(false);
         ((DefaultMutableTreeNode) defaultTreeModel.getRoot()).getLastLeaf().add(firstLayer);
         tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
@@ -143,7 +143,7 @@ public class LayerDataControlPane extends ControlPane {
 
         public AddTreeNodeAction() {
 
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add"));
             this.setMnemonic('A');
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
         }
@@ -157,7 +157,7 @@ public class LayerDataControlPane extends ControlPane {
             do {
                 nodeCount++;
             } while ((innerNode = innerNode.getNextNode()) != null);
-            NameObject nameable = new NameObject(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation") + nodeCount, new LayerConfig(nodeCount));
+            NameObject nameable = new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation") + nodeCount, new LayerConfig(nodeCount));
 
             node.getLastLeaf().add(new DefaultMutableTreeNode(nameable));
             defaultTreeModel.reload();
@@ -170,15 +170,15 @@ public class LayerDataControlPane extends ControlPane {
 
         public RemoveTreeNodeAction() {
 
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
             this.setMnemonic('R');
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/remove.png"));
         }
 
         public void actionPerformed(ActionEvent e) {
             // TODO remove tree node
-            int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?",
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
+            int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
             if (val != JOptionPane.OK_OPTION) {
                 return;
             }
@@ -208,7 +208,7 @@ public class LayerDataControlPane extends ControlPane {
             for (int i = 0; i < count; i++) {
 
                 DefaultMutableTreeNode node4add = new DefaultMutableTreeNode(
-                    new NameObject(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Gradation") + (i + 1), layerConfigs[i].clone()));
+                    new NameObject(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradation") + (i + 1), layerConfigs[i].clone()));
                 node4root.add(node4add);
                 node4root = node4add;
             }
diff --git a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java
index 97d9675b2..c3b543792 100644
--- a/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/frpane/tree/layer/config/LayerDependenceSettingPane.java
@@ -394,7 +394,7 @@ public class LayerDependenceSettingPane extends JPanel implements ItemListener {
             if (column == 0) {
                 name = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Layer_Index");
             } else {
-                name = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_filedChosen");
+                name = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Filed_Chosen");
             }
             return name;
         }
diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/AlignmentComboBox.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/AlignmentComboBox.java
index 0afbd3176..39bc21440 100644
--- a/designer-base/src/main/java/com/fr/design/gui/icombobox/AlignmentComboBox.java
+++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/AlignmentComboBox.java
@@ -49,13 +49,13 @@ public class AlignmentComboBox extends UIComboBox {
 		if (alignment == Constants.CENTER) {//0
 			return com.fr.design.i18n.Toolkit.i18nText("Center");
 		} else if (alignment == Constants.TOP) {//1
-			return com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top");
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top");
 		} else if (alignment == Constants.LEFT) {//2
-			return com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Left");
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Left");
 		} else if (alignment == Constants.BOTTOM) {//3
-			return com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom");
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom");
 		} else if (alignment == Constants.RIGHT) { //4
-			return com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Right");
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Right");
 		} else if (alignment == Constants.DISTRIBUTED) { //added by Kevin Wang 6
 			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Distibuted");
 		} else {
@@ -77,4 +77,4 @@ public class AlignmentComboBox extends UIComboBox {
 			return this;
 		}
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/DictionaryConstants.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/DictionaryConstants.java
index 10ec2ff15..d6d6ba9e7 100644
--- a/designer-base/src/main/java/com/fr/design/gui/icombobox/DictionaryConstants.java
+++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/DictionaryConstants.java
@@ -18,13 +18,13 @@ public class DictionaryConstants {
 	
 	public final static String[] regexpsDisplays = new String[] {
 		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_None"),
-		com.fr.design.i18n.Toolkit.i18nText("Required"),
-		com.fr.design.i18n.Toolkit.i18nText("Length"),
+		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Required"),
+		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Length"),
 		com.fr.design.i18n.Toolkit.i18nText("Float"),
 		com.fr.design.i18n.Toolkit.i18nText("Email"),
 		com.fr.design.i18n.Toolkit.i18nText("Phone"),
 		com.fr.design.i18n.Toolkit.i18nText("MobilePhone"),
-		com.fr.design.i18n.Toolkit.i18nText("IDCard"),
+		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_IDCard"),
 		com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_PostCode"),
 		com.fr.design.i18n.Toolkit.i18nText("Custom")};
 	
@@ -83,4 +83,4 @@ public class DictionaryConstants {
 		"jpg,png,gif",
 		"doc,xls,ppt"		
 	};
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/icombobox/SortOrderComboBox.java b/designer-base/src/main/java/com/fr/design/gui/icombobox/SortOrderComboBox.java
index e4c25470a..75dabb56d 100644
--- a/designer-base/src/main/java/com/fr/design/gui/icombobox/SortOrderComboBox.java
+++ b/designer-base/src/main/java/com/fr/design/gui/icombobox/SortOrderComboBox.java
@@ -3,12 +3,11 @@
  */
 package com.fr.design.gui.icombobox;
 
-import java.awt.Component;
+import com.fr.data.util.SortOrder;
 
 import javax.swing.DefaultComboBoxModel;
 import javax.swing.JList;
-
-import com.fr.data.util.SortOrder;
+import java.awt.Component;
 
 
 /**
@@ -53,11 +52,11 @@ public class SortOrderComboBox extends UIComboBox {
                 SortOrder sortOrder = (SortOrder) value;
 
                 if (sortOrder.getOrder() == SortOrder.ASC) {
-                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Sort-Ascending"));
+                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Ascending"));
                 } else if (sortOrder.getOrder() == SortOrder.DESC) {
-                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Sort-Descending"));
+                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Descending"));
                 } else if (sortOrder.getOrder() == SortOrder.ORIGINAL) {
-                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Sort-Original"));
+                    this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Original"));
                 }
             }
 
@@ -70,4 +69,4 @@ public class SortOrderComboBox extends UIComboBox {
             new SortOrder(SortOrder.DESC),
             new SortOrder(SortOrder.ORIGINAL)
     };
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTable.java b/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTable.java
index 4bcba9796..9aef9aa84 100644
--- a/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTable.java
+++ b/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTable.java
@@ -45,13 +45,13 @@ public class UIMenuTable extends JTable {
 	public void editingEvent(int rowIndex, int mouseY) {
 		selectedRowIndex = rowIndex;
 		repaint();
-		
+
 		final UIMenuNameableCreator nameObject = UIMenuTable.this.getLine(rowIndex);
-		
+
 		final BasicBeanPane<Object> baseShowPane = nameObject.getPane();
-		
+
 		final Object showValue = nameObject.getObj();
-		
+
 		baseShowPane.populateBean(showValue);
 
         UIDialog dialog = baseShowPane.showUnsizedWindow(SwingUtilities.getWindowAncestor(new JPanel()), new DialogActionAdapter() {
@@ -60,13 +60,13 @@ public class UIMenuTable extends JTable {
 				fireTargetChanged();
 			}
 		});
-		
+
 		dialog.setSize(500, 600);
 		GUICoreUtils.centerWindow(dialog);
-		
+
 		dialog.setVisible(true);
 	}
-	
+
 	protected Color getRenderBackground(int row) {
 		if(selectedRowIndex == row ) {
 			return UIConstants.SKY_BLUE;
@@ -76,7 +76,7 @@ public class UIMenuTable extends JTable {
 	}
 
 	/**
-	 * 
+	 *
 	 * @param value 该行列的值(字符串)
 	 * @param row
 	 * @param column
@@ -113,7 +113,7 @@ public class UIMenuTable extends JTable {
 	public void removeLine(int rowIndex) {
 		((UIMenuTableDataModel)dataModel).removeLine(rowIndex);
 	}
-	
+
 	/**
 	 * 清除所有的内容
 	 */
@@ -217,7 +217,7 @@ public class UIMenuTable extends JTable {
 		UIMenuNameableCreator email = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Email"),
 				new EmailJavaScript(), EmailPane.class);
 
-		UIMenuNameableCreator web = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link"),
+		UIMenuNameableCreator web = new UIMenuNameableCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"),
 				new WebHyperlink(), WebHyperlinkPane.class );
 		data.add(reportlet);
 		data.add(email);
@@ -229,4 +229,4 @@ public class UIMenuTable extends JTable {
 		jf.setSize(400, 400);
 		jf.setVisible(true);
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java b/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java
index 61633fa6a..b00971474 100644
--- a/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java
+++ b/designer-base/src/main/java/com/fr/design/gui/imenutable/UIMenuTableUI.java
@@ -74,7 +74,7 @@ public class UIMenuTableUI extends UITableUI{
 			@Override
 			public void mousePressed(MouseEvent e) {
 				if (e.getX() >= table.getWidth() - 20) {
-					int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?",
+					int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
 							com.fr.design.i18n.Toolkit.i18nText("Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
 					if (val == JOptionPane.OK_OPTION) {
 						uiTable.removeLine(table.rowAtPoint(e.getPoint()));
@@ -121,4 +121,4 @@ public class UIMenuTableUI extends UITableUI{
 			}
 		};
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/itable/AbstractPropertyTable.java b/designer-base/src/main/java/com/fr/design/gui/itable/AbstractPropertyTable.java
index 72f6a135b..4367d8f6b 100644
--- a/designer-base/src/main/java/com/fr/design/gui/itable/AbstractPropertyTable.java
+++ b/designer-base/src/main/java/com/fr/design/gui/itable/AbstractPropertyTable.java
@@ -15,7 +15,6 @@ import javax.swing.table.DefaultTableModel;
 import javax.swing.table.JTableHeader;
 import javax.swing.table.TableCellEditor;
 import javax.swing.table.TableCellRenderer;
-import javax.swing.table.TableModel;
 
 import com.fr.general.ComparatorUtils;
 
@@ -255,9 +254,9 @@ public abstract class AbstractPropertyTable extends JTable {
         @Override
         public String getColumnName(int column) {
             if (column == 0) {
-                return com.fr.design.i18n.Toolkit.i18nText("Form-Widget_Property");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Property");
             } else {
-                return com.fr.design.i18n.Toolkit.i18nText("Form-Widget_Property_Value");
+                return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Property_Value");
             }
         }
 
diff --git a/designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java b/designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java
index 531a58cd4..f04b64441 100644
--- a/designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java
+++ b/designer-base/src/main/java/com/fr/design/gui/itable/UITableUI.java
@@ -132,7 +132,7 @@ public class UITableUI extends BasicTableUI {
                     return;
                 }
                 if (!table.isEditing()) {
-                    int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?",
+                    int val = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?",
                             com.fr.design.i18n.Toolkit.i18nText("Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
                     if (val == JOptionPane.OK_OPTION) {
                         ((UITable) table).removeLine(table.rowAtPoint(e.getPoint()));
@@ -222,4 +222,4 @@ public class UITableUI extends BasicTableUI {
         installKeyboardActions();
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableEditorPane.java b/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableEditorPane.java
index fcc976c53..d6973f6bb 100644
--- a/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableEditorPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableEditorPane.java
@@ -106,7 +106,7 @@ public class UITableEditorPane<T> extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("TableData_Dynamic_Parameter_Setting");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_TableData_Dynamic_Parameter_Setting");
     }
 
     public void populate(T[] objs) {
@@ -153,4 +153,4 @@ public class UITableEditorPane<T> extends BasicPane {
         tableModel.stopCellEditing();
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java b/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java
index ab0c3e841..bd621517d 100644
--- a/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java
+++ b/designer-base/src/main/java/com/fr/design/gui/itableeditorpane/UITableModelAdapter.java
@@ -182,7 +182,7 @@ public abstract class UITableModelAdapter<T extends Object> extends AbstractTabl
 
 	protected abstract class AddTableRowAction extends UITableEditAction {
 		public AddTableRowAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("Insert"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert"));
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
 		}
 
@@ -252,7 +252,7 @@ public abstract class UITableModelAdapter<T extends Object> extends AbstractTabl
 				component = DesignerContext.getDesignerFrame();
 			}
 			int val = JOptionPane.showConfirmDialog(component,
-					com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?", com.fr.design.i18n.Toolkit.i18nText("Remove"),
+					com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", com.fr.design.i18n.Toolkit.i18nText("Remove"),
 					JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
 			if (val != JOptionPane.OK_OPTION) {
 				return;
@@ -281,7 +281,7 @@ public abstract class UITableModelAdapter<T extends Object> extends AbstractTabl
 
 	protected class MoveUpAction extends UITableEditAction {
 		public MoveUpAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/up.png"));
 		}
 
@@ -305,7 +305,7 @@ public abstract class UITableModelAdapter<T extends Object> extends AbstractTabl
 	protected class MoveDownAction extends UITableEditAction {
 
 		public MoveDownAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/down.png"));
 		}
 
diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java
index c55a69a79..bb754716f 100644
--- a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/TreeRootPane.java
@@ -1,17 +1,14 @@
 package com.fr.design.gui.itree.refreshabletree;
 
-import java.awt.Color;
+import com.fr.data.impl.TreeAttr;
+import com.fr.design.dialog.BasicPane;
+import com.fr.design.gui.icheckbox.UICheckBox;
+import com.fr.design.layout.FRGUIPaneFactory;
 
 import javax.swing.BorderFactory;
 import javax.swing.BoxLayout;
-import com.fr.design.gui.ilable.UILabel;
 import javax.swing.JPanel;
 
-import com.fr.data.impl.TreeAttr;
-import com.fr.design.gui.icheckbox.UICheckBox;
-import com.fr.design.layout.FRGUIPaneFactory;
-import com.fr.design.dialog.BasicPane;
-
 
 public class TreeRootPane extends BasicPane {
 	
@@ -31,7 +28,7 @@ public class TreeRootPane extends BasicPane {
 
 		JPanel checkTypePane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane_First0();
 		checkTypePane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		checkTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Tree-Mutiple_Selection_Or_Not"));
+		checkTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Mutiple_Selection_Or_Not"));
 		checkTypeCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		checkTypePane.add(checkTypeCheckBox);
@@ -39,7 +36,7 @@ public class TreeRootPane extends BasicPane {
 
 		JPanel loadTypePane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane_First0();
 		checkTypePane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		loadTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Widget-Load_By_Async"));
+		loadTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Load_By_Async"));
 		loadTypeCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		loadTypePane.add(loadTypeCheckBox);
@@ -47,14 +44,14 @@ public class TreeRootPane extends BasicPane {
 
 		JPanel leafSelectPane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane_First0();
 		checkTypePane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		leafSelectPane.add(layerTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Tree-Select_Leaf_Only")));
+		leafSelectPane.add(layerTypeCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Select_Leaf_Only")));
 		layerTypeCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		this.add(leafSelectPane);
 
         JPanel returnFullPathPane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane_First0();
 		checkTypePane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		returnFullPathPane.add(returnFullPathCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Tree-Return_Full_Path")));
+		returnFullPathPane.add(returnFullPathCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Return_Full_Path")));
 		returnFullPathCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		this.add(returnFullPathPane);
@@ -82,4 +79,4 @@ public class TreeRootPane extends BasicPane {
 
 		return treeAttr;
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java b/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java
index 9998f004a..11fbaf8c8 100644
--- a/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/style/AlignmentPane.java
@@ -55,7 +55,7 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
     private static final int VERGAP = 3;
     private static final Dimension SPINNER_DIMENSION = new Dimension(75, 20);
     private static final String[] TEXT = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Wrap_Text"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Single_Line"),
-            com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Single_Line(Adjust_Font)"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Multi_Line(Adjust_Font)")};
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Single_Line(Adjust_Font)"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Multi_Line(Adjust_Font)")};
 
     private static final String[] LAYOUT = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Layout_Default"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Layout_Image_Titled"),
             com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Layout_Image_Extend"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Layout_Image_Adjust")};
@@ -181,12 +181,12 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
     }
 
     private void initAllNames() {
-        hAlignmentPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Horizontal"));
-        vAlignmentPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Vertical"));
+        hAlignmentPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Horizontal"));
+        vAlignmentPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Vertical"));
         imageLayoutComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Layout"));
         textComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Text_Style"));
-        textRotationComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Text_Rotation"));
-        rotationPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Text_Rotation"));
+        textRotationComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"));
+        rotationPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"));
         leftIndentSpinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Left_Indent"));
         rightIndentSpinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Right_Indent"));
         spaceBeforeSpinner.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Spacing_Before"));
@@ -198,8 +198,8 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
         JPanel jp1 = new JPanel(new BorderLayout());
         basicPane = new JPanel();
         seniorPane = new JPanel();
-        basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), 290, 24, basicPane());
-        seniorPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Advanced"), 290, 24, seniorPane());
+        basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), 290, 24, basicPane());
+        seniorPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Advanced"), 290, 24, seniorPane());
 
         jp1.add(basicPane, BorderLayout.NORTH);
         jp1.add(seniorPane, BorderLayout.CENTER);
@@ -212,9 +212,9 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
                 new Component[]{null, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Horizontal") + "   ", SwingConstants.LEFT), hPaneContainer},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Horizontal") + "   ", SwingConstants.LEFT), hPaneContainer},
                 new Component[]{null, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Vertical") + "   ", SwingConstants.RIGHT), vPaneContainer},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Vertical") + "   ", SwingConstants.RIGHT), vPaneContainer},
                 new Component[]{null, null}
         };
         double[] rowSize = {p, p, p, p, p, p};
@@ -233,7 +233,7 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
                 new Component[]{null, null},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Text_Style") + "   ", SwingConstants.LEFT), textComboBox},
                 new Component[]{null, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Text_Rotation") + "   ", SwingConstants.LEFT), textRotationComboBox},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation") + "   ", SwingConstants.LEFT), textRotationComboBox},
                 new Component[]{null, rotationBarCC},
                 new Component[]{null, null},
         };
@@ -269,7 +269,7 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
         Component[][] components = new Component[][]{
                 new Component[]{null, null, null},
                 new Component[]{indentationPane, creatSpinnerPane(leftIndentSpinner), creatSpinnerPane(rightIndentSpinner)},
-                new Component[]{null, new UILabel((com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Left")), SwingConstants.CENTER), new UILabel((com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Right")), SwingConstants.CENTER)},
+                new Component[]{null, new UILabel((com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Left")), SwingConstants.CENTER), new UILabel((com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Right")), SwingConstants.CENTER)},
                 new Component[]{null, null, null},
                 new Component[]{null, null, null},
                 new Component[]{partSpacingPane, creatSpinnerPane(spaceBeforeSpinner), creatSpinnerPane(spaceAfterSpinner)},
@@ -358,11 +358,11 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
             return style;
         }
 
-        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Horizontal"))) {
+        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Horizontal"))) {
             Integer h = this.hAlignmentPane.getSelectedItem();
             style = style.deriveHorizontalAlignment(h == null ? -1 : h);
         }
-        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer-StyleAlignment_Pane_Vertical"))) {
+        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Alignment_Pane_Vertical"))) {
             Integer vAlign = this.vAlignmentPane.getSelectedItem();
             if (vAlign != null) {
                 style = style.deriveVerticalAlignment(vAlign);
@@ -405,7 +405,7 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
 
 
     private Style updateTextRotation(Style style) {
-        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Text_Rotation"))) {
+        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"))) {
             if (this.textRotationComboBox.getSelectedIndex() != 0) {
                 style = style.deriveVerticalText(Style.VERTICALTEXT);
                 style = style.deriveRotation(0);
@@ -462,4 +462,4 @@ public class AlignmentPane extends AbstractBasicStylePane implements GlobalNameO
      */
     public void setGlobalName(String name) {
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java b/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java
index 0d28be2ea..ce3940bf2 100644
--- a/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/style/BorderPane.java
@@ -76,7 +76,7 @@ public class BorderPane extends AbstractBasicStylePane implements GlobalNameObse
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
                 new Component[]{null, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Style") + "    ", SwingConstants.LEFT), currentLineCombo},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Style") + "    ", SwingConstants.LEFT), currentLineCombo},
                 new Component[]{null, null},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Color") + "    ", SwingConstants.LEFT), currentLineColorPane},
                 new Component[]{null, null},
@@ -91,11 +91,11 @@ public class BorderPane extends AbstractBasicStylePane implements GlobalNameObse
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}, {1, 1}};
         panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_SMALL, LayoutConstants.VGAP_MEDIUM);
-        borderPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Border"), 280, 24, panel);
+        borderPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Border"), 280, 24, panel);
         this.add(borderPanel, BorderLayout.NORTH);
 
         backgroundPane = new BackgroundPane();
-        backgroundPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background"), 280, 24, backgroundPane);
+        backgroundPanel = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"), 280, 24, backgroundPane);
         this.add(backgroundPanel, BorderLayout.CENTER);
         initAllNames();
         outerToggleButton.addChangeListener(outerToggleButtonChangeListener);
@@ -148,7 +148,7 @@ public class BorderPane extends AbstractBasicStylePane implements GlobalNameObse
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell");
     }
 
     @Override
@@ -250,4 +250,4 @@ public class BorderPane extends AbstractBasicStylePane implements GlobalNameObse
     public void setGlobalName(String name) {
 
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/gui/style/FRFontPane.java b/designer-base/src/main/java/com/fr/design/gui/style/FRFontPane.java
index 3e622667f..39d1f64e2 100644
--- a/designer-base/src/main/java/com/fr/design/gui/style/FRFontPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/style/FRFontPane.java
@@ -83,7 +83,7 @@ public class FRFontPane extends AbstractBasicStylePane implements GlobalNameObse
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Sytle-FRFont");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sytle_FRFont");
     }
 
     /**
@@ -133,7 +133,7 @@ public class FRFontPane extends AbstractBasicStylePane implements GlobalNameObse
      */
     public FRFont update(FRFont frFont) {
 
-        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Name"))) {
+        if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name"))) {
             frFont = frFont.applyName((String) fontNameComboBox.getSelectedItem());
         }
         if (ComparatorUtils.equals(globalNameListener.getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_FR_Font_Style"))) {
@@ -265,7 +265,7 @@ public class FRFontPane extends AbstractBasicStylePane implements GlobalNameObse
 
     private void initAllNames() {
         fontSizeStyleComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_FR_Font_Style"));
-        fontNameComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Name"));
+        fontNameComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name"));
         fontSizeComboBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_FRFont_Size"));
         colorSelectPane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_FR_Font_Foreground"));
         italic.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_FR_Font_Italic"));
diff --git a/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java b/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java
index f32adb937..795c6d455 100644
--- a/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java
+++ b/designer-base/src/main/java/com/fr/design/gui/style/FormatPane.java
@@ -108,7 +108,7 @@ public class FormatPane extends AbstractBasicStylePane  implements GlobalNameObs
 
 
         frFontPane = new FRFontPane();
-        UILabel font = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_FRFont"), SwingConstants.LEFT);
+        UILabel font = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_FR_Font"), SwingConstants.LEFT);
         JPanel fontPane = new JPanel(new BorderLayout());
         fontPane.add(font, BorderLayout.NORTH);
 
@@ -197,7 +197,7 @@ public class FormatPane extends AbstractBasicStylePane  implements GlobalNameObs
      * @return 标题
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text");
     }
 
     /**
diff --git a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rsyntaxtextarea/focusabletip/TipWindow.java b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rsyntaxtextarea/focusabletip/TipWindow.java
index a43719634..3cefb2434 100644
--- a/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rsyntaxtextarea/focusabletip/TipWindow.java
+++ b/designer-base/src/main/java/com/fr/design/gui/syntax/ui/rsyntaxtextarea/focusabletip/TipWindow.java
@@ -253,7 +253,7 @@ class TipWindow extends JWindow implements ActionListener {
 		}
 		else {
 			panel.setOpaque(false);
-			JLabel label = new JLabel(FocusableTip.getString("FocusHotkey"));
+			JLabel label = new JLabel(FocusableTip.getString("Fine-Design_Basic_Focus_Hotkey"));
 			Color fg = UIManager.getColor("Label.disabledForeground");
 			Font font = textArea.getFont();
 			font = font.deriveFont(font.getSize2D() - 1.0f);
diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java
index ca8b394cd..cd78c1755 100644
--- a/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java
+++ b/designer-base/src/main/java/com/fr/design/hyperlink/AbstractHyperNorthPane.java
@@ -52,12 +52,12 @@ public abstract class AbstractHyperNorthPane<T extends Hyperlink> extends BasicB
         targetFrameComboBox.setPreferredSize(new Dimension(100, 20));
 
         final JPanel newWindowConfPane = new JPanel();
-        newWindowConfPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Height") + ": "));
+        newWindowConfPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Height") + ": "));
         heightTextFiled = new UINumberField();
         heightTextFiled.setText(String.valueOf(DEFAULT_H_VALUE));
         heightTextFiled.setPreferredSize(new Dimension(40, 20));
         newWindowConfPane.add(heightTextFiled);
-        newWindowConfPane.add(new UILabel("  " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Width") + ": "));
+        newWindowConfPane.add(new UILabel("  " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Designer_Width") + ": "));
         widthTextFiled = new UINumberField();
         widthTextFiled.setText(String.valueOf(DEFAULT_V_VALUE));
         widthTextFiled.setPreferredSize(new Dimension(40, 20));
@@ -142,4 +142,4 @@ public abstract class AbstractHyperNorthPane<T extends Hyperlink> extends BasicB
         link.setWidth(Utils.objectToNumber(widthTextFiled.getText(), false).intValue());
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/ReporletHyperNorthPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/ReporletHyperNorthPane.java
index 8585a810c..757de93d2 100644
--- a/designer-base/src/main/java/com/fr/design/hyperlink/ReporletHyperNorthPane.java
+++ b/designer-base/src/main/java/com/fr/design/hyperlink/ReporletHyperNorthPane.java
@@ -65,7 +65,7 @@ public class ReporletHyperNorthPane extends AbstractHyperNorthPane<ReportletHype
         reportPathTextField = new UITextField(20);
         reportletNamePane.add(reportPathTextField, BorderLayout.CENTER);
 
-        browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Select"));
+        browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select"));
         browserButton.setPreferredSize(new Dimension(browserButton.getPreferredSize().width, 20));
         reportletNamePane.add(browserButton, BorderLayout.EAST);
         browserButton.addActionListener(new ActionListener() {
diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperlinkPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperlinkPane.java
index 7575f7221..ffd719112 100644
--- a/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperlinkPane.java
+++ b/designer-base/src/main/java/com/fr/design/hyperlink/ReportletHyperlinkPane.java
@@ -45,9 +45,9 @@ public class ReportletHyperlinkPane extends AbstractHyperLinkPane<ReportletHyper
 
         this.add(parameterViewPane, BorderLayout.CENTER);
 
-        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter"), null));
+        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter"), null));
 
-        extendParametersCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Extends_Report_Parameters"));
+        extendParametersCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Extends_Report_Parameters"));
         this.add(GUICoreUtils.createFlowPane(extendParametersCheckBox, FlowLayout.LEFT), BorderLayout.SOUTH);
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperNorthPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperNorthPane.java
index 73bbacbe1..6bd55e7e9 100644
--- a/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperNorthPane.java
+++ b/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperNorthPane.java
@@ -3,7 +3,6 @@ package com.fr.design.hyperlink;
 import com.fr.config.ServerPreferenceConfig;
 import com.fr.design.constants.LayoutConstants;
 
-import com.fr.design.gui.itextarea.UITextArea;
 import com.fr.design.gui.itextfield.UITextField;
 import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.utils.gui.GUICoreUtils;
@@ -56,7 +55,7 @@ public class WebHyperNorthPane extends AbstractHyperNorthPane<WebHyperlink> {
         if (this.needRenamePane) {
             headerPane.setLayout(new BorderLayout(LayoutConstants.VGAP_LARGE, LayoutConstants.VGAP_SMALL));
             itemNameTextField = new UITextField();
-            headerPane.add(GUICoreUtils.createNamedPane(itemNameTextField, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Name") + ":"), BorderLayout.NORTH);
+            headerPane.add(GUICoreUtils.createNamedPane(itemNameTextField, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":"), BorderLayout.NORTH);
             headerPane.add(urlWithHelp, BorderLayout.CENTER);
         } else {
             headerPane.add(urlWithHelp, BorderLayout.NORTH);
@@ -106,4 +105,4 @@ public class WebHyperNorthPane extends AbstractHyperNorthPane<WebHyperlink> {
         return new JPanel();
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperlinkPane.java b/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperlinkPane.java
index 986621f52..89663ba7a 100644
--- a/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperlinkPane.java
+++ b/designer-base/src/main/java/com/fr/design/hyperlink/WebHyperlinkPane.java
@@ -42,16 +42,16 @@ public class WebHyperlinkPane extends AbstractHyperLinkPane<WebHyperlink> {
 
         parameterViewPane = new ReportletParameterViewPane(getChartParaType(), getValueEditorPane(), getValueEditorPane());
         this.add(parameterViewPane, BorderLayout.CENTER);
-        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameters"), null));
+        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameters"), null));
 
         useCJKCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Use_CJK_To_Encode_Parameter"));
-        extendParametersCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Extends_Report_Parameters"));
+        extendParametersCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Extends_Report_Parameters"));
         this.add(GUICoreUtils.createFlowPane(new Component[]{useCJKCheckBox, extendParametersCheckBox}, FlowLayout.LEFT), BorderLayout.SOUTH);
     }
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link");
     }
 
     @Override
@@ -125,4 +125,4 @@ public class WebHyperlinkPane extends AbstractHyperLinkPane<WebHyperlink> {
     public void setExtendParametersCheckBox(UICheckBox extendParametersCheckBox) {
         this.extendParametersCheckBox = extendParametersCheckBox;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java b/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java
index af759aa3b..176d6ec3c 100644
--- a/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java
+++ b/designer-base/src/main/java/com/fr/design/i18n/DesignI18nImpl.java
@@ -34,7 +34,7 @@ public class DesignI18nImpl implements DesignI18nProvider {
 
     @Override
     public String i18nText(String key, Object... args) {
-        String format = InterProviderFactory.getProvider().getLocText(key);
+        String format = this.i18nText(key);
         MessageFormatter.FormattingTuple tuple = MessageFormatter.arrayFormat(format, args);
         return localeManager.getLocalBundle(GeneralContext.getLocale()).getText(localeManager, tuple.getMessage());
     }
diff --git a/designer-base/src/main/java/com/fr/design/javascript/EmailPane.java b/designer-base/src/main/java/com/fr/design/javascript/EmailPane.java
index 7cb07ebc0..21961318b 100644
--- a/designer-base/src/main/java/com/fr/design/javascript/EmailPane.java
+++ b/designer-base/src/main/java/com/fr/design/javascript/EmailPane.java
@@ -64,8 +64,8 @@ public class EmailPane extends FurtherBasicBeanPane<EmailJavaScript> {
 		showTplContent = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email_Can_Preview_Report_Content"));
     	centerPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{
                 {new UILabel(), tipsPane1},
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-Mail_to"), maitoEditor = new UITextField()),
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-CC_to"), ccEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_Mail_to"), maitoEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_CC_To"), ccEditor = new UITextField()),
                 createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_EmailPane_Bcc"), bccEditor = new UITextField()),
                 createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_EmailPane_Mail_Subject"), titleEditor = new UITextField()),
                 {mainTextLabel, scrollPane},
@@ -139,7 +139,7 @@ public class EmailPane extends FurtherBasicBeanPane<EmailJavaScript> {
      * @return 标题字串
      */
 	public String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email_sentEmail");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Email_Sent_Email");
 	}
 
     /**
@@ -151,4 +151,4 @@ public class EmailPane extends FurtherBasicBeanPane<EmailJavaScript> {
 		return ob instanceof EmailJavaScript;
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/javascript/FormSubmitJavaScriptPane.java b/designer-base/src/main/java/com/fr/design/javascript/FormSubmitJavaScriptPane.java
index 46cb53d73..79489ce8c 100644
--- a/designer-base/src/main/java/com/fr/design/javascript/FormSubmitJavaScriptPane.java
+++ b/designer-base/src/main/java/com/fr/design/javascript/FormSubmitJavaScriptPane.java
@@ -1,32 +1,29 @@
 package com.fr.design.javascript;
 
-import java.awt.BorderLayout;
-import java.awt.Dimension;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.List;
-
-import javax.swing.BorderFactory;
-
-import com.fr.design.gui.ibutton.UIButton;
-import com.fr.design.gui.ilable.UILabel;
-import javax.swing.JPanel;
-
 import com.fr.base.Parameter;
 import com.fr.design.beans.FurtherBasicBeanPane;
 import com.fr.design.gui.frpane.ReportletParameterViewPane;
+import com.fr.design.gui.ibutton.UIButton;
 import com.fr.design.gui.icombobox.UIComboBox;
+import com.fr.design.gui.ilable.UILabel;
 import com.fr.design.gui.itextfield.UITextField;
 import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.scrollruler.ModLineBorder;
 import com.fr.general.ComparatorUtils;
-
 import com.fr.js.FormSubmitJavaScript;
 import com.fr.stable.ParameterProvider;
 
+import javax.swing.BorderFactory;
+import javax.swing.JPanel;
+import java.awt.BorderLayout;
+import java.awt.Dimension;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.List;
+
 public class FormSubmitJavaScriptPane extends FurtherBasicBeanPane<FormSubmitJavaScript> {
-	public static final String ASYNCH = com.fr.design.i18n.Toolkit.i18nText("JavaScrit-Asynch");
-	public static final String SYNCH = com.fr.design.i18n.Toolkit.i18nText("JavaScript-Synch");
+	public static final String ASYNCH = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Asynch");
+	public static final String SYNCH = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Synch");
 	private UITextField urlTextField;
 	private UIComboBox asynComboBox;
 	private ReportletParameterViewPane pViewPane;
@@ -58,7 +55,7 @@ public class FormSubmitJavaScriptPane extends FurtherBasicBeanPane<FormSubmitJav
 		});
 		pViewPane = new ReportletParameterViewPane();
 		pViewPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("Parameter")));
-		northPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("Submit")));
+		northPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Basic_Submit")));
 		
 		addCallbackButton = javaScriptActionPane.createCallButton();
 		
@@ -74,7 +71,7 @@ public class FormSubmitJavaScriptPane extends FurtherBasicBeanPane<FormSubmitJav
 	 *
 	 */
 	public String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("JavaScript-Form_Submit");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Form_Submit");
 	}
 
 	/**
diff --git a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java
index 89d7d8cf7..a6adff143 100644
--- a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java
+++ b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptImplPane.java
@@ -51,7 +51,7 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane<JavaScriptImpl> {
 
     protected void initComponents() {
         parameterPane = new ReportletParameterViewPane(getChartParaType(), getValueEditorPane(), getValueEditorPane());
-        parameterPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter")));
+        parameterPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter")));
         parameterPane.addTableEditorListener(new TableModelListener() {
             public void tableChanged(TableModelEvent e) {
                 List<ParameterProvider> list = parameterPane.update();
@@ -87,7 +87,7 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane<JavaScriptImpl> {
         importedJsPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("ReportServerP-Import_JavaScript")));
         importedJsPane.setPreferredSize(new Dimension(265, 150));
         jsPane = new JSContentPane(defaultArgs);
-        jsPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_JavaScript")));
+        jsPane.setBorder(BorderFactory.createTitledBorder(new ModLineBorder(ModLineBorder.TOP), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript")));
 
         parameterPane.setPreferredSize(new Dimension(265, 150));
         JPanel topPane = GUICoreUtils.createBorderLayoutPane(
@@ -125,7 +125,7 @@ public class JavaScriptImplPane extends AbstractHyperLinkPane<JavaScriptImpl> {
      * @return 标题.
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_JavaScript");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript");
     }
 
     /**
diff --git a/designer-base/src/main/java/com/fr/design/javascript/ParameterJavaScriptPane.java b/designer-base/src/main/java/com/fr/design/javascript/ParameterJavaScriptPane.java
index 083ab545f..b5ed73850 100644
--- a/designer-base/src/main/java/com/fr/design/javascript/ParameterJavaScriptPane.java
+++ b/designer-base/src/main/java/com/fr/design/javascript/ParameterJavaScriptPane.java
@@ -35,7 +35,7 @@ public class ParameterJavaScriptPane extends AbstractHyperLinkPane<ParameterJava
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("JavaScript-Dynamic_Parameters");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Dynamic_Parameters");
     }
 
     @Override
@@ -79,4 +79,4 @@ public class ParameterJavaScriptPane extends AbstractHyperLinkPane<ParameterJava
             return false;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/AuthorityEditPane.java b/designer-base/src/main/java/com/fr/design/mainframe/AuthorityEditPane.java
index 37918ab78..794a8cfdd 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/AuthorityEditPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/AuthorityEditPane.java
@@ -57,8 +57,8 @@ public abstract class AuthorityEditPane extends JPanel {
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type") + "        ", SwingConstants.LEFT), typePane},
-                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WF_Name") + "        ", SwingConstants.LEFT), namePane},
+                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Type") + "        ", SwingConstants.LEFT), typePane},
+                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_WF_Name") + "        ", SwingConstants.LEFT), namePane},
                 new Component[]{checkPane, null},
         };
 
@@ -82,4 +82,4 @@ public abstract class AuthorityEditPane extends JPanel {
 
     public abstract JPanel populateCheckPane();
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java
index fb6ba72d1..ec27d1f73 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/DesignerFrameFileDealerPane.java
@@ -247,7 +247,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
 
         public RefreshTreeAction() {
 
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"));
             this.setSmallIcon(UIConstants.REFRESH_ICON);
         }
 
@@ -301,7 +301,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
 
         public DelFileAction() {
 
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/data/source/delete.png"));
         }
 
@@ -447,7 +447,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
             hintsLabel.setForeground(Color.RED);
             hintsLabel.setVisible(false);
 
-            confirmButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Confirm"));
+            confirmButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Confirm"));
             confirmButton.setPreferredSize(new Dimension(80, 25));
             confirmButton.setMinimumSize(new Dimension(80, 25));
             confirmButton.setMaximumSize(new Dimension(80, 25));
@@ -459,7 +459,7 @@ public class DesignerFrameFileDealerPane extends JPanel implements FileToolbarSt
                 }
             });
 
-            UIButton cancelButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cancel"));
+            UIButton cancelButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cancel"));
             cancelButton.setPreferredSize(new Dimension(80, 25));
             cancelButton.setMinimumSize(new Dimension(80, 25));
             cancelButton.setMaximumSize(new Dimension(80, 25));
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java
index a1bfa9d27..a49d66791 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/EastRegionContainerPane.java
@@ -97,7 +97,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
     private EastRegionContainerPane() {
         super();
         initPropertyItemList();
-        defaultPane = getDefaultPane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_No_Settings_Available"));
+        defaultPane = getDefaultPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No_Settings_Available"));
         defaultAuthorityPane = getDefaultPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Not_Support_Authority_Edit"));
         switchMode(PropertyMode.REPORT);
         setContainerWidth(CONTAINER_WIDTH);
@@ -114,7 +114,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
                 "cellattr", new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_PARA, PropertyMode.REPORT_FLOAT, PropertyMode.POLY, PropertyMode.POLY_CHART},
                 new PropertyMode[]{PropertyMode.REPORT, PropertyMode.FORM_REPORT, PropertyMode.POLY_REPORT});
         // 悬浮元素
-        PropertyItem floatElement = new PropertyItem(KEY_FLOAT_ELEMENT, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Float_Element"),
+        PropertyItem floatElement = new PropertyItem(KEY_FLOAT_ELEMENT, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Float_Element"),
                 "floatelement", new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_PARA, PropertyMode.REPORT_FLOAT, PropertyMode.POLY, PropertyMode.POLY_CHART},
                 new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_FLOAT, PropertyMode.POLY_REPORT});
         // 控件设置
@@ -126,7 +126,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
                 "conditionattr", new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_PARA, PropertyMode.REPORT_FLOAT, PropertyMode.POLY, PropertyMode.POLY_CHART},
                 new PropertyMode[]{PropertyMode.REPORT, PropertyMode.FORM_REPORT, PropertyMode.POLY_REPORT});
         // 超级链接
-        PropertyItem hyperlink = new PropertyItem(KEY_HYPERLINK, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink"),
+        PropertyItem hyperlink = new PropertyItem(KEY_HYPERLINK, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink"),
                 "hyperlink", new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_PARA, PropertyMode.REPORT_FLOAT, PropertyMode.POLY, PropertyMode.POLY_CHART},
                 new PropertyMode[]{PropertyMode.REPORT, PropertyMode.REPORT_FLOAT, PropertyMode.FORM_REPORT, PropertyMode.POLY_REPORT});
         // 组件库
@@ -134,7 +134,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
                 "widgetlib", new PropertyMode[]{PropertyMode.FORM},
                 new PropertyMode[]{PropertyMode.FORM});
         // 权限编辑
-        PropertyItem authorityEdition = new PropertyItem(KEY_AUTHORITY_EDITION, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Permissions_Edition"),
+        PropertyItem authorityEdition = new PropertyItem(KEY_AUTHORITY_EDITION, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Permissions_Edition"),
                 "authorityedit", new PropertyMode[]{PropertyMode.AUTHORITY_EDITION_DISABLED},
                 new PropertyMode[]{PropertyMode.AUTHORITY_EDITION});
         // 已配置角色
@@ -1028,7 +1028,7 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
             initListener();
             this.setVisible(true);
 
-            defaultPane = getDefaultPane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_No_Settings_Available"));
+            defaultPane = getDefaultPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No_Settings_Available"));
         }
 
         public void showDefaultPane() {
@@ -1107,4 +1107,4 @@ public class EastRegionContainerPane extends UIEastResizableContainer {
             });
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java b/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java
index 4d72be9cb..60b34a099 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/JFormSliderPane.java
@@ -223,7 +223,7 @@ public class JFormSliderPane extends JPanel {
         double f = TableLayout.FILL;
         double[] columnSize = {p, f};
         double[] rowSize = {p, p, p, p, p, p, p, p};
-        UILabel upLabel = new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Scale_EnlargeOrReduce"));
+        UILabel upLabel = new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Scale_EnlargeOrReduce"));
         upLabel.setOpaque(false);
         JPanel septPane = new JPanel(new BorderLayout());
         JSeparator sept = new JSeparator();
@@ -445,4 +445,4 @@ class FormPopupPane extends JPopupMenu {
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/JSliderPane.java b/designer-base/src/main/java/com/fr/design/mainframe/JSliderPane.java
index 4d511c5bb..4c8f307d6 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/JSliderPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/JSliderPane.java
@@ -230,7 +230,7 @@ public class JSliderPane extends JPanel {
         double f = TableLayout.FILL;
         double[] columnSize = {p, f};
         double[] rowSize = {p, p, p, p, p, p, p, p, p};
-        UILabel upLabel = new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Scale_EnlargeOrReduce"));
+        UILabel upLabel = new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Scale_EnlargeOrReduce"));
         upLabel.setOpaque(false);
         JPanel septPane = new JPanel(new BorderLayout());
         JSeparator sept = new JSeparator();
@@ -513,4 +513,4 @@ class PopupPane extends UIPopupMenu {
     public Insets getInsets() {
         return new Insets(INSERT_TOPBOTTOM, INSERT_LEFTRIGHT, INSERT_TOPBOTTOM, INSERT_LEFTRIGHT);
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java
index 37e1e4f13..09be6771c 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/GradientBackgroundQuickPane.java
@@ -39,7 +39,7 @@ public class GradientBackgroundQuickPane extends BackgroundQuickPane {
     }
 
     private void constructPane(){
-        String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right"), com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom")};
+        String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom")};
         Integer[] valueArray = {GradientBackground.LEFT2RIGHT, GradientBackground.TOP2BOTTOM};
         directionPane = new UIButtonGroup<Integer>(textArray, valueArray);
         directionPane.setSelectedIndex(0);
@@ -116,7 +116,7 @@ public class GradientBackgroundQuickPane extends BackgroundQuickPane {
 
 	@Override
 	public String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Gradient-Color");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradient_Color");
 	}
 
 	@Override
@@ -134,4 +134,4 @@ public class GradientBackgroundQuickPane extends BackgroundQuickPane {
 		}
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java
index fcc1f5360..7f794b708 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ImageBackgroundQuickPane.java
@@ -64,7 +64,7 @@ public class ImageBackgroundQuickPane extends BackgroundQuickPane {
         this.add(contentPane, BorderLayout.CENTER);
 
 
-        UIButton selectPictureButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture"));
+        UIButton selectPictureButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture"));
         selectPictureButton.addActionListener(selectPictureActionListener);
 
         if (hasImageLayout) {
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java
index 461a2e154..d965151cb 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/PatternBackgroundQuickPane.java
@@ -57,8 +57,8 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane {
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
                 new Component[]{null, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Foreground"), UILabel.LEFT), foregroundColorPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background"), UILabel.LEFT), backgroundColorPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"), UILabel.LEFT), foregroundColorPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"), UILabel.LEFT), backgroundColorPane},
         };
         double[] rowSize = {p, p, p};
         double[] columnSize = {p, f};
@@ -213,7 +213,7 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane {
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Pattern");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Pattern");
     }
 
     @Override
@@ -222,4 +222,4 @@ public class PatternBackgroundQuickPane extends BackgroundQuickPane {
         foregroundColorPane.setSelectObject(null);
         backgroundColorPane.setSelectObject(null);
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/DesignerLogHandler.java b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
index 0ebac84c1..a2bd7018b 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
@@ -60,7 +60,7 @@ public class DesignerLogHandler {
 
     public DesignerLogHandler() {
         logHandlerArea = new LogHandlerArea();
-        caption = new LogHandlerBar(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Log"));
+        caption = new LogHandlerBar(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Log"));
 
         caption.addClearListener(new ActionListener() {
 
@@ -153,7 +153,7 @@ public class DesignerLogHandler {
             selectAll.setIcon(BaseUtils.readIcon("/com/fr/design/images/log/selectedall.png"));
             popup.add(selectAll);
 
-            copy = new UIMenuItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Copy"));
+            copy = new UIMenuItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Copy"));
             copy.addActionListener(popupListener);
             copy.setIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/copy.png"));
             popup.add(copy);
@@ -263,7 +263,7 @@ public class DesignerLogHandler {
 
         private String appendLocaleMark(String str, int style) {
             if (style == ERROR_INT) {
-                str = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Alert") + ":" + str + "\n";
+                str = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Alert") + ":" + str + "\n";
             } else if (style == WARN_INT) {
                 str = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Seriously") + ":" + str + "\n";
             } else {
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBar.java b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBar.java
index fe83cfc2e..ddb16de04 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBar.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBar.java
@@ -47,7 +47,7 @@ public class LogHandlerBar extends JPanel implements ItemSelectable {
 		set.setMargin(null);
 		set.setOpaque(false);
 		set.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		set.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set"));
+		set.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set"));
 
 		this.add(clear);
 		this.add(selectedall);
@@ -181,4 +181,4 @@ public class LogHandlerBar extends JPanel implements ItemSelectable {
 		private static final  int SET_OFFSET = 70;
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBarUI.java b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBarUI.java
index 4c16af933..4eb214358 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBarUI.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/loghandler/LogHandlerBarUI.java
@@ -101,8 +101,8 @@ public class LogHandlerBarUI extends ComponentUI implements MouseListener, Focus
 		}
 
 		g.drawString(com.fr.design.i18n.Toolkit.i18nText("NNormal") + '(' + button.getInfo() + ')', button.getWidth() - 310, y);
-		g.drawString(com.fr.design.i18n.Toolkit.i18nText("Alert") + '(' + button.getError() + ')', button.getWidth() - 250, y);
-		g.drawString(com.fr.design.i18n.Toolkit.i18nText("Seriously") + '(' + button.getServer() + ')', button.getWidth() - 190, y);
+		g.drawString(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Alert") + '(' + button.getError() + ')', button.getWidth() - 250, y);
+		g.drawString(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Seriously") + '(' + button.getServer() + ')', button.getWidth() - 190, y);
 	}
 
     /**
@@ -155,4 +155,4 @@ public class LogHandlerBarUI extends ComponentUI implements MouseListener, Focus
      */
 	public void focusGained(FocusEvent e) {
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java
index 4d6de9875..e45ec62a1 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/ToolBarMenuDock.java
@@ -334,7 +334,7 @@ public abstract class ToolBarMenuDock {
             insertMenu(menuDef, MenuHandler.FILE);
             return menuDef;
         }
-        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_File"), 'F');
+        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_File"), 'F');
 
         ShortCut[] scs = new ShortCut[0];
         if (!DesignerMode.isAuthorityEditing()) {
@@ -496,7 +496,7 @@ public abstract class ToolBarMenuDock {
     }
 
     public MenuDef createHelpMenuDef() {
-        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Help"), 'H');
+        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Help"), 'H');
         ShortCut[] otherHelpShortCuts = createHelpShortCuts();
         for (ShortCut shortCut : otherHelpShortCuts) {
             menuDef.addShortCut(shortCut);
@@ -506,7 +506,7 @@ public abstract class ToolBarMenuDock {
     }
 
     public MenuDef createCommunityMenuDef() {
-        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY"), 'C');
+        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Community"), 'C');
         ShortCut[] otherCommunityShortCuts = createCommunityShortCuts();
         for (ShortCut shortCut : otherCommunityShortCuts) {
             menuDef.addShortCut(shortCut);
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/VcsScene.java b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/VcsScene.java
index 34fed3a86..863a5d6a1 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/toolbar/VcsScene.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/toolbar/VcsScene.java
@@ -1,6 +1,5 @@
 package com.fr.design.mainframe.toolbar;
 
-import com.fr.base.BaseUtils;
 import com.fr.base.vcs.DesignerMode;
 import com.fr.design.actions.edit.RedoAction;
 import com.fr.design.actions.edit.UndoAction;
@@ -18,7 +17,7 @@ import com.fr.stable.ArrayUtils;
 public class VcsScene {
 
     public static MenuDef createFileMenuDef(ToolBarMenuDockPlus plus) {
-        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_File"), 'F');
+        MenuDef menuDef = new MenuDef(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_File"), 'F');
 
         ShortCut[] scs = new ShortCut[0];
         if (!ArrayUtils.isEmpty(scs)) {
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/widget/BasicPropertyPane.java b/designer-base/src/main/java/com/fr/design/mainframe/widget/BasicPropertyPane.java
index 9f74ecbf6..d675aceb2 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/widget/BasicPropertyPane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/widget/BasicPropertyPane.java
@@ -56,7 +56,7 @@ public class BasicPropertyPane extends BasicPane {
                 }
             }
         };
-        widgetName.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"));
+        widgetName.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"));
         double f = TableLayout.FILL;
         double p = TableLayout.PREFERRED;
         double[] rowSize = {p};
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/TemplateStylePane.java b/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/TemplateStylePane.java
index 7405eaf5f..8effcd10f 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/TemplateStylePane.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/widget/accessibles/TemplateStylePane.java
@@ -79,7 +79,7 @@ public class TemplateStylePane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tab_Style_Template");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template");
     }
 
     public void populate(TemplateStyle templateStyle) {
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/widget/editors/DataBindingEditor.java b/designer-base/src/main/java/com/fr/design/mainframe/widget/editors/DataBindingEditor.java
index 790841dea..018bc75ae 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/widget/editors/DataBindingEditor.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/widget/editors/DataBindingEditor.java
@@ -15,7 +15,6 @@ import com.fr.data.TableDataSource;
 import com.fr.design.data.datapane.TableDataComboBox;
 import com.fr.design.gui.icombobox.UIComboBoxRenderer;
 import com.fr.design.gui.icombobox.LazyComboBox;
-import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.editor.editor.Editor;
 import com.fr.form.data.DataBinding;
 
@@ -58,7 +57,7 @@ public class DataBindingEditor extends Editor<DataBinding> {
 
     public DataBindingEditor() {
         this.initCompontents();
-        this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Field"));
+        this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Field"));
     }
 
 
@@ -148,4 +147,4 @@ public class DataBindingEditor extends Editor<DataBinding> {
     public String getIconName() {
         return "bind_ds_column";
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/mainframe/widget/wrappers/BackgroundWrapper.java b/designer-base/src/main/java/com/fr/design/mainframe/widget/wrappers/BackgroundWrapper.java
index 1f88ee7d9..3b03de1f5 100644
--- a/designer-base/src/main/java/com/fr/design/mainframe/widget/wrappers/BackgroundWrapper.java
+++ b/designer-base/src/main/java/com/fr/design/mainframe/widget/wrappers/BackgroundWrapper.java
@@ -31,9 +31,9 @@ public class BackgroundWrapper implements Encoder, Decoder {
         } else if (v instanceof PatternBackground) {
             return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Pattern");
         } else if (v instanceof ImageFileBackground) {
-            return com.fr.design.i18n.Toolkit.i18nText("Image");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image");
         } else if (v instanceof GradientBackground) {
-            return com.fr.design.i18n.Toolkit.i18nText("Gradient-Color");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradient_Color");
         } else {
             return com.fr.design.i18n.Toolkit.i18nText("None");
         }
@@ -47,4 +47,4 @@ public class BackgroundWrapper implements Encoder, Decoder {
     @Override
     public void validate(String txt) throws ValidationException {
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/menu/KeySetUtils.java b/designer-base/src/main/java/com/fr/design/menu/KeySetUtils.java
index 5673a9a6d..a538d3218 100644
--- a/designer-base/src/main/java/com/fr/design/menu/KeySetUtils.java
+++ b/designer-base/src/main/java/com/fr/design/menu/KeySetUtils.java
@@ -64,7 +64,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Close");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Close");
         }
 
         @Override
@@ -81,7 +81,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Save");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save");
         }
 
         @Override
@@ -149,7 +149,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Export");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Export");
         }
 
         @Override
@@ -551,7 +551,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark");
         }
 
         @Override
@@ -691,7 +691,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell");
         }
 
         @Override
@@ -708,7 +708,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Expand");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Expand");
         }
 
         @Override
@@ -725,7 +725,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget-Settings");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Settings_Duplicate");
         }
 
         @Override
@@ -930,7 +930,7 @@ public class KeySetUtils {
 
         @Override
         public String getMenuName() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other");
         }
 
         @Override
diff --git a/designer-base/src/main/java/com/fr/design/present/dict/CustomDictPane.java b/designer-base/src/main/java/com/fr/design/present/dict/CustomDictPane.java
index 9819fa0a0..204395ac1 100644
--- a/designer-base/src/main/java/com/fr/design/present/dict/CustomDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/present/dict/CustomDictPane.java
@@ -15,7 +15,7 @@ import com.fr.stable.StringUtils;
 
 public class CustomDictPane extends FurtherBasicBeanPane<CustomDictionary> {
 	private static final long serialVersionUID = 1L;
-	private String[] columnNames = {com.fr.design.i18n.Toolkit.i18nText("Actual_Value"), com.fr.design.i18n.Toolkit.i18nText("Display_Value")}; // 字典列名key,value
+	private String[] columnNames = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value")}; // 字典列名key,value
 
 	private CustomDictCorrelationPane correlationPane;
 
diff --git a/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java b/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java
index f65172904..5c3c3bd93 100644
--- a/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/present/dict/DatabaseDictPane.java
@@ -78,7 +78,7 @@ public class DatabaseDictPane extends FurtherBasicBeanPane<DatabaseDictionary> i
         Component[][] components = new Component[][]{
                 new Component[]{null, null},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value"), UILabel.LEFT), keyColumnPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Display_Value"), UILabel.LEFT), valueDictPane}
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value"), UILabel.LEFT), valueDictPane}
         };
         JPanel dbDictPanel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, GAP_HUGER, LayoutConstants.VGAP_LARGE);
         this.setLayout(new BorderLayout(0, 4));
diff --git a/designer-base/src/main/java/com/fr/design/present/dict/DictionaryPane.java b/designer-base/src/main/java/com/fr/design/present/dict/DictionaryPane.java
index 341f0b907..3f62c0170 100644
--- a/designer-base/src/main/java/com/fr/design/present/dict/DictionaryPane.java
+++ b/designer-base/src/main/java/com/fr/design/present/dict/DictionaryPane.java
@@ -7,7 +7,6 @@ import com.fr.design.constants.LayoutConstants;
 import com.fr.design.data.DataCreatorUI;
 import com.fr.design.gui.frpane.UIComboBoxPane;
 import com.fr.design.gui.ilable.UILabel;
-import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.layout.TableLayout;
 import com.fr.design.layout.TableLayoutHelper;
 
@@ -34,7 +33,7 @@ public class DictionaryPane extends UIComboBoxPane<Dictionary> implements DataCr
         int[][] rowCount = {{1, 1}, {1, 1}};
 
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type_Set"), UILabel.LEFT), jcb},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type_Set"), UILabel.LEFT), jcb},
                 new Component[]{null, null}
         };
         JPanel northPane = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_HUGER, LayoutConstants.VGAP_MEDIUM);
@@ -44,7 +43,7 @@ public class DictionaryPane extends UIComboBoxPane<Dictionary> implements DataCr
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary");
     }
 
     @Override
@@ -78,4 +77,4 @@ public class DictionaryPane extends UIComboBoxPane<Dictionary> implements DataCr
         paneList.add(new FormulaDictPane());
         return paneList;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/present/dict/FormulaDictPane.java b/designer-base/src/main/java/com/fr/design/present/dict/FormulaDictPane.java
index fd38d7b87..ff1384620 100644
--- a/designer-base/src/main/java/com/fr/design/present/dict/FormulaDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/present/dict/FormulaDictPane.java
@@ -64,7 +64,7 @@ public class FormulaDictPane extends FurtherBasicBeanPane<FormulaDictionary> {
 
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value"), UILabel.LEFT), keyFormulaContainer},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Display_Value"), UILabel.LEFT), valueFormulaContainer},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value"), UILabel.LEFT), valueFormulaContainer},
                 new Component[]{tag, null}
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, LayoutConstants.VGAP_LARGE, LayoutConstants.VGAP_LARGE);
@@ -81,7 +81,7 @@ public class FormulaDictPane extends FurtherBasicBeanPane<FormulaDictionary> {
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula");
     }
 
     @Override
diff --git a/designer-base/src/main/java/com/fr/design/present/dict/TableDataDictPane.java b/designer-base/src/main/java/com/fr/design/present/dict/TableDataDictPane.java
index 77f9cf4ff..ab9d8d90c 100644
--- a/designer-base/src/main/java/com/fr/design/present/dict/TableDataDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/present/dict/TableDataDictPane.java
@@ -88,7 +88,7 @@ public class TableDataDictPane extends FurtherBasicBeanPane<TableDataDictionary>
         });
 //        keyColumnPane = ValueEditorPaneFactory.createValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor()});
         keyColumnPane = new DoubleDeckValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor()});
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         formulaEditor.setEnabled(true);
 //        valueDictPane = ValueEditorPaneFactory.createValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor(), formulaEditor});
         valueDictPane = new DoubleDeckValueEditorPane(new Editor[]{new ColumnNameEditor(), new ColumnIndexEditor(), formulaEditor});
@@ -109,7 +109,7 @@ public class TableDataDictPane extends FurtherBasicBeanPane<TableDataDictionary>
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_DS_Table_Data") + "  ", UILabel.LEFT), firstLine},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value") + "  ", UILabel.LEFT), keyColumnPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Display_Value") + "  ", UILabel.LEFT), valueDictPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value") + "  ", UILabel.LEFT), valueDictPane},
         };
 
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, VGAP, LayoutConstants.VGAP_MEDIUM);
@@ -171,7 +171,7 @@ public class TableDataDictPane extends FurtherBasicBeanPane<TableDataDictionary>
         columnIndexEditor1.addItemListener(itemListener);
         keyColumnPane.setEditors(new Editor[]{columnNameEditor1, columnIndexEditor1}, columnNames[0]);
 
-        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter-Formula"));
+        FormulaEditor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter_Formula"));
         formulaEditor.setEnabled(true);
         formulaEditor.addChangeListener(new ChangeListener() {
 
@@ -368,4 +368,4 @@ public class TableDataDictPane extends FurtherBasicBeanPane<TableDataDictionary>
     public boolean shouldResponseChangeListener() {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java b/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java
index 132f99a8f..598ec7f05 100644
--- a/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java
+++ b/designer-base/src/main/java/com/fr/design/remote/button/IconButton.java
@@ -19,7 +19,7 @@ public final class IconButton extends JButton {
         super(StringUtils.EMPTY);
         setContentAreaFilled(false);
         setFocusPainted(false);
-        setIcon(BaseUtils.readIcon("com/fr/design/remote/images/icon_Remove_x.png"));
+        setIcon(BaseUtils.readIcon("com/fr/design/remote/images/icon_tab_close_normal.png"));
         setBorder(null);
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java
index b85e49fcf..eaa96f330 100644
--- a/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java
+++ b/designer-base/src/main/java/com/fr/design/remote/ui/AuthorityEditorPane.java
@@ -38,7 +38,9 @@ public class AuthorityEditorPane extends BasicBeanPane<DesignAuthority> {
         IOFileNodeFilter filter = new IOFileNodeFilter(new String[]{".cpt", ".class", ".frm", ".form"});
         tree.setDigIn(true);
         tree.setFileNodeFilter(filter);
-        this.add(new UIScrollPane(tree), BorderLayout.CENTER);
+        UIScrollPane scrollPane = new UIScrollPane(tree);
+        scrollPane.setBorder(BorderFactory.createEmptyBorder());
+        this.add(scrollPane, BorderLayout.CENTER);
         tree.refreshEnv();
 
     }
diff --git a/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java b/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java
index 08f377b79..bb3f222b9 100644
--- a/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java
+++ b/designer-base/src/main/java/com/fr/design/remote/ui/UserManagerPane.java
@@ -194,7 +194,7 @@ public class UserManagerPane extends BasicPane {
 
 
     public UserManagerPane() {
-        this.setBorder(BorderFactory.createEmptyBorder(0,4,0,4));
+        this.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 4));
         this.setLayout(new BorderLayout());
         this.add(
                 TableLayoutHelper.createCommonTableLayoutPane(
@@ -221,8 +221,8 @@ public class UserManagerPane extends BasicPane {
                 BorderFactory.createCompoundBorder(
                         new EmptyBorder(6, 0, 0, 0),
                         UITitledBorder.createBorderWithTitle(
-                                Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_Member")
-                        )
+                                Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Decision_Member"),
+                                4)
                 )
         );
 
@@ -279,7 +279,9 @@ public class UserManagerPane extends BasicPane {
         content.setBorder(
                 BorderFactory.createCompoundBorder(
                         new EmptyBorder(6, 0, 0, 0),
-                        UITitledBorder.createBorderWithTitle(Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_Member")
+                        UITitledBorder.createBorderWithTitle(
+                                Toolkit.i18nText("Fine-Design_Basic_Remote_Design_Selected_Member"),
+                                4
                         )
                 )
         );
diff --git a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java
index 456f4c7bd..27a9822c6 100644
--- a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java
+++ b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java
@@ -168,6 +168,6 @@ public class WatermarkPane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark");
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java b/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java
index 8509043ce..ef8f8276e 100644
--- a/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java
+++ b/designer-base/src/main/java/com/fr/design/roleAuthority/ReportAndFSManagePane.java
@@ -163,7 +163,7 @@ public class ReportAndFSManagePane extends DockingView implements Prepare4DataSo
     private void checkChanges() {
         //如若有变化,则弹出下面的对话框
         int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Role_changed_Is_Refresh") + "?",
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
         if (returnVal == JOptionPane.OK_OPTION) {
             roleTree.refreshTreeNode();
             expandTree(roleTree, true);
@@ -331,7 +331,7 @@ public class ReportAndFSManagePane extends DockingView implements Prepare4DataSo
 //				return;
 //			}
 //
-//			int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + ":" + selectedNO.getName() + "?",
+//			int returnVal = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + ":" + selectedNO.getName() + "?",
 //					com.fr.design.i18n.Toolkit.i18nText("Remove"), JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
 //			if (returnVal == JOptionPane.OK_OPTION) {
 //				op.removeAction(selectedNO.getName());
@@ -361,7 +361,7 @@ public class ReportAndFSManagePane extends DockingView implements Prepare4DataSo
     private class RefreshAction extends UpdateAction {
 
         public RefreshAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"));
             this.setSmallIcon(UIConstants.REFRESH_ICON);
         }
 
diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleSourceOP.java b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleSourceOP.java
index 54920e364..92c48187b 100644
--- a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleSourceOP.java
+++ b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleSourceOP.java
@@ -1 +1 @@
-package com.fr.design.roleAuthority;

import com.fr.general.NameObject;
import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode;
import com.fr.design.gui.itree.refreshabletree.UserObjectOP;


import java.util.*;

/**
 * Author : daisy
 * Date: 13-8-30
 * Time: 下午3:36
 */
public class RoleSourceOP implements UserObjectOP<RoleDataWrapper> {
	private static final int REPORT_PLATEFORM_MANAGE = 0;
	private static final int FS_MANAGE = 1;
	public static int manageMode = -1;


	public RoleSourceOP() {
		super();
	}


	public List<Map<String, RoleDataWrapper>> init() {

		//用于存放角色
		List<Map<String, RoleDataWrapper>> allRoles = new ArrayList<Map<String, RoleDataWrapper>>();

		Map<String, RoleDataWrapper> report_roles = new LinkedHashMap<String, RoleDataWrapper>();
		Map<String, RoleDataWrapper> FS_roles = new LinkedHashMap<String, RoleDataWrapper>();

		addReportRoles(report_roles);
		addFSRoles(FS_roles);

		allRoles.add(report_roles);
		allRoles.add(FS_roles);

		return allRoles;
	}


	/**
	 * 获取报表平台的角色
	 */
	protected  void addReportRoles(Map<String, RoleDataWrapper> report_roles) {
		RoleDataWrapper tdw = new RoleDataWrapper(com.fr.design.i18n.Toolkit.i18nText("M_Server-Platform_Manager"));
		report_roles.put(com.fr.design.i18n.Toolkit.i18nText("Role"), tdw);
	}


	/**
	 * 获取数据决策系统的角色
	 */
	protected  void addFSRoles(Map<String, RoleDataWrapper> FS_roles) {
		RoleDataWrapper tdw = new RoleDataWrapper(com.fr.design.i18n.Toolkit.i18nText("FS_Name"));
		FS_roles.put(com.fr.design.i18n.Toolkit.i18nText("Role"), tdw);
	}


	public boolean interceptButtonEnabled() {
		return true;
	}

	/**
	 * 移除名字是name的角色
	 *
	 * @param name
	 */
	public void removeAction(String name) {
		//删除对应模式下的角色
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//删除报表平台的角色
				break;
			case FS_MANAGE:
				//删除数据决策系统的角色
				break;
		}

	}


	public void addAction(String name) {
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//增加报表平台的角色
				break;
			case FS_MANAGE:
				//增加数据决策系统的角色
				break;

		}
	}


	public void rename(String oldName, String newName) {
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//修改报表平台的角色
				break;
			case FS_MANAGE:
				//修改数据决策系统的角色
				break;

		}
	}

	/**
	 * 根据不同模式生成子节点
	 *
	 * @return
	 */
	@Override
	public ExpandMutableTreeNode[] load() {
		Map<String, RoleDataWrapper> report_roles = null;
		Map<String, RoleDataWrapper> FS_roles = null;

		if (this != null) {
			report_roles = this.init().get(0);
			FS_roles = this.init().get(1);
		} else {
			report_roles = Collections.emptyMap();
			FS_roles = Collections.emptyMap();
		}
		List<ExpandMutableTreeNode> list = new ArrayList<ExpandMutableTreeNode>(); //所有的角色
		List<ExpandMutableTreeNode> reportlist = new ArrayList<ExpandMutableTreeNode>(); //报表平台橘色
		List<ExpandMutableTreeNode> FSlist = new ArrayList<ExpandMutableTreeNode>();   //数据决策系统角色

		list.add(initReportRolseNode(report_roles));
		addNodeToList(report_roles, reportlist);

		list.add(initFSRolseNode(FS_roles));
		addNodeToList(FS_roles, FSlist);

		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				return reportlist.toArray(new ExpandMutableTreeNode[reportlist.size()]);
			case FS_MANAGE:
				return FSlist.toArray(new ExpandMutableTreeNode[FSlist.size()]);
			default:
				return list.toArray(new ExpandMutableTreeNode[list.size()]);
		}
	}


	protected void setDataMode(int i) {
		manageMode = i;
	}


	protected  void addNodeToList(Map<String, RoleDataWrapper> roleMap, List<ExpandMutableTreeNode> roleList) {
		ExpandMutableTreeNode[] roleNode = getNodeArrayFromMap(roleMap);
		for (int i = 0; i < roleNode.length; i++) {
			roleList.add(roleNode[i]);
		}
	}


	protected ExpandMutableTreeNode initReportRolseNode(Map<String, RoleDataWrapper> report_roles) {
		ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("M_Server-Platform_Manager"), REPORT_PLATEFORM_MANAGE), true);
		templateNode.addChildTreeNodes(getNodeArrayFromMap(report_roles));
		return templateNode;
	}

	protected  ExpandMutableTreeNode initFSRolseNode(Map<String, RoleDataWrapper> FS_roles) {
		ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("FS_Name"), FS_MANAGE), true);
		templateNode.addChildTreeNodes(getNodeArrayFromMap(FS_roles));
		return templateNode;
	}


	protected  ExpandMutableTreeNode[] getNodeArrayFromMap(Map<String, RoleDataWrapper> map) {
		List<ExpandMutableTreeNode> roleList = new ArrayList<ExpandMutableTreeNode>();
		Iterator<Map.Entry<String, RoleDataWrapper>> entryIt = map.entrySet().iterator();
		while (entryIt.hasNext()) {
			Map.Entry<String, RoleDataWrapper> entry = entryIt.next();
			String name = entry.getKey();
			RoleDataWrapper t = entry.getValue();

			ExpandMutableTreeNode newChildTreeNode = new ExpandMutableTreeNode(new NameObject(name, t));
			roleList.add(newChildTreeNode);
			newChildTreeNode.add(new ExpandMutableTreeNode());
		}
		return roleList.toArray(new ExpandMutableTreeNode[roleList.size()]);
	}
}
\ No newline at end of file
+package com.fr.design.roleAuthority;

import com.fr.general.NameObject;
import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode;
import com.fr.design.gui.itree.refreshabletree.UserObjectOP;


import java.util.*;

/**
 * Author : daisy
 * Date: 13-8-30
 * Time: 下午3:36
 */
public class RoleSourceOP implements UserObjectOP<RoleDataWrapper> {
	private static final int REPORT_PLATEFORM_MANAGE = 0;
	private static final int FS_MANAGE = 1;
	public static int manageMode = -1;


	public RoleSourceOP() {
		super();
	}


	public List<Map<String, RoleDataWrapper>> init() {

		//用于存放角色
		List<Map<String, RoleDataWrapper>> allRoles = new ArrayList<Map<String, RoleDataWrapper>>();

		Map<String, RoleDataWrapper> report_roles = new LinkedHashMap<String, RoleDataWrapper>();
		Map<String, RoleDataWrapper> FS_roles = new LinkedHashMap<String, RoleDataWrapper>();

		addReportRoles(report_roles);
		addFSRoles(FS_roles);

		allRoles.add(report_roles);
		allRoles.add(FS_roles);

		return allRoles;
	}


	/**
	 * 获取报表平台的角色
	 */
	protected  void addReportRoles(Map<String, RoleDataWrapper> report_roles) {
		RoleDataWrapper tdw = new RoleDataWrapper(com.fr.design.i18n.Toolkit.i18nText("M_Server-Platform_Manager"));
		report_roles.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Role"), tdw);
	}


	/**
	 * 获取数据决策系统的角色
	 */
	protected  void addFSRoles(Map<String, RoleDataWrapper> FS_roles) {
		RoleDataWrapper tdw = new RoleDataWrapper(com.fr.design.i18n.Toolkit.i18nText("FS_Name"));
		FS_roles.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Role"), tdw);
	}


	public boolean interceptButtonEnabled() {
		return true;
	}

	/**
	 * 移除名字是name的角色
	 *
	 * @param name
	 */
	public void removeAction(String name) {
		//删除对应模式下的角色
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//删除报表平台的角色
				break;
			case FS_MANAGE:
				//删除数据决策系统的角色
				break;
		}

	}


	public void addAction(String name) {
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//增加报表平台的角色
				break;
			case FS_MANAGE:
				//增加数据决策系统的角色
				break;

		}
	}


	public void rename(String oldName, String newName) {
		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				//修改报表平台的角色
				break;
			case FS_MANAGE:
				//修改数据决策系统的角色
				break;

		}
	}

	/**
	 * 根据不同模式生成子节点
	 *
	 * @return
	 */
	@Override
	public ExpandMutableTreeNode[] load() {
		Map<String, RoleDataWrapper> report_roles = null;
		Map<String, RoleDataWrapper> FS_roles = null;

		if (this != null) {
			report_roles = this.init().get(0);
			FS_roles = this.init().get(1);
		} else {
			report_roles = Collections.emptyMap();
			FS_roles = Collections.emptyMap();
		}
		List<ExpandMutableTreeNode> list = new ArrayList<ExpandMutableTreeNode>(); //所有的角色
		List<ExpandMutableTreeNode> reportlist = new ArrayList<ExpandMutableTreeNode>(); //报表平台橘色
		List<ExpandMutableTreeNode> FSlist = new ArrayList<ExpandMutableTreeNode>();   //数据决策系统角色

		list.add(initReportRolseNode(report_roles));
		addNodeToList(report_roles, reportlist);

		list.add(initFSRolseNode(FS_roles));
		addNodeToList(FS_roles, FSlist);

		switch (manageMode) {
			case REPORT_PLATEFORM_MANAGE:
				return reportlist.toArray(new ExpandMutableTreeNode[reportlist.size()]);
			case FS_MANAGE:
				return FSlist.toArray(new ExpandMutableTreeNode[FSlist.size()]);
			default:
				return list.toArray(new ExpandMutableTreeNode[list.size()]);
		}
	}


	protected void setDataMode(int i) {
		manageMode = i;
	}


	protected  void addNodeToList(Map<String, RoleDataWrapper> roleMap, List<ExpandMutableTreeNode> roleList) {
		ExpandMutableTreeNode[] roleNode = getNodeArrayFromMap(roleMap);
		for (int i = 0; i < roleNode.length; i++) {
			roleList.add(roleNode[i]);
		}
	}


	protected ExpandMutableTreeNode initReportRolseNode(Map<String, RoleDataWrapper> report_roles) {
		ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("M_Server-Platform_Manager"), REPORT_PLATEFORM_MANAGE), true);
		templateNode.addChildTreeNodes(getNodeArrayFromMap(report_roles));
		return templateNode;
	}

	protected  ExpandMutableTreeNode initFSRolseNode(Map<String, RoleDataWrapper> FS_roles) {
		ExpandMutableTreeNode templateNode = new ExpandMutableTreeNode(new NameObject(com.fr.design.i18n.Toolkit.i18nText("FS_Name"), FS_MANAGE), true);
		templateNode.addChildTreeNodes(getNodeArrayFromMap(FS_roles));
		return templateNode;
	}


	protected  ExpandMutableTreeNode[] getNodeArrayFromMap(Map<String, RoleDataWrapper> map) {
		List<ExpandMutableTreeNode> roleList = new ArrayList<ExpandMutableTreeNode>();
		Iterator<Map.Entry<String, RoleDataWrapper>> entryIt = map.entrySet().iterator();
		while (entryIt.hasNext()) {
			Map.Entry<String, RoleDataWrapper> entry = entryIt.next();
			String name = entry.getKey();
			RoleDataWrapper t = entry.getValue();

			ExpandMutableTreeNode newChildTreeNode = new ExpandMutableTreeNode(new NameObject(name, t));
			roleList.add(newChildTreeNode);
			newChildTreeNode.add(new ExpandMutableTreeNode());
		}
		return roleList.toArray(new ExpandMutableTreeNode[roleList.size()]);
	}
}
\ No newline at end of file
diff --git a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java
index 0dc4aa245..ef576ba0f 100644
--- a/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java
+++ b/designer-base/src/main/java/com/fr/design/roleAuthority/RoleTree.java
@@ -239,7 +239,7 @@ public class RoleTree extends UserObjectRefreshJTree<RoleSourceOP> {
      */
     protected void doWithValueChanged(TreeSelectionEvent e) {
         if (e.getNewLeadSelectionPath() != null) {
-            if (!e.getNewLeadSelectionPath().getLastPathComponent().toString().equals(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role"))) {
+            if (!e.getNewLeadSelectionPath().getLastPathComponent().toString().equals(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role"))) {
                 roleName = e.getNewLeadSelectionPath().getLastPathComponent().toString();
                 setTabRoleName(roleName);
                 refreshRoleTree(roleName);
@@ -253,7 +253,7 @@ public class RoleTree extends UserObjectRefreshJTree<RoleSourceOP> {
      * @param treepath 所选的节点路径
      */
     protected void doWithValueChanged(TreePath treepath) {
-        if (treepath != null && !treepath.getLastPathComponent().toString().equals(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role"))) {
+        if (treepath != null && !treepath.getLastPathComponent().toString().equals(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role"))) {
             roleName = treepath.getLastPathComponent().toString();
             setTabRoleName(roleName);
             refreshRoleTree(roleName);
@@ -536,4 +536,4 @@ public class RoleTree extends UserObjectRefreshJTree<RoleSourceOP> {
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/AlignmentPane.java b/designer-base/src/main/java/com/fr/design/style/AlignmentPane.java
index 718bc088b..62c7b7e99 100644
--- a/designer-base/src/main/java/com/fr/design/style/AlignmentPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/AlignmentPane.java
@@ -35,10 +35,10 @@ public class AlignmentPane extends BasicPane {
     private AlignmentComboBox verAlignmentComboBox;
     private UIComboBox textComboBox;
     private static final String[] TEXT = {
-            com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Wrap_Text"),
-            com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Single_Line"),
-            com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Single_Line(Adjust_Font)"),
-            com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Multi_Line(Adjust_Font)")};
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Wrap_Text"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Single_Line"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Single_Line(Adjust_Font)"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Multi_Line(Adjust_Font)")};
     private UIBasicSpinner rotationSpinner;
     private UICheckBox isVerticalTextCheckBox;
     private UIRadioButton leftToRightRB;
@@ -86,7 +86,7 @@ public class AlignmentPane extends BasicPane {
         //richer:文本控制和图片布局
         JPanel textDirectionPanel = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane();
         contentPane.add(textDirectionPanel);
-        textDirectionPanel.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation"), null));
+        textDirectionPanel.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation"), null));
         JPanel isVerticalTextPanel = FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
         textDirectionPanel.add(isVerticalTextPanel);
         initVerticalPane(isVerticalTextPanel);
@@ -94,7 +94,7 @@ public class AlignmentPane extends BasicPane {
         JPanel rotationPane = FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
         textDirectionPanel.add(rotationPane);
 
-        rotationPane.add(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation")));//james:加了一个空格,这样对齐了好看些
+        rotationPane.add(new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")));//james:加了一个空格,这样对齐了好看些
 
         rotationSpinner = new UIBasicSpinner(new SpinnerNumberModel(0, -NUM_90, NUM_90, 1));
         rotationSpinner.addChangeListener(changeListener);
@@ -136,24 +136,24 @@ public class AlignmentPane extends BasicPane {
         spacingBeforeSpinner = new UIBasicSpinner(new SpinnerNumberModel(new Integer(0), new Integer(0), null, new Integer(1)));
         spacingBeforeSpinner.addChangeListener(changeListener);
         GUICoreUtils.setColumnForSpinner(spacingBeforeSpinner, 3);
-        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Style-Spacing_Before"), spacingBeforeSpinner));
+        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Spacing_Before_Duplicate"), spacingBeforeSpinner));
 
         spacingAfterSpinner = new UIBasicSpinner(new SpinnerNumberModel(new Integer(0), new Integer(0), null, new Integer(1)));
         spacingAfterSpinner.addChangeListener(changeListener);
         GUICoreUtils.setColumnForSpinner(spacingAfterSpinner, 3);
-        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Style-Spacing_After"), spacingAfterSpinner));
+        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Spacing_After_Duplicate"), spacingAfterSpinner));
 
         lineSpacingSpinner = new UIBasicSpinner(new SpinnerNumberModel(new Integer(0), new Integer(0), null, new Integer(1)));
         lineSpacingSpinner.addChangeListener(changeListener);
         GUICoreUtils.setColumnForSpinner(lineSpacingSpinner, 3);
-        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Style-Line_Spacing"), lineSpacingSpinner));
+        spacingPane.add(this.createCenterFlowPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Line_Spacing_Duplicate"), lineSpacingSpinner));
     }
 
 
     private JPanel getIndentPane() {
         JPanel indentPane = FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
 
-        indentPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Sytle-Indentation"), null));
+        indentPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sytle_Indentation"), null));
         Comparable maximum = null;
         leftIndentSpinner = new UIBasicSpinner(new SpinnerNumberModel(new Integer(0), new Integer(0), maximum, new Integer(1)));
         leftIndentSpinner.addChangeListener(changeListener);
@@ -168,7 +168,7 @@ public class AlignmentPane extends BasicPane {
     }
 
     private JPanel getTextImagePane() {
-        JPanel textImagePane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Style"));
+        JPanel textImagePane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Style"));
 
         //textStyle.
         JPanel textStylePane = FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
@@ -176,7 +176,7 @@ public class AlignmentPane extends BasicPane {
 
         textComboBox = new UIComboBox(TEXT);
         textComboBox.addActionListener(actionListener);
-        textStylePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Style")));
+        textStylePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Style")));
         textStylePane.add(textComboBox);
         textImagePane.add(textStylePane);//将文本放后面更好看点
         return textImagePane;
@@ -184,7 +184,7 @@ public class AlignmentPane extends BasicPane {
 
     private JPanel getAlignment() {
         //algnment.
-        JPanel aligmentPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Alignment-Style"));
+        JPanel aligmentPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style"));
         JPanel horAlignmentPane = FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
         //        aligmentPane.add(horAlignmentPane);
         horAlignmentComboBox = new AlignmentComboBox(CoreConstants.HORIZONTAL_ALIGNMENT_ARRAY);
diff --git a/designer-base/src/main/java/com/fr/design/style/FRFontPane.java b/designer-base/src/main/java/com/fr/design/style/FRFontPane.java
index 01b8cbe23..806c2f937 100644
--- a/designer-base/src/main/java/com/fr/design/style/FRFontPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/FRFontPane.java
@@ -277,7 +277,7 @@ public class FRFontPane extends BasicPane {
     
     @Override
     protected String title4PopupWindow() {
-    	return com.fr.design.i18n.Toolkit.i18nText("Sytle-FRFont");
+    	return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sytle_FRFont");
     }
 
     /**
@@ -401,4 +401,4 @@ public class FRFontPane extends BasicPane {
             updatePreviewLabel();
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/FormatBox.java b/designer-base/src/main/java/com/fr/design/style/FormatBox.java
index 535807637..3f322a418 100644
--- a/designer-base/src/main/java/com/fr/design/style/FormatBox.java
+++ b/designer-base/src/main/java/com/fr/design/style/FormatBox.java
@@ -69,7 +69,7 @@ public class FormatBox extends BasicPane {
 		formatBox.setEnabled(false);
 		pane.add(formatBox);
 		
-		pane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Sample") + ":"));
+		pane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Sample") + ":"));
 		pane.add(previewLabel = new UILabel(""));
 		
 		typeBox.addItemListener(typeListener);
@@ -205,4 +205,4 @@ public class FormatBox extends BasicPane {
 	private boolean isMoneyPattern(String pattern) {
 		return (pattern.length() > 0 && pattern.charAt(0) == '¤') || (pattern.length() > 0 && pattern.charAt(0) == '$');
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/FormatPane.java b/designer-base/src/main/java/com/fr/design/style/FormatPane.java
index 3efb1724c..062dc7f94 100644
--- a/designer-base/src/main/java/com/fr/design/style/FormatPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/FormatPane.java
@@ -82,7 +82,7 @@ public class FormatPane extends BasicPane {
         //sample pane
         JPanel samplePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
         this.add(samplePane, BorderLayout.NORTH);
-        samplePane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Sample"), null));
+        samplePane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Sample"), null));
         samplePane.setLayout(FRGUIPaneFactory.createBorderLayout());
         sampleLabel = new UILabel(FormatField.getInstance().getFormatValue());
         samplePane.add(sampleLabel, BorderLayout.CENTER);
@@ -488,4 +488,4 @@ public class FormatPane extends BasicPane {
         }
     };
     
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/background/BackgroundCardSwitchButtonPane.java b/designer-base/src/main/java/com/fr/design/style/background/BackgroundCardSwitchButtonPane.java
index 7757c6bc6..ed8afc9e4 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/BackgroundCardSwitchButtonPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/BackgroundCardSwitchButtonPane.java
@@ -31,7 +31,7 @@ public class BackgroundCardSwitchButtonPane extends BackgroundButtonPane {
         map.put(ColorBackground.class, BackgroundUIWrapper.create()
                 .setType(ColorBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Color")));
         map.put(ImageFileBackground.class, BackgroundUIWrapper.create()
-                .setType(ImageBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image")));
+                .setType(ImageBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image")));
         map.put(GradientBackground.class, BackgroundUIWrapper.create()
                 .setType(GradientBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Gradient_Color")));
 
diff --git a/designer-base/src/main/java/com/fr/design/style/background/BackgroundFactory.java b/designer-base/src/main/java/com/fr/design/style/background/BackgroundFactory.java
index c3960daeb..7f8669d6a 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/BackgroundFactory.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/BackgroundFactory.java
@@ -92,32 +92,32 @@ public class BackgroundFactory {
     
     private static void registerUniversal(Map<Class<? extends Background>, BackgroundUIWrapper> map) {
         map.put(null, BackgroundUIWrapper.create()
-                .setType(NullBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Null")));
+                .setType(NullBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Null")));
         map.put(ColorBackground.class, BackgroundUIWrapper.create()
                 .setType(ColorBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Color")));
         map.put(TextureBackground.class, BackgroundUIWrapper.create()
-                .setType(TextureBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Texture")));
+                .setType(TextureBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Texture")));
         map.put(PatternBackground.class, BackgroundUIWrapper.create()
-                .setType(PatternBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Pattern")));
+                .setType(PatternBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Pattern")));
         map.put(GradientBackground.class, BackgroundUIWrapper.create()
                 .setType(GradientBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Gradient_Color")));
     }
 
     private static void registerImageBackground(Map<Class<? extends Background>, BackgroundUIWrapper> map) {
         map.put(ImageFileBackground.class, BackgroundUIWrapper.create()
-                .setType(ImageBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image")));
+                .setType(ImageBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image")));
     }
 
     private static void registerBrowserImageBackground(Map<Class<? extends Background>, BackgroundUIWrapper> map) {
         map.put(ImageFileBackground.class, BackgroundUIWrapper.create()
-                .setType(ImageBackgroundPane4Browser.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image")));
+                .setType(ImageBackgroundPane4Browser.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image")));
     }
 
     private static void registerButtonBackground(Map<Class<? extends Background>, BackgroundUIWrapper> map){
         map.put(ColorBackground.class, BackgroundUIWrapper.create()
                 .setType(ColorBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Color")));
         map.put(ImageFileBackground.class, BackgroundUIWrapper.create()
-                .setType(ImageButtonBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image")));
+                .setType(ImageButtonBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image")));
 
     }
 
diff --git a/designer-base/src/main/java/com/fr/design/style/background/BackgroundTabPane.java b/designer-base/src/main/java/com/fr/design/style/background/BackgroundTabPane.java
index f62ee2afd..08d2a2e6a 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/BackgroundTabPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/BackgroundTabPane.java
@@ -27,7 +27,7 @@ public class BackgroundTabPane extends BackgroundPane {
 
     private static void registerTabpaneBackground(Map<Class<? extends Background>, BackgroundUIWrapper> map) {
         map.put(null, BackgroundUIWrapper.create()
-                .setType(NullBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Null")));
+                .setType(NullBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Null")));
         map.put(ColorBackground.class, BackgroundUIWrapper.create()
                 .setType(ColorBackgroundPane.class).setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Color")));
         map.put(GradientBackground.class, BackgroundUIWrapper.create()
diff --git a/designer-base/src/main/java/com/fr/design/style/background/BackgroundUIComboBoxPane.java b/designer-base/src/main/java/com/fr/design/style/background/BackgroundUIComboBoxPane.java
index 00fd0eec5..1b28aa0ab 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/BackgroundUIComboBoxPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/BackgroundUIComboBoxPane.java
@@ -28,10 +28,10 @@ import java.awt.event.ItemListener;
 public class BackgroundUIComboBoxPane extends BasicPane {
     private static final long serialVersionUID = -3751191424737067321L;
 
-    protected static final String none = com.fr.design.i18n.Toolkit.i18nText("DataFunction-None");
+    protected static final String none = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_None");
     protected static final String color = com.fr.design.i18n.Toolkit.i18nText("Colors");
-    protected static final String image = com.fr.design.i18n.Toolkit.i18nText("Image");
-    protected static final String gradient = com.fr.design.i18n.Toolkit.i18nText("Gradient-Color");
+    protected static final String image = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image");
+    protected static final String gradient = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradient_Color");
 
     protected CardLayout cardLayout;
     protected JPanel layoutPane;
diff --git a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientFromToPixPane.java b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientFromToPixPane.java
index 2112446b3..64099e4b6 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientFromToPixPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientFromToPixPane.java
@@ -42,7 +42,7 @@ public class GradientFromToPixPane extends BasicPane {
 		
 		endPixSpinner = new UIBasicSpinner(new SpinnerNumberModel(1, 1, 9999, 1));
 		secondFloorPane.add(endPixSpinner);
-		secondFloorPane.add(new UILabel("(" + com.fr.design.i18n.Toolkit.i18nText("Indent-Pixel") + ")"));
+		secondFloorPane.add(new UILabel("(" + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Indent_Pixel") + ")"));
 		
 		JFormattedTextField endField = ((JSpinner.DefaultEditor)endPixSpinner.getEditor()).getTextField();
 		endField.setHorizontalAlignment(UITextField.LEFT);
diff --git a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientSelectBox.java b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientSelectBox.java
index 8f3a920a9..3c5ebf4df 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientSelectBox.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/gradient/GradientSelectBox.java
@@ -63,7 +63,7 @@ public class GradientSelectBox extends BasicPane {
 	}
 
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Gradient-Color");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Gradient_Color");
 	}
 	
 	public void populate(GradientBackground background) {
@@ -81,4 +81,4 @@ public class GradientSelectBox extends BasicPane {
 		background.setStartColor(startColor);
 		background.setEndColor(endColor);
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/background/image/ImageFileChooser.java b/designer-base/src/main/java/com/fr/design/style/background/image/ImageFileChooser.java
index 7b66a5e30..1e5e96ab1 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/image/ImageFileChooser.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/image/ImageFileChooser.java
@@ -23,7 +23,7 @@ import java.util.Hashtable;
 public class ImageFileChooser extends ExpandFileChooser {
 
     public ImageFileChooser() {
-        super(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Compress"),com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Open"));
+        super(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Compress"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Open"));
         ExampleFileFilter bothFilter = new ExampleFileFilter(
                 new String[]{"jpg", "gif", "png", "bmp"},
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Image_Files"));
@@ -265,4 +265,4 @@ public class ImageFileChooser extends ExpandFileChooser {
             return useExtensionsInDescription;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/background/image/ImageSelectPane.java b/designer-base/src/main/java/com/fr/design/style/background/image/ImageSelectPane.java
index e63b6e2f1..3cfbf7ab4 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/image/ImageSelectPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/image/ImageSelectPane.java
@@ -33,7 +33,7 @@ import java.io.File;
 public class ImageSelectPane extends BackgroundPane4BoxChange {
     private static final long serialVersionUID = -3938766570998917557L;
     private static String layoutCenter = com.fr.design.i18n.Toolkit.i18nText("Default");
-    private static String layoutTitled = com.fr.design.i18n.Toolkit.i18nText("Image-Titled");
+    private static String layoutTitled = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Titled");
 
     private String suffix = PictureCollection.DEFAULT_SUFFIX;
 
@@ -66,7 +66,7 @@ public class ImageSelectPane extends BackgroundPane4BoxChange {
         pane.add(testPane1);
 
         // 选择图片按钮
-        UIButton selectPictureButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture"));
+        UIButton selectPictureButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture"));
         selectFilePane.add(selectPictureButton);
 
         selectPictureButton.setPreferredSize(new Dimension(110, 20));
@@ -77,7 +77,7 @@ public class ImageSelectPane extends BackgroundPane4BoxChange {
         selectPictureButton.addActionListener(selectPictureActionListener);
 
         //布局
-        selectFilePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Layout") + ":"));
+        selectFilePane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Form_Layout") + ":"));
         layoutComboBox = new UIComboBox(layoutTypes);
         selectFilePane.add(layoutComboBox);
 
@@ -159,6 +159,6 @@ public class ImageSelectPane extends BackgroundPane4BoxChange {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture");
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/background/impl/ImageBackgroundPane.java b/designer-base/src/main/java/com/fr/design/style/background/impl/ImageBackgroundPane.java
index f1837237d..3eb990c31 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/impl/ImageBackgroundPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/impl/ImageBackgroundPane.java
@@ -50,7 +50,7 @@ public class ImageBackgroundPane extends BackgroundDetailPane {
         JPanel previewContainerPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
         this.add(previewContainerPane, BorderLayout.CENTER);
 
-        JPanel previewOwnerPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        JPanel previewOwnerPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         previewOwnerPane.setLayout(new BorderLayout());
         previewContainerPane.add(previewOwnerPane, BorderLayout.CENTER);
         previewContainerPane.add(initSelectFilePane(), BorderLayout.EAST);
@@ -70,7 +70,7 @@ public class ImageBackgroundPane extends BackgroundDetailPane {
         selectFilePane.setBorder(BorderFactory.createEmptyBorder(8, 2, 4, 0));
 
         UIButton selectPictureButton = new UIButton(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image_Select"));
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Select"));
         selectFilePane.add(selectPictureButton, BorderLayout.NORTH);
         selectPictureButton.setMnemonic('S');
         selectPictureButton.addActionListener(selectPictureActionListener);
diff --git a/designer-base/src/main/java/com/fr/design/style/background/impl/ImageButtonBackgroundPane.java b/designer-base/src/main/java/com/fr/design/style/background/impl/ImageButtonBackgroundPane.java
index 343812b33..e0bf871f0 100644
--- a/designer-base/src/main/java/com/fr/design/style/background/impl/ImageButtonBackgroundPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/background/impl/ImageButtonBackgroundPane.java
@@ -49,7 +49,7 @@ public class ImageButtonBackgroundPane extends ImageBackgroundPane {
     }
 
     private void initButton() {
-        chooseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image_Select"));
+        chooseButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Select"));
         chooseButton.addActionListener(selectPictureActionListener);
         clearButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Clear"));
         clearButton.addActionListener(new ActionListener() {
diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java
index 322d2a031..73dfe5ca9 100644
--- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java
@@ -87,7 +87,7 @@ public class ColorSelectDetailPane extends BasicPane {
         selectedPanel.setPreviewPanel(new JPanel());
 
         // 预览
-        previewPanel = FRGUIPaneFactory.createTitledBorderPaneCenter(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        previewPanel = FRGUIPaneFactory.createTitledBorderPaneCenter(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         final ColorChooserPreview colorChooserPreview = new ColorChooserPreview();
         ColorSelectionModel model = selectedPanel.getSelectionModel();
         model.addChangeListener(new ChangeListener() {
@@ -101,4 +101,4 @@ public class ColorSelectDetailPane extends BasicPane {
         previewPanel.add(colorChooserPreview);
         this.add(previewPanel, BorderLayout.SOUTH);
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java
index d61f7046e..4abacdd4b 100644
--- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java
+++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java
@@ -93,7 +93,7 @@ public class ColorSelectDialog extends MiddleChartDialog{
     	this.add(buttonPane, BorderLayout.SOUTH);
     	
     	ok = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_OK"));
-    	cancel = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button_Cancel"));
+    	cancel = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_Cancel"));
     	
     	buttonPane.add(ok);
     	buttonPane.add(cancel);
diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java
index a0dd8fb55..bb902fa93 100644
--- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java
@@ -53,7 +53,7 @@ public class ColorSelectPane extends TransparentPane implements ColorSelectable
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
         this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5));
         if (isSupportTransparent) {
-            UIButton transpanrentButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_ChartF-Transparency"));
+            UIButton transpanrentButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ChartF_Transparency"));
             this.add(transpanrentButton, BorderLayout.NORTH);
             transpanrentButton.addActionListener(new ActionListener() {
 
diff --git a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java
index 581fdeeaa..a6c4195c2 100644
--- a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java
+++ b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java
@@ -22,7 +22,6 @@ import javax.swing.text.BadLocationException;
 import javax.swing.text.Document;
 
 import com.fr.design.gui.ibutton.SpecialUIButton;
-import com.fr.design.gui.ibutton.UIButton;
 import com.fr.design.gui.ibutton.UIRadioButton;
 import com.fr.design.gui.ilable.UILabel;
 import com.fr.design.gui.islider.UISlider;
@@ -492,7 +491,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec
      * @return The name displayed in the JColorChooser tab.
      */
     public String getDisplayName() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom");
     }
 
     /**
diff --git a/designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java b/designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java
index dcb6119f3..fec499322 100644
--- a/designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java
+++ b/designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java
@@ -57,7 +57,7 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
         this.setBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5));
         if (isSupportTransparent) {
-            UIButton transpanrentButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_ChartF-Transparency"));
+            UIButton transpanrentButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ChartF_Transparency"));
             this.add(transpanrentButton, BorderLayout.NORTH);
             transpanrentButton.addActionListener(new ActionListener() {
 
diff --git a/designer-base/src/main/java/com/fr/design/utils/DesignUtils.java b/designer-base/src/main/java/com/fr/design/utils/DesignUtils.java
index d0d0b859d..240176eef 100644
--- a/designer-base/src/main/java/com/fr/design/utils/DesignUtils.java
+++ b/designer-base/src/main/java/com/fr/design/utils/DesignUtils.java
@@ -227,7 +227,7 @@ public class DesignUtils {
 
         //先初始化的设计器locale, 后初始化lookandfeel.如果顺序改了, 这边也要调整.
         Locale designerLocale = GeneralContext.getLocale();
-        String file = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_File");
+        String file = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_File");
         char displayChar = file.charAt(0);
         if (!guiFRFont.canDisplay(displayChar)) {
             //如果不能用默认的语言显示字体, 比如想在英文系统里用中文设计器
diff --git a/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java b/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java
index e3cb5597b..078fe05d0 100644
--- a/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java
+++ b/designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java
@@ -684,7 +684,7 @@ public abstract class GUICoreUtils{
 			return false;
 		}
 
-		int returnVal = JOptionPane.showConfirmDialog(ancestorWindow, com.fr.design.i18n.Toolkit.i18nText("Utils-Are_you_sure_to_remove_the_selected_item") + "?", com.fr.design.i18n.Toolkit.i18nText("Remove"),
+		int returnVal = JOptionPane.showConfirmDialog(ancestorWindow, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Are_You_Sure_To_Remove_The_Selected_Item") + "?", com.fr.design.i18n.Toolkit.i18nText("Remove"),
 				JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
 		if (returnVal == JOptionPane.OK_OPTION) {
 			int minSelectedIndex = nodeList.getMinSelectionIndex();
@@ -891,4 +891,4 @@ public abstract class GUICoreUtils{
 		panel.add(dynamicPaneWrapper, BorderLayout.CENTER);
 		return panel;
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java
index 3f552a1f2..373ed8d03 100644
--- a/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java
+++ b/designer-base/src/main/java/com/fr/design/web/CustomIconPane.java
@@ -68,7 +68,7 @@ public class CustomIconPane extends BasicPane {
 	private void initComponents() {
 		this.setLayout(FRGUIPaneFactory.createBorderLayout());
 		JPanel centerPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-		centerPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Icon")));
+		centerPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon")));
 		JPanel noNamePane = FRGUIPaneFactory.createCenterFlowInnerContainer_S_Pane();
 		centerPane.add(noNamePane, BorderLayout.CENTER);
 		
@@ -126,7 +126,7 @@ public class CustomIconPane extends BasicPane {
 	}
 
 	private void initAddButton(JPanel buttonPane) {
-		UIButton addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Add"));
+		UIButton addButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Add"));
 		addButton.setPreferredSize(new Dimension(80, 25));
 		addButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
@@ -154,7 +154,7 @@ public class CustomIconPane extends BasicPane {
 	}
 
 	private void initRemoveButton(JPanel buttonPane) {
-		removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Remove"));
+		removeButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Remove"));
 		removeButton.setPreferredSize(new Dimension(80, 25));
 		removeButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
@@ -183,7 +183,7 @@ public class CustomIconPane extends BasicPane {
 	}
 
 	private void initEditButton(JPanel buttonPane) {
-		editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+		editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
 		editButton.setPreferredSize(new Dimension(80, 25));
 		editButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
@@ -422,7 +422,7 @@ public class CustomIconPane extends BasicPane {
             showImageLabel.setPreferredSize(new Dimension(20,20));
             imagePane.add(showImageLabel);
             imagePane.add(browseButton);
-            Component[][] components = {{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Name") + ":"), nameTextField}, {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Icon") + ":"), imagePane}};
+            Component[][] components = {{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":"), nameTextField}, {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon") + ":"), imagePane}};
 
             JPanel centerPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize);
             this.add(centerPane, BorderLayout.CENTER);
diff --git a/designer-base/src/main/java/com/fr/design/widget/IconDefinePane.java b/designer-base/src/main/java/com/fr/design/widget/IconDefinePane.java
index 069caec0b..d834449a1 100644
--- a/designer-base/src/main/java/com/fr/design/widget/IconDefinePane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/IconDefinePane.java
@@ -29,7 +29,7 @@ public class IconDefinePane extends BasicPane {
         labelPane.setLayout(new /**/ FlowLayout(FlowLayout.LEFT, 20, 0));
         showIconImageLable = new UILabel();
         showIconImageLable.setPreferredSize(new Dimension(20, 20));
-        editIconButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        editIconButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         JPanel iconButtonPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
         labelPane.add(showIconImageLable);
         iconPane.add(labelPane, BorderLayout.WEST);
@@ -53,7 +53,7 @@ public class IconDefinePane extends BasicPane {
             }
         });
 
-        removeIconButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Delete"));
+        removeIconButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Delete"));
         iconButtonPane.add(removeIconButton);
         removeIconButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent arg0) {
@@ -89,4 +89,4 @@ public class IconDefinePane extends BasicPane {
     public String update() {
         return this.curIconName;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/widget/WidgetBoundsPaneFactory.java b/designer-base/src/main/java/com/fr/design/widget/WidgetBoundsPaneFactory.java
index d72a11ab7..4bbbcecfb 100644
--- a/designer-base/src/main/java/com/fr/design/widget/WidgetBoundsPaneFactory.java
+++ b/designer-base/src/main/java/com/fr/design/widget/WidgetBoundsPaneFactory.java
@@ -34,7 +34,7 @@ public class WidgetBoundsPaneFactory {
         final JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L6);
         panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0));
         boundsPane.add(panel);
-        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"), 280, 24, boundsPane);
+        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"), 280, 24, boundsPane);
     }
     public static JPanel createRightPane(Component com1, Component com2){
         double f = TableLayout.FILL;
@@ -54,7 +54,7 @@ public class WidgetBoundsPaneFactory {
 
         Component[][] northComponents = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Position")), createRightPane(x, y)},
-                new Component[]{null, createRightPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_X_Coordinate"), SwingConstants.CENTER), new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Y_Coordinate"), SwingConstants.CENTER))},
+                new Component[]{null, createRightPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_X_Coordinate"), SwingConstants.CENTER), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Y_Coordinate"), SwingConstants.CENTER))},
         };
         Component[][] centerComponents = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Size")), createRightPane(width, height)},
@@ -70,7 +70,7 @@ public class WidgetBoundsPaneFactory {
         centerPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
         boundsPane.add(northPanel, BorderLayout.NORTH);
         boundsPane.add(centerPanel, BorderLayout.CENTER);
-        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"), 230, 24, boundsPane);
+        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"), 230, 24, boundsPane);
     }
 
 
@@ -87,6 +87,6 @@ public class WidgetBoundsPaneFactory {
         final JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L6);
         panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0));
         boundsPane.add(panel);
-        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"), 280, 24, boundsPane);
+        return new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"), 280, 24, boundsPane);
     }
 }
diff --git a/designer-base/src/main/java/com/fr/design/widget/btn/ButtonConstants.java b/designer-base/src/main/java/com/fr/design/widget/btn/ButtonConstants.java
index 994315bb2..eb0c1d4b1 100644
--- a/designer-base/src/main/java/com/fr/design/widget/btn/ButtonConstants.java
+++ b/designer-base/src/main/java/com/fr/design/widget/btn/ButtonConstants.java
@@ -30,8 +30,8 @@ public class ButtonConstants {
     public static final String[] TYPES4BUTTON = {
             com.fr.design.i18n.Toolkit.i18nText("Common"),
             com.fr.design.i18n.Toolkit.i18nText("Custom"),
-            com.fr.design.i18n.Toolkit.i18nText("Utils-Insert_Row"),
-            com.fr.design.i18n.Toolkit.i18nText("Utils-Delete_Row"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Insert_Row"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Delete_Row"),
             com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_Type_Parameter_Submit"),
             com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_TreeNode")
     };
diff --git a/designer-base/src/main/java/com/fr/design/widget/btn/ButtonWithHotkeysDetailPane.java b/designer-base/src/main/java/com/fr/design/widget/btn/ButtonWithHotkeysDetailPane.java
index 6fc8f6be0..b75aeaa81 100644
--- a/designer-base/src/main/java/com/fr/design/widget/btn/ButtonWithHotkeysDetailPane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/btn/ButtonWithHotkeysDetailPane.java
@@ -43,10 +43,10 @@ public abstract class ButtonWithHotkeysDetailPane<T extends Button> extends Butt
         iconPane = new AccessibleIconEditor();
         labelPane.add(iconPane);
         Component[][] n_components = {
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Type")), createButtonTypeComboBox()},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Name")), buttonNameTextField = new UITextField()},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Button_Type")), createButtonTypeComboBox()},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Name")), buttonNameTextField = new UITextField()},
                 {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_Icon")), iconPane},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Hotkeys")), hotkeysTextField = new UITextField()},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Hot_keys")), hotkeysTextField = new UITextField()},
         };
         hotkeysTextField.setToolTipText(StableUtils.join(ButtonConstants.HOTKEYS, ","));
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(n_components, rowSize, columnSize, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
@@ -56,7 +56,7 @@ public abstract class ButtonWithHotkeysDetailPane<T extends Button> extends Butt
         if(comp != null	) {
             advancePane.add(comp,BorderLayout.CENTER);
         }
-        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Advanced"), 280, 20, advancePane);
+        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Advanced"), 280, 20, advancePane);
         this.add(uiExpandablePane);
 
     }
diff --git a/designer-base/src/main/java/com/fr/design/widget/component/BackgroundCompPane.java b/designer-base/src/main/java/com/fr/design/widget/component/BackgroundCompPane.java
index 54b7bf67b..f19021376 100644
--- a/designer-base/src/main/java/com/fr/design/widget/component/BackgroundCompPane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/component/BackgroundCompPane.java
@@ -34,7 +34,7 @@ public abstract class BackgroundCompPane<T extends Widget> extends BasicPane {
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
         UILabel headLabel = createUILable();
         initBackgroundEditor();
-        String [] titles = new String[]{com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom")};
+        String [] titles = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom")};
 
         double f = TableLayout.FILL;
         final double p = TableLayout.PREFERRED;
@@ -42,8 +42,8 @@ public abstract class BackgroundCompPane<T extends Widget> extends BasicPane {
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1},{1, 1},{1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Initial")), initialBackgroundEditor},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Over")), overBackgroundEditor},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Initial")), initialBackgroundEditor},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Over")), overBackgroundEditor},
                 new Component[]{getClickLabel(), clickBackgroundEditor},
         };
         panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
@@ -64,11 +64,11 @@ public abstract class BackgroundCompPane<T extends Widget> extends BasicPane {
     }
 
     protected UILabel getClickLabel(){
-        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Click"));
+        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Click"));
     }
 
     protected UILabel createUILable(){
-        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background"));
+        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background"));
     }
 
     public void update(T e){
diff --git a/designer-base/src/main/java/com/fr/design/widget/component/CheckBoxDictPane.java b/designer-base/src/main/java/com/fr/design/widget/component/CheckBoxDictPane.java
index 9874a01f3..4cb8dfe9f 100644
--- a/designer-base/src/main/java/com/fr/design/widget/component/CheckBoxDictPane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/component/CheckBoxDictPane.java
@@ -35,13 +35,13 @@ public class CheckBoxDictPane extends JPanel {
 		endComboBox = new DictionaryComboBox(DictionaryConstants.symbols, DictionaryConstants.symbolDisplays);
 		endComboBox.setEditable(true);
 		Component[][] components = new Component[][]{
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Delimiter")), delimiterComboBox},
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Delimiter")), delimiterComboBox},
 				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Combo_CheckBox_Start_Symbol")),startComboBox},
 				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Combo_CheckBox_End_Symbol")),endComboBox}
 		};
 		returnStringPane = TableLayoutHelper.createGapTableLayoutPane(components, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
 
-		returnTypeComboBox = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Widget-Array"), com.fr.design.i18n.Toolkit.i18nText("String")});
+		returnTypeComboBox = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Array"), com.fr.design.i18n.Toolkit.i18nText("String")});
 		returnTypeComboBox.addActionListener(new ActionListener() {
 			@Override
 			public void actionPerformed(ActionEvent e) {
@@ -49,7 +49,7 @@ public class CheckBoxDictPane extends JPanel {
 			}
 		});
 		JPanel headPane = TableLayoutHelper.createGapTableLayoutPane(
-				new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Widget-Date_Selector_Return_Type")), returnTypeComboBox}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
+				new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Date_Selector_Return_Type")), returnTypeComboBox}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
 		JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
 		jPanel.add(headPane, BorderLayout.NORTH);
 		jPanel.add(returnStringPane, BorderLayout.CENTER);
@@ -87,4 +87,4 @@ public class CheckBoxDictPane extends JPanel {
 		checkBoxGroup.setStartSymbol((String)this.startComboBox.getSelectedItem());
 		checkBoxGroup.setEndSymbol((String)this.endComboBox.getSelectedItem());
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java b/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java
index ece0da12a..78accb96b 100644
--- a/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/component/NumberEditorValidatePane.java
@@ -98,7 +98,7 @@ public class NumberEditorValidatePane extends JPanel {
     private void initErrorMsgPane() {
         errorMsgTextField = new UITextField();
         errorMsgTextFieldPane = TableLayoutHelper.createGapTableLayoutPane(
-                new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Error_Tip")), errorMsgTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
+                new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Error_Tip")), errorMsgTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
     }
 
 
diff --git a/designer-base/src/main/java/com/fr/design/widget/mobile/WidgetMobilePane.java b/designer-base/src/main/java/com/fr/design/widget/mobile/WidgetMobilePane.java
index 7d1b5a43c..20b82467b 100644
--- a/designer-base/src/main/java/com/fr/design/widget/mobile/WidgetMobilePane.java
+++ b/designer-base/src/main/java/com/fr/design/widget/mobile/WidgetMobilePane.java
@@ -23,7 +23,7 @@ public class WidgetMobilePane extends JPanel {
 
     protected void init() {
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
-        UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_No_Settings_Available"));
+        UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No_Settings_Available"));
         label.setHorizontalAlignment(SwingConstants.CENTER);
         this.add(label);
     }
diff --git a/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java b/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java
index 145c6e989..0525c7550 100644
--- a/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java
+++ b/designer-base/src/main/java/com/fr/design/write/submit/CustomJobPane.java
@@ -37,14 +37,14 @@ public abstract class CustomJobPane  extends BasicBeanPane {
 		classNameTextField = new UITextField(getLengthOfTextField());
 		reportletNamePane.add(classNameTextField);
 
-		UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Select"));
+		UIButton browserButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select"));
 		browserButton.setPreferredSize(new Dimension(
-				GraphHelper.getLocTextWidth("FR-Designer_Select") + 20,
+				GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select")) + 20,
 				classNameTextField.getPreferredSize().height));
 
-        UIButton editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        UIButton editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         editButton.setPreferredSize(new Dimension(
-				GraphHelper.getLocTextWidth("FR-Designer_Edit") + 20,
+				GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit")) + 20,
                 classNameTextField.getPreferredSize().height));
 
 		reportletNamePane.add(browserButton);
diff --git a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java
index f8e089aaa..057e875a9 100644
--- a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java
+++ b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java
@@ -423,7 +423,7 @@ public class DBManipulationPane extends BasicBeanPane<DBManipulation> {
 			};
 			bPane.setLayout(FRGUIPaneFactory.createBorderLayout());
 
-			final CheckBoxList list = new CheckBoxList(currentColumnNames(), CheckBoxList.SelectedState.ALL, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Chart_Field_Name")) {
+			final CheckBoxList list = new CheckBoxList(currentColumnNames(), CheckBoxList.SelectedState.ALL, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Chart_Field_Name")) {
 				public String value2Text(Object value) {
 					if (value instanceof ColumnName) {
 						return ((ColumnName)value).name;
@@ -568,7 +568,7 @@ public class DBManipulationPane extends BasicBeanPane<DBManipulation> {
 
 	protected class RemoveFieldAction extends UpdateAction {
 		public RemoveFieldAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("RWA-Remove_Field"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_RWA_Remove_Field"));
 		}
 
 		public void actionPerformed(ActionEvent evt) {
diff --git a/designer-base/src/main/java/com/fr/design/write/submit/SubmitJobListPane.java b/designer-base/src/main/java/com/fr/design/write/submit/SubmitJobListPane.java
index face6e7d1..d52eb4a65 100644
--- a/designer-base/src/main/java/com/fr/design/write/submit/SubmitJobListPane.java
+++ b/designer-base/src/main/java/com/fr/design/write/submit/SubmitJobListPane.java
@@ -57,6 +57,6 @@ public class SubmitJobListPane extends ObjectJControlPane {
 	
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Set_Submit_Event");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Submit_Event");
 	}
 }
diff --git a/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java b/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java
index 1902eb694..31cbabd14 100644
--- a/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java
+++ b/designer-base/src/main/java/com/fr/env/RemoteEnvPane.java
@@ -250,7 +250,7 @@ public class RemoteEnvPane extends BasicBeanPane<RemoteDesignerWorkspaceInfo> {
         testPanel.setPreferredSize(new Dimension(437, 20));
         UIButton testConnectionButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_Remote_Env_Test_Connection"));
 
-        testConnectionButton.setToolTipText(Toolkit.i18nText("Datasource-Test_Connection"));
+        testConnectionButton.setToolTipText(Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection"));
         testConnectionButton.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent ev) {
@@ -587,7 +587,7 @@ public class RemoteEnvPane extends BasicBeanPane<RemoteDesignerWorkspaceInfo> {
         message.setBorder(BorderFactory.createEmptyBorder(8, 5, 0, 0));
         okButton.setEnabled(false);
 
-        dialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(RemoteEnvPane.this), Toolkit.i18nText("Datasource-Test_Connection"), true);
+        dialog = new JDialog((Dialog) SwingUtilities.getWindowAncestor(RemoteEnvPane.this), Toolkit.i18nText("Fine-Design_Basic_Datasource_Test_Connection"), true);
 
         dialog.setSize(new Dimension(268, 118));
         okButton.setEnabled(false);
diff --git a/designer-base/src/main/java/com/fr/env/RemoteSignInPane.java b/designer-base/src/main/java/com/fr/env/RemoteSignInPane.java
index 047f4e5f7..2ca95160f 100644
--- a/designer-base/src/main/java/com/fr/env/RemoteSignInPane.java
+++ b/designer-base/src/main/java/com/fr/env/RemoteSignInPane.java
@@ -22,7 +22,7 @@ public class RemoteSignInPane extends BasicPane {
 	public void initComponent(){
 		this.setLayout(FRGUIPaneFactory.create2ColumnGridLayout());
 		
-		userLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Username")+":");
+		userLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_UserName")+":");
 		userTextField = new UITextField();
 		passLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Password")+":");
 		passwordField = new UIPassWordField();
@@ -44,4 +44,4 @@ public class RemoteSignInPane extends BasicPane {
 //    	this.showWindow(null).setVisible(false);
 //    	this.showWindow(null).dispose();
     }
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java
index 7f8087db4..3629dfdf9 100644
--- a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java
+++ b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java
@@ -246,7 +246,7 @@ public class FILEChooserPane extends BasicPane {
                 new Component[]{GUICoreUtils.createBorderPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_File_Name") + ":"), BorderLayout.WEST),
                         fileNameTextField = new UIAutoCompletionField(), okButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Design_File_Open"))
                 },
-                new Component[]{GUICoreUtils.createBorderPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Utils-File_type") + ":"), BorderLayout.WEST),
+                new Component[]{GUICoreUtils.createBorderPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_File_Type") + ":"), BorderLayout.WEST),
                         postfixComboBox = new UIComboBox(), cancelButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Design_Action_Cancel"))
                 }};
 
diff --git a/designer-base/src/main/java/com/fr/start/ServerStarter.java b/designer-base/src/main/java/com/fr/start/ServerStarter.java
index 12f4b48eb..b916bd679 100644
--- a/designer-base/src/main/java/com/fr/start/ServerStarter.java
+++ b/designer-base/src/main/java/com/fr/start/ServerStarter.java
@@ -2,21 +2,12 @@ package com.fr.start;
 
 import com.fr.base.FRContext;
 import com.fr.base.ServerConfig;
-import com.fr.design.DesignModelAdapter;
 import com.fr.design.DesignerEnvManager;
-import com.fr.design.data.datapane.TableDataTreePane;
-import com.fr.design.dialog.BasicPane;
-import com.fr.design.dialog.DialogActionAdapter;
-import com.fr.design.env.DesignerWorkspaceGenerator;
-import com.fr.design.file.TemplateTreePane;
-import com.fr.design.gui.itextarea.UITextArea;
-import com.fr.design.mainframe.DesignerContext;
 import com.fr.general.ComparatorUtils;
 import com.fr.general.GeneralContext;
 
 import com.fr.log.FineLoggerFactory;
 import com.fr.stable.OperatingSystem;
-import com.fr.stable.ProductConstants;
 import com.fr.stable.StableUtils;
 import com.fr.stable.StringUtils;
 import com.fr.start.server.FineEmbedServer;
@@ -98,7 +89,7 @@ public class ServerStarter {
                 // win10 内存用到到80%左右的时候, Desktop.browser经常提示"存储空间不足, 无法处理改命令", 用rundll32可以打开.
                 Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + uri);
             } catch (IOException ee) {
-                JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set_default_browser"));
+                JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser_Duplicate"));
                 FineLoggerFactory.getLogger().error(e.getMessage(), e);
             }
         } else {
@@ -107,4 +98,4 @@ public class ServerStarter {
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/java/com/fr/start/server/ServerManageFrame.java b/designer-base/src/main/java/com/fr/start/server/ServerManageFrame.java
index 1f5eed74b..c31f72f31 100644
--- a/designer-base/src/main/java/com/fr/start/server/ServerManageFrame.java
+++ b/designer-base/src/main/java/com/fr/start/server/ServerManageFrame.java
@@ -70,7 +70,7 @@ public class ServerManageFrame extends JFrame {
 		UIButton startButton = new UIButton();
 		startPane.add(startButton);
 		startButton.setIcon(BaseUtils.readIcon("/com/fr/design/images/server/start.png"));
-		startPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Server-Start")));
+		startPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Server_Start")));
 		startButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
 				try {
@@ -87,7 +87,7 @@ public class ServerManageFrame extends JFrame {
 		UIButton stopButton = new UIButton();
 		stopPane.add(stopButton);
 		stopButton.setIcon(BaseUtils.readIcon("/com/fr/design/images/server/stop.png"));
-		stopPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Server-Stop")));
+		stopPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Server_Stop")));
 		stopButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
 				try {
@@ -146,4 +146,4 @@ public class ServerManageFrame extends JFrame {
 		
 		this.validate();
 	}	
-}
\ No newline at end of file
+}
diff --git a/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal.png b/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal.png
new file mode 100644
index 000000000..9020a3ce9
Binary files /dev/null and b/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal.png differ
diff --git a/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal@2x.png b/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal@2x.png
new file mode 100644
index 000000000..912429fc9
Binary files /dev/null and b/designer-base/src/main/resources/com/fr/design/remote/images/icon_tab_close_normal@2x.png differ
diff --git a/designer-chart/src/main/java/com/fr/design/chart/javascript/ChartEmailPane.java b/designer-chart/src/main/java/com/fr/design/chart/javascript/ChartEmailPane.java
index fe60b47b3..1eb6dc925 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/javascript/ChartEmailPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/javascript/ChartEmailPane.java
@@ -14,12 +14,12 @@ import javax.swing.*;
 import java.awt.*;
 
 /**
- * 
+ *
  * @author jim
  *
  */
 public class ChartEmailPane extends EmailPane{
-	
+
 	private UITextField itemNameTextField;
 
 	@Override
@@ -35,10 +35,10 @@ public class ChartEmailPane extends EmailPane{
 			showTplContent = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email_Can_Preview_Report_Content"));
 			contentPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{
 					{new UILabel(), tipsPane1},
-					createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-Mail_to"), maitoEditor = new UITextField()),
-					createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-CC_to"), ccEditor = new UITextField()),
-					createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-BCC"), bccEditor = new UITextField()),
-					createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-mailSubject"), titleEditor = new UITextField()),
+					createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_Mail_to"), maitoEditor = new UITextField()),
+					createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_CC_To"), ccEditor = new UITextField()),
+					createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_BCC"), bccEditor = new UITextField()),
+					createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_Mail_Subject"), titleEditor = new UITextField()),
 					{mainTextLabel, scrollPane},
 					{new UILabel(), showTplContent},
 					{new UILabel(), tipsPane2}},rSizes, columnSize, 6);
@@ -46,10 +46,10 @@ public class ChartEmailPane extends EmailPane{
 			double[] rSizes = { preferred, preferred, preferred, preferred, preferred, fill, preferred};
 			contentPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{
                     {new UILabel(), tipsPane1},
-                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-Mail_to"), maitoEditor = new UITextField()),
-                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-CC_to"), ccEditor = new UITextField()),
-                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-BCC"), bccEditor = new UITextField()),
-                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-mailSubject"), titleEditor = new UITextField()),
+                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_Mail_to"), maitoEditor = new UITextField()),
+                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_CC_To"), ccEditor = new UITextField()),
+                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_BCC"), bccEditor = new UITextField()),
+                    createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_Mail_Subject"), titleEditor = new UITextField()),
                     {mainTextLabel, scrollPane},
                     {new UILabel(), tipsPane2}},rSizes, columnSize, 8);
 		}
@@ -65,26 +65,26 @@ public class ChartEmailPane extends EmailPane{
 	protected boolean needRenamePane() {
 		return true;
 	}
-	
+
 	protected void checkEmailConfig(boolean valid) {
 		super.checkEmailConfig(valid);
 		if(itemNameTextField != null){
             itemNameTextField.setEnabled(valid);
         }
 	}
-	
+
 	public void populateBean(EmailJavaScript ob) {
         if(itemNameTextField != null){
             itemNameTextField.setName(ob == null ? null : ob.getItemName());
         }
         super.populateBean(ob);
 	}
-	
+
 	public void updateBean(EmailJavaScript email) {
         if(itemNameTextField != null){
             email.setItemName(itemNameTextField.getText());
         }
         super.updateBean(email);
 	}
-	
+
 }
\ No newline at end of file
diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java
index 13d66c6e6..8212e65ed 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/report/GisMapDataPane.java
@@ -130,7 +130,7 @@ public class GisMapDataPane extends DataContentsPane{
 
 					@Override
 					protected String title4PopupWindow() {
-						return com.fr.design.i18n.Toolkit.i18nText("Data_Setting");
+						return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Setting");
 					}
 				}, BorderLayout.CENTER);
 
diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/MapSinglePane.java b/designer-chart/src/main/java/com/fr/design/chart/report/MapSinglePane.java
index 76b1e1624..bc68b39f6 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/report/MapSinglePane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/report/MapSinglePane.java
@@ -57,7 +57,7 @@ public class MapSinglePane extends FurtherBasicBeanPane<TopDefinitionProvider> {
 
 			@Override
 			protected String title4PopupWindow() {
-				return com.fr.design.i18n.Toolkit.i18nText("Data_Setting");
+				return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Setting");
 			}
 		}, BorderLayout.CENTER);
 	}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/report/MapTableCubeDataPane.java b/designer-chart/src/main/java/com/fr/design/chart/report/MapTableCubeDataPane.java
index 8552dbb98..bb5d62b84 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/report/MapTableCubeDataPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/report/MapTableCubeDataPane.java
@@ -77,7 +77,7 @@ public class MapTableCubeDataPane extends FurtherBasicBeanPane<MapMoreLayerTable
      * @return  返回标题.
 	 */
 	public String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("DS-TableData");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_DS_TableData");
 	}
 
 	@Override
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapGroupExtensionPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapGroupExtensionPane.java
index 4c6aa108c..2891cdb61 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapGroupExtensionPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapGroupExtensionPane.java
@@ -218,7 +218,7 @@ public class MapGroupExtensionPane extends BasicPane implements UIObserver {
 	}
 
 	private JMenuItem createAreaItem(final String oldName) {
-		JMenuItem editFileItem = new JMenuItem(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Edit", "Image", "Filed"}));
+		JMenuItem editFileItem = new JMenuItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Edit_Image_Region"));
 		editFileItem.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
 				final MapCustomPane image = new MapCustomPane();
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapImageEditPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapImageEditPane.java
index df5d60c53..c06aa1c15 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapImageEditPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/PlotSeries/MapImageEditPane.java
@@ -630,13 +630,13 @@ public class MapImageEditPane extends BasicBeanPane<String> {
 
 		@Override
 		protected String title4PopupWindow() {
-			return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Edit", "Image"});
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Edit_Image");
 		}
 	}
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Edit", "Image"});
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Edit_Image");
 	}
 
 	/**
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LabelBorderPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LabelBorderPane.java
index f7cd4a9b3..0a9179e1a 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LabelBorderPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LabelBorderPane.java
@@ -15,7 +15,7 @@ public class LabelBorderPane extends LabelBorderAttrPane {
     protected AttrBorder attrBorder = new AttrBorder();
 
     public LabelBorderPane(ConditionAttributesPane conditionAttributesPane) {
-        super(conditionAttributesPane, true, com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Border", "Format"}));
+        super(conditionAttributesPane, true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Border_Format"));
     }
 
     public void populate(DataSeriesCondition condition) {
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LineMarkerTypePane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LineMarkerTypePane.java
index 6cd23585a..53e9429b4 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LineMarkerTypePane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/LineMarkerTypePane.java
@@ -28,7 +28,7 @@ public class LineMarkerTypePane extends ConditionAttrSingleConditionPane<DataSer
     public LineMarkerTypePane(ConditionAttributesPane conditionAttributesPane, boolean isRemove) {
         super(conditionAttributesPane, isRemove);
 
-        nameLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ChartF-Marker", "FS_Report_Type"}));
+        nameLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Marker_Type"));
         markerBox = new MarkerComboBox(MarkerFactory.getMarkerArray());
 
         if (isRemove) {
@@ -39,7 +39,7 @@ public class LineMarkerTypePane extends ConditionAttrSingleConditionPane<DataSer
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ChartF-Marker", "FS_Report_Type"});
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Marker_Type");
     }
 
     @Override
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/DataLabelPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/DataLabelPane.java
index c736c911e..135a237a7 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/DataLabelPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/DataLabelPane.java
@@ -96,7 +96,7 @@ public class DataLabelPane extends TooltipContentsPane {
         }
         delimiterBox.setPreferredSize(new Dimension(70, 20));
         JPanel boxPane = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane();
-        boxPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Delimiter") + ":"));
+        boxPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Delimiter") + ":"));
         boxPane.add(delimiterBox);
         return boxPane;
     }
@@ -112,10 +112,10 @@ public class DataLabelPane extends TooltipContentsPane {
 
     protected JPanel createJPanel4Position() {
         // 标签位置:上下左右中.
-        bottomButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom"));
-        leftButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Left"));
-        rigtButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Right"));
-        topButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top"));
+        bottomButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom"));
+        leftButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Left"));
+        rigtButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Right"));
+        topButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top"));
         centerButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Center"));
 
         ButtonGroup bg = new ButtonGroup();
@@ -239,4 +239,4 @@ public class DataLabelPane extends TooltipContentsPane {
     public void checkGuidBox() {
 
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/RangeDataLabelPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/RangeDataLabelPane.java
index 0c643a17b..d857506ff 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/RangeDataLabelPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/dlp/RangeDataLabelPane.java
@@ -20,8 +20,8 @@ public class RangeDataLabelPane extends DataLabelPane {
 	private JRadioButton bottomButton;
 	  
     protected JPanel createJPanel4Position() {
-    	topButton = new JRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top"));
-    	bottomButton = new JRadioButton(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom"));
+    	topButton = new JRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top"));
+    	bottomButton = new JRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom"));
     	centerButton = new JRadioButton(com.fr.design.i18n.Toolkit.i18nText("Center"));
 		
 		ButtonGroup bg = new ButtonGroup();
@@ -62,4 +62,4 @@ public class RangeDataLabelPane extends DataLabelPane {
         	seriesAttrContents.setPosition(Constants.TOP);
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperPopAttrPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperPopAttrPane.java
index 80f78c273..4e1a4b2f4 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperPopAttrPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperPopAttrPane.java
@@ -72,8 +72,8 @@ public class ChartHyperPopAttrPane extends AbstractChartAttrPane {
 
         Component[][] components = new Component[][]{
                 new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Title") + ":", SwingConstants.RIGHT), titleField},
-                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Width") + ":", SwingConstants.RIGHT), widthField},
-                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Height") + ":", SwingConstants.RIGHT), heightField},
+                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Designer_Width") + ":", SwingConstants.RIGHT), widthField},
+                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Height") + ":", SwingConstants.RIGHT), heightField},
         };
 
         widthField.setText(String.valueOf(DEFAULT_V_VALUE));
@@ -83,7 +83,7 @@ public class ChartHyperPopAttrPane extends AbstractChartAttrPane {
 		pane.add(northPane, BorderLayout.NORTH);
 		
 		parameterViewPane = new ReportletParameterViewPane(paraType, valueEditorPane, valueRenderPane);
-		parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter")));
+		parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter")));
 		parameterViewPane.setPreferredSize(new Dimension(200, 200));
 		pane.add(parameterViewPane, BorderLayout.CENTER);
 
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateCellLinkPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateCellLinkPane.java
index 665d62252..370e3acbe 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateCellLinkPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateCellLinkPane.java
@@ -42,7 +42,7 @@ public class ChartHyperRelateCellLinkPane extends AbstractHyperLinkPane<ChartHyp
         this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
         if (needRenamePane()) {
             itemNameTextField = new UITextField();
-            this.add(GUICoreUtils.createNamedPane(itemNameTextField, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Name") + ":"), BorderLayout.NORTH);
+            this.add(GUICoreUtils.createNamedPane(itemNameTextField, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Name") + ":"), BorderLayout.NORTH);
         }
 
         JPanel centerPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
@@ -54,7 +54,7 @@ public class ChartHyperRelateCellLinkPane extends AbstractHyperLinkPane<ChartHyp
         centerPane.add(colRowPane, BorderLayout.NORTH);
 
         parameterViewPane = new ReportletParameterViewPane(getChartParaType(), getValueEditorPane(), getValueEditorPane());
-        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter")));
+        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter")));
         parameterViewPane.setPreferredSize(new Dimension(500, 200));
         this.add(parameterViewPane, BorderLayout.SOUTH);
     }
@@ -122,4 +122,4 @@ public class ChartHyperRelateCellLinkPane extends AbstractHyperLinkPane<ChartHyp
         }
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateFloatLinkPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateFloatLinkPane.java
index 78f3f2e09..50f5a5e56 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateFloatLinkPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/ChartHyperRelateFloatLinkPane.java
@@ -71,7 +71,7 @@ public class ChartHyperRelateFloatLinkPane extends AbstractHyperLinkPane<ChartHy
         centerPane.add(pane, BorderLayout.NORTH);
 
         parameterViewPane = new ReportletParameterViewPane(getChartParaType(), getValueEditorPane(), getValueEditorPane());
-        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter")));
+        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter")));
         parameterViewPane.setPreferredSize(new Dimension(500, 200));
         this.add(parameterViewPane, BorderLayout.SOUTH);
     }
@@ -152,4 +152,4 @@ public class ChartHyperRelateFloatLinkPane extends AbstractHyperLinkPane<ChartHy
             return false;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkNorthPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkNorthPane.java
index 074dbc4ba..4d1c6a9b7 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkNorthPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkNorthPane.java
@@ -99,7 +99,7 @@ public class FormHyperlinkNorthPane extends BasicBeanPane<FormHyperlinkProvider>
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Form_link");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Form_Link");
     }
 
     @Override
@@ -136,4 +136,4 @@ public class FormHyperlinkNorthPane extends BasicBeanPane<FormHyperlinkProvider>
         }
         formHyperlink.setRelateEditorName((String) targetFrameComboBox.getSelectedItem());
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkPane.java b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkPane.java
index 665a01501..a9e209fc3 100644
--- a/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkPane.java
+++ b/designer-chart/src/main/java/com/fr/design/chart/series/SeriesCondition/impl/FormHyperlinkPane.java
@@ -39,12 +39,12 @@ public class FormHyperlinkPane extends AbstractHyperLinkPane<FormHyperlinkProvid
 
         parameterViewPane = new ReportletParameterViewPane(getChartParaType(), getValueEditorPane(), getValueEditorPane());
         this.add(parameterViewPane, BorderLayout.CENTER);
-        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameters"), null));
+        parameterViewPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameters"), null));
     }
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Form_link");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Form_Link");
     }
 
     protected int getHyperlinkType() {
@@ -99,4 +99,4 @@ public class FormHyperlinkPane extends AbstractHyperLinkPane<FormHyperlinkProvid
             return ParameterTableModel.CHART_NORMAL_USE;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/MiddleChartPropertyPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/MiddleChartPropertyPane.java
index 45f803607..87c12b26c 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/MiddleChartPropertyPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/MiddleChartPropertyPane.java
@@ -118,7 +118,7 @@ public abstract class MiddleChartPropertyPane extends BaseChartPropertyPane{
 	 * 返回View的标题.
 	 */
 	public String getViewTitle() {
-		return com.fr.design.i18n.Toolkit.i18nText("CellElement-Property_Table");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Cell_Element_Property_Table");
 	}
 
 	/**
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/PaneTitleConstants.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/PaneTitleConstants.java
index fdf2e5a6b..7b4e38cbc 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/PaneTitleConstants.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/PaneTitleConstants.java
@@ -3,23 +3,23 @@ package com.fr.design.mainframe.chart;
 
 
 public class PaneTitleConstants {
-	public final static String CHART_TYPE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Type");
+	public final static String CHART_TYPE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type");
 	public final static String CHART_DATA_TITLE = com.fr.design.i18n.Toolkit.i18nText("Data");
 	public final static String CHART_STYLE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Style");
-	public final static String CHART_OTHER_TITLE = com.fr.design.i18n.Toolkit.i18nText("Animation_Special");
+	public final static String CHART_OTHER_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Animation_Special");
 	
-	public final static String CHART_STYLE_TITLE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Title");
+	public final static String CHART_STYLE_TITLE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Title");
 	public final static String CHART_STYLE_LEGNED_TITLE = com.fr.design.i18n.Toolkit.i18nText("ChartF-Legend");
 	public final static String CHART_STYLE_SERIES_TITLE = com.fr.design.i18n.Toolkit.i18nText("ChartF-Series");
 	public final static String CHART_STYLE_AXIS_TITLE = com.fr.design.i18n.Toolkit.i18nText("ChartF-Axis");
 	public final static String CHART_STYLE_AREA_TITLE = com.fr.design.i18n.Toolkit.i18nText("Background");
 	public final static String CHART_STYLE_DATA_TITLE = com.fr.design.i18n.Toolkit.i18nText("Chart_Data_Sheet");
-	public final static String CHART_STYLE_LABEL_TITLE = com.fr.design.i18n.Toolkit.i18nText("Data-Label");
-	public final static String CHART_STYLE_LINE_TITLE = com.fr.design.i18n.Toolkit.i18nText("AnalysisLine");
+	public final static String CHART_STYLE_LABEL_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Label");
+	public final static String CHART_STYLE_LINE_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Analysis_Line");
 	
-	public final static String CHART_STYLE_AREA_AREA_TITLE = com.fr.design.i18n.Toolkit.i18nText("D-ChartArea");
+	public final static String CHART_STYLE_AREA_AREA_TITLE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_D_Chart_Area");
 	public final static String CHART_STYLE_AREA_PLOT_TITLE = com.fr.design.i18n.Toolkit.i18nText("ChartF-Plot");
 	
 	public final static String CHART_OTHER_TITLE_CHANGE = com.fr.design.i18n.Toolkit.i18nText("Chart-Switch");
 
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/CalculateComboBox.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/CalculateComboBox.java
index 968fba127..f66b0fb01 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/CalculateComboBox.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/CalculateComboBox.java
@@ -19,9 +19,9 @@ import com.fr.log.FineLoggerFactory;
  */
 public class CalculateComboBox extends UIComboBox{
 
-	public static final String[] CALCULATE_ARRAY = {com.fr.design.i18n.Toolkit.i18nText("DataFunction-None"), com.fr.design.i18n.Toolkit.i18nText("DataFunction-Sum"),
-			com.fr.design.i18n.Toolkit.i18nText("DataFunction-Average"), com.fr.design.i18n.Toolkit.i18nText("DataFunction-Max"),
-			com.fr.design.i18n.Toolkit.i18nText("DataFunction-Min"), com.fr.design.i18n.Toolkit.i18nText("DataFunction-Count")};
+	public static final String[] CALCULATE_ARRAY = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_None"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_Sum"),
+			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_Average"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_Max"),
+			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_Min"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_Count")};
 	public static final Class[] CLASS_ARRAY = {NoneFunction.class, SumFunction.class, AverageFunction.class, 
 			MaxFunction.class, MinFunction.class, CountFunction.class};
 	
@@ -31,7 +31,7 @@ public class CalculateComboBox extends UIComboBox{
 	}
 	
 	public void reset() {
-		this.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("DataFunction-None"));
+		this.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_None"));
 	}
 	
 	/**
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java
index 4393f4537..be18db285 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/BubblePlotReportDataContentPane.java
@@ -35,7 +35,7 @@ public class BubblePlotReportDataContentPane extends AbstractReportDataContentPa
 	@Override
 	protected String[] columnNames() {
 		return  new String[]{
-			com.fr.design.i18n.Toolkit.i18nText("Bubble-Series_Name"),
+			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bubble_Series_Name"),
 			com.fr.design.i18n.Toolkit.i18nText("ChartF-X_Axis"),
 			com.fr.design.i18n.Toolkit.i18nText("ChartF-Y_Axis"),
 			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Font_Size")
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/GanttPlotReportDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/GanttPlotReportDataContentPane.java
index 7245a44c1..d4b455759 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/GanttPlotReportDataContentPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/report/GanttPlotReportDataContentPane.java
@@ -27,7 +27,7 @@ public class GanttPlotReportDataContentPane extends AbstractReportDataContentPan
 	
 	private static final String RESTART = com.fr.design.i18n.Toolkit.i18nText("ChartF-TheActualStart");
 	private static final String REEND = com.fr.design.i18n.Toolkit.i18nText("ChartF-TheActualEnd");
-	private static final String PERCENT = com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Percent");
+	private static final String PERCENT = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_StyleFormat_Percent");
 	private static final String PRO = com.fr.design.i18n.Toolkit.i18nText("Chart_Project");
 	
 	public GanttPlotReportDataContentPane(ChartDataPane parent) {
@@ -109,4 +109,4 @@ public class GanttPlotReportDataContentPane extends AbstractReportDataContentPan
 		return new String[]{"", ""};
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartDesignerInteractivePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartDesignerInteractivePane.java
index 76a19f975..f96974f2a 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartDesignerInteractivePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/ChartDesignerInteractivePane.java
@@ -33,10 +33,10 @@ public class ChartDesignerInteractivePane extends ChartInteractivePane {
         List<ChartUIMenuNameableCreator> list = new ArrayList<ChartUIMenuNameableCreator>();
         java.util.HashMap<String, BaseFormula> hyperLinkEditorMap = plot.getHyperLinkEditorMap();
 
-        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link"),
+        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"),
                 new WebHyperlink(), getUseMap(map, WebHyperlink.class)));
-        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, "FR-Designer_JavaScript", new JavaScriptImpl(), getUseMap(map, JavaScriptImpl.class)));
-        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, com.fr.design.i18n.Toolkit.i18nText("FR-Engine_Interactive-chart"), null, null));
+        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, "Fine-Design_Report_JavaScript", new JavaScriptImpl(), getUseMap(map, JavaScriptImpl.class)));
+        list.add(new ChartUIMenuNameableCreator(hyperLinkEditorMap, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Interactive-Chart"), null, null));
 
         return list;
     }
@@ -52,4 +52,4 @@ public class ChartDesignerInteractivePane extends ChartInteractivePane {
             autoRefreshTime.setEnabled(definition.isSupportAutoRefresh());
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/TimeSwitchPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/TimeSwitchPane.java
index 365081aef..7277791ef 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/TimeSwitchPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/other/TimeSwitchPane.java
@@ -43,13 +43,13 @@ public class TimeSwitchPane extends JPanel implements UIObserver {
     private static final int COM_GAP =5;
     private static final String YEAR = com.fr.design.i18n.Toolkit.i18nText("Year");
     private static final String MONTH =com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month");
-    private static final String DAY =com.fr.design.i18n.Toolkit.i18nText("Sun");
+    private static final String DAY =com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun");
     private static final String HOUR = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour");
     private static final String MINUTE = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute");
     private static final String SECOND = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second");
 
     private static String[] TYPES = new String[]{
-    	com.fr.design.i18n.Toolkit.i18nText("Year"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"), com.fr.design.i18n.Toolkit.i18nText("Sun"),
+    	com.fr.design.i18n.Toolkit.i18nText("Year"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"),
     	com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute"),
     	com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second")
     };
@@ -68,7 +68,7 @@ public class TimeSwitchPane extends JPanel implements UIObserver {
     static {
     	INTS.put(ChartConstants.YEAR_TYPE, com.fr.design.i18n.Toolkit.i18nText("Year"));
     	INTS.put(ChartConstants.MONTH_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"));
-    	INTS.put(ChartConstants.DAY_TYPE, com.fr.design.i18n.Toolkit.i18nText("Sun"));
+    	INTS.put(ChartConstants.DAY_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"));
     	INTS.put(ChartConstants.HOUR_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour"));
     	INTS.put(ChartConstants.MINUTE_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute"));
     	INTS.put(ChartConstants.SECOND_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second"));
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java
index bfb79b198..c30560983 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLabelPane.java
@@ -81,7 +81,8 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{
     }
 
     private void initComponents() {
-        isLabelShow = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Utils_Label"));
+
+        isLabelShow = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Label"));
         auto = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Auto_Axis_Label_Interval"));
         custom = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Custom_Axis_Label_Interval"));
         showWay = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("FR-Chart-Axis_labelInterval"),com.fr.design.i18n.Toolkit.i18nText("FR-Chart-Axis_labelWrap")});
@@ -161,7 +162,7 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{
 
         Component[][] components = new Component[][]{
                 new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Chart-Axis_labelShowway")), showWay, null},
-                new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation")), labelOrientationChoose, null},
+                new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null},
                 new Component[]{null, orientationSpinner, orientationBar, null},
                 new Component[]{null, textAttrPane, null, null},
         };
@@ -226,7 +227,7 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{
         double[] rowSize = {p, p, p};
 
         Component[][] components = new Component[][]{
-                new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation")), labelOrientationChoose, null},
+                new Component[]{null, new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null},
                 new Component[]{null, orientationSpinner, orientationBar, null},
                 new Component[]{null, textAttrPane, null, null},
         };
@@ -289,7 +290,7 @@ public class ChartAxisLabelPane extends BasicPane implements UIObserver{
 
         Component[][] components = new Component[][]{
                 new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("ChartF-Label_Interval")), labelSampleChoose, customLabelSamleTime},
-                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Text_Rotation")), labelOrientationChoose, null},
+                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), labelOrientationChoose, null},
                 new Component[]{null,orientationSpinner, orientationBar, null},
                 new Component[]{null,textAttrPane, null, null},
         };
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLineStylePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLineStylePane.java
index 5d5637ae8..0f8945538 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLineStylePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisLineStylePane.java
@@ -54,7 +54,7 @@ public class ChartAxisLineStylePane extends BasicPane{
 		double[] rowSize = { p,p,p,p,p,p};
 
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Type")),axisLineStyle} ,
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type")),axisLineStyle} ,
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Color")),axisLineColor},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Main_Graduation_Line")),null},
                 new Component[]{null, mainTickPosition},
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitleNoFormulaPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitleNoFormulaPane.java
index 0b00dd521..6160199cb 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitleNoFormulaPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitleNoFormulaPane.java
@@ -57,7 +57,7 @@ public class ChartAxisTitleNoFormulaPane extends BasicPane {
         Component[][] components = new Component[][]{
                 new Component[]{null,axisTitleContentPane},
                 new Component[]{null,axisTitleAttrPane},
-                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Alignment-Style"))},
+                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style"))},
                 new Component[]{null,titleAlignmentPane,},
         };
         titlePane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize);
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java
index ca2c2d361..db69bf9f5 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartAxisTitlePane.java
@@ -56,7 +56,7 @@ public class ChartAxisTitlePane extends BasicPane{
         Component[][] components = new Component[][]{
                 new Component[]{null,axisTitleContentPane},
                 new Component[]{null,axisTitleAttrPane},
-                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Alignment-Style"))},
+                new Component[]{null,new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style"))},
                 new Component[]{null,titleAlignmentPane,},
         };
         titlePane = TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize);
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBeautyPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBeautyPane.java
index 6a67a6662..aa0fc21d0 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBeautyPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBeautyPane.java
@@ -18,7 +18,7 @@ public class ChartBeautyPane extends BasicBeanPane<Integer>{
 	public ChartBeautyPane() {
 		String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Common"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Plane3D"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Gradient_HighLight"),
-                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Top_Down_Shade"),com.fr.design.i18n.Toolkit.i18nText("Transparent")   //新加的两种风格,注意兼容处理
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Top_Down_Shade"),com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Transparent")   //新加的两种风格,注意兼容处理
            };
 
 		styleBox = new UIComboBox(nameArray);
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBorderPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBorderPane.java
index a2b4f0bff..90f94d95a 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBorderPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartBorderPane.java
@@ -28,7 +28,7 @@ public class ChartBorderPane extends BasicPane{
 	private void initComponents() {
 		currentLineCombo = new LineComboBox(CoreConstants.STRIKE_LINE_STYLE_ARRAY_4_CHART);
 		currentLineColorPane = new ColorSelectBox(100);
-		isRoundBorder = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Border-Style-Radius"));
+		isRoundBorder = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Border_Style_Radius"));
 		double p = TableLayout.PREFERRED;
 		double f = TableLayout.FILL;
 		double[] columnSize = { p,f };
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartFillStylePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartFillStylePane.java
index 0a3bb9eae..72f0c5bf5 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartFillStylePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/ChartFillStylePane.java
@@ -135,13 +135,13 @@ public class ChartFillStylePane extends BasicBeanPane<AttrFillStyle>{
     private String[] getNameObj() {
 		ChartPreStyleConfig config = ChartPreStyleConfig.getInstance();
         ArrayList<String> nameArr = new ArrayList<String>();
-        nameArr.add(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"));
+        nameArr.add(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"));
         Iterator keys = config.names();
         while (keys.hasNext()) {
             Object key = keys.next();
             nameArr.add(Utils.objectToString(key));
         }
-        nameArr.add(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom"));
+        nameArr.add(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom"));
         return nameArr.toArray(new String[nameArr.size()]);
     }
 
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/DateAxisValuePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/DateAxisValuePane.java
index 06c5b2f42..072508643 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/DateAxisValuePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/DateAxisValuePane.java
@@ -48,7 +48,7 @@ import java.util.regex.Pattern;
 public class DateAxisValuePane extends FurtherBasicBeanPane<CategoryAxis>{
 
     private static String[] TYPES = new String[]{
-    	com.fr.design.i18n.Toolkit.i18nText("Year"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"), com.fr.design.i18n.Toolkit.i18nText("Sun"),
+    	com.fr.design.i18n.Toolkit.i18nText("Year"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"),
     	com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute"),
     	com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second")
     };
@@ -57,7 +57,7 @@ public class DateAxisValuePane extends FurtherBasicBeanPane<CategoryAxis>{
     static {
     	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Year"), ChartConstants.YEAR_TYPE);
     	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"), ChartConstants.MONTH_TYPE);
-    	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Sun"), ChartConstants.DAY_TYPE);
+    	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"), ChartConstants.DAY_TYPE);
     	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour"), ChartConstants.HOUR_TYPE);
     	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute"), ChartConstants.MINUTE_TYPE);
     	VALUES.put(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second"), ChartConstants.SECOND_TYPE);
@@ -67,7 +67,7 @@ public class DateAxisValuePane extends FurtherBasicBeanPane<CategoryAxis>{
     static {
     	INTS.put(ChartConstants.YEAR_TYPE, com.fr.design.i18n.Toolkit.i18nText("Year"));
     	INTS.put(ChartConstants.MONTH_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Month"));
-    	INTS.put(ChartConstants.DAY_TYPE, com.fr.design.i18n.Toolkit.i18nText("Sun"));
+    	INTS.put(ChartConstants.DAY_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sun"));
     	INTS.put(ChartConstants.HOUR_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_ScheHour"));
     	INTS.put(ChartConstants.MINUTE_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Minute"));
     	INTS.put(ChartConstants.SECOND_TYPE, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Sche_Second"));
@@ -358,7 +358,7 @@ public class DateAxisValuePane extends FurtherBasicBeanPane<CategoryAxis>{
 			String tmp = DateUtils.getDate2LStr(toDate);
 			toDate = DateUtils.DATETIMEFORMAT2.parse(tmp);
 		} catch (ParseException e) {
-			FineLoggerFactory.getLogger().error(com.fr.design.i18n.Toolkit.i18nText("Cannot_Get_Date"));
+			FineLoggerFactory.getLogger().error(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Cannot_Get_Date"));
 		}
 		return toDate;
 	}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/area/DefaultAxisAreaPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/area/DefaultAxisAreaPane.java
index e6f7d3b60..d646c7f87 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/area/DefaultAxisAreaPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/area/DefaultAxisAreaPane.java
@@ -55,8 +55,8 @@ public class DefaultAxisAreaPane extends ChartAxisAreaPane {
 		verticalColorPane = new ColorSelectBox(100);
 		
 		Component[][] components = new Component[][]{
-                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right") + ":"),horizontalColorPane},
-                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom") + ":"),verticalColorPane},
+                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right") + ":"),horizontalColorPane},
+                new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom") + ":"),verticalColorPane},
         };
 		
 		backgroundPane = TableLayoutHelper.createTableLayoutPane4Chart(new String[]{"Chart_Interval_Back"}, components, rowSize, columnSize);
@@ -69,8 +69,8 @@ public class DefaultAxisAreaPane extends ChartAxisAreaPane {
 		double[] rowSize = {p,p};
 		double[] columnSize = { p, f };
 		
-		isVerticleGridLine = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right"));
-		isHorizontalGridLine = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom"));
+		isVerticleGridLine = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right"));
+		isHorizontalGridLine = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom"));
 		gridColorPane = new ColorSelectBox(100);
 		
 		JPanel container = TableLayoutHelper.createTableLayoutPane(new Component[][]{
@@ -116,4 +116,4 @@ public class DefaultAxisAreaPane extends ChartAxisAreaPane {
 		((RectanglePlot)plot).setHorizontalIntervalBackgroundColor(horizontalColorPane.getSelectObject());
 		((RectanglePlot)plot).setVerticalIntervalBackgroundColor(verticalColorPane.getSelectObject());
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/datalabel/ChartDataLabelPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/datalabel/ChartDataLabelPane.java
index ab4ca532e..6b9010053 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/datalabel/ChartDataLabelPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/datalabel/ChartDataLabelPane.java
@@ -93,11 +93,11 @@ public class ChartDataLabelPane extends BasicScrollPane<Chart>{
 	protected String[] getLabelLocationNameArray() {
 		Plot plot = chart.getPlot();
 		if(plot instanceof BarPlot){
-			return new String[] {com.fr.design.i18n.Toolkit.i18nText("BarInside"), com.fr.design.i18n.Toolkit.i18nText("BarOutSide"), com.fr.design.i18n.Toolkit.i18nText("Center")};
+			return new String[] {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bar_Inside"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bar_Outside"), com.fr.design.i18n.Toolkit.i18nText("Center")};
 		}else if(plot instanceof PiePlot){
             return new String[] {com.fr.design.i18n.Toolkit.i18nText("Chart_In_Pie"), com.fr.design.i18n.Toolkit.i18nText("Chart_Out_Pie")};
 		}else if(plot instanceof RangePlot){
-			return new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top"), com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom"), com.fr.design.i18n.Toolkit.i18nText("Center")};
+			return new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom"), com.fr.design.i18n.Toolkit.i18nText("Center")};
 		}else if(plot instanceof BubblePlot){
 			return new String[] {com.fr.design.i18n.Toolkit.i18nText("Chart_Bubble_Inside"), com.fr.design.i18n.Toolkit.i18nText("Chart_Bubble_Outside")};
 		}else{
@@ -122,4 +122,4 @@ public class ChartDataLabelPane extends BasicScrollPane<Chart>{
 		
 	
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java
index 8885fcb87..6fb278998 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/legend/ChartLegendPane.java
@@ -56,8 +56,8 @@ public class ChartLegendPane extends BasicScrollPane<Chart>{
 			textAttrPane = new ChartTextAttrPane();
 			borderPane = new ChartBorderPane();
 			
-			String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top"), com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom"),
-					com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Left"), com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Right"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Right_Top")};
+			String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom"),
+					com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Left"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Right"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Right_Top")};
 			Integer[] valueArray = {Constants.TOP, Constants.BOTTOM, Constants.LEFT, Constants.RIGHT, Constants.RIGHT_TOP};
             Icon[] iconArray = {BaseUtils.readIcon("/com/fr/design/images/chart/ChartLegend/layout_top.png"),
                                 BaseUtils.readIcon("/com/fr/design/images/chart/ChartLegend/layout_bottom.png"),
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/BubbleSeriesPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/BubbleSeriesPane.java
index 04de8bfe1..af2cb81b0 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/BubbleSeriesPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/BubbleSeriesPane.java
@@ -52,7 +52,7 @@ public class BubbleSeriesPane extends AbstractPlotSeriesPane{
 
 	protected void initCom(){
 		String[] nameArray = {com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Chart_Bubble", "Chart_Area"}),
-				com.fr.design.i18n.Toolkit.i18nText("Bubble-Width")};
+				com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bubble_Width")};
 		Integer[] valueArray = {BubblePlot.BUBBLE_AREA, BubblePlot.BUBBLE_WIDTH};
 		bubbleMean = new UIButtonGroup<Integer>(nameArray, valueArray);
 		zoomTime = new UITextField();
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/MeterSeriesPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/MeterSeriesPane.java
index 3542ea6e6..4406b2b10 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/MeterSeriesPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/MeterSeriesPane.java
@@ -43,8 +43,8 @@ public class MeterSeriesPane extends AbstractPlotSeriesPane {
     protected JPanel getContentInPlotType() {
         unit = new UITextField();
         angleMax = new UINumberDragPane(0, 360);
-        String[] orderUnit = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Ge"), com.fr.design.i18n.Toolkit.i18nText("Unit_Ten"), com.fr.design.i18n.Toolkit.i18nText("Unit_Hundred"),
-                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Thousand"), com.fr.design.i18n.Toolkit.i18nText("Unit_Ten_Thousand")};
+        String[] orderUnit = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Ge"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Ten"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Hundred"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Thousand"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Unit_Ten_Thousand")};
         order = new UIComboBox(orderUnit);
         colorPickerPane = createColorPickerPane();
 
@@ -61,7 +61,7 @@ public class MeterSeriesPane extends AbstractPlotSeriesPane {
                 return 120;
             }
             protected int getColorgroupMarginLeft () {
-                return 20;
+                return 5;
             }
         };
     }
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/StockSeriesPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/StockSeriesPane.java
index 75b274c7d..0eb889e21 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/StockSeriesPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/StockSeriesPane.java
@@ -56,7 +56,7 @@ public class StockSeriesPane extends AbstractPlotSeriesPane {
         		
                 new Component[]{new JSeparator(),null},
                 
-            	new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("DownBarBorderStyleAndColor")), null},
+            	new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Down_Bar_Border_Style_And_Color")), null},
         		new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Border_Line_Style")), downLineBox},
         		new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Border-Color")), downBorderColor},
         		new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Border_Line_Style")), downBackColor},
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java
index ef0c57ebb..af308adc8 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane.java
@@ -51,7 +51,7 @@ public class UIColorPickerPane extends BasicPane implements UIObserver {
 	private static final int COLOR_REC_HEIGHT = 40;
 	private static final int COLOR_REC_WIDTH = 30;
 	protected static final int TEXTFIELD_HEIGHT = 20;
-	protected static final int TEXTFIELD_WIDTH = 140;
+	protected static final int TEXTFIELD_WIDTH = 130;
 	protected static final int UPCONTROLPANE_WIDTH = 230;
 	private static final int LAYOUR_DET = 6;
 	private static final double VALUE = 100;
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java
index 6d08de497..7796be1fb 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePane.java
@@ -110,7 +110,7 @@ public class ChartTitlePane extends BasicScrollPane<Chart> {
         Component[][] components = new Component[][]{
                 new Component[]{null,titleContent,null},
                 new Component[]{null,textAttrPane,null},
-                new Component[]{null,new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Alignment-Style") + ":"),alignmentPane} ,
+                new Component[]{null,new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style") + ":"),alignmentPane} ,
         } ;
 
         return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize);
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePaneNoFormula.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePaneNoFormula.java
index 7de40187b..0ebc26685 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePaneNoFormula.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/title/ChartTitlePaneNoFormula.java
@@ -110,7 +110,7 @@ public class ChartTitlePaneNoFormula extends BasicScrollPane<Chart> {
         Component[][] components = new Component[][]{
                 new Component[]{null,titleContent,null},
                 new Component[]{null,textAttrPane,null},
-                new Component[]{null,new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Alignment-Style") + ":"),alignmentPane} ,
+                new Component[]{null,new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Alignment_Style") + ":"),alignmentPane} ,
         } ;
 
         return TableLayoutHelper.createTableLayoutPane(components,rowSize,columnSize);
diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/type/XYScatterPlotPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/type/XYScatterPlotPane.java
index ad4ad9e14..0effae28e 100644
--- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/type/XYScatterPlotPane.java
+++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/type/XYScatterPlotPane.java
@@ -28,7 +28,7 @@ public class XYScatterPlotPane extends AbstractChartTypePane{
 	@Override
 	protected String[] getTypeTipName() {
 		return new String[]{
-				com.fr.design.i18n.Toolkit.i18nText("I-xyScatterStyle_Marker")
+				com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_I_XYScatterStyle_Marker")
 		};
 	}
 
@@ -47,7 +47,7 @@ public class XYScatterPlotPane extends AbstractChartTypePane{
      * @return 界面标题
 	 */
 	public String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("I-xyScatterStyle_Marker");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_I_XYScatterStyle_Marker");
 	}
 
 	/**
@@ -86,4 +86,4 @@ public class XYScatterPlotPane extends AbstractChartTypePane{
 	public Chart getDefaultChart() {
         return XYScatterIndependentChart.XYScatterChartTypes[0];
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java b/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java
index 61f02f59b..ef82888da 100644
--- a/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java
+++ b/designer-chart/src/main/java/com/fr/design/module/ChartEmptyDataStylePane.java
@@ -96,7 +96,7 @@ public class ChartEmptyDataStylePane extends AbstractAttrNoScrollPane {
         JPanel previewContainerPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
         centerPane.add(previewContainerPane, BorderLayout.CENTER);
 
-        JPanel previewOwnerPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        JPanel previewOwnerPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         previewOwnerPane.setLayout(new BorderLayout());
         previewContainerPane.add(previewOwnerPane, BorderLayout.CENTER);
         previewContainerPane.add(initSelectFilePane(), BorderLayout.EAST);
@@ -116,7 +116,7 @@ public class ChartEmptyDataStylePane extends AbstractAttrNoScrollPane {
 
         selectFilePane.setBorder(BorderFactory.createEmptyBorder(TEN, FIVE, 0, THIRTY));
 
-        defaultRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"));
+        defaultRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"));
         customRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style_Custom"));
         ButtonGroup buttonGroup = new ButtonGroup();
         defaultRadioButton.setSelected(true);
@@ -131,7 +131,7 @@ public class ChartEmptyDataStylePane extends AbstractAttrNoScrollPane {
         jp.add(customRadioButton);
 
         selectPictureButton = new UIButton(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background_Image_Select"));
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Image_Select"));
         selectPictureButton.addActionListener(getSelectPictureActionListener());
         jp.add(selectPictureButton);
 
diff --git a/designer-chart/src/main/java/com/fr/design/module/ChartPreStyleManagerPane.java b/designer-chart/src/main/java/com/fr/design/module/ChartPreStyleManagerPane.java
index accdd576a..abae5118b 100644
--- a/designer-chart/src/main/java/com/fr/design/module/ChartPreStyleManagerPane.java
+++ b/designer-chart/src/main/java/com/fr/design/module/ChartPreStyleManagerPane.java
@@ -27,7 +27,7 @@ public class ChartPreStyleManagerPane extends JListControlPane {
      */
 	public NameableCreator[] createNameableCreators() {
 		return new NameableCreator[]{
-				new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_PreStyle"),
+				new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_PreStyle_Duplicate"),
 						ChartColorMatching.class, ChartPreStylePane.class)
 		};
 	}
diff --git a/designer-chart/src/main/java/com/fr/design/module/ChartPreStylePane.java b/designer-chart/src/main/java/com/fr/design/module/ChartPreStylePane.java
index 00a0d05b6..2b8f6ea32 100644
--- a/designer-chart/src/main/java/com/fr/design/module/ChartPreStylePane.java
+++ b/designer-chart/src/main/java/com/fr/design/module/ChartPreStylePane.java
@@ -39,7 +39,7 @@ public class ChartPreStylePane extends BasicBeanPane<ChartColorMatching> {
 		JPanel pane = new JPanel();
 		pane.setLayout(new FlowLayout(FlowLayout.LEFT));
 
-		pane.add(new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview")));
+		pane.add(new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview")));
 
         JPanel boxPane = new JPanel();
         boxPane.setLayout(new BorderLayout());
diff --git a/designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java b/designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java
index 79a1acdd1..e8311cd2a 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/DownloadOnlineSourcesHelper.java
@@ -202,7 +202,7 @@ public class DownloadOnlineSourcesHelper implements DownloadSourcesEvent {
         dialog.dispose();
 
         if (result) {
-            int choose = JOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Work_After_Restart_Designer"), null, JOptionPane.YES_NO_OPTION);
+            int choose = JOptionPane.showConfirmDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Work_After_Restart_Designer"), null, JOptionPane.YES_NO_OPTION);
 
             if (choose == JOptionPane.OK_OPTION) {
                 RestartHelper.restart();
diff --git a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java
index dc2b4a705..dd35f1112 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/custom/component/VanChartHyperLinkPane.java
@@ -102,7 +102,7 @@ public class VanChartHyperLinkPane extends VanChartUIListControlPane {
      * @return 返回标题字符串.
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink");
     }
 
     @Override
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java
index 24e0d8d4a..af03afbe9 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/VanChartTooltipContentPane.java
@@ -98,7 +98,7 @@ public class VanChartTooltipContentPane extends BasicBeanPane<AttrTooltipContent
     }
 
     protected String getLabelContentTitle () {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text");
     }
 
     protected JPanel getLabelContentPane(JPanel contentPane) {
@@ -260,4 +260,4 @@ public class VanChartTooltipContentPane extends BasicBeanPane<AttrTooltipContent
             attrTooltipContent.getSeriesFormat().setEnable(false);
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/component/background/VanChartGradientPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/component/background/VanChartGradientPane.java
index 565183e54..2cdcf2401 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/component/background/VanChartGradientPane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/component/background/VanChartGradientPane.java
@@ -32,7 +32,7 @@ public class VanChartGradientPane extends GradientBackgroundQuickPane {
     }
 
     protected void constructPane(){
-        String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right"), com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom")};
+        String[] textArray = {com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom")};
         Integer[] valueArray = {GradientBackground.LEFT2RIGHT, GradientBackground.TOP2BOTTOM};
         directionPane = new UIButtonGroup<Integer>(textArray, valueArray);
         directionPane.setSelectedIndex(0);
@@ -102,4 +102,4 @@ public class VanChartGradientPane extends GradientBackgroundQuickPane {
         return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Gradient_Color");
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java
index 9a1c7e727..6cb4567c3 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/VanChartTitlePane.java
@@ -131,7 +131,7 @@ public class VanChartTitlePane extends AbstractVanChartScrollPane<VanChart> {
         useHtml = new UIToggleButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Html"));
         Component[][] components = new Component[][]{
                 new Component[]{null ,null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text"), SwingConstants.LEFT), titleContent},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text"), SwingConstants.LEFT), titleContent},
                 new Component[]{null ,useHtml},
         };
         JPanel panel = TableLayout4VanChartHelper.createGapTableLayoutPane(components,row,col);
@@ -150,7 +150,7 @@ public class VanChartTitlePane extends AbstractVanChartScrollPane<VanChart> {
 
         Component[][] components = new Component[][]{
                 new Component[]{null,null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-Constraints"), SwingConstants.LEFT),alignmentPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_Constraints"), SwingConstants.LEFT),alignmentPane},
                 new Component[]{null,customFloatPositionButton}
         };
 
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartTimeAxisPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartTimeAxisPane.java
index ce6273251..f3ab56ab7 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartTimeAxisPane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/axis/VanChartTimeAxisPane.java
@@ -201,7 +201,7 @@ public class VanChartTimeAxisPane extends VanChartBaseAxisPane {
             // 最小值.
             minCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Custom_Min_Value"));
             Date tmp = null;
-            DateEditor dateEditor = new DateEditor(tmp, true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date"), UIDatePicker.STYLE_CN_DATETIME1);
+            DateEditor dateEditor = new DateEditor(tmp, true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date"), UIDatePicker.STYLE_CN_DATETIME1);
             Editor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Formula"));
             Editor[] editor = new Editor[]{dateEditor, formulaEditor};
             minValueField = new ValueEditorPane(editor);
@@ -216,7 +216,7 @@ public class VanChartTimeAxisPane extends VanChartBaseAxisPane {
             // 最大值
             maxCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Custom_Max_Value"));
             Date tmp = null;
-            DateEditor dateEditor = new DateEditor(tmp, true, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date"), UIDatePicker.STYLE_CN_DATETIME1);
+            DateEditor dateEditor = new DateEditor(tmp, true, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date"), UIDatePicker.STYLE_CN_DATETIME1);
             Editor formulaEditor = new FormulaEditor(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Formula"));
             Editor[] editor = new Editor[]{dateEditor, formulaEditor};
             maxValueField = new ValueEditorPane(editor);
@@ -385,4 +385,4 @@ public class VanChartTimeAxisPane extends VanChartBaseAxisPane {
         }
 
     }
-}
\ No newline at end of file
+}
diff --git a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java
index 9f27487dd..4e1464063 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/designer/style/background/VanChartCustomIntervalBackgroundPane.java
@@ -61,7 +61,7 @@ public class VanChartCustomIntervalBackgroundPane extends BasicBeanPane<VanChart
 
         Component[][] rangeComponents = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Bottom_Value")),bottomValue},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Plugin-ChartF_TopValue")),topValue},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Top_Value")),topValue},
         };
         JPanel temp = TableLayoutHelper.createTableLayoutPane(rangeComponents, rowSize, columnSize);
         JPanel rangePane = TableLayout4VanChartHelper.createTableLayoutPaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Range"), temp);
diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapSourceChoosePane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapSourceChoosePane.java
index b85e1854e..1758622a9 100644
--- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapSourceChoosePane.java
+++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapSourceChoosePane.java
@@ -152,7 +152,7 @@ public class VanChartMapSourceChoosePane extends JPanel implements UIObserver {
         panel.add(createMapSourcesPane(), BorderLayout.NORTH);
         panel.add(createGISLayerPane(), BorderLayout.CENTER);
 
-        JPanel BasePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), panel);
+        JPanel BasePane = TableLayout4VanChartHelper.createExpandablePaneWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), panel);
 
         Component[][] comps = new Component[][]{
                 new Component[]{BasePane},
diff --git a/designer-form/src/main/java/com/fr/design/designer/beans/actions/ChangeNameAction.java b/designer-form/src/main/java/com/fr/design/designer/beans/actions/ChangeNameAction.java
index 6d288cc5b..57c70a766 100644
--- a/designer-form/src/main/java/com/fr/design/designer/beans/actions/ChangeNameAction.java
+++ b/designer-form/src/main/java/com/fr/design/designer/beans/actions/ChangeNameAction.java
@@ -17,7 +17,7 @@ public class ChangeNameAction extends FormUndoableAction {
 	public ChangeNameAction(FormDesigner t) {
 		super(t);
 		
-        this.setName(com.fr.design.i18n.Toolkit.i18nText("Form-Change_Widget_Name"));
+        this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Change_Widget_Name"));
         this.setMnemonic('G');
         this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/refresh.png"));
     }
diff --git a/designer-form/src/main/java/com/fr/design/designer/beans/actions/ConnectionAction.java b/designer-form/src/main/java/com/fr/design/designer/beans/actions/ConnectionAction.java
index 55ceb7ccf..c9f84d837 100644
--- a/designer-form/src/main/java/com/fr/design/designer/beans/actions/ConnectionAction.java
+++ b/designer-form/src/main/java/com/fr/design/designer/beans/actions/ConnectionAction.java
@@ -16,7 +16,7 @@ public class ConnectionAction extends UpdateAction implements ToggleButtonUpdate
 
 	public ConnectionAction(FormDesigner fd) {
 		this.fd = fd;
-		this.setName(com.fr.design.i18n.Toolkit.i18nText("Connectionline"));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Connecti_Online"));
 		this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/toolbarbtn/connector.png"));
 	}
 
diff --git a/designer-form/src/main/java/com/fr/design/designer/beans/painters/AbstractPainter.java b/designer-form/src/main/java/com/fr/design/designer/beans/painters/AbstractPainter.java
index ab2e4ded9..f7e162a92 100644
--- a/designer-form/src/main/java/com/fr/design/designer/beans/painters/AbstractPainter.java
+++ b/designer-form/src/main/java/com/fr/design/designer/beans/painters/AbstractPainter.java
@@ -82,7 +82,7 @@ public abstract class AbstractPainter implements HoverPainter {
         g2d.setStroke(XCreatorConstants.STROKE);
         g2d.setColor(bColor);
         if (!accept) {
-            g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("Cannot-Add_To_This_Area") + "!", x + width / 3, y + height / 2);
+            g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Cannot_Add_To_This_Area") + "!", x + width / 3, y + height / 2);
         } else if (drawBackground) {
             g2d.fillRect(x, y, width, height);
         } else {
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XButton.java b/designer-form/src/main/java/com/fr/design/designer/creator/XButton.java
index e30957139..ba77fddaf 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XButton.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XButton.java
@@ -95,22 +95,22 @@ public class XButton extends XWidgetCreator {
                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Button_Style")).setEditorClass(
                        ButtonTypeEditor.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                new CRPropertyDescriptor("initialBackground", this.data.getClass()).setEditorClass(
-                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Initial")).putKeyValue(
+                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Initial")).putKeyValue(
                        XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                new CRPropertyDescriptor("overBackground", this.data.getClass()).setEditorClass(
-                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Over")).putKeyValue(
+                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Over")).putKeyValue(
                        XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                new CRPropertyDescriptor("clickBackground", this.data.getClass()).setEditorClass(
-                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Click")).putKeyValue(
+                       ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Click")).putKeyValue(
                        XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
-               new CRPropertyDescriptor("font", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_FRFont"))
+               new CRPropertyDescriptor("font", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_FR_Font"))
                        .setEditorClass(FontEditor.class).setRendererClass(FontCellRenderer.class).putKeyValue(
                        XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
-               new CRPropertyDescriptor("iconName", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Icon"))
+               new CRPropertyDescriptor("iconName", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon"))
                        .setEditorClass(IconEditor.class).setRendererClass(IconCellRenderer.class).putKeyValue(
                        XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                new CRPropertyDescriptor("hotkeys", this.data.getClass())
-					   .setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Hotkeys"))
+					   .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Hot_keys"))
                        .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced")
 			   		   .setEditorClass(ShortCutTextEditor.class)
 
@@ -181,11 +181,11 @@ public class XButton extends XWidgetCreator {
 							  checkButonType();
 						  }
 					  }),
-			  new CRPropertyDescriptor("iconName", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Icon"))
+			  new CRPropertyDescriptor("iconName", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon"))
 					  .setEditorClass(IconEditor.class).setRendererClass(IconCellRenderer.class).putKeyValue(
 					  XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 			  new CRPropertyDescriptor("hotkeys", this.data.getClass()).setI18NName(
-					  com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Hotkeys"))
+					  com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Hot_keys"))
 					  .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced")
 				      .setEditorClass(ShortCutTextEditor.class)
 
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBoxGroup.java b/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBoxGroup.java
index ae47f6425..1b94afae0 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBoxGroup.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBoxGroup.java
@@ -45,7 +45,7 @@ public class XCheckBoxGroup extends XFieldEditor {
 
 	private CRPropertyDescriptor[] getCRPropertyDescriptor() throws IntrospectionException {
 		CRPropertyDescriptor[] crp = new CRPropertyDescriptor[] {
-				new CRPropertyDescriptor("adaptive", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Adaptive"))
+				new CRPropertyDescriptor("adaptive", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Adaptive"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced").setEditorClass(InChangeBooleanEditor.class),
 				new CRPropertyDescriptor("chooseAll", this.data.getClass()).setI18NName(
 						com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Choose_Type_All")).putKeyValue(
@@ -56,7 +56,7 @@ public class XCheckBoxGroup extends XFieldEditor {
 		if (((CheckBoxGroup) this.toData()).isReturnString()) {
 			crp = (CRPropertyDescriptor[]) ArrayUtils.addAll(crp, new CRPropertyDescriptor[] {
 					new CRPropertyDescriptor("delimiter", this.data.getClass()).setI18NName(
-							com.fr.design.i18n.Toolkit.i18nText("Form-Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
+							com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 					new CRPropertyDescriptor("startSymbol", this.data.getClass()).setI18NName(
 							com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Combo_CheckBox_Start_Symbol")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 					new CRPropertyDescriptor("endSymbol", this.data.getClass()).setI18NName(
@@ -64,7 +64,7 @@ public class XCheckBoxGroup extends XFieldEditor {
 		}
 		if (!((CheckBoxGroup) this.toData()).isAdaptive()) {
 			crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("columnsInRow", this.data
-					.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Button-Group-Display-Columns")).putKeyValue(
+					.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Group_Display_Columns")).putKeyValue(
 					XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
 		}
 		return crp;
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XComboBox.java b/designer-form/src/main/java/com/fr/design/designer/creator/XComboBox.java
index 3368dd137..cc291eb58 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XComboBox.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XComboBox.java
@@ -41,7 +41,7 @@ public class XComboBox extends XCustomWriteAbleRepeatEditor {
         return (CRPropertyDescriptor[]) ArrayUtils.addAll(
 				new CRPropertyDescriptor[]{
 						new CRPropertyDescriptor("widgetValue", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Value")).setEditorClass(WidgetValueEditor.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
-						new CRPropertyDescriptor("dictionary", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")).setEditorClass(DictionaryEditor.class).setRendererClass(DictionaryRenderer.class)
+						new CRPropertyDescriptor("dictionary", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")).setEditorClass(DictionaryEditor.class).setRendererClass(DictionaryRenderer.class)
 								.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced")
 				}, super.supportedDescriptor());
     }
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XComboCheckBox.java b/designer-form/src/main/java/com/fr/design/designer/creator/XComboCheckBox.java
index 31efcd46a..4c95cc04a 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XComboCheckBox.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XComboCheckBox.java
@@ -26,16 +26,16 @@ public class XComboCheckBox extends XComboBox {
 		return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(), !((ComboCheckBox) this.toData())
 				.isReturnString() ? new CRPropertyDescriptor[] {
                 new CRPropertyDescriptor("supportTag", this.data.getClass()).setI18NName(
-                        com.fr.design.i18n.Toolkit.i18nText("Form-SupportTag")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Support_Tag")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                         "Advanced"),
 				new CRPropertyDescriptor("delimiter", this.data.getClass()).setI18NName(
-						com.fr.design.i18n.Toolkit.i18nText("Form-Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+						com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
 						"Advanced"),
 				new CRPropertyDescriptor("returnString", this.data.getClass()).setEditorClass(
 						InChangeBooleanEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Return_String"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced") } : new CRPropertyDescriptor[] {
 				new CRPropertyDescriptor("delimiter", this.data.getClass()).setI18NName(
-						com.fr.design.i18n.Toolkit.i18nText("Form-Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+						com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Delimiter")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
 						"Advanced"),
 				new CRPropertyDescriptor("returnString", this.data.getClass()).setI18NName(
 						com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Return_String")).setEditorClass(InChangeBooleanEditor.class)
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XCustomWriteAbleRepeatEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XCustomWriteAbleRepeatEditor.java
index b8a707f7c..52f9d0092 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XCustomWriteAbleRepeatEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XCustomWriteAbleRepeatEditor.java
@@ -1 +1 @@
-package com.fr.design.designer.creator;

import com.fr.design.form.util.XCreatorConstants;
import com.fr.form.ui.WriteAbleRepeatEditor;

import com.fr.stable.ArrayUtils;

import java.awt.*;
import java.beans.IntrospectionException;

/**
 * Author : Shockway
 * Date: 13-9-22
 * Time: 上午10:40
 */
public abstract class XCustomWriteAbleRepeatEditor extends XWriteAbleRepeatEditor {
	public XCustomWriteAbleRepeatEditor(WriteAbleRepeatEditor widget, Dimension initSize) {
		super(widget, initSize);
	}

	public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException {
		return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(),
				new CRPropertyDescriptor[] { new CRPropertyDescriptor("customData",
						this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_CustomData"))
						.putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate")});
	}
}
\ No newline at end of file
+package com.fr.design.designer.creator;

import com.fr.design.form.util.XCreatorConstants;
import com.fr.form.ui.WriteAbleRepeatEditor;

import com.fr.stable.ArrayUtils;

import java.awt.*;
import java.beans.IntrospectionException;

/**
 * Author : Shockway
 * Date: 13-9-22
 * Time: 上午10:40
 */
public abstract class XCustomWriteAbleRepeatEditor extends XWriteAbleRepeatEditor {
	public XCustomWriteAbleRepeatEditor(WriteAbleRepeatEditor widget, Dimension initSize) {
		super(widget, initSize);
	}

	public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException {
		return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(),
				new CRPropertyDescriptor[] { new CRPropertyDescriptor("customData",
						this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Custom_Data"))
						.putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate")});
	}
}
\ No newline at end of file
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java
index 9450b3e24..233619a5a 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java
@@ -69,7 +69,7 @@ public class XDateEditor extends XDirectWriteEditor {
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_End_Date")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                                 "Advanced").setEditorClass(DateRangeEditor.class),
                         new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(
-                                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+                                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                                 "Advanced"),
                         new CRPropertyDescriptor("returnDate", this.data.getClass()).setI18NName(
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Return_Date")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XDirectWriteEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XDirectWriteEditor.java
index 316b38779..25a04c0bb 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XDirectWriteEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XDirectWriteEditor.java
@@ -25,7 +25,7 @@ public abstract class XDirectWriteEditor extends XFieldEditor {
 	public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException {
 		return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(),
 				new CRPropertyDescriptor[] { new CRPropertyDescriptor("directEdit", this.data.getClass())
-								.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_Edit")).putKeyValue(
+								.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Edit")).putKeyValue(
 								 XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate") });
 	}
 }
\ No newline at end of file
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XElementCase.java b/designer-form/src/main/java/com/fr/design/designer/creator/XElementCase.java
index af7a9ec10..fcece5001 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XElementCase.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XElementCase.java
@@ -102,7 +102,7 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme
 						.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Layout_Padding"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 				new CRPropertyDescriptor("toolBars", this.data.getClass()).setEditorClass(ElementCaseToolBarEditor.class)
-						.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-EC_toolbar"))
+						.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_EC_Toolbar"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced")
 		};
 		CRPropertyDescriptor[] extraTableEditor = getExtraTableEditor();
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XLabel.java b/designer-form/src/main/java/com/fr/design/designer/creator/XLabel.java
index 5c3795fd7..989be4fc8 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XLabel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XLabel.java
@@ -69,7 +69,7 @@ public class XLabel extends XWidgetCreator {
                             }
                         }),
                         new CRPropertyDescriptor("wrap", this.data.getClass()).setI18NName(
-                                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment-Wrap_Text")).putKeyValue(
+                                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_StyleAlignment_Wrap_Text")).putKeyValue(
                                 XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                         new CRPropertyDescriptor("verticalCenter", this.data.getClass()).setI18NName(
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Page_Setup_Vertically")).putKeyValue(
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XNumberEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XNumberEditor.java
index cadc4af75..adb16c44b 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XNumberEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XNumberEditor.java
@@ -70,7 +70,7 @@ public class XNumberEditor extends XWrapperedFieldEditor {
 								.setEditorClass(SpinnerMaxNumberEditor.class)
 								.putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate"),
 						new CRPropertyDescriptor("waterMark", this.data.getClass())
-								.setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark"))
+								.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark"))
 								.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 						new CRPropertyDescriptor("regErrorMessage", this.data.getClass())
 								.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Message"))
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XPassword.java b/designer-form/src/main/java/com/fr/design/designer/creator/XPassword.java
index 738553b10..33a60cbb0 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XPassword.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XPassword.java
@@ -55,12 +55,12 @@ public class XPassword extends XWrapperedFieldEditor {
         CRPropertyDescriptor regErrorMessage = new CRPropertyDescriptor("regErrorMessage", this.data.getClass()).setI18NName(
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Verify_Message")).putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor regex = new CRPropertyDescriptor("regex", this.data.getClass())
-                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Input_Rule"))
+                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Input_Rule"))
                 .setEditorClass(RegexEditor.RegexEditor4TextArea.class)
                 .putKeyValue("renderer", RegexCellRencerer.class)
                 .putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor waterMark = new CRPropertyDescriptor("waterMark", this.data.getClass())
-                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark"))
+                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark"))
                 .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Report_Advanced");
         boolean displayRegField = true;
         displayRegField = isDisplayRegField(displayRegField);
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XRadioGroup.java b/designer-form/src/main/java/com/fr/design/designer/creator/XRadioGroup.java
index f0a81a165..7a252c17d 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XRadioGroup.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XRadioGroup.java
@@ -52,11 +52,11 @@ public class XRadioGroup extends XFieldEditor {
 
 	private CRPropertyDescriptor[] getCRPropertyDescriptor() throws IntrospectionException {
 		CRPropertyDescriptor[] crp = new CRPropertyDescriptor[] {
-				new CRPropertyDescriptor("adaptive", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Adaptive"))
+				new CRPropertyDescriptor("adaptive", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Adaptive"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced").setEditorClass(InChangeBooleanEditor.class)};
 		if (!toData().isAdaptive()) {
 			crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("columnsInRow", this.data
-					.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Button-Group-Display-Columns")).putKeyValue(
+					.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Group_Display_Columns")).putKeyValue(
 					XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
 		}
 		return crp;
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XTextArea.java b/designer-form/src/main/java/com/fr/design/designer/creator/XTextArea.java
index 87994bde0..4eb0af999 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XTextArea.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XTextArea.java
@@ -40,12 +40,12 @@ public class XTextArea extends XFieldEditor {
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Estate_Widget_Value")).setEditorClass(
                                 WidgetValueEditor.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Report_Advanced")}, super.supportedDescriptor());
         CRPropertyDescriptor regex = new CRPropertyDescriptor("regex", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Input_Rule")).setEditorClass(RegexEditor.RegexEditor4TextArea.class)
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Input_Rule")).setEditorClass(RegexEditor.RegexEditor4TextArea.class)
                 .putKeyValue("renderer", RegexCellRencerer.class).putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor regErrorMessage = new CRPropertyDescriptor("regErrorMessage", this.data.getClass()).setI18NName(
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Verify_Message")).putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor waterMark = new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                 "Fine-Design_Report_Advanced");
         boolean displayRegField = true;
         displayRegField = isDisplayRegField(displayRegField);
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XTextEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XTextEditor.java
index 2febf8dcf..fb272d210 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XTextEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XTextEditor.java
@@ -43,12 +43,12 @@ public class XTextEditor extends XWrapperedFieldEditor {
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Estate_Widget_Value")).setEditorClass(
                 WidgetValueEditor.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Report_Advanced");
         CRPropertyDescriptor regex = new CRPropertyDescriptor("regex", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Input_Rule")).setEditorClass(RegexEditor.class).putKeyValue(
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Input_Rule")).setEditorClass(RegexEditor.class).putKeyValue(
                 "renderer", RegexCellRencerer.class).putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor regErrorMessage = new CRPropertyDescriptor("regErrorMessage", this.data.getClass()).setI18NName(
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Verify_Message")).putKeyValue(XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate");
         CRPropertyDescriptor waterMark = new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                 "Fine-Design_Report_Advanced");
         CRPropertyDescriptor[] sup = (CRPropertyDescriptor[]) ArrayUtils.addAll(new CRPropertyDescriptor[]{widgetValue}, super.supportedDescriptor());
         boolean displayRegField = true;
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XTreeComboBoxEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XTreeComboBoxEditor.java
index 1cd334a7c..a18706189 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XTreeComboBoxEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XTreeComboBoxEditor.java
@@ -3,20 +3,18 @@
  */
 package com.fr.design.designer.creator;
 
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.beans.IntrospectionException;
-
-import javax.swing.JComponent;
-
 import com.fr.design.form.util.XCreatorConstants;
 import com.fr.design.gui.itextfield.UITextField;
 import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.form.ui.TreeComboBoxEditor;
-
 import com.fr.stable.ArrayUtils;
 
+import javax.swing.JComponent;
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.beans.IntrospectionException;
+
 /**
  * @author richer
  * @since 6.5.3
@@ -46,19 +44,19 @@ public class XTreeComboBoxEditor extends XTreeEditor {
 
 	protected CRPropertyDescriptor[] addWaterMark(CRPropertyDescriptor[] crp) throws IntrospectionException {
 		return (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(
-				com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")).putKeyValue(
+				com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")).putKeyValue(
 				XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
 	}
 
 	protected CRPropertyDescriptor[] addAllowEdit(CRPropertyDescriptor[] crp) throws IntrospectionException{
 		return (CRPropertyDescriptor[])ArrayUtils.add(crp, new CRPropertyDescriptor("directEdit", this.data.getClass())
-          .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_Edit")).putKeyValue(
+          .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Edit")).putKeyValue(
                   XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate"));
 	}
 
 	protected CRPropertyDescriptor[] addCustomData(CRPropertyDescriptor[] crp) throws IntrospectionException{
 		return (CRPropertyDescriptor[])ArrayUtils.add(crp, new CRPropertyDescriptor("customData", this.data.getClass())
-          .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_CustomData")).putKeyValue(
+          .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Custom_Data")).putKeyValue(
                   XCreatorConstants.PROPERTY_VALIDATE, "FR-Designer_Validate"));
 	}
 
@@ -110,4 +108,4 @@ public class XTreeComboBoxEditor extends XTreeEditor {
    		return true;
    	}
    	
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XTreeEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XTreeEditor.java
index 8dbbfa1e8..54a450fc2 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XTreeEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XTreeEditor.java
@@ -42,7 +42,7 @@ public class XTreeEditor extends XWidgetCreator {
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Value")).setEditorClass(WidgetValueEditor.class)
                                 .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                         new CRPropertyDescriptor("model", this.data.getClass(), "getNodeOrDict", "setNodeOrDict").setI18NName(
-                                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")).setEditorClass(TreeModelEditor.class).setRendererClass(
+                                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")).setEditorClass(TreeModelEditor.class).setRendererClass(
                                 TreeModelRenderer.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                         new CRPropertyDescriptor("allowBlank", this.data.getClass()).setI18NName(
                                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Blank")).setEditorClass(InChangeBooleanEditor.class)
@@ -56,7 +56,7 @@ public class XTreeEditor extends XWidgetCreator {
                         com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Value")).setEditorClass(WidgetValueEditor.class)
                         .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                 new CRPropertyDescriptor("model", this.data.getClass(), "getNodeOrDict", "setNodeOrDict").setI18NName(
-                        com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")).setEditorClass(TreeModelEditor.class).setRendererClass(
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")).setEditorClass(TreeModelEditor.class).setRendererClass(
                         TreeModelRenderer.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
                 new CRPropertyDescriptor("allowBlank", this.data.getClass()).setI18NName(
                         com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Blank")).setEditorClass(InChangeBooleanEditor.class).putKeyValue(
@@ -68,20 +68,20 @@ public class XTreeEditor extends XWidgetCreator {
 						.setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Font_Size"))
 						.putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
         crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("multipleSelection", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("Tree-Mutiple_Selection_Or_Not")).putKeyValue(
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Mutiple_Selection_Or_Not")).putKeyValue(
                 XCreatorConstants.PROPERTY_CATEGORY, "Advanced").setEditorClass(InChangeBooleanEditor.class));
 
         crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("ajax", this.data.getClass()).setI18NName(
-                com.fr.design.i18n.Toolkit.i18nText("Widget-Load_By_Async")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Load_By_Async")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY,
                 "Advanced"));
 
 		crp = this.addAllowEdit(crp);
 		crp = this.addCustomData(crp);
 
         crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("selectLeafOnly", this.data
-                .getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Tree-Select_Leaf_Only")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
+                .getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Select_Leaf_Only")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
         crp = (CRPropertyDescriptor[]) ArrayUtils.add(crp, new CRPropertyDescriptor("returnFullPath", this.data
-                .getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Tree-Return_Full_Path")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
+                .getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Return_Full_Path")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"));
 
         return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(), crp);
     }
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XWAbsoluteLayout.java b/designer-form/src/main/java/com/fr/design/designer/creator/XWAbsoluteLayout.java
index da3ae8c52..92a311cac 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XWAbsoluteLayout.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XWAbsoluteLayout.java
@@ -486,7 +486,7 @@ public class XWAbsoluteLayout extends XLayoutContainer {
             g2d.setColor(Color.WHITE);
             //画编辑文字
             g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
-            g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"), x + w / 2 - 2, y + h / 2 + 5);
+            g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"), x + w / 2 - 2, y + h / 2 + 5);
             g.setColor(XCreatorConstants.FORM_BORDER_COLOR);
             GraphHelper.draw(g, new Rectangle(BORDER_WIDTH, BORDER_WIDTH, getWidth() - BORDER_WIDTH * 2, getHeight() - BORDER_WIDTH * 2), Constants.LINE_MEDIUM);
             paintExtro(g);
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XWidgetCreator.java b/designer-form/src/main/java/com/fr/design/designer/creator/XWidgetCreator.java
index 166ff45af..56c1dead1 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XWidgetCreator.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XWidgetCreator.java
@@ -172,7 +172,7 @@ public abstract class XWidgetCreator extends XCreator {
      */
     public void ChangeCreatorName(FormDesigner designer, XCreator creator) {
         String oldName = creator.toData().getWidgetName();
-        String value = JOptionPane.showInputDialog(designer, com.fr.design.i18n.Toolkit.i18nText("Form-Change_Widget_Name_Discription"), oldName);
+        String value = JOptionPane.showInputDialog(designer, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Change_Widget_Name_Discription"), oldName);
         if (value != null) {
             designer.renameCreator(creator, value);
         }
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XWriteAbleRepeatEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XWriteAbleRepeatEditor.java
index cd5c40c3b..92bba9057 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/XWriteAbleRepeatEditor.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/XWriteAbleRepeatEditor.java
@@ -26,8 +26,8 @@ public abstract class XWriteAbleRepeatEditor extends XDirectWriteEditor {
         return (CRPropertyDescriptor[]) ArrayUtils.addAll(
             super.supportedDescriptor(),
             new CRPropertyDescriptor[]{
-                new CRPropertyDescriptor("removeRepeat", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-Remove_Repeat")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
-                new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
+                new CRPropertyDescriptor("removeRepeat", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Remove_Repeat")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
+                new CRPropertyDescriptor("waterMark", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
             });
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java
index fd7cdbab2..fdc76569a 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java
@@ -390,7 +390,7 @@ public class XWCardMainBorderLayout extends XWBorderLayout {
 			g2d.setColor(Color.WHITE);
 			//画编辑文字
 			g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
-			g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"), x + w / 2 - 2, y + h / 2 + 5);
+			g2d.drawString(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"), x + w / 2 - 2, y + h / 2 + 5);
 			g.setColor(XCreatorConstants.FORM_BORDER_COLOR);
 			GraphHelper.draw(g, new Rectangle(BORDER_WIDTH, BORDER_WIDTH, getWidth() - BORDER_WIDTH * 2, getHeight() - BORDER_WIDTH * 2), Constants.LINE_MEDIUM);
 			paintExtro(g);
@@ -511,4 +511,4 @@ public class XWCardMainBorderLayout extends XWBorderLayout {
 		return true;
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWTabFitLayout.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWTabFitLayout.java
index 3de1c6b6b..4db7cab59 100644
--- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWTabFitLayout.java
+++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWTabFitLayout.java
@@ -194,13 +194,13 @@ public class XWTabFitLayout extends XWFitLayout {
 						com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Title_Style")).setEditorClass(
 						ButtonTypeEditor.class).putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 				new CRPropertyDescriptor("initialBackground", this.data.getClass()).setEditorClass(
-						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Initial")).putKeyValue(
+						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Initial")).putKeyValue(
 						XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 				new CRPropertyDescriptor("overBackground", this.data.getClass()).setEditorClass(
-						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Over")).putKeyValue(
+						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Over")).putKeyValue(
 						XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
 				new CRPropertyDescriptor("clickBackground", this.data.getClass()).setEditorClass(
-						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Click")).putKeyValue(
+						ImgBackgroundEditor.class).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Click")).putKeyValue(
 						XCreatorConstants.PROPERTY_CATEGORY, "Advanced")
 		};
 		return crPropertyDescriptors[i];
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/BoundsGroupModel.java b/designer-form/src/main/java/com/fr/design/designer/properties/BoundsGroupModel.java
index 60d586b2c..23be631fb 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/BoundsGroupModel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/BoundsGroupModel.java
@@ -34,7 +34,7 @@ public class BoundsGroupModel implements ConstraintsGroupModel {
 
     @Override
     public String getGroupName() {
-        return com.fr.design.i18n.Toolkit.i18nText("Form-Component_Bounds");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Component_Bounds");
     }
 
     @Override
@@ -57,9 +57,9 @@ public class BoundsGroupModel implements ConstraintsGroupModel {
         if (column == 0) {
             switch (row) {
                 case 0:
-                    return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_X_Coordinate");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_X_Coordinate");
                 case 1:
-                    return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Y_Coordinate");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Y_Coordinate");
                 case 2:
                     return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Width");
                 default:
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutConstraints.java b/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutConstraints.java
index 10fb7508a..3f8f0855a 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutConstraints.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutConstraints.java
@@ -82,9 +82,9 @@ public class FRBorderLayoutConstraints implements ConstraintsGroupModel {
         if (column == 0) {
             switch (row) {
                 case 0:
-                    return com.fr.design.i18n.Toolkit.i18nText("BorderLayout-Constraints");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_Constraints");
                 case 1:
-                    return com.fr.design.i18n.Toolkit.i18nText("Title");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Title");
                 default:
                     return getSizeDisplayName();
             }
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutPropertiesGroupModel.java b/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutPropertiesGroupModel.java
index d9dbd5c57..e45a632b3 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutPropertiesGroupModel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/FRBorderLayoutPropertiesGroupModel.java
@@ -1,21 +1,20 @@
 package com.fr.design.designer.properties;
 
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellEditor;
-import javax.swing.table.TableCellRenderer;
-
-
 import com.fr.design.beans.GroupModel;
+import com.fr.design.designer.creator.XWBorderLayout;
+import com.fr.design.designer.properties.items.Item;
+import com.fr.design.form.layout.FRBorderLayout;
 import com.fr.design.mainframe.widget.editors.BorderLayoutDirectionEditor;
 import com.fr.design.mainframe.widget.editors.ExtendedPropertyEditor;
 import com.fr.design.mainframe.widget.editors.IntegerPropertyEditor;
 import com.fr.design.mainframe.widget.editors.PropertyCellEditor;
 import com.fr.design.mainframe.widget.renderer.PropertyCellRenderer;
-import com.fr.design.designer.creator.XWBorderLayout;
-import com.fr.design.designer.properties.items.Item;
-import com.fr.design.form.layout.FRBorderLayout;
 import com.fr.form.ui.container.WBorderLayout;
 
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+
 public class FRBorderLayoutPropertiesGroupModel implements GroupModel {
 
     private DefaultTableCellRenderer renderer;
@@ -83,9 +82,9 @@ public class FRBorderLayoutPropertiesGroupModel implements GroupModel {
         if (column == 0) {
             switch (row) {
                 case 0:
-                    return com.fr.design.i18n.Toolkit.i18nText("Hgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Hgap");
                 case 1:
-                    return com.fr.design.i18n.Toolkit.i18nText("Vgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Vgap");
                 default:
                 	return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Layout_Style");
             }
@@ -141,4 +140,4 @@ public class FRBorderLayoutPropertiesGroupModel implements GroupModel {
     public boolean isEditable(int row) {
         return true;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/FRFormLayoutPropertiesGroupModel.java b/designer-form/src/main/java/com/fr/design/designer/properties/FRFormLayoutPropertiesGroupModel.java
index c444c4506..b4a94de5a 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/FRFormLayoutPropertiesGroupModel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/FRFormLayoutPropertiesGroupModel.java
@@ -30,7 +30,7 @@ public class FRFormLayoutPropertiesGroupModel implements GroupModel{
     
     @Override
     public String getGroupName() {
-        return com.fr.design.i18n.Toolkit.i18nText("Form-Component_Bounds");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Component_Bounds");
     }
 
     @Override
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/FormWidgetAuthorityEditPane.java b/designer-form/src/main/java/com/fr/design/designer/properties/FormWidgetAuthorityEditPane.java
index a078ca905..6f84aaa32 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/FormWidgetAuthorityEditPane.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/FormWidgetAuthorityEditPane.java
@@ -91,7 +91,7 @@ public class FormWidgetAuthorityEditPane extends AuthorityEditPane {
      * @date 2014-12-21-下午6:19:43
      */
     public void populateType() {
-        type.setText(com.fr.design.i18n.Toolkit.i18nText("Widget-Form_Widget_Config"));
+        type.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Form_Widget_Config"));
     }
 
     /**
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/HorizontalLayoutPropertiesGroupModel.java b/designer-form/src/main/java/com/fr/design/designer/properties/HorizontalLayoutPropertiesGroupModel.java
index f6ffe962e..8ac065a12 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/HorizontalLayoutPropertiesGroupModel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/HorizontalLayoutPropertiesGroupModel.java
@@ -74,9 +74,9 @@ public class HorizontalLayoutPropertiesGroupModel implements GroupModel {
         if (column == 0) {
             switch (row) {
                 case 0:
-                    return com.fr.design.i18n.Toolkit.i18nText("Hgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Hgap");
                 case 1:
-                    return com.fr.design.i18n.Toolkit.i18nText("Vgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Vgap");
                 default:
                     return com.fr.design.i18n.Toolkit.i18nText("Alignment");
             }
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/MultiSelectionBoundsModel.java b/designer-form/src/main/java/com/fr/design/designer/properties/MultiSelectionBoundsModel.java
index c28f3d0ef..3a8996bc1 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/MultiSelectionBoundsModel.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/MultiSelectionBoundsModel.java
@@ -34,7 +34,7 @@ public class MultiSelectionBoundsModel implements ConstraintsGroupModel {
 
 	@Override
 	public String getGroupName() {
-		return com.fr.design.i18n.Toolkit.i18nText("Form-Component_Bounds");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Component_Bounds");
 	}
 
 	@Override
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/VerticalBoxProperties.java b/designer-form/src/main/java/com/fr/design/designer/properties/VerticalBoxProperties.java
index 9f6f59e34..0d0f6509d 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/VerticalBoxProperties.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/VerticalBoxProperties.java
@@ -1,18 +1,17 @@
 package com.fr.design.designer.properties;
 
 
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellEditor;
-import javax.swing.table.TableCellRenderer;
-
-
 import com.fr.design.beans.GroupModel;
-import com.fr.design.mainframe.widget.editors.IntegerPropertyEditor;
-import com.fr.design.mainframe.widget.editors.PropertyCellEditor;
 import com.fr.design.designer.creator.XWVerticalBoxLayout;
 import com.fr.design.form.layout.FRVerticalLayout;
+import com.fr.design.mainframe.widget.editors.IntegerPropertyEditor;
+import com.fr.design.mainframe.widget.editors.PropertyCellEditor;
 import com.fr.form.ui.container.WVerticalBoxLayout;
 
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+
 public class VerticalBoxProperties implements GroupModel {
 
     private DefaultTableCellRenderer renderer;
@@ -52,9 +51,9 @@ public class VerticalBoxProperties implements GroupModel {
         if (column == 0) {
             switch (row) {
                 case 0:
-                    return com.fr.design.i18n.Toolkit.i18nText("Hgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Hgap");
                 case 1:
-                    return com.fr.design.i18n.Toolkit.i18nText("Vgap");
+                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Vgap");
             }
         } else {
             switch (row) {
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/VerticalSplitProperties.java b/designer-form/src/main/java/com/fr/design/designer/properties/VerticalSplitProperties.java
index 6b5996816..3ff873e64 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/VerticalSplitProperties.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/VerticalSplitProperties.java
@@ -48,9 +48,9 @@ public class VerticalSplitProperties implements GroupModel {
 			case 0:
 				return com.fr.design.i18n.Toolkit.i18nText("Ratio");
 			case 1:
-				return com.fr.design.i18n.Toolkit.i18nText("Hgap");
+				return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Hgap");
 			case 2:
-				return com.fr.design.i18n.Toolkit.i18nText("Vgap");
+				return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Vgap");
 			}
 		} else {
 			switch (row) {
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/items/FRBorderConstraintsItems.java b/designer-form/src/main/java/com/fr/design/designer/properties/items/FRBorderConstraintsItems.java
index 45f3d89b5..80085df89 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/items/FRBorderConstraintsItems.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/items/FRBorderConstraintsItems.java
@@ -10,7 +10,7 @@ public class FRBorderConstraintsItems implements ItemProvider {
 
 	public FRBorderConstraintsItems(String[] directions) {
 		Item[] item = createItems(directions);
-		VALUE_ITEMS = (Item[]) ArrayUtils.add(item, new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-Center"),
+		VALUE_ITEMS = (Item[]) ArrayUtils.add(item, new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_Center"),
 				WBorderLayout.CENTER));
 	}
 	
@@ -23,13 +23,13 @@ public class FRBorderConstraintsItems implements ItemProvider {
 		Item[] items = new Item[directions.length];
 		for (int i = 0; i < directions.length; i++) {
 			if (WBorderLayout.NORTH == directions[i]) {
-				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-North"), WBorderLayout.NORTH);
+				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_North"), WBorderLayout.NORTH);
 			} else if (WBorderLayout.SOUTH == directions[i]) {
-				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-South"), WBorderLayout.SOUTH);
+				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_South"), WBorderLayout.SOUTH);
 			} else if (WBorderLayout.WEST == directions[i]) {
-				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-West"), WBorderLayout.WEST);
+				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_West"), WBorderLayout.WEST);
 			} else if (WBorderLayout.EAST == directions[i]) {
-				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-East"), WBorderLayout.EAST);
+				items[i] = new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_East"), WBorderLayout.EAST);
 			}
 		}
 		return items;
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/items/UnderlineItems.java b/designer-form/src/main/java/com/fr/design/designer/properties/items/UnderlineItems.java
index 4e6fa93e8..f35f099d8 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/items/UnderlineItems.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/items/UnderlineItems.java
@@ -5,13 +5,13 @@ package com.fr.design.designer.properties.items;
 public class UnderlineItems implements ItemProvider {
 
     private static Item[] VALUE_ITEMS = {
-        new Item(com.fr.design.i18n.Toolkit.i18nText("DataFunction-None"), ""),
-        new Item(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Top"), "overline"),
+        new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Function_None"), ""),
+        new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Top"), "overline"),
         new Item(com.fr.design.i18n.Toolkit.i18nText("Center"), "line-through"),
-        new Item(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Bottom"), "underline")};
+        new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Bottom"), "underline")};
 
     @Override
     public Item[] getItems() {
         return VALUE_ITEMS;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/items/WidgetDisplayPositionItems.java b/designer-form/src/main/java/com/fr/design/designer/properties/items/WidgetDisplayPositionItems.java
index 2c867ea9f..845ebbd50 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/items/WidgetDisplayPositionItems.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/items/WidgetDisplayPositionItems.java
@@ -12,13 +12,13 @@ import com.fr.report.stable.FormConstants;
 public class WidgetDisplayPositionItems implements ItemProvider{
     //这里为了和web端一致,只好设置成012了
     private static Item[] VALUE_ITEMS = {
-            new Item(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Left"), FormConstants.LEFTPOSITION),
+            new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Left"), FormConstants.LEFTPOSITION),
             new Item(com.fr.design.i18n.Toolkit.i18nText("Center"), FormConstants.CENTERPOSITION),
-            new Item(com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Right"), FormConstants.RIGHTPOSITION)
+            new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Right"), FormConstants.RIGHTPOSITION)
     };
 
     @Override
     public Item[] getItems() {
         return VALUE_ITEMS;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/designer/properties/mobile/ElementCasePropertyTable.java b/designer-form/src/main/java/com/fr/design/designer/properties/mobile/ElementCasePropertyTable.java
index 3f30ae2fd..15c4c6568 100644
--- a/designer-form/src/main/java/com/fr/design/designer/properties/mobile/ElementCasePropertyTable.java
+++ b/designer-form/src/main/java/com/fr/design/designer/properties/mobile/ElementCasePropertyTable.java
@@ -56,7 +56,7 @@ public class ElementCasePropertyTable extends AbstractPropertyTable{
                         .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Mobile_Vertical"))
                         .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Fit")),
                 new CRPropertyDescriptor("heightRestrict", this.xCreator.toData().getClass()).setEditorClass(InChangeBooleanEditor.class)
-                        .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-EC_heightrestrict"))
+                        .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_EC_Heightrestrict"))
                         .setRendererClass(BooleanRender.class)
                         .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Fit"))
         };
@@ -71,7 +71,7 @@ public class ElementCasePropertyTable extends AbstractPropertyTable{
     protected CRPropertyDescriptor[] revealHeightLimit() throws IntrospectionException {
         CRPropertyDescriptor heightLimitProperty = new CRPropertyDescriptor("heightPercent", this.xCreator.toData().getClass())
                                                                 .setEditorClass(RefinedDoubleEditor.class)
-                                                                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Form-EC_heightpercent"))
+                                                                .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_EC_Heightpercent"))
                                                                 .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Advanced");
         ArrayList<CRPropertyDescriptor> defaultList = (ArrayList<CRPropertyDescriptor>) createNonListenerProperties();
         defaultList.add(heightLimitProperty);
diff --git a/designer-form/src/main/java/com/fr/design/form/javascript/FormEmailPane.java b/designer-form/src/main/java/com/fr/design/form/javascript/FormEmailPane.java
index 0efcf02d8..5ff4f1238 100644
--- a/designer-form/src/main/java/com/fr/design/form/javascript/FormEmailPane.java
+++ b/designer-form/src/main/java/com/fr/design/form/javascript/FormEmailPane.java
@@ -11,22 +11,22 @@ import com.fr.design.layout.TableLayoutHelper;
 
 /**
  * 表单的邮件pane
- * 
+ *
  * @author jim
  *
  */
 public class FormEmailPane extends EmailPane{
-	
+
 	@Override
 	protected void initCenterPane(UILabel mainTextLabel, JScrollPane scrollPane, double fill, double preferred) {
 		double[] rowSize = { preferred, preferred, preferred, preferred, preferred, fill, preferred};
         double[] columnSize = { preferred, fill};
         centerPane = TableLayoutHelper.createCommonTableLayoutPane(new JComponent[][]{
                 {new UILabel(), tipsPane1},
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-Mail_to"), maitoEditor = new UITextField()),
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("HJS-CC_to"), ccEditor = new UITextField()),
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-BCC"), bccEditor = new UITextField()),
-                createLinePane(com.fr.design.i18n.Toolkit.i18nText("EmailPane-mailSubject"), titleEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_Mail_to"), maitoEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_HJS_CC_To"), ccEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_BCC"), bccEditor = new UITextField()),
+                createLinePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Email_Pane_Mail_Subject"), titleEditor = new UITextField()),
                 {mainTextLabel, scrollPane},
                 {new UILabel(), tipsPane2}},rowSize, columnSize, 7);
 	}
diff --git a/designer-form/src/main/java/com/fr/design/form/mobile/FormMobileOthersPane.java b/designer-form/src/main/java/com/fr/design/form/mobile/FormMobileOthersPane.java
index 03dae804f..03499286d 100644
--- a/designer-form/src/main/java/com/fr/design/form/mobile/FormMobileOthersPane.java
+++ b/designer-form/src/main/java/com/fr/design/form/mobile/FormMobileOthersPane.java
@@ -60,6 +60,6 @@ public class FormMobileOthersPane extends BasicBeanPane<FormMobileAttr> {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other");
     }
 }
diff --git a/designer-form/src/main/java/com/fr/design/form/parameter/FormParaDesigner.java b/designer-form/src/main/java/com/fr/design/form/parameter/FormParaDesigner.java
index 06a7aa25b..0895d4c1d 100644
--- a/designer-form/src/main/java/com/fr/design/form/parameter/FormParaDesigner.java
+++ b/designer-form/src/main/java/com/fr/design/form/parameter/FormParaDesigner.java
@@ -613,7 +613,7 @@ public class FormParaDesigner extends FormDesigner implements ParameterDesignerP
         }
         FormSubmitButton formSubmitButton = new FormSubmitButton();
         formSubmitButton.setWidgetName("Search");
-        formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Query"));
+        formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Query"));
         xCreator = XCreatorUtils.createXCreator(formSubmitButton);
         if (!(this.autoAddComponent(xCreator, SUBMIT_BUTTON_H_LOCATION, FIRST_V_LOCATION + V_COMPONENT_GAP
                 * (currentIndex / NUM_IN_A_LINE)))) {
@@ -653,7 +653,7 @@ public class FormParaDesigner extends FormDesigner implements ParameterDesignerP
         if (!isWithQueryButton()) {
             FormSubmitButton formSubmitButton = new FormSubmitButton();
             formSubmitButton.setWidgetName("Search");
-            formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Query"));
+            formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Query"));
             XCreator xCreator = XCreatorUtils.createXCreator(formSubmitButton);
             if (!(this.autoAddComponent(xCreator, H_COMPONENT_GAP * 3 + H_GAP, FIRST_V_LOCATION
                     + V_COMPONENT_GAP * (currentIndex / NUM_IN_A_LINE)))) {
@@ -699,4 +699,4 @@ public class FormParaDesigner extends FormDesigner implements ParameterDesignerP
         return new JComponent[]{new CutAction(this).createToolBarComponent(), new CopyAction(this).createToolBarComponent(), new PasteAction(this).createToolBarComponent(),
                 new FormDeleteAction(this).createToolBarComponent()};
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/form/parameter/RootDesignGroupModel.java b/designer-form/src/main/java/com/fr/design/form/parameter/RootDesignGroupModel.java
index 605b81136..6092d2f8c 100644
--- a/designer-form/src/main/java/com/fr/design/form/parameter/RootDesignGroupModel.java
+++ b/designer-form/src/main/java/com/fr/design/form/parameter/RootDesignGroupModel.java
@@ -1 +1 @@
-/*
 * Copyright(c) 2001-2011, FineReport Inc, All Rights Reserved.
 */
package com.fr.design.form.parameter;

import java.awt.Component;

import com.fr.design.designer.beans.ConstraintsGroupModel;
import com.fr.design.designer.creator.XWParameterLayout;
import com.fr.design.mainframe.widget.editors.IntegerPropertyEditor;
import com.fr.design.mainframe.widget.editors.PropertyCellEditor;


import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellEditor;
import javax.swing.table.TableCellRenderer;

/**
 * Created by IntelliJ IDEA.
 * User   : Richer
 * Version: 6.5.5
 * Date   : 11-7-5
 * Time   : 下午2:56
 */
public class RootDesignGroupModel implements ConstraintsGroupModel {
    private DefaultTableCellRenderer renderer;
    private PropertyCellEditor editor;
    private XWParameterLayout root;

    public RootDesignGroupModel(XWParameterLayout root) {
        this.root = root;
        renderer = new DefaultTableCellRenderer();
        editor = new PropertyCellEditor(new IntegerPropertyEditor());
        //初始值为参数面板的初始宽度
        if (root.toData().getDesignWidth() == 0){
            root.toData().setDesignWidth(root.getWidth());
        }
    }

    @Override
    public String getGroupName() {
        return com.fr.design.i18n.Toolkit.i18nText("Form-Design_Size");
    }

    @Override
    public int getRowCount() {
        return 1;
    }

    @Override
    public TableCellRenderer getRenderer(int row) {
        return renderer;
    }

    @Override
    public TableCellEditor getEditor(int row) {
        return editor;
    }

    @Override
    public Object getValue(int row, int column) {
        if (column == 0) {
            switch (row) {
                case 0:
                    return com.fr.design.i18n.Toolkit.i18nText("Form-Desin_Width");
            }
        } else {
            switch (row) {
                case 0:
                    return root.toData().getDesignWidth();
            }
        }
		return null;
    }

    @Override
    public boolean setValue(Object value, int row, int column) {
		if (column == 1) {
			int designerWidth = value == null ? 0 : ((Number) value).intValue();
			switch (row) {
				case 0:
					if(isCompsOutOfDesignerWidth(designerWidth)){
						return false;
					}
                    root.toData().setDesignWidth(designerWidth);
					return true;
				default:
					return true;
			}
		} else {
			return false;
		}
    }
    
    
    private boolean isCompsOutOfDesignerWidth(int designerWidth){
    	for(int i=0; i<root.getComponentCount(); i++){
    		Component comp = root.getComponent(i);
    		if(comp.getX() + comp.getWidth() > designerWidth){
    			return true;
    		}
    	}
    	return false;
    }

    /**
     * 改行是否可编辑
     * @param row    行号
     * @return 第row行可编辑返回true,否则返回false
     */
    public boolean isEditable(int row) {
        return true;
    }
}
\ No newline at end of file
+/*
 * Copyright(c) 2001-2011, FineReport Inc, All Rights Reserved.
 */
package com.fr.design.form.parameter;

import java.awt.Component;

import com.fr.design.designer.beans.ConstraintsGroupModel;
import com.fr.design.designer.creator.XWParameterLayout;
import com.fr.design.mainframe.widget.editors.IntegerPropertyEditor;
import com.fr.design.mainframe.widget.editors.PropertyCellEditor;


import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellEditor;
import javax.swing.table.TableCellRenderer;

/**
 * Created by IntelliJ IDEA.
 * User   : Richer
 * Version: 6.5.5
 * Date   : 11-7-5
 * Time   : 下午2:56
 */
public class RootDesignGroupModel implements ConstraintsGroupModel {
    private DefaultTableCellRenderer renderer;
    private PropertyCellEditor editor;
    private XWParameterLayout root;

    public RootDesignGroupModel(XWParameterLayout root) {
        this.root = root;
        renderer = new DefaultTableCellRenderer();
        editor = new PropertyCellEditor(new IntegerPropertyEditor());
        //初始值为参数面板的初始宽度
        if (root.toData().getDesignWidth() == 0){
            root.toData().setDesignWidth(root.getWidth());
        }
    }

    @Override
    public String getGroupName() {
        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_ Design_Size");
    }

    @Override
    public int getRowCount() {
        return 1;
    }

    @Override
    public TableCellRenderer getRenderer(int row) {
        return renderer;
    }

    @Override
    public TableCellEditor getEditor(int row) {
        return editor;
    }

    @Override
    public Object getValue(int row, int column) {
        if (column == 0) {
            switch (row) {
                case 0:
                    return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Desin_Width");
            }
        } else {
            switch (row) {
                case 0:
                    return root.toData().getDesignWidth();
            }
        }
		return null;
    }

    @Override
    public boolean setValue(Object value, int row, int column) {
		if (column == 1) {
			int designerWidth = value == null ? 0 : ((Number) value).intValue();
			switch (row) {
				case 0:
					if(isCompsOutOfDesignerWidth(designerWidth)){
						return false;
					}
                    root.toData().setDesignWidth(designerWidth);
					return true;
				default:
					return true;
			}
		} else {
			return false;
		}
    }
    
    
    private boolean isCompsOutOfDesignerWidth(int designerWidth){
    	for(int i=0; i<root.getComponentCount(); i++){
    		Component comp = root.getComponent(i);
    		if(comp.getX() + comp.getWidth() > designerWidth){
    			return true;
    		}
    	}
    	return false;
    }

    /**
     * 改行是否可编辑
     * @param row    行号
     * @return 第row行可编辑返回true,否则返回false
     */
    public boolean isEditable(int row) {
        return true;
    }
}
\ No newline at end of file
diff --git a/designer-form/src/main/java/com/fr/design/gui/xpane/FormHyperlinkGroupPane.java b/designer-form/src/main/java/com/fr/design/gui/xpane/FormHyperlinkGroupPane.java
index 70dddbd53..7afb15828 100644
--- a/designer-form/src/main/java/com/fr/design/gui/xpane/FormHyperlinkGroupPane.java
+++ b/designer-form/src/main/java/com/fr/design/gui/xpane/FormHyperlinkGroupPane.java
@@ -33,11 +33,11 @@ public class FormHyperlinkGroupPane extends HyperlinkGroupPane {
     public NameableCreator[] createNameableCreators() {
         NameableCreator[] creators = super.createNameableCreators();
         for (int i = 0; i < creators.length; i++) {
-            if (ComparatorUtils.equals(creators[i].menuName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email"))) {
-                creators[i] = new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email"), EmailJavaScript.class, FormEmailPane.class);
+            if (ComparatorUtils.equals(creators[i].menuName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"))) {
+                creators[i] = new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"), EmailJavaScript.class, FormEmailPane.class);
                 break;
             }
         }
         return creators;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/gui/xpane/JTreeAutoBuildPane.java b/designer-form/src/main/java/com/fr/design/gui/xpane/JTreeAutoBuildPane.java
index 88acae8d5..c92db66a6 100644
--- a/designer-form/src/main/java/com/fr/design/gui/xpane/JTreeAutoBuildPane.java
+++ b/designer-form/src/main/java/com/fr/design/gui/xpane/JTreeAutoBuildPane.java
@@ -47,7 +47,7 @@ public class JTreeAutoBuildPane extends BasicPane implements Previewable, Editab
 
     public void initComponent() {
         this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
-        UILabel selectTreeDataLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Select_A_Tree_DataSource_To_Build") + ": ");
+        UILabel selectTreeDataLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select_A_Tree_DataSource_To_Build") + ": ");
         treeTableDataComboBox = new TreeTableDataComboBox(DesignTableDataManager.getEditingTableDataSource());
         treeTableDataComboBox.setPreferredSize(new Dimension(180, 20));
         selectTreeDataPanel = FRGUIPaneFactory.createBoxFlowInnerContainer_S_Pane();
@@ -73,9 +73,9 @@ public class JTreeAutoBuildPane extends BasicPane implements Previewable, Editab
         formulaEditor.setEnabled(true);
         textPane = ValueEditorPaneFactory.createValueEditorPane(new Editor[]{new OldColumnIndexEditor(com.fr.design.i18n.Toolkit.i18nText("Columns")), formulaEditor});
         Component[][] coms = {
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Actual_Value") + ":"),
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Actual_Value") + ":"),
                         valuePane},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Display_Value") + ":"),
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value") + ":"),
                         textPane}};
 
         double p = TableLayout.PREFERRED;
@@ -191,4 +191,4 @@ public class JTreeAutoBuildPane extends BasicPane implements Previewable, Editab
         valuePane.populate(1);
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java b/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java
index 3ef7a3961..86257317d 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java
@@ -291,7 +291,7 @@ public class FormDesigner extends TargetComponent<Form> implements TreeSelection
         }
         FormSubmitButton formSubmitButton = new FormSubmitButton();
         formSubmitButton.setWidgetName("Search");
-        formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Query"));
+        formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Query"));
         xCreator = XCreatorUtils.createXCreator(formSubmitButton);
         if (!(this.autoAddComponent(xCreator, SUBMIT_BUTTON_H_LOCATION, FIRST_V_LOCATION + V_COMPONENT_GAP
                 * (currentIndex / NUM_IN_A_LINE)))) {
@@ -340,7 +340,7 @@ public class FormDesigner extends TargetComponent<Form> implements TreeSelection
         if (!isWithQueryButton()) {
             FormSubmitButton formSubmitButton = new FormSubmitButton();
             formSubmitButton.setWidgetName("Search");
-            formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Query"));
+            formSubmitButton.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Query"));
             XCreator xCreator = XCreatorUtils.createXCreator(formSubmitButton);
             if (!(this.autoAddComponent(xCreator, H_COMPONENT_GAP * 3 + H_GAP, FIRST_V_LOCATION
                     + V_COMPONENT_GAP * (currentIndex / NUM_IN_A_LINE)))) {
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java b/designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java
index 0b0491392..bb43cedcf 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormEditToolBar.java
@@ -149,7 +149,7 @@ public class FormEditToolBar extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit");
     }
 
     public void populate(FormToolBar ftoolbar) {
@@ -208,7 +208,7 @@ public class FormEditToolBar extends BasicPane {
 
     private class MoveUpItemAction extends UpdateAction {
         public MoveUpItemAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
             this.setMnemonic('U');
             this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/control/up.png"));
         }
@@ -239,7 +239,7 @@ public class FormEditToolBar extends BasicPane {
 
     private class MoveDownItemAction extends UpdateAction {
         public MoveDownItemAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
             this.setMnemonic('D');
             this.setSmallIcon(IOUtils.readIcon("/com/fr/design/images/control/down.png"));
         }
@@ -274,7 +274,7 @@ public class FormEditToolBar extends BasicPane {
 
     public class RemoveAction extends UpdateAction {
         public RemoveAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Delete"));
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Delete"));
             this.setSmallIcon(IOUtils.readIcon("/com/fr/base/images/cell/control/remove.png"));
         }
 
@@ -361,7 +361,7 @@ public class FormEditToolBar extends BasicPane {
 
             button = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_User_Defined_Event"));
             customPane.add(button);
-            customPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit") + "JS", null));
+            customPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit") + "JS", null));
             button.addActionListener(l);
             return customPane;
         }
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormHierarchyTreePane.java b/designer-form/src/main/java/com/fr/design/mainframe/FormHierarchyTreePane.java
index 542d5cdc3..c2b8ff7f3 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormHierarchyTreePane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormHierarchyTreePane.java
@@ -66,7 +66,7 @@ public class FormHierarchyTreePane extends FormDockView implements HierarchyTree
 
 	@Override
 	public String getViewTitle() {
-		return com.fr.design.i18n.Toolkit.i18nText("Form-Hierarchy_Tree");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Hierarchy_Tree");
 	}
 
 	@Override
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormParaPane.java b/designer-form/src/main/java/com/fr/design/mainframe/FormParaPane.java
index b7fd82b73..647a0dd8a 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormParaPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormParaPane.java
@@ -91,7 +91,7 @@ public class FormParaPane extends JPanel {
             }
         };
         predefineButton.set4ToolbarButton();
-        predefineButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Widget-User_Defined_Widget_Config"));
+        predefineButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_User_Defined_Widget_Config"));
         predefineButton.addMouseListener(new MouseAdapter() {
             @Override
             public void mouseClicked(MouseEvent e) {
@@ -186,4 +186,4 @@ public class FormParaPane extends JPanel {
         }
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormParaWidgetPane.java b/designer-form/src/main/java/com/fr/design/mainframe/FormParaWidgetPane.java
index ce30acd48..b78ecbf74 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormParaWidgetPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormParaWidgetPane.java
@@ -194,7 +194,7 @@ public class FormParaWidgetPane extends JPanel {
         JPanel paraPane = new JPanel(new FlowLayout());
         ToolBarButton paraButton = new paraButton(FormWidgetOption.PARAMETERCONTAINER);
         paraPane.add(paraButton);
-        add(createNormalCombinationPane(paraPane, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter")));
+        add(createNormalCombinationPane(paraPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter")));
         jSeparatorPara = createJSeparator();
         add(jSeparatorPara);
 
@@ -277,7 +277,7 @@ public class FormParaWidgetPane extends JPanel {
         reportPane.add(jComponent, BorderLayout.CENTER);
         JPanel labelPane = new JPanel(new BorderLayout());
         UILabel label = new UILabel(typeName, UILabel.CENTER);
-        if (ComparatorUtils.equals(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameter"), typeName)) {
+        if (ComparatorUtils.equals(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameter"), typeName)) {
             paraLabel = label;
         }
         labelPane.add(label, BorderLayout.CENTER);
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormWidgetDetailPane.java b/designer-form/src/main/java/com/fr/design/mainframe/FormWidgetDetailPane.java
index ee71e9d96..76ae9926e 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/FormWidgetDetailPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/FormWidgetDetailPane.java
@@ -259,7 +259,7 @@ public class FormWidgetDetailPane extends FormDockView{
     private UIButton createRefreshButton() {
         return createToolButton(
                 BaseUtils.readIcon("/com/fr/design/form/images/refresh.png"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Refresh"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Refresh"),
                 new ActionListener() {
                     @Override
                     public void actionPerformed(ActionEvent e) {
@@ -306,7 +306,7 @@ public class FormWidgetDetailPane extends FormDockView{
                 try {
                     Desktop.getDesktop().browse(new URI(url));
                 } catch (IOException exp) {
-                    JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set_default_browser"));
+                    JOptionPane.showMessageDialog(null, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Set_Default_Browser_Duplicate"));
                     FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
                 } catch (URISyntaxException exp) {
                     FineLoggerFactory.getLogger().error(exp.getMessage(), exp);
@@ -332,7 +332,7 @@ public class FormWidgetDetailPane extends FormDockView{
                         JFileChooser fileChooser = new JFileChooser();
                         fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
                         fileChooser.setFileFilter(new FileNameExtensionFilter(".reu", "reu"));
-                        int returnValue = fileChooser.showDialog(new UILabel(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Select"));
+                        int returnValue = fileChooser.showDialog(new UILabel(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Select"));
                         if (returnValue == JFileChooser.APPROVE_OPTION) {
                             final File chosenFile = fileChooser.getSelectedFile();
                             installFromDiskZipFile(chosenFile);
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WLayoutSelectionPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WLayoutSelectionPane.java
index bfe74d721..71f3a97de 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/WLayoutSelectionPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/WLayoutSelectionPane.java
@@ -39,7 +39,7 @@ public class WLayoutSelectionPane extends BasicPane {
     private KindPane currentKindPane;
 
     public WLayoutSelectionPane() {
-        this.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Form-Please_Select_A_Kind_Of_Form_Container") + ":"));
+        this.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Please_Select_A_Kind_Of_Form_Container") + ":"));
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
 
         Component[][] coms = {
@@ -47,7 +47,7 @@ public class WLayoutSelectionPane extends BasicPane {
             	BorderLayoutPane()},
             {createTypeLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Grid_Layout")), new GridLayoutPane()},
             {createTypeLabel(com.fr.design.i18n.Toolkit.i18nText("CardLayout")), new CardLayoutPane()},
-            {createTypeLabel(com.fr.design.i18n.Toolkit.i18nText("Form-NullLayout")), new AbsoluteLayoutPane()}};
+            {createTypeLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Null_Layout")), new AbsoluteLayoutPane()}};
         double p = TableLayout.PREFERRED;
         double f = TableLayout.FILL;
         double[] rowSize = {p, p, p, p, p};
@@ -63,7 +63,7 @@ public class WLayoutSelectionPane extends BasicPane {
     
     @Override
     protected String title4PopupWindow() {
-    	return com.fr.design.i18n.Toolkit.i18nText("Widget-Form_Widget_Container");
+    	return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Form_Widget_Container");
     }
 
     @Override
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetHelpDialog.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetHelpDialog.java
index 92afcfd2b..f61dc93ae 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetHelpDialog.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetHelpDialog.java
@@ -52,7 +52,7 @@ public class WidgetHelpDialog extends UIDialog {
         contentPane.setLayout(new BorderLayout());
         add(helpArea, BorderLayout.CENTER);
         this.applyClosingAction();
-        this.setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Help"));
+        this.setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Help"));
     }
 
     /**
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java
index 1951926f3..d6ee25342 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetPropertyPane.java
@@ -72,7 +72,7 @@ public class WidgetPropertyPane  extends FormDockView implements BaseWidgetPrope
 
     @Override
     public String getViewTitle() {
-        return com.fr.design.i18n.Toolkit.i18nText("Form-Widget_Property_Table");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Property_Table");
     }
 
     @Override
@@ -210,7 +210,7 @@ public class WidgetPropertyPane  extends FormDockView implements BaseWidgetPrope
     // "无可用配置项"面板
     private JPanel getUnavailablePane() {
         JPanel panel = FRGUIPaneFactory.createBorderLayout_S_Pane();
-        UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_No_Settings_Available"));
+        UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_No_Settings_Available"));
         label.setHorizontalAlignment(SwingConstants.CENTER);
         panel.add(label);
         return panel;
@@ -219,13 +219,13 @@ public class WidgetPropertyPane  extends FormDockView implements BaseWidgetPrope
     private void initTabPane() {
         final String[] tabTitles = new String[]{
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Properties"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Event"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Mobile_Terminal")
         };
         final CardLayout tabbedPane =  new CardLayout();
         final JPanel center = new JPanel(tabbedPane);
         center.add(formWidgetCardPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Properties"));
-        center.add(eventTable, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Event"));
+        center.add(eventTable, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event"));
         center.add(wsp, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Mobile_Terminal"));
         this.add(center, BorderLayout.CENTER);
 
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/WidgetToolBarPane.java b/designer-form/src/main/java/com/fr/design/mainframe/WidgetToolBarPane.java
index bde1367c4..df250a0ac 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/WidgetToolBarPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/WidgetToolBarPane.java
@@ -134,7 +134,7 @@ public class WidgetToolBarPane extends BasicPane implements DesignToolbarProvide
     private void initFormButtons() {
         if (componentsList4Form.isEmpty()) {
             // 表单布局
-            this.componentsList4Form.add(new TitleLabel(com.fr.design.i18n.Toolkit.i18nText("Form-Layout")));
+            this.componentsList4Form.add(new TitleLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Form_Layout")));
             WidgetOption[] containerWidgetArray = FormWidgetOption.getFormContainerInstance();
             for (WidgetOption no : containerWidgetArray) {
                 this.componentsList4Form.add(new ToolBarButton(no));
@@ -146,7 +146,7 @@ public class WidgetToolBarPane extends BasicPane implements DesignToolbarProvide
             if (wo != null && wo.length > 0) {
                 this.componentsList4Form.add(new TitleLabel(com.fr.design.i18n.Toolkit.i18nText("Chart")));
                 UIButton chartButton = new UIButton(BaseUtils.readIcon("com/fr/design/images/toolbarbtn/chart.png"));
-                chartButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Click-Me"));
+                chartButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Click_Me"));
                 chartButton.addMouseListener(new MouseAdapter() {
                     @Override
                     public void mouseClicked(MouseEvent e) {
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/accessibles/ColorPalette.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/accessibles/ColorPalette.java
index de9bbd953..d357f3411 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/accessibles/ColorPalette.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/accessibles/ColorPalette.java
@@ -22,9 +22,9 @@ public class ColorPalette extends JPopupMenu {
 
     private Border BLACK_BORDER = BorderFactory.createLineBorder(new Color(127, 157, 185));
     private Object[] colors = new Object[]{new Object[]{com.fr.design.i18n.Toolkit.i18nText("Black"), new Color(0, 0, 0)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Crimson"), new Color(128, 0, 0)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Red"), new Color(255, 0, 0)},
-        new Object[]{com.fr.design.i18n.Toolkit.i18nText("Pink"), new Color(255, 0, 255)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Rose_Red"), new Color(255, 153, 204)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Brown"), new Color(153, 51, 0)},
+        new Object[]{com.fr.design.i18n.Toolkit.i18nText("Pink"), new Color(255, 0, 255)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Rose_Red"), new Color(255, 153, 204)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Brown"), new Color(153, 51, 0)},
         new Object[]{com.fr.design.i18n.Toolkit.i18nText("Orange"), new Color(255, 102, 0)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Light_Orange"), new Color(255, 153, 0)}, new Object[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Golden"), new Color(255, 204, 0)},
-        new Object[]{com.fr.design.i18n.Toolkit.i18nText("Brown_Orange"), new Color(255, 204, 153)}, new Object[]{"", new Color(51, 51, 0)}, new Object[]{"", new Color(128, 128, 0)}, new Object[]{"", new Color(153, 204, 0)},
+        new Object[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Brown_Orange"), new Color(255, 204, 153)}, new Object[]{"", new Color(51, 51, 0)}, new Object[]{"", new Color(128, 128, 0)}, new Object[]{"", new Color(153, 204, 0)},
         new Object[]{"", new Color(255, 255, 0)}, new Object[]{"", new Color(255, 255, 153)}, new Object[]{"", new Color(0, 51, 0)}, new Object[]{"", new Color(0, 128, 0)},
         new Object[]{"", new Color(51, 153, 102)}, new Object[]{"", new Color(172, 168, 153)}, new Object[]{"", new Color(204, 255, 204)}, new Object[]{"", new Color(0, 51, 102)},
         new Object[]{"", new Color(0, 128, 128)}, new Object[]{"", new Color(51, 204, 204)}, new Object[]{"", new Color(0, 255, 255)}, new Object[]{"", new Color(204, 255, 255)},
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/editors/BorderLayoutDirectionEditor.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/editors/BorderLayoutDirectionEditor.java
index 3d6249f2b..f42f47be8 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/editors/BorderLayoutDirectionEditor.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/editors/BorderLayoutDirectionEditor.java
@@ -16,10 +16,10 @@ import com.fr.stable.StringUtils;
 public class BorderLayoutDirectionEditor extends AbstractPropertyEditor {
 
 	public static final Item[] ITEMS = new Item[] {
-			new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-North"), WBorderLayout.NORTH),
-			new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-South"), WBorderLayout.SOUTH),
-			new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-West"), WBorderLayout.WEST),
-			new Item(com.fr.design.i18n.Toolkit.i18nText("BorderLayout-East"), WBorderLayout.EAST) };
+			new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_North"), WBorderLayout.NORTH),
+			new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_South"), WBorderLayout.SOUTH),
+			new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_West"), WBorderLayout.WEST),
+			new Item(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_BorderLayout_East"), WBorderLayout.EAST) };
 
 	private ComboCheckBox comboBox;
 
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java
index b7fbade3f..5b359c9ac 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/BasicSetVisiblePropertyPane.java
@@ -27,7 +27,7 @@ public class BasicSetVisiblePropertyPane extends FormBasicPropertyPane {
             pane2.add(otherOtherConfig);
         }
         visibleCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Visible"), true);
-        visibleCheckBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"));
+        visibleCheckBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"));
 
         visibleCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
         pane2.add(visibleCheckBox);
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormBasicWidgetPropertyPane.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormBasicWidgetPropertyPane.java
index 5755e1959..525d87c93 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormBasicWidgetPropertyPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormBasicWidgetPropertyPane.java
@@ -17,7 +17,7 @@ public class FormBasicWidgetPropertyPane extends BasicSetVisiblePropertyPane {
 
     public UICheckBox createOtherConfig() {
         enableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Enabled"), true);
-        enableCheckBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"));
+        enableCheckBox.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"));
 
         enableCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
         return enableCheckBox;
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
index 3651501d4..65e2f6659 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
@@ -152,7 +152,7 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane {
 
         widgetPropertyPane = WidgetBasicPropertyPaneFactory.createBasicPropertyPane(innerCreator);
 
-        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), 280, 20, widgetPropertyPane);
+        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), 280, 20, widgetPropertyPane);
 
         jPanel.add(uiExpandablePane, BorderLayout.NORTH);
 
@@ -212,7 +212,7 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane {
     public void updateCreator() {
         currentEditorDefinePane.setGlobalName(getGlobalName());
         Widget widget = currentEditorDefinePane.updateBean();
-        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic")) && widgetPropertyPane != null) {
+        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic")) && widgetPropertyPane != null) {
             UITextField widgetNameField = widgetPropertyPane.getWidgetNameField();
             if (designer.getTarget().isNameExist(widgetNameField.getText()) && !ComparatorUtils.equals(widgetNameField.getText(), widget.getWidgetName())) {
                 widgetNameField.setText(widget.getWidgetName());
@@ -229,7 +229,7 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane {
     }
 
     public void updateWidgetBound() {
-        if (widgetBoundPane != null && ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"))) {
+        if (widgetBoundPane != null && ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"))) {
             widgetBoundPane.update();
             designer.getEditListenerTable().fireCreatorModified(DesignerEvent.CREATOR_RESIZED);
         }
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ElementCaseToolBarWrapper.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ElementCaseToolBarWrapper.java
index 6647f5013..921670551 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ElementCaseToolBarWrapper.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ElementCaseToolBarWrapper.java
@@ -27,8 +27,8 @@ public class ElementCaseToolBarWrapper implements Encoder, Decoder {
         }
         FormToolBarManager[] toolBarManager = (FormToolBarManager[])v;
         if (toolBarManager.length != 0) {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Open");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Open");
         }
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Close");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Close");
     }
 }
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/FormulaWrapper.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/FormulaWrapper.java
index f6dc5361b..33fc019f0 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/FormulaWrapper.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/FormulaWrapper.java
@@ -40,6 +40,6 @@ public class FormulaWrapper implements Encoder, Decoder{
        if (txt.length() > 0 && txt.charAt(0) == '=') {
            return;
        }
-       throw new ValidationException(com.fr.design.i18n.Toolkit.i18nText("Formula_Tips"));
+       throw new ValidationException(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Formula_Tips"));
     }
 }
\ No newline at end of file
diff --git a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ParameterWrapper.java b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ParameterWrapper.java
index 9a335e27a..f2f523dd4 100644
--- a/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ParameterWrapper.java
+++ b/designer-form/src/main/java/com/fr/design/mainframe/widget/wrappers/ParameterWrapper.java
@@ -14,7 +14,7 @@ public class ParameterWrapper implements Encoder, Decoder {
         if (v == null) {
             return StringUtils.EMPTY;
         }
-        return com.fr.design.i18n.Toolkit.i18nText("Total") + ((ParameterProvider[]) v).length + com.fr.design.i18n.Toolkit.i18nText("Parameters");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Total") + ((ParameterProvider[]) v).length + com.fr.design.i18n.Toolkit.i18nText("Parameters");
     }
 
     @Override
@@ -26,4 +26,4 @@ public class ParameterWrapper implements Encoder, Decoder {
     public void validate(String txt) throws ValidationException {
        
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java b/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java
index 75087c0d9..75a8c61fe 100644
--- a/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/parameter/RootDesignDefinePane.java
@@ -73,7 +73,7 @@ public class RootDesignDefinePane extends AbstractDataModify<WParameterLayout> {
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Desin_Width")), designerWidth},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Desin_Width")), designerWidth},
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
         JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonDefinePane.java
index 8146976a5..6d8191c2f 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonDefinePane.java
@@ -45,12 +45,12 @@ public abstract class ButtonDefinePane<T extends Button> extends AbstractDataMod
         UILabel backgroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Background"));
         backgroundLabel.setVerticalAlignment(SwingConstants.TOP);
         Component[][] n_components = {
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Name")), buttonNameTextField},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Name")), buttonNameTextField},
                 {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Label_Name")), labelNameTextField},
                 backgroundCompPane,
                 frFont,
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Icon")), iconPane},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Hotkeys")), hotkeysTextField}
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Icon")), iconPane},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Hot_keys")), hotkeysTextField}
         };
         hotkeysTextField.setToolTipText(StableUtils.join(ButtonConstants.HOTKEYS, ","));
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(n_components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java
index 83916c729..500d42a1c 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ButtonGroupDictPane.java
@@ -30,9 +30,9 @@ public class ButtonGroupDictPane extends JPanel {
 
 
 		this.setLayout(FRGUIPaneFactory.createBorderLayout());
-		adaptiveCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Adaptive"), true);
+		adaptiveCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Adaptive"), true);
 		adaptiveCheckbox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		this.columnLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Button-Group-Display-Columns") + ":");
+		this.columnLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Group_Display_Columns") + ":");
 		columnSpinner = new UIBasicSpinner(new SpinnerNumberModel(0, 0, Integer.MAX_VALUE, 1));
 
 		JPanel jPanel = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{adaptiveCheckbox, columnLabel, columnSpinner}}, TableLayoutHelper.FILL_LASTCOLUMN, 18, 7);
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
index 9c1faec99..339ff9baa 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
@@ -41,7 +41,7 @@ public class CheckBoxDefinePane extends AbstractDataModify<CheckBox> {
 		double p = TableLayout.PREFERRED;
 		Component[][] components = new Component[][]{
 				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Label_Name")), labelNameTextField},
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text")),  text },
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text")),  text },
 				new Component[]{widgetValueLabel,  formWidgetValuePane },
 				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Font_Size")), fontSizePane},
 		};
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboBoxDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboBoxDefinePane.java
index 8c3722a94..900072b7c 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboBoxDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboBoxDefinePane.java
@@ -27,7 +27,7 @@ public class ComboBoxDefinePane extends DictEditorDefinePane<ComboBox> {
 
 	public Component[] createWaterMarkPane() {
 		waterMarkField = new UITextField();
-		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkField};
+		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkField};
 	}
 
 	protected  void populateSubDictionaryEditorBean(ComboBox ob){
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboCheckBoxDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboCheckBoxDefinePane.java
index e781cc4ca..1684ad4d3 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboCheckBoxDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/ComboCheckBoxDefinePane.java
@@ -33,12 +33,12 @@ public class ComboCheckBoxDefinePane extends DictEditorDefinePane<ComboCheckBox>
 
 	public Component[] createWaterMarkPane() {
 		waterMarkDictPane = new UITextField();
-		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkDictPane};
+		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkDictPane};
 	}
 
 
 	public JPanel createOtherPane(){
-		supportTagCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-SupportTag"), true);
+		supportTagCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Support_Tag"), true);
 		supportTagCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 		checkBoxDictPane = new CheckBoxDictPane();
 
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java
index 9cb8e1047..415a392f4 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/CustomWritableRepeatEditorPane.java
@@ -24,7 +24,7 @@ public abstract class CustomWritableRepeatEditorPane<T extends CustomWriteAbleRe
 
 
 	public  JPanel setValidatePane(){
-		this.customDataCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_CustomData"), false);
+		this.customDataCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Custom_Data"), false);
 		this.customDataCheckBox.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
 		JPanel otherContentPane = super.setValidatePane();
 		otherContentPane.add(GUICoreUtils.createFlowPane(new JComponent[]{customDataCheckBox}, FlowLayout.LEFT, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DateEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
index 1c1dfd4c3..e29e5115c 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
@@ -74,9 +74,9 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane<DateEditor
                 new Component[]{formatLabel, formatHead},
                 new Component[]{startDateLabel, startDv},
                 new Component[]{endDateLabel, endDv},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkDictPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkDictPane},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Font_Size")), fontSizePane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Widget-Date_Selector_Return_Type")), returnTypeComboBox}
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Date_Selector_Return_Type")), returnTypeComboBox}
 
         };
         double[] rowSize = {p, p, p, p, p, p, p, p, p, p};
@@ -140,10 +140,10 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane<DateEditor
         final JPanel customPane = new JPanel(cardLayout);
         JPanel dateFormatPane = createFormatPane(dateFormatComboBox, dateSampleLabel);
         JPanel timeFormatPane = createFormatPane(timeFormatComboBox, timeSampleLabel);
-        customPane.add(dateFormatPane, com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"));
-        customPane.add(timeFormatPane, com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time"));
-        final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time")};
-        fomatHeadGroup = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time")});
+        customPane.add(dateFormatPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"));
+        customPane.add(timeFormatPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time"));
+        final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time")};
+        fomatHeadGroup = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time")});
         fomatHeadGroup.addChangeListener(new ChangeListener() {
             @Override
             public void stateChanged(ChangeEvent e) {
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DictEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DictEditorDefinePane.java
index 46183d955..5d77b573e 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DictEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DictEditorDefinePane.java
@@ -23,7 +23,7 @@ public abstract class DictEditorDefinePane<T extends DictContainedCustomWriteAbl
 
     protected Component[] createDictPane(){
         dictionaryEditor = new AccessibleDictionaryEditor();
-        return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), dictionaryEditor};
+        return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), dictionaryEditor};
     }
 
     @Override
@@ -44,4 +44,4 @@ public abstract class DictEditorDefinePane<T extends DictContainedCustomWriteAbl
 
     protected abstract T updateSubDictionaryEditorBean();
 
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DirectWriteEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DirectWriteEditorDefinePane.java
index 05d92918a..46688b64d 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/DirectWriteEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/DirectWriteEditorDefinePane.java
@@ -75,7 +75,7 @@ public abstract class DirectWriteEditorDefinePane<T extends DirectWriteEditor> e
 	}
 
 	public  JPanel setValidatePane(){
-        directWriteCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_Edit"), false);
+        directWriteCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Edit"), false);
 		directWriteCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
         JPanel otherContentPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane();
         otherContentPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
index 5bef45cc7..8b918ccf6 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
@@ -109,7 +109,7 @@ public abstract class FieldEditorDefinePane<T extends FieldEditor> extends Abstr
     protected void addValidatePane() {
         initErrorMsgPane();
         validatePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-        final UILabel uiLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Error_Tip"));
+        final UILabel uiLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Error_Tip"));
         JPanel borderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
         final JPanel errorTipPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{new Component[]{uiLabel, errorMsgTextField}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L1, LayoutConstants.VGAP_MEDIUM);
         errorTipPane.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L6, IntervalConstants.INTERVAL_L5, 0, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java
index e86bcf4f7..b98311865 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/LabelDefinePane.java
@@ -47,7 +47,7 @@ public class LabelDefinePane extends AbstractDataModify<Label> {
         isPageSetupVertically = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Page_Setup_Vertically"));
         isPageSetupVertically.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
-        isStyleAlignmentWrapText = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment-Wrap_Text"));
+        isStyleAlignmentWrapText = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_StyleAlignment_Wrap_Text"));
         isStyleAlignmentWrapText.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
         Icon[] hAlignmentIconArray = {BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_left_normal.png"),
                 BaseUtils.readIcon("/com/fr/design/images/m_format/cellstyle/h_center_normal.png"),
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/NumberEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/NumberEditorDefinePane.java
index d6012506f..b1a298519 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/NumberEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/NumberEditorDefinePane.java
@@ -46,7 +46,7 @@ public class NumberEditorDefinePane extends FieldEditorDefinePane<NumberEditor>
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Label_Name")), labelNameTextField},
                 new Component[]{widgetValueLabel,  formWidgetValuePane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkDictPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkDictPane},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Font_Size")), fontSizePane}
         };
         double[] rowSize = {p, p, p, p, p, p};
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TextFieldEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TextFieldEditorDefinePane.java
index 570c0d1f3..66850d76a 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TextFieldEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TextFieldEditorDefinePane.java
@@ -66,7 +66,7 @@ public class TextFieldEditorDefinePane extends FieldEditorDefinePane<TextEditor>
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Label_Name")), labelNameTextField},
                 new Component[]{widgetValueLabel,  formWidgetValuePane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark"), SwingConstants.LEFT), waterMarkDictPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark"), SwingConstants.LEFT), waterMarkDictPane},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Font_Size"), SwingConstants.LEFT), fontSizePane}
         };
         double[] rowSize = {p, p, p, p, p, p};
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeComboBoxEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeComboBoxEditorDefinePane.java
index f0751894c..6630ea751 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeComboBoxEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeComboBoxEditorDefinePane.java
@@ -19,7 +19,7 @@ public class TreeComboBoxEditorDefinePane extends TreeEditorDefinePane {
 
 	public Component[] createWaterMarkPane(){
 		waterMarkDictPane = new UITextField();
-		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkDictPane};
+		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkDictPane};
 	}
 
 	@Override
@@ -44,4 +44,4 @@ public class TreeComboBoxEditorDefinePane extends TreeEditorDefinePane {
     public DataCreatorUI dataUI() {
         return null;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeEditorDefinePane.java
index ff77e3484..3c7158f82 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/TreeEditorDefinePane.java
@@ -37,10 +37,10 @@ public class TreeEditorDefinePane extends CustomWritableRepeatEditorPane<TreeEdi
 
 
     public JPanel createOtherPane() {
-        mutiSelect = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Tree-Mutiple_Selection_Or_Not"));
+        mutiSelect = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Tree_Mutiple_Selection_Or_Not"));
         mutiSelect.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
-        loadAsync = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Widget-Load_By_Async"));
+        loadAsync = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Load_By_Async"));
         loadAsync.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
         returnLeaf = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Return_Leaf"));
@@ -71,7 +71,7 @@ public class TreeEditorDefinePane extends CustomWritableRepeatEditorPane<TreeEdi
 
     protected Component[] createDictPane(){
         accessibleTreeModelEditor = new AccessibleTreeModelEditor();
-        return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), accessibleTreeModelEditor};
+        return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), accessibleTreeModelEditor};
     }
 
     @Override
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/WriteUnableRepeatEditorPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/WriteUnableRepeatEditorPane.java
index f36251c37..1871bba96 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/WriteUnableRepeatEditorPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/WriteUnableRepeatEditorPane.java
@@ -22,7 +22,7 @@ public abstract class WriteUnableRepeatEditorPane<E extends WriteUnableRepeatEdi
 		JPanel contentPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane();
 		contentPane.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0));
 		JPanel contenter=FRGUIPaneFactory.createMediumHGapFlowInnerContainer_M_Pane();
-		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Remove_Repeat_Data"), false);
+		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Remove_Repeat_Data"), false);
 		contentPane.add(contenter);
 		contenter.add(removeRepeatCheckBox);
 		JPanel otherContentPane = this.setThirdContentPane();
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/btn/ButtonGroupDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/btn/ButtonGroupDefinePane.java
index efd593b5d..dcd5cb46d 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/btn/ButtonGroupDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/btn/ButtonGroupDefinePane.java
@@ -43,8 +43,8 @@ public abstract class ButtonGroupDefinePane<T extends ButtonGroup> extends Field
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Label_Name")), labelNameTextField},
                 new Component[]{widgetValueLabel, formWidgetValuePane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), dictionaryEditor},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_FRFont")), fontSizePane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), dictionaryEditor},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_FR_Font")), fontSizePane},
                 new Component[]{buttonGroupDictPane, null}
         };
         double[] rowSize = {p, p, p, p, p, p, p};
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java
index aedf4d65d..996c1b244 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java
@@ -48,7 +48,7 @@ public class FormWidgetValuePane extends JPanel {
             index = 0;
             widgetValueHead.setSelectedIndex(index);
         }
-        if (ComparatorUtils.equals(editor[index].getName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Field"))) {
+        if (ComparatorUtils.equals(editor[index].getName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Field"))) {
             customPane.setPreferredSize(new Dimension(100, 47));
         } else {
             customPane.setPreferredSize(new Dimension(100, 20));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
index 5680a4fc5..9b4a432a2 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
@@ -62,7 +62,7 @@ public class PaddingBoundPane extends BasicPane{
         };
         Component[][] components2 = new Component[][]{
                 new Component[]{left, right},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Left"), SwingConstants.CENTER), new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Right"), SwingConstants.CENTER)}
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Left"), SwingConstants.CENTER), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Right"), SwingConstants.CENTER)}
         };
         JPanel northPanel = TableLayoutHelper.createGapTableLayoutPane(components1, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_L6, IntervalConstants.INTERVAL_L6);
         northPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, IntervalConstants.INTERVAL_L1, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/TabFitLayoutBackgroundPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/TabFitLayoutBackgroundPane.java
index 1e6a5a7e0..912986c63 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/TabFitLayoutBackgroundPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/TabFitLayoutBackgroundPane.java
@@ -62,7 +62,7 @@ public class TabFitLayoutBackgroundPane extends BackgroundCompPane<WTabFitLayout
     }
 
     protected UILabel createUILable(){
-        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Style"));
+        return new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Style"));
     }
 
     protected  String title4PopupWindow() {
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
index c9bafe07a..51811d763 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
@@ -30,10 +30,10 @@ public class WidgetAbsoluteBoundPane extends WidgetBoundPane {
         y = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
         width = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
         height = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
-        x.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
-        y.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
-        width.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
-        height.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
+        x.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
+        y.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
+        width.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
+        height.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
         this.add(WidgetBoundsPaneFactory.createAbsoluteBoundsPane(x, y, width, height));
     }
 
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
index b498428c4..26861e7ec 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
@@ -58,8 +58,8 @@ public class WidgetBoundPane extends BasicPane {
     public void initBoundPane() {
         width = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
         height = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
-        width.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
-        height.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
+        width.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
+        height.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
         if (creator.acceptType(XWCardLayout.class)) {
             width.setEnabled(false);
             height.setEnabled(false);
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetCardTagBoundPane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetCardTagBoundPane.java
index a590c76d9..97bc5aaa3 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetCardTagBoundPane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/WidgetCardTagBoundPane.java
@@ -29,7 +29,7 @@ public class WidgetCardTagBoundPane extends WidgetBoundPane {
     @Override
     public void initBoundPane() {
         cardTagWidth = new UIBoundSpinner(0, Integer.MAX_VALUE, 1);
-        cardTagWidth.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Coords_And_Size"));
+        cardTagWidth.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Coords_And_Size"));
         this.add(WidgetBoundsPaneFactory.createCardTagBoundPane(cardTagWidth));
     }
 
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/ElementEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/ElementEditorDefinePane.java
index 4f2cc9d61..d8b0060e7 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/ElementEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/ElementEditorDefinePane.java
@@ -36,7 +36,7 @@ public class ElementEditorDefinePane extends WTitleLayoutDefinePane<ElementCaseE
         elementCaseToolBarEditor = new AccessibleElementCaseToolBarEditor();
         Component[][] components = new Component[][]{
                 new Component[]{paddingBoundPane, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-EC_toolbar")), elementCaseToolBarEditor},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_EC_Toolbar")), elementCaseToolBarEditor},
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W0, IntervalConstants.INTERVAL_L1);
         panel.setBorder(BorderFactory.createEmptyBorder(5, 0, 10, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRAbsoluteBodyLayoutDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRAbsoluteBodyLayoutDefinePane.java
index 985a90a4d..1302c0c36 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRAbsoluteBodyLayoutDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRAbsoluteBodyLayoutDefinePane.java
@@ -64,7 +64,7 @@ public class FRAbsoluteBodyLayoutDefinePane extends FRAbsoluteLayoutDefinePane {
         JPanel jPanel = TableLayoutHelper.createGapTableLayoutPane(
                 new Component[][]{
                     new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style")), borderStyleEditor},
-                    new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), watermarkEditor}
+                    new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), watermarkEditor}
                 }, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W3, IntervalConstants.INTERVAL_L1);
         JPanel borderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
         jPanel.setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
index be30765cc..137e0e0d4 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
@@ -82,7 +82,7 @@ public class FRFitLayoutDefinePane extends AbstractDataModify<WFitLayout> {
         JPanel jp2 = TableLayoutHelper.createGapTableLayoutPane(
                 new Component[][]{
                     new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Style")), stylePane},
-                    new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), watermarkEditor}
+                    new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), watermarkEditor}
                 }, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W3, IntervalConstants.INTERVAL_L1);
         jp2.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
         jPanel.add(paddingBound, BorderLayout.CENTER);
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WCardTagLayoutDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WCardTagLayoutDefinePane.java
index 458a7c4bf..ee021d260 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WCardTagLayoutDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WCardTagLayoutDefinePane.java
@@ -80,14 +80,14 @@ public class WCardTagLayoutDefinePane extends AbstractDataModify<WCardTagLayout>
                 return true;
             }
         };
-        displayPositionGroup.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tab_Style_Template"));
+        displayPositionGroup.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template"));
         textDirectionGroup = new UIButtonGroup(WTabTextDirection.getStringArray());
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tab_Style_Template")), templateStyleEditor},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tab_Display_Position")), displayPositionGroup},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template")), templateStyleEditor},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Display_Position")), displayPositionGroup},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Background")), backgroundEditor},
                 new Component[]{fontLabel, frFontPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_StyleAlignment_Text_Rotation")), textDirectionGroup}
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Text_Rotation")), textDirectionGroup}
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
         JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
@@ -128,7 +128,7 @@ public class WCardTagLayoutDefinePane extends AbstractDataModify<WCardTagLayout>
         layoutBorderStyle.getTitle().setFrFont(frFontPane.update(frFont));
         WCardTagLayout layout = (WCardTagLayout) creator.toData();
         boolean isHori = displayPositionGroup.getSelectedIndex() == WTabDisplayPosition.TOP_POSITION.getType() || displayPositionGroup.getSelectedIndex() == WTabDisplayPosition.BOTTOM_POSITION.getType();
-        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tab_Style_Template"))) {
+        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Tab_Style_Template"))) {
             layout.setDisplayPosition(WTabDisplayPosition.parse(displayPositionGroup.getSelectedIndex()));
             textDirectionGroup.setSelectedIndex(isHori ? WTabTextDirection.TEXT_HORI_DERECTION.getType() : WTabTextDirection.TEXT_VER_DIRECTION.getType());
             layout.setHgap(isHori ? WCardTagLayout.DESIGNER_DEFAULT_GAP : 0);
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WTitleLayoutDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WTitleLayoutDefinePane.java
index 1b2b37320..dbb22b5a9 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WTitleLayoutDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/layout/WTitleLayoutDefinePane.java
@@ -41,7 +41,7 @@ public abstract class WTitleLayoutDefinePane<T extends AbstractBorderStyleWidget
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Style")), borderStyleEditor}
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Style")), borderStyleEditor}
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W3, IntervalConstants.INTERVAL_L1);
         panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java
index 602709930..86df38abc 100644
--- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java
+++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java
@@ -101,8 +101,8 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane {
         allowFullCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Full_Screen"));
 
         Component[][] components = new Component[][]{
-                new Component[] {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Design_Form_Zoom_In_Logic"), SwingConstants.LEFT), new UILabel(ChartMobileFitAttrState.PROPORTION.description())},
-                new Component[] {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Design_Form_Zoom_Out_Logic"), SwingConstants.LEFT), zoomOutComboBox},
+                new Component[] {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Zoom_In_Logic"), SwingConstants.LEFT), new UILabel(ChartMobileFitAttrState.PROPORTION.description())},
+                new Component[] {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Zoom_Out_Logic"), SwingConstants.LEFT), zoomOutComboBox},
                 new Component[] {tipLabel, null},
                 new Component[] {allowFullCheckBox}
         };
diff --git a/designer-realize/src/main/java/com/fr/design/actions/cell/CellExpandAttrAction.java b/designer-realize/src/main/java/com/fr/design/actions/cell/CellExpandAttrAction.java
index bd99539d9..f6b6a3123 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/cell/CellExpandAttrAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/cell/CellExpandAttrAction.java
@@ -18,7 +18,7 @@ public class CellExpandAttrAction extends  CellAttributeTableAction{
 
 	@Override
 	public String getID() {
-		return com.fr.design.i18n.Toolkit.i18nText("ExpandD-Expand_Attribute");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Expand_Attribute");
 	}
 
 }
\ No newline at end of file
diff --git a/designer-realize/src/main/java/com/fr/design/actions/cell/CleanAuthorityAction.java b/designer-realize/src/main/java/com/fr/design/actions/cell/CleanAuthorityAction.java
index 19e7b01a6..7fdcb5958 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/cell/CleanAuthorityAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/cell/CleanAuthorityAction.java
@@ -26,7 +26,7 @@ public class CleanAuthorityAction extends ElementCaseAction {
 
     public CleanAuthorityAction(ElementCasePane t) {
         super(t);
-        this.setName(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Clear", "DashBoard-Potence"}));
+        this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Clear_DashBoard_Potence"));
     }
 
 
diff --git a/designer-realize/src/main/java/com/fr/design/actions/cell/UIToolbarBorderButton.java b/designer-realize/src/main/java/com/fr/design/actions/cell/UIToolbarBorderButton.java
index b3a94cd6d..304ec1676 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/cell/UIToolbarBorderButton.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/cell/UIToolbarBorderButton.java
@@ -289,11 +289,11 @@ public class UIToolbarBorderButton extends UICombinationButton implements PopupH
 					Constants.LINE_THIN, Color.black, Constants.LINE_NONE, Color.black, Constants.LINE_NONE),
 			new CellBorderStyle(Color.black, Constants.LINE_THICK, Color.black, Constants.LINE_THICK, Color.black, Constants.LINE_THICK, Color.black,
 					Constants.LINE_THICK, Color.black, Constants.LINE_NONE, Color.black, Constants.LINE_NONE) };
-	private static final String[] BorderStyleTooltips = { com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_No_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Bottom_Border_Line"),
-			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Left_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Right_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Double_Bottom_BorderLine"),
+	private static final String[] BorderStyleTooltips = { com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_No_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bottom_Border_Line"),
+			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Left_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Right_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Double_Bottom_BorderLine"),
 			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Thick_Bottom_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Top_Bottom_Border_Line"),
 			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Top_And_Double_Bottom_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Top_And_Thick_Bottom_Border_Line"),
-			com.fr.design.i18n.Toolkit.i18nText("All_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Out_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Out_Thick_Border_Line") };
+			com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_All_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Out_Border_Line"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Out_Thick_Border_Line") };
 
 	@Override
 	public void hidePopupMenu() {
diff --git a/designer-realize/src/main/java/com/fr/design/actions/cell/style/AlignmentAction.java b/designer-realize/src/main/java/com/fr/design/actions/cell/style/AlignmentAction.java
index 60cf0bd44..617957056 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/cell/style/AlignmentAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/cell/style/AlignmentAction.java
@@ -7,7 +7,6 @@ import com.fr.design.actions.ButtonGroupAction;
 import com.fr.design.actions.utils.ReportActionUtils;
 import com.fr.design.constants.UIConstants;
 import com.fr.design.gui.ibutton.UIButtonGroup;
-import com.fr.design.gui.ibutton.UIToggleButton;
 import com.fr.design.mainframe.ElementCasePane;
 
 import com.fr.grid.selection.FloatSelection;
@@ -108,7 +107,7 @@ public class AlignmentAction extends ButtonGroupAction implements StyleActionInt
         UIButtonGroup<Integer> group = super.createToolBarComponent();
         if (group != null) {
             group.setForToolBarButtonGroup(true);
-            group.setAllToolTips(new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Left"), com.fr.design.i18n.Toolkit.i18nText("Center"), com.fr.design.i18n.Toolkit.i18nText("StyleAlignment-Right")});
+            group.setAllToolTips(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Left"), com.fr.design.i18n.Toolkit.i18nText("Center"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_StyleAlignment_Right")});
         }
         for (int i = 0; i < 3; i++) {
             group.getButton(i).setRoundBorder(true, UIConstants.ARC);
@@ -117,4 +116,4 @@ public class AlignmentAction extends ButtonGroupAction implements StyleActionInt
         return group;
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelColumnAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelColumnAction.java
index 20795b567..629dbb24a 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelColumnAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelColumnAction.java
@@ -11,7 +11,7 @@ public class CancelColumnAction extends CellSelectionAction{
 	public CancelColumnAction(ElementCasePane t) {
 		super(t);
 		
-		this.setName(com.fr.design.i18n.Toolkit.i18nText("Cancel_Repeat_Attributes"));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cancel_Repeat_Attributes"));
 	}
 	
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelRowAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelRowAction.java
index 11e8b813d..1ed0ff88e 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelRowAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/CancelRowAction.java
@@ -12,7 +12,7 @@ public class CancelRowAction extends CellSelectionAction {
 	public CancelRowAction(ElementCasePane t) {
 		super(t);
 		
-        this.setName(com.fr.design.i18n.Toolkit.i18nText("Cancel_Repeat_Attributes"));
+        this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cancel_Repeat_Attributes"));
     }
 	
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnHideAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnHideAction.java
index a772506ec..5aafef099 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnHideAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnHideAction.java
@@ -10,7 +10,7 @@ public class ColumnHideAction extends AbstractColumnRowIndexAction {
 
 	public ColumnHideAction(ElementCasePane t, int indexOfColumnOrRow) {
 		super(t, indexOfColumnOrRow);
-		this.setName(com.fr.design.i18n.Toolkit.i18nText("Hide"));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hide_Duplicate"));
 	}
 
 	@Override
@@ -26,4 +26,4 @@ public class ColumnHideAction extends AbstractColumnRowIndexAction {
 		return false;
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetColumnHideAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetColumnHideAction.java
index bc9d40109..99aea79c0 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetColumnHideAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetColumnHideAction.java
@@ -11,7 +11,7 @@ public class ResetColumnHideAction extends AbstractColumnRowIndexAction {
 
 	public ResetColumnHideAction(ElementCasePane t, int indexOfColumnOrRow) {
 		super(t, indexOfColumnOrRow);
-		this.setName(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"MConfig-CancelButton", "Hide"}));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cancel_Hide"));
 	}
 
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetRowHideAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetRowHideAction.java
index 15940ee64..82dfbee28 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetRowHideAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ResetRowHideAction.java
@@ -11,7 +11,7 @@ public class ResetRowHideAction extends AbstractColumnRowIndexAction {
 
 	public ResetRowHideAction(ElementCasePane t, int indexOfColumnOrRow) {
 		super(t, indexOfColumnOrRow);
-		this.setName(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"MConfig-CancelButton", "Hide"}));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cancel_Hide"));
 	}
 
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/RowHideAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/RowHideAction.java
index 552992d0d..df4c3936c 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/RowHideAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/RowHideAction.java
@@ -10,7 +10,7 @@ public class RowHideAction extends AbstractColumnRowIndexAction {
 
 	public RowHideAction(ElementCasePane t, int indexOfColumnOrRow) {
 		super(t, indexOfColumnOrRow);
-		this.setName(com.fr.design.i18n.Toolkit.i18nText("Hide"));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hide_Duplicate"));
 	}
 
 	@Override
@@ -26,4 +26,4 @@ public class RowHideAction extends AbstractColumnRowIndexAction {
 		return false;
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/actions/edit/EditFloatElementNameAction.java b/designer-realize/src/main/java/com/fr/design/actions/edit/EditFloatElementNameAction.java
index b00cae32b..cbb9e72b0 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/edit/EditFloatElementNameAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/edit/EditFloatElementNameAction.java
@@ -18,7 +18,7 @@ public class EditFloatElementNameAction extends FloatSelectionAction {
 	public EditFloatElementNameAction(ElementCasePane t) {
 		super(t);
 		
-		this.setName(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Set", "Float_Element_Name"}));
+		this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Float_Element_Name"));
 	}
 	
 	@Override
@@ -56,7 +56,7 @@ public class EditFloatElementNameAction extends FloatSelectionAction {
     	
     	@Override
     	protected String title4PopupWindow() {
-    		return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Set", "Float_Element_Name"});
+			return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Float_Element_Name");
     	}
     	
     	public void populate(String name) {
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/AbstractExcelExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/AbstractExcelExportAction.java
index 3d984b9e9..37ab34d76 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/AbstractExcelExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/AbstractExcelExportAction.java
@@ -26,7 +26,7 @@ public abstract class AbstractExcelExportAction extends AbstractExportAction {
     	if (hasLayerReport(tpl)) {
     		return new ChooseFileFilter(new String[]{"zip"}, "ZIP");
     	} else {
-    		return new ChooseFileFilter(new String[]{"xls", "xlsx"}, com.fr.design.i18n.Toolkit.i18nText("Export-Excel"));
+    		return new ChooseFileFilter(new String[]{"xls", "xlsx"}, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_Excel"));
     	}
     }
 
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/CSVExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/CSVExportAction.java
index f564c2bdc..54f8ef357 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/CSVExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/CSVExportAction.java
@@ -41,7 +41,7 @@ public class CSVExportAction extends AbstractExportAction {
 
     @Override
 	protected ChooseFileFilter getChooseFileFilter() {
-        return new ChooseFileFilter(FileExtension.CSV, com.fr.design.i18n.Toolkit.i18nText("Export-CSV"));
+        return new ChooseFileFilter(FileExtension.CSV, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_CSV"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/EmbeddedExportExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/EmbeddedExportExportAction.java
index 347c4adc1..b11024bf8 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/EmbeddedExportExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/EmbeddedExportExportAction.java
@@ -34,7 +34,7 @@ public class EmbeddedExportExportAction extends AbstractExportAction {
     @Override
     protected ChooseFileFilter getChooseFileFilter() {
         return new ChooseFileFilter(EnumSet.of(FileExtension.CPTX, FileExtension.CPT),
-                com.fr.design.i18n.Toolkit.i18nText("Export-Template(embedded_data)"));
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_Template(Embedded_Data)"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/PageToSheetExcelExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/PageToSheetExcelExportAction.java
index 91f941f96..934c39bb7 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/PageToSheetExcelExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/PageToSheetExcelExportAction.java
@@ -30,7 +30,7 @@ public class PageToSheetExcelExportAction extends AbstractExcelExportAction {
 
     @Override
     protected ChooseFileFilter getChooseFileFilter() {
-        return new ChooseFileFilter(FileExtension.XLS, com.fr.design.i18n.Toolkit.i18nText("Export-Excel"));
+        return new ChooseFileFilter(FileExtension.XLS, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_Excel"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/SVGExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/SVGExportAction.java
index 39c27c796..027158bd0 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/SVGExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/SVGExportAction.java
@@ -35,7 +35,7 @@ public class SVGExportAction extends AbstractExportAction {
 
     @Override
     protected ChooseFileFilter getChooseFileFilter() {
-        return new ChooseFileFilter(FileExtension.SVG, com.fr.design.i18n.Toolkit.i18nText("Export-SVG"));
+        return new ChooseFileFilter(FileExtension.SVG, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_SVG"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/TextExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/TextExportAction.java
index 663137843..1028d55d9 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/TextExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/TextExportAction.java
@@ -34,7 +34,7 @@ public class TextExportAction extends AbstractExportAction {
 
     @Override
     protected ChooseFileFilter getChooseFileFilter() {
-        return new ChooseFileFilter(FileExtension.TXT, com.fr.design.i18n.Toolkit.i18nText("Export-Text"));
+        return new ChooseFileFilter(FileExtension.TXT, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_Text"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/WordExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/WordExportAction.java
index c35af5db8..803a680c5 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/file/export/WordExportAction.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/WordExportAction.java
@@ -34,7 +34,7 @@ public class WordExportAction extends AbstractExportAction {
 
     @Override
     protected ChooseFileFilter getChooseFileFilter() {
-        return new ChooseFileFilter(FileExtension.DOC, com.fr.design.i18n.Toolkit.i18nText("Export-Word"));
+        return new ChooseFileFilter(FileExtension.DOC, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Export_Word"));
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/actions/utils/DeprecatedActionManager.java b/designer-realize/src/main/java/com/fr/design/actions/utils/DeprecatedActionManager.java
index 916f0b77d..1b7385c2e 100644
--- a/designer-realize/src/main/java/com/fr/design/actions/utils/DeprecatedActionManager.java
+++ b/designer-realize/src/main/java/com/fr/design/actions/utils/DeprecatedActionManager.java
@@ -100,7 +100,7 @@ public class DeprecatedActionManager {
         formulaAction.setMnemonic('F');
         NewPresentAction barcodeAction = new NewPresentAction(ePane,  com.fr.design.i18n.Toolkit.i18nText("M_Insert-Barcode"), BarcodePresent.class.getName());
         barcodeAction.setMnemonic('B');
-        NewPresentAction currencyLineAction = new NewPresentAction(ePane, com.fr.design.i18n.Toolkit.i18nText("Currency_Line"), CurrencyLinePresent.class.getName());
+        NewPresentAction currencyLineAction = new NewPresentAction(ePane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Currency_Line"), CurrencyLinePresent.class.getName());
         currencyLineAction.setMnemonic('L');
         NewPresentAction nonePresentAction = new NewPresentAction(ePane, com.fr.design.i18n.Toolkit.i18nText("Present-No_Present"), "NOPRESENT");
         nonePresentAction.setMnemonic('N');
@@ -145,7 +145,7 @@ public class DeprecatedActionManager {
     }
 
     public static UIMenu getInsertMenu(ElementCasePane ePane) {
-        UIMenu deleteMenu = new UIMenu(com.fr.design.i18n.Toolkit.i18nText("Insert") + "(I)");
+        UIMenu deleteMenu = new UIMenu(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert") + "(I)");
         deleteMenu.setIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
         deleteMenu.setMnemonic('i');
         deleteMenu.add(new InsertRowAction(ePane).createMenuItem());
diff --git a/designer-realize/src/main/java/com/fr/design/cell/editor/RichTextToolBar.java b/designer-realize/src/main/java/com/fr/design/cell/editor/RichTextToolBar.java
index 84720688c..e051b3667 100644
--- a/designer-realize/src/main/java/com/fr/design/cell/editor/RichTextToolBar.java
+++ b/designer-realize/src/main/java/com/fr/design/cell/editor/RichTextToolBar.java
@@ -182,13 +182,13 @@ public class RichTextToolBar extends BasicPane{
     }
 
     private void setToolTips() {
-        colorSelectPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Foreground"));
+        colorSelectPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground"));
         italic.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Italic"));
         bold.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bold"));
         underline.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Underline"));
         superPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Super_Script"));
         subPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sub_Script"));
-        formulaPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Formula"));
+        formulaPane.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Formula"));
     }
     
     /**
diff --git a/designer-realize/src/main/java/com/fr/design/condition/BackPane.java b/designer-realize/src/main/java/com/fr/design/condition/BackPane.java
index 8ee6bedcd..eb7004b5a 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/BackPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/BackPane.java
@@ -31,7 +31,7 @@ public class BackPane extends ConditionAttrSingleConditionPane<HighlightAction>
         backgroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Background") + ":");
         this.backgroundPreviewPane = new BackgroundPreviewLabel();
         this.backgroundPreviewPane.setPreferredSize(new Dimension(80, 20));
-        UIButton editBackgroundButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        UIButton editBackgroundButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         editBackgroundButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 final BackgroundPane backgroundPane = new BackgroundPane();
diff --git a/designer-realize/src/main/java/com/fr/design/condition/BorderHighlightPane.java b/designer-realize/src/main/java/com/fr/design/condition/BorderHighlightPane.java
index fba9c4635..23e573362 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/BorderHighlightPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/BorderHighlightPane.java
@@ -26,7 +26,7 @@ public class BorderHighlightPane extends ConditionAttrSingleConditionPane<Highli
     private UIButton borderButton;
     public BorderHighlightPane(final ConditionAttributesPane conditionAttributesPane) {
         super(conditionAttributesPane);
-        borderButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        borderButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         borderButton.setPreferredSize(new Dimension(53, 23));
         borderButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
@@ -47,14 +47,14 @@ public class BorderHighlightPane extends ConditionAttrSingleConditionPane<Highli
             }
         });
 
-        UILabel borderLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Border") + ":");
+        UILabel borderLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Border") + ":");
         this.add(borderLabel);
         this.add(borderButton);
     }
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Border");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Border");
     }
 
 
@@ -69,4 +69,4 @@ public class BorderHighlightPane extends ConditionAttrSingleConditionPane<Highli
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/condition/FontPane.java b/designer-realize/src/main/java/com/fr/design/condition/FontPane.java
index 0f9ed57be..ef7380aef 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/FontPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/FontPane.java
@@ -29,11 +29,11 @@ public class FontPane extends ConditionAttrSingleConditionPane<HighlightAction>
 
     public FontPane(final ConditionAttributesPane conditionAttributesPane) {
         super(conditionAttributesPane);
-        fontLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Sytle-FRFont") + ":");
+        fontLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sytle_FRFont") + ":");
         frFontPreviewPane = new FRFontPreviewArea();
         frFontPreviewPane.setBorder(BorderFactory.createTitledBorder(""));
         frFontPreviewPane.setPreferredSize(new Dimension(80, 20));
-        UIButton editFRFontButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        UIButton editFRFontButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         editFRFontButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 final FRFontPane frFontPane = new FRFontPane();
@@ -65,7 +65,7 @@ public class FontPane extends ConditionAttrSingleConditionPane<HighlightAction>
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Sytle-FRFont");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sytle_FRFont");
     }
 
 
diff --git a/designer-realize/src/main/java/com/fr/design/condition/ForeGroundPane.java b/designer-realize/src/main/java/com/fr/design/condition/ForeGroundPane.java
index 713c33a3a..c27854b3d 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/ForeGroundPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/ForeGroundPane.java
@@ -22,7 +22,7 @@ public class ForeGroundPane extends ConditionAttrSingleConditionPane<HighlightAc
 
     public ForeGroundPane(ConditionAttributesPane conditionAttributesPane) {
         super(conditionAttributesPane);
-        foregroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Foreground") + ":");
+        foregroundLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground") + ":");
         this.foregroundColorPane = new ColorSelectBox(80);
         this.add(foregroundLabel);
         this.add(this.foregroundColorPane);
@@ -36,7 +36,7 @@ public class ForeGroundPane extends ConditionAttrSingleConditionPane<HighlightAc
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Foreground");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Foreground");
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/condition/HyperlinkPane.java b/designer-realize/src/main/java/com/fr/design/condition/HyperlinkPane.java
index ccfae0455..f56f27472 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/HyperlinkPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/HyperlinkPane.java
@@ -33,7 +33,7 @@ public class HyperlinkPane extends ConditionAttrSingleConditionPane<HighlightAct
 
     public HyperlinkPane(final ConditionAttributesPane conditionAttributesPane) {
         super(conditionAttributesPane);
-        hyperlinkButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        hyperlinkButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         hyperlinkButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 NameJavaScriptGroup nameHyperlinks = jsGroup;
@@ -51,21 +51,21 @@ public class HyperlinkPane extends ConditionAttrSingleConditionPane<HighlightAct
             }
         });
         hyperlinkButton.setEnabled(false);
-        UILabel hyperlinkLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Hyperlink", "Type"}) + ":");
+        UILabel hyperlinkLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink_Type") + ":");
         typeField = new UITextField(12);
         typeField.setEditable(false);
         this.add(hyperlinkLabel);
         this.add(typeField);
 
         this.add(hyperlinkButton);
-        useHyperlink = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Use", "Links"}));
+        useHyperlink = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Use_Links"));
         useHyperlink.addActionListener(l);
         this.add(useHyperlink);
     }
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink");
     }
 
     @Override
@@ -98,11 +98,11 @@ public class HyperlinkPane extends ConditionAttrSingleConditionPane<HighlightAct
             if (js instanceof JavaScriptImpl) {
                 this.typeField.setText("JavaScript");
             } else if (js instanceof ReportletHyperlink) {
-                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Report", "Links"}));
+                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Report_Links"));
             } else if (js instanceof WebHyperlink) {
-                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link"));
+                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"));
             } else if (js instanceof EmailJavaScript) {
-                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Email", "Links"}));
+                this.typeField.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Email_Links"));
             }
 
         }
diff --git a/designer-realize/src/main/java/com/fr/design/condition/PaddingPane.java b/designer-realize/src/main/java/com/fr/design/condition/PaddingPane.java
index 72e9da4e8..67d8b5e82 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/PaddingPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/PaddingPane.java
@@ -78,7 +78,7 @@ public class PaddingPane extends ConditionAttrSingleConditionPane<HighlightActio
      */
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Sytle-Indentation");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sytle_Indentation");
     }
 
     @Override
diff --git a/designer-realize/src/main/java/com/fr/design/condition/PagePane.java b/designer-realize/src/main/java/com/fr/design/condition/PagePane.java
index ab224ad11..bb25f56fb 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/PagePane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/PagePane.java
@@ -21,10 +21,10 @@ public class PagePane extends ConditionAttrSingleConditionPane<HighlightAction>
         this.add(pageLabel);
         this.pageComboBox = new UIComboBox(new String[] {
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_No_Pagination"),
-                com.fr.design.i18n.Toolkit.i18nText("CellWrite-Page_After_Row"),
-                com.fr.design.i18n.Toolkit.i18nText("CellWrite-Page_Before_Row"),
-                com.fr.design.i18n.Toolkit.i18nText("CellWrite-Page_After_Column"),
-                com.fr.design.i18n.Toolkit.i18nText("CellWrite-Page_Before_Column") });
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cell_Write_Page_After_Row"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cell_Write_Page_Before_Row"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cell_Write_Page_After_Column"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cell_Write_Page_Before_Column") });
         this.add(this.pageComboBox);
         this.pageComboBox.setSelectedIndex(0);
     }
diff --git a/designer-realize/src/main/java/com/fr/design/condition/PresentHighlightPane.java b/designer-realize/src/main/java/com/fr/design/condition/PresentHighlightPane.java
index f48db3c45..b5376a3c2 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/PresentHighlightPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/PresentHighlightPane.java
@@ -35,11 +35,11 @@ public class PresentHighlightPane extends ConditionAttrSingleConditionPane<Highl
         super(conditionAttributesPane);
         this.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Present") + ":"));
 
-        String[] typeArray = {PresentConstants.NORMAL, com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Other", "Present"})};
+        String[] typeArray = {PresentConstants.NORMAL, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other_Present")};
         presentComboBox = new UIComboBox(typeArray);
         this.add(presentComboBox);
 
-        editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
 //			this.add(this.valueTextField);
 //			this.add(editButton);
 
diff --git a/designer-realize/src/main/java/com/fr/design/condition/WHPane.java b/designer-realize/src/main/java/com/fr/design/condition/WHPane.java
index ff8708b7f..753e3e776 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/WHPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/WHPane.java
@@ -48,16 +48,16 @@ public abstract class WHPane extends ConditionAttrSingleConditionPane<HighlightA
         double va;
         if (unitType == Constants.UNIT_CM) {
             va = width.toCMValue4Scale2();
-            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_CM"));
+            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"));
         } else if (unitType == Constants.UNIT_INCH) {
             va = width.toINCHValue4Scale3();
-            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_INCH"));
+            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH"));
         } else if (unitType == Constants.UNIT_PT) {
             va = width.toPTValue4Scale2();
-            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_PT"));
+            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_PT_Duplicate"));
         } else {
             va = width.toMMValue4Scale2();
-            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_MM"));
+            unitLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_MM"));
         }
         // 只保留两位
         Float d = new Float(new BigDecimal(va + "").setScale(2, BigDecimal.ROUND_DOWN).floatValue());
@@ -69,13 +69,13 @@ public abstract class WHPane extends ConditionAttrSingleConditionPane<HighlightA
     protected String getUnitString() {
         int unitType = DesignerEnvManager.getEnvManager().getReportLengthUnit();
         if (unitType == Constants.UNIT_CM) {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_CM");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM");
         } else if (unitType == Constants.UNIT_INCH) {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_INCH");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH");
         } else if (unitType == Constants.UNIT_PT) {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_PT");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_PT_Duplicate");
         } else {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_MM");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_MM");
         }
     }
 
@@ -106,4 +106,4 @@ public abstract class WHPane extends ConditionAttrSingleConditionPane<HighlightA
     }
 
     protected abstract HighlightAction returnAction(UNIT unit);
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/condition/WidgetHighlightPane.java b/designer-realize/src/main/java/com/fr/design/condition/WidgetHighlightPane.java
index 8c566966c..643ce8bae 100644
--- a/designer-realize/src/main/java/com/fr/design/condition/WidgetHighlightPane.java
+++ b/designer-realize/src/main/java/com/fr/design/condition/WidgetHighlightPane.java
@@ -35,7 +35,7 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
 
     public WidgetHighlightPane(final ConditionAttributesPane conditionAttributesPane) {
         super(conditionAttributesPane);
-        widgetButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        widgetButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         widgetButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 final WidgetPane widgetPane = new WidgetPane() {
@@ -57,13 +57,13 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
             }
         });
 
-        UILabel widgetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget") + ":");
+        UILabel widgetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget") + ":");
         this.add(widgetLabel);
         String[] editorTypes = new String[] {
                 "",
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_TextArea"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Number"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Number"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Password"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Button"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_CheckBox"),
@@ -71,19 +71,19 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_CheckBox_Group"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ComboBox"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_ComboCheckBox"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_File"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_File"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_List"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Form-Iframe"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tree-ComboBox"),
-                com.fr.design.i18n.Toolkit.i18nText("Form-View_Tree")
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Iframe"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Tree_ComboBox"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_View_Tree")
         };
         box = new UIComboBox(editorTypes);
         this.add(box);
         box.setEnabled(false);
         this.add(widgetButton);
         widgetButton.setEnabled(false);
-        useWidget = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Use", "Widget"}));
+        useWidget = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Use_Widget"));
         this.add(useWidget);
         useWidget.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
@@ -101,7 +101,7 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
 
     @Override
     public String nameForPopupMenuItem() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget");
     }
 
     @Override
@@ -118,13 +118,13 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
         } else if (value instanceof ComboBox) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ComboBox"));
         } else if (value instanceof NumberEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Number"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Number"));
         } else if (value instanceof IframeEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Form-Iframe"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Iframe"));
         } else if (value instanceof FreeButton) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Button"));
         } else if (value instanceof DateEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Date"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Date"));
         } else if (value instanceof CheckBox) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_CheckBox"));
         } else if (value instanceof RadioGroup) {
@@ -132,19 +132,19 @@ public class WidgetHighlightPane extends ConditionAttrSingleConditionPane<Highli
         } else if (value instanceof CheckBoxGroup) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_CheckBox_Group"));
         } else if (value instanceof MultiFileEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_File"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_File"));
         } else if (value instanceof ListEditor) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_List"));
         } else if (value instanceof TreeComboBoxEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Tree-ComboBox"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Tree_ComboBox"));
         } else if (value instanceof TreeEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Form-View_Tree"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_View_Tree"));
         } else if (value instanceof Password) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_Password"));
         } else if (value instanceof TextArea) {
             box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Form_TextArea"));
         } else if (value instanceof TextEditor) {
-            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text"));
+            box.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text"));
         }
     }
 
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnAdvancedPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnAdvancedPane.java
index 5901745a8..d04a3929c 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnAdvancedPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnAdvancedPane.java
@@ -58,11 +58,11 @@ public class DSColumnAdvancedPane extends BasicPane {
 
         if (setting > DSColumnPane.SETTING_DSRELATED) {
             selectCountPane = new SelectCountPane();
-            selectCountPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Results_Filter"), null));
+            selectCountPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Results_Filter"), null));
         }
 
         valuePane = new ValuePane();
-        valuePane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Custom_Data_Appearance"), null));
+        valuePane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Custom_Data_Appearance"), null));
 
 
         JPanel extendablePane = null;
@@ -70,10 +70,10 @@ public class DSColumnAdvancedPane extends BasicPane {
             // extendableDirectionPane
             JPanel extendableDirectionPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 
-            extendableDirectionPane.add(horizontalExtendableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Horizontal_Extendable")));
-            extendableDirectionPane.add(verticalExtendableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Vertical_Extendable")));
+            extendableDirectionPane.add(horizontalExtendableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Horizontal_Extendable")));
+            extendableDirectionPane.add(verticalExtendableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Vertical_Extendable")));
 
-            extendablePane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Expandable"));
+            extendablePane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Expandable"));
             extendablePane.setLayout(new BorderLayout());
             extendablePane.add(extendableDirectionPane, BorderLayout.CENTER);
         }
@@ -81,7 +81,7 @@ public class DSColumnAdvancedPane extends BasicPane {
         JPanel multiNumPane = null;
         if (setting > DSColumnPane.SETTING_DSRELATED) {
             multiNumPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Fill_Blank_Data"));
-            useMultiplyNumCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Column_Multiple"));
+            useMultiplyNumCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Multiple"));
             multiNumPane.add(useMultiplyNumCheckBox);
             multiNumPane.add(new UILabel(InsetText));
 
@@ -294,12 +294,12 @@ public class DSColumnAdvancedPane extends BasicPane {
             this.setLayout(FRGUIPaneFactory.createBorderLayout());
 
             selectCountComboBox = new UIComboBox(new String[]{
-                    com.fr.design.i18n.Toolkit.i18nText("Undefined"),
-                    com.fr.design.i18n.Toolkit.i18nText("BindColumn-Top_N"),
-                    com.fr.design.i18n.Toolkit.i18nText("BindColumn-Bottom_N"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Undefined"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Top_N"),
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Bottom_N"),
                     com.fr.design.i18n.Toolkit.i18nText("Odd"),
                     com.fr.design.i18n.Toolkit.i18nText("Even"),
-                    com.fr.design.i18n.Toolkit.i18nText("Specify"),});
+                    com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Specify"),});
             selectCountComboBox.addActionListener(new ActionListener() {
 
                 public void actionPerformed(ActionEvent evt) {
@@ -328,14 +328,14 @@ public class DSColumnAdvancedPane extends BasicPane {
 
             //not define pane
 
-            JPanel undefinedPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Undefined")), FlowLayout.LEFT);
+            JPanel undefinedPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Undefined")), FlowLayout.LEFT);
             topFormulaPane = new JFormulaField("-1");
             bottomFormulaPane = new JFormulaField("-1");
             serialTextField = new UITextField(18);
-            JPanel oddPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Result_Serial_Number_Start_From_1")
-                    + "  " + com.fr.design.i18n.Toolkit.i18nText("BindColumn-Odd_Selected_(1,3,5...)")), FlowLayout.LEFT);
-            JPanel evenPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Result_Serial_Number_Start_From_1")
-                    + "  " + com.fr.design.i18n.Toolkit.i18nText("BindColumn-Even_Selected_(2,4,6...)")), FlowLayout.LEFT);
+            JPanel oddPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Result_Serial_Number_Start_From_1")
+                    + "  " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Odd_Selected_(1,3,5...)")), FlowLayout.LEFT);
+            JPanel evenPane = GUICoreUtils.createFlowPane(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Result_Serial_Number_Start_From_1")
+                    + "  " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Even_Selected_(2,4,6...)")), FlowLayout.LEFT);
             JPanel specifyPane = GUICoreUtils.createFlowPane(new JComponent[]{
                     serialTextField, new UILabel(
                     com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DSColumn_Result_Group_Format", "1,2-3,5,8", "$__count__")
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnBasicPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnBasicPane.java
index 3a2181a66..9bef6d698 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnBasicPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnBasicPane.java
@@ -73,11 +73,11 @@ public class DSColumnBasicPane extends BasicPane {
         }
 
         resultSetGroupPane = new ResultSetGroupPopUpPane(setting > DSColumnPane.SETTING_DSRELATED);
-        resultSetGroupPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Data_Setting"), null));
+        resultSetGroupPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Setting"), null));
 
         if (setting > DSColumnPane.SETTING_DSRELATED) {
             expandDirectionPane = new ExpandDirectionPane();
-            expandDirectionPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Expand_Direction"), null));
+            expandDirectionPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Expand_Direction"), null));
         }
 
         double[] rowSize = {TableLayout.PREFERRED, TableLayout.PREFERRED,
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnConditionsPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnConditionsPane.java
index f05d97557..4d6a1e62a 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnConditionsPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnConditionsPane.java
@@ -50,13 +50,13 @@ public class DSColumnConditionsPane extends BasicPane {
 //            pane.setLayout(new BoxLayout(pane, BoxLayout.X_AXIS));
             pane.add(new UILabel(INSET_TEXT));
 
-            reselectExpandCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Extend_the_conditions_of_fatherCell(Applied_to_the_data_contains_other_data)"), false);
+            reselectExpandCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Extend_The_Conditions_of_Father_Cell(Applied_To_The_Data_Contains_Other_Data)"), false);
             pane.add(reselectExpandCheckBox);
             reselectExpandCheckBox.setSelected(true);
 
             JPanel reSelectPane = GUICoreUtils.createFlowPane(pane, FlowLayout.LEFT);
             this.add(reSelectPane, BorderLayout.NORTH);
-            reSelectPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("BindColumn-The_Conditions_of_FatherCell"), null));
+            reSelectPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_The_Conditions_Of_Father_Cell"), null));
         }
     }
 
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java
index 3b55a7d76..c9cb95e1a 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java
@@ -111,7 +111,7 @@ public class DSColumnPane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("ExpandD-Data_Column");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Data_Column");
     }
 
     /**
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupDockingPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupDockingPane.java
index 57e7372e7..1792ea837 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupDockingPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupDockingPane.java
@@ -46,7 +46,7 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane {
     }
 
     public void initComponents() {
-        goBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("BindColumn-Group"), com.fr.design.i18n.Toolkit.i18nText("BindColumn-Select"), com.fr.design.i18n.Toolkit.i18nText("BindColumn-Summary")});
+        goBox = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Group"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Select"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Summary")});
         initCardPane();
         contentPane = layoutPane();
         this.setLayout(new BorderLayout());
@@ -56,7 +56,7 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane {
     private JPanel layoutPane() {
         double p = TableLayout.PREFERRED;
         double f = TableLayout.FILL;
-        UILabel dataSetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Data_Setting"));
+        UILabel dataSetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Data_Setting"));
         dataSetLabel.setPreferredSize(new Dimension(60, 20));
         Component[][] components = new Component[][]
                 {
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupPopUpPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupPopUpPane.java
index 13776c093..aecb825aa 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupPopUpPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/ResultSetGroupPopUpPane.java
@@ -46,7 +46,7 @@ public class ResultSetGroupPopUpPane extends ResultSetGroupPane {
 		this.setLayout(FRGUIPaneFactory.create1ColumnGridLayout());
 
 		// 分组
-		groupRadioButton = new UIRadioButton(Toolkit.i18nText("BindColumn-Group(Merger_the_Items_Which_Have_The_Same_Value_in_Column)"));
+		groupRadioButton = new UIRadioButton(Toolkit.i18nText("Fine-Design_Report_Bind_Column_Group(Merger_The_Items_Which_Have_The_Same_Value_in_Column)"));
 		groupRadioButton.addActionListener(checkEnabledActionListener);
 
 		groupComboBox.addItemListener(new ItemListener() {
@@ -60,13 +60,13 @@ public class ResultSetGroupPopUpPane extends ResultSetGroupPane {
 				new JComponent[]{new UILabel(InsertText), groupRadioButton, groupComboBox, advancedButton}, FlowLayout.LEFT));
 
 		// 列表
-		listRadioButton = new UIRadioButton(Toolkit.i18nText("BindColumn-Select(Regardless_of_Having_the_Same_Value,Display_all_Item_in_Column)"));
+		listRadioButton = new UIRadioButton(Toolkit.i18nText("Fine-Design_Report_Bind_Column_Select(Regardless_of_Having_the_Same_Value,Display_All_Item_in_Column)"));
 		listRadioButton.addActionListener(checkEnabledActionListener);
 		this.add(GUICoreUtils.createFlowPane(
 				new JComponent[]{new UILabel(InsertText), listRadioButton}, FlowLayout.LEFT));
 
 		// 汇总		
-		summaryRadioButton = new UIRadioButton(Toolkit.i18nText("BindColumn-Summary(Including_SUM_,_AVERAGE_,_MAX_,_MIN_And_So_On)"), true);
+		summaryRadioButton = new UIRadioButton(Toolkit.i18nText("Fine-Design_Report_Bind_Column_Summary(Including_SUM_,_AVERAGE_,_MAX_,_MIN_And_So_On)"), true);
 		summaryRadioButton.addActionListener(checkEnabledActionListener);
 		functionComboBox = new FunctionComboBox(GUICoreUtils.getFunctionArray());
 		this.add(GUICoreUtils.createFlowPane(
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/SelectedDataColumnPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/SelectedDataColumnPane.java
index 0cb9d1b5e..dd7cca586 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/SelectedDataColumnPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/SelectedDataColumnPane.java
@@ -342,7 +342,7 @@ public class SelectedDataColumnPane extends BasicPane {
 
     private void initParameterButton() {
         editorPane = new UITableEditorPane<>(new ParameterTableModel());
-        paramButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("TableData_Dynamic_Parameter_Setting"));
+        paramButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_TableData_Dynamic_Parameter_Setting"));
         paramButton.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 BasicDialog paramDialog = editorPane.showSmallWindow(DesignerContext.getDesignerFrame(), new DialogActionAdapter() {
diff --git a/designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java b/designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java
index ce5255341..2eb13fc66 100644
--- a/designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java
+++ b/designer-realize/src/main/java/com/fr/design/dscolumn/SpecifiedGroupAttrPane.java
@@ -44,10 +44,10 @@ public class SpecifiedGroupAttrPane extends BasicPane {
 	private JPanel centerCardPane;
 	private JPanel conditionsGroupPane;
 	private FormulaGroupPane formulaGroupPane;
-	
+
 	private UIComboBox specifiedComboBox;
 	private SpecifiedGroupControlPane specifiedControlPane;
-	
+
     //下拉选择列名需要的
     private  String[] displayNames;
 
@@ -88,7 +88,7 @@ public class SpecifiedGroupAttrPane extends BasicPane {
     protected void initComponents() {
         this.setLayout(FRGUIPaneFactory.createBorderLayout());
         specifiedComboBox = new UIComboBox(new String[] {
-        		com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Condition", "Group"}), com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Formula", "Group"})
+				com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Condition_Group"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Formula_Group")
         });
         
         specifiedComboBox.addItemListener(new ItemListener() {
@@ -310,7 +310,7 @@ public class SpecifiedGroupAttrPane extends BasicPane {
     	private JPanel southPane;
     	
     	public FormulaGroupPane() {
-    		this.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("D-Dispaly_Divide_Result_Set_into_Groups")));
+    		this.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_D_Dispaly_Divide_Result_Set_into_Groups")));
     		this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
     		JPanel contentPane = FRGUIPaneFactory.createNColumnGridInnerContainer_S_Pane(1);
     		this.add(contentPane, BorderLayout.NORTH);
@@ -320,7 +320,7 @@ public class SpecifiedGroupAttrPane extends BasicPane {
     		contentPane.add(northPane);
     		modeComboBox = new UIComboBox(displayModeNames);
 
-    		northPane.add(GUICoreUtils.createFlowPane(new JComponent[] { new UILabel(InsertText), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Display_Modes") + ":  "),
+    		northPane.add(GUICoreUtils.createFlowPane(new JComponent[] { new UILabel(InsertText), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Display_Modes") + ":  "),
     				modeComboBox }, FlowLayout.LEFT), BorderLayout.WEST);
     		
     		UILabel label = new UILabel("=");
@@ -359,7 +359,7 @@ public class SpecifiedGroupAttrPane extends BasicPane {
             });
             
             southPane = GUICoreUtils.createFlowPane(new JComponent[] {new UILabel(InsertText), //new UILabel(com.fr.design.i18n.Toolkit.i18nText("I-Message_FunctionGrouper_2")),
-            		new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Custom", "Value"}) + ": "), label, valueField, formulaButton}, FlowLayout.LEFT);
+					new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Value") + ": "), label, valueField, formulaButton}, FlowLayout.LEFT);
             contentPane.add(southPane);
     	}
     	
diff --git a/designer-realize/src/main/java/com/fr/design/expand/ConditionParentPane.java b/designer-realize/src/main/java/com/fr/design/expand/ConditionParentPane.java
index 9d2f41059..579a8efbc 100644
--- a/designer-realize/src/main/java/com/fr/design/expand/ConditionParentPane.java
+++ b/designer-realize/src/main/java/com/fr/design/expand/ConditionParentPane.java
@@ -42,7 +42,7 @@ public class ConditionParentPane extends JPanel {
 
 		eastPane.add(GUICoreUtils.createFlowPane(
 				new JComponent[] {
-						new UILabel(com.fr.design.i18n.Toolkit.i18nText("UpParent") + ": "),
+						new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Up_Parent") + ": "),
 						upParentPane = new ParentPane(ParentPane.UP, listener) }, FlowLayout.LEFT));
 	}
 	public void putElementcase(ElementCasePane t){
diff --git a/designer-realize/src/main/java/com/fr/design/expand/ExpandDirectionPane.java b/designer-realize/src/main/java/com/fr/design/expand/ExpandDirectionPane.java
index eb7af6cfa..03a0c1d03 100644
--- a/designer-realize/src/main/java/com/fr/design/expand/ExpandDirectionPane.java
+++ b/designer-realize/src/main/java/com/fr/design/expand/ExpandDirectionPane.java
@@ -1,23 +1,20 @@
 package com.fr.design.expand;
 
-import java.awt.Component;
-import java.awt.FlowLayout;
-import java.awt.GridLayout;
-
-import javax.swing.ButtonGroup;
-
 import com.fr.design.gui.ibutton.UIRadioButton;
 import com.fr.design.gui.ilable.UILabel;
-import javax.swing.JPanel;
-
 import com.fr.design.layout.FRGUIPaneFactory;
-
+import com.fr.design.utils.gui.GUICoreUtils;
 import com.fr.report.cell.cellattr.CellExpandAttr;
 import com.fr.stable.Constants;
 import com.fr.stable.StringUtils;
-import com.fr.design.utils.gui.GUICoreUtils;
+
+import javax.swing.ButtonGroup;
+import javax.swing.JPanel;
+import java.awt.Component;
+import java.awt.FlowLayout;
+import java.awt.GridLayout;
 /**
- * 
+ *
  * @editor zhou
  * @since 2012-3-23下午3:21:02
  */
@@ -37,9 +34,9 @@ public class ExpandDirectionPane extends JPanel {
         this.setLayout(new GridLayout(1, 3));
     	JPanel innerthis=FRGUIPaneFactory.createNormalFlowInnerContainer_M_Pane();
     	this.add(innerthis);
-        t2bRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom"));
-        l2rRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right"));
-        noneRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Not_Expand"));
+        t2bRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom"));
+        l2rRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right"));
+        noneRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Not_Expand"));
         ButtonGroup bg = new ButtonGroup();
         bg.add(t2bRadioButton);
         bg.add(l2rRadioButton);
diff --git a/designer-realize/src/main/java/com/fr/design/expand/ExpandFatherPane.java b/designer-realize/src/main/java/com/fr/design/expand/ExpandFatherPane.java
index 3d9cf144e..fa1a77c2b 100644
--- a/designer-realize/src/main/java/com/fr/design/expand/ExpandFatherPane.java
+++ b/designer-realize/src/main/java/com/fr/design/expand/ExpandFatherPane.java
@@ -39,9 +39,9 @@ public abstract class ExpandFatherPane extends JPanel implements GlobalNameObser
     public ExpandFatherPane() {
         this.setLayout(new BorderLayout(0, LayoutConstants.VGAP_SMALL));
         comboBox = new UIComboBox(new String[]{
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_None"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"),
-                com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom")});
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_None"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"),
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom")});
         cardLayout = new CardLayout();
         customPane = new JPanel(cardLayout);
         customParentColumnRowPane = new ColumnRowPane() {
@@ -205,4 +205,4 @@ public abstract class ExpandFatherPane extends JPanel implements GlobalNameObser
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/expand/SortExpandAttrPane.java b/designer-realize/src/main/java/com/fr/design/expand/SortExpandAttrPane.java
index 1a3036020..3481863e5 100644
--- a/designer-realize/src/main/java/com/fr/design/expand/SortExpandAttrPane.java
+++ b/designer-realize/src/main/java/com/fr/design/expand/SortExpandAttrPane.java
@@ -1,20 +1,19 @@
 package com.fr.design.expand;
 
-import java.awt.BorderLayout;
-import java.awt.CardLayout;
-
-import javax.swing.*;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-
 import com.fr.base.BaseUtils;
 import com.fr.data.DataConstants;
 import com.fr.design.formula.TinyFormulaPane;
 import com.fr.design.gui.ibutton.UIButtonGroup;
-
 import com.fr.report.cell.cellattr.CellExpandAttr;
 import com.fr.stable.StringUtils;
 
+import javax.swing.Icon;
+import javax.swing.JPanel;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+import java.awt.BorderLayout;
+import java.awt.CardLayout;
+
 public class SortExpandAttrPane extends JPanel {
 	private UIButtonGroup sort_type_pane;
 	private TinyFormulaPane tinyFormulaPane;
@@ -29,7 +28,7 @@ public class SortExpandAttrPane extends JPanel {
 				{BaseUtils.readIcon("/com/fr/design/images/expand/asc.png"), BaseUtils.readIcon("/com/fr/design/images/expand/asc_selected.png")},
 				{BaseUtils.readIcon("/com/fr/design/images/expand/des.png"), BaseUtils.readIcon("/com/fr/design/images/expand/des_selected.png")}
 		};
-		String[] nameArray = { com.fr.design.i18n.Toolkit.i18nText("Sort-Original"), com.fr.design.i18n.Toolkit.i18nText("Sort-Ascending"), com.fr.design.i18n.Toolkit.i18nText("Sort-Descending") };
+		String[] nameArray = { com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Original"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Ascending"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Descending") };
         sort_type_pane = new UIButtonGroup(iconArray);
         sort_type_pane.setAllToolTips(nameArray);
 		sort_type_pane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ExpandD_Sort_After_Expand"));
@@ -89,4 +88,4 @@ public class SortExpandAttrPane extends JPanel {
 		}
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/headerfooter/HFAttributesEditDialog.java b/designer-realize/src/main/java/com/fr/design/headerfooter/HFAttributesEditDialog.java
index 68cbf9a1e..2a4f3e45f 100644
--- a/designer-realize/src/main/java/com/fr/design/headerfooter/HFAttributesEditDialog.java
+++ b/designer-realize/src/main/java/com/fr/design/headerfooter/HFAttributesEditDialog.java
@@ -246,7 +246,7 @@ public class HFAttributesEditDialog extends BasicPane {
     }
 
     private void addImagePaneToTab() {
-        this.tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Image"), this.imagePane);
+        this.tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image"), this.imagePane);
     }
 
     private void addNewLinePaneToTab() {
diff --git a/designer-realize/src/main/java/com/fr/design/headerfooter/HFComponent.java b/designer-realize/src/main/java/com/fr/design/headerfooter/HFComponent.java
index ccc6e2bb9..061e3af57 100644
--- a/designer-realize/src/main/java/com/fr/design/headerfooter/HFComponent.java
+++ b/designer-realize/src/main/java/com/fr/design/headerfooter/HFComponent.java
@@ -267,9 +267,9 @@ public class HFComponent extends UILabel implements MoveActionListener {
         } else if (hfElement.getClass().equals(DateHFElement.class)) {
             return com.fr.design.i18n.Toolkit.i18nText("Date");
         } else if (hfElement.getClass().equals(TimeHFElement.class)) {
-            return com.fr.design.i18n.Toolkit.i18nText("Time");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Time");
         } else if (hfElement.getClass().equals(ImageHFElement.class)) {
-            return com.fr.design.i18n.Toolkit.i18nText("Image");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image");
         } else if (hfElement.getClass().equals(NewLineHFElement.class)) {
             return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_HF_New_Line");
         }
diff --git a/designer-realize/src/main/java/com/fr/design/headerfooter/ImagePane.java b/designer-realize/src/main/java/com/fr/design/headerfooter/ImagePane.java
index a08fd4487..4fca75e87 100644
--- a/designer-realize/src/main/java/com/fr/design/headerfooter/ImagePane.java
+++ b/designer-realize/src/main/java/com/fr/design/headerfooter/ImagePane.java
@@ -14,7 +14,6 @@ import com.fr.design.style.background.image.ImagePreviewPane;
 import javax.swing.BorderFactory;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
-import javax.swing.SwingWorker;
 import java.awt.BorderLayout;
 import java.awt.Image;
 import java.awt.event.ActionEvent;
@@ -56,7 +55,7 @@ public class ImagePane extends BasicPane {
         } else {
             rightPane.setBorder(BorderFactory.createEmptyBorder(4, 2, 0, 2));
         }
-        UIButton selectImageButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture"));
+        UIButton selectImageButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture"));
         rightPane.add(selectImageButton, BorderLayout.NORTH);
         selectImageButton.addActionListener(selectPictureActionListener);
 
@@ -91,4 +90,4 @@ public class ImagePane extends BasicPane {
             ImgChooseWrapper.getInstance(imagePreviewPane, imageFileChooser, null).dealWithImageFile(returnVal);
         }
     };
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/javascript/ListenerEditPane.java b/designer-realize/src/main/java/com/fr/design/javascript/ListenerEditPane.java
index f2a1c8ee2..196da69c4 100644
--- a/designer-realize/src/main/java/com/fr/design/javascript/ListenerEditPane.java
+++ b/designer-realize/src/main/java/com/fr/design/javascript/ListenerEditPane.java
@@ -42,11 +42,11 @@ public class ListenerEditPane extends BasicBeanPane<Listener> {
 	// 发送邮件
 	private EmailPane emailPane;
 	
-	private static final String JS = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_JavaScript");
-	private static final String FORMSUBMIT = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript_Form_Submit");
-	private static final String DBCOMMIT = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript_Commit_To_Database");
-	private static final String CUSTOMACTION= com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"FR-Designer_JavaScript_Custom", "FR-Designer_RWA_Submit"});
-	private static final String EMAIL = com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email_sentEmail");
+	private static final String JS = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript");
+    private static final String FORMSUBMIT = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript_Form_Submit");
+    private static final String DBCOMMIT = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript_Commit_To_Database");
+	private static final String CUSTOMACTION= com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript_Custom_Submit");
+	private static final String EMAIL = com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Email_Sent_Email");
 	
 	private Listener listener;
 	
@@ -164,4 +164,4 @@ public class ListenerEditPane extends BasicBeanPane<Listener> {
 		this.listener.setAction(pane.updateBean());
 		return this.listener;
 	}
-}
+}
\ No newline at end of file
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityEditToolBarPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityEditToolBarPane.java
index cdaf08c93..f6f2b7a10 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityEditToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityEditToolBarPane.java
@@ -40,8 +40,7 @@ public class AuthorityEditToolBarPane extends AuthorityPropertyPane {
         super(HistoryTemplateListPane.getInstance().getCurrentEditingTemplate());
         this.setLayout(new BorderLayout());
         this.setBorder(null);
-        UILabel authorityTitle = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"FR-Designer_Permissions",
-                "FR-Designer_Edit"})) {
+        UILabel authorityTitle = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Permissions_Edit")) {
             @Override
             public Dimension getPreferredSize() {
                 return new Dimension(super.getPreferredSize().width, TITLE_HEIGHT);
@@ -95,7 +94,7 @@ public class AuthorityEditToolBarPane extends AuthorityPropertyPane {
             public void itemStateChanged(ItemEvent e) {
                 String selectedRole = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
                 initSelectedPathArray();
-                if (ComparatorUtils.equals(selectedRole, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role")) || selectedRole ==
+                if (ComparatorUtils.equals(selectedRole, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role")) || selectedRole ==
                         null || selectedPathArray == null) {
                     return;
                 }
@@ -148,12 +147,12 @@ public class AuthorityEditToolBarPane extends AuthorityPropertyPane {
             type = new UILabel();
             typePane = new JPanel(new BorderLayout());
             typePane.add(type, BorderLayout.CENTER);
-            type.setBorder(BorderFactory.createEmptyBorder(0,LEFT_GAP,0,0));
+            type.setBorder(BorderFactory.createEmptyBorder(0, LEFT_GAP, 0, 0));
             typePane.setBorder(BorderFactory.createLineBorder(Color.lightGray));
             name = new UILabel();
             namePane = new JPanel(new BorderLayout());
             namePane.add(name, BorderLayout.CENTER);
-            name.setBorder(BorderFactory.createEmptyBorder(0,LEFT_GAP,0,0));
+            name.setBorder(BorderFactory.createEmptyBorder(0, LEFT_GAP, 0, 0));
             namePane.setBorder(BorderFactory.createLineBorder(Color.lightGray));
             checkPane = new JPanel();
             checkPane.setLayout(new BorderLayout());
@@ -170,8 +169,8 @@ public class AuthorityEditToolBarPane extends AuthorityPropertyPane {
             double[] columnSize = {p, f};
             int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}};
             Component[][] components = new Component[][]{
-                    new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type") + "        ", SwingConstants.LEFT), typePane},
-                    new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WF_Name") + "        ", SwingConstants.LEFT), namePane},
+                    new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Type") + "        ", SwingConstants.LEFT), typePane},
+                    new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_WF_Name") + "        ", SwingConstants.LEFT), namePane},
                     new Component[]{checkPane, null},
             };
 
@@ -208,7 +207,7 @@ public class AuthorityEditToolBarPane extends AuthorityPropertyPane {
             if (name.getText() == "") {
                 type.setText("");
             } else {
-                type.setText(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ReportServerP-Toolbar", "FR-Designer_Form_Button"}));
+                type.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Toolbar_Button"));
             }
         }
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/AuthoritySheetEditedPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/AuthoritySheetEditedPane.java
index b56cf1bcd..e5e9f44dd 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/AuthoritySheetEditedPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/AuthoritySheetEditedPane.java
@@ -30,7 +30,7 @@ public class AuthoritySheetEditedPane extends AuthorityPropertyPane {
         super(HistoryTemplateListPane.getInstance().getCurrentEditingTemplate());
         this.setLayout(new BorderLayout());
         this.setBorder(null);
-        UILabel authorityTitle = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DashBoard-Potence", "Edit"})) {
+        UILabel authorityTitle = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_DashBoard_Potence")) {
             @Override
             public Dimension getPreferredSize() {
                 return new Dimension(super.getPreferredSize().width, TITLE_HEIGHT);
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityToolBarPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityToolBarPane.java
index 539a1e45c..9041a44e3 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/AuthorityToolBarPane.java
@@ -45,7 +45,9 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
     private static final int PRE_GAP = 9;
     private static final int COMBOX_WIDTH = 144;
 
-    private static final String[] CHOOSEITEM = new String[]{com.fr.design.i18n.Toolkit.i18nText("M-Page_Preview"), com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Face_Write", "PageSetup-Page"}), com.fr.design.i18n.Toolkit.i18nText("M-Data_Analysis")};
+    private static final String[] CHOOSEITEM = new String[]{com.fr.design.i18n.Toolkit.i18nText("M-Page_Preview"),
+            com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Face_Write_Page"),
+            com.fr.design.i18n.Toolkit.i18nText("M-Data_Analysis")};
     private UIComboBox choseComboBox;
     private ToolBarPane toolBarPane;
     private AuthorityEditToolBarPane authorityEditToolBarPane = null;
@@ -128,7 +130,7 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
     public AuthorityToolBarPane() {
         this.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 3));
         this.setBorder(BorderFactory.createEmptyBorder(0, PRE_GAP, 0, 0));
-        title = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ReportServerP-Toolbar", "Choose_Role"}));
+        title = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Toolbar_Choose_Role"));
         title.setHorizontalAlignment(SwingConstants.CENTER);
         this.add(title, 0);
         choseComboBox = new UIComboBox(CHOOSEITEM) {
@@ -182,8 +184,7 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
      */
     private void checkToolBarPaneEnable() {
         List<ToolBarButton> toolBarButtons = toolBarPane.getToolBarButtons();
-        boolean isnotEnable = ComparatorUtils.equals(title.getText(), com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Server", "ReportServerP-Toolbar", "Choose_Role"}))
-                && !WorkContext.getCurrent().isRoot();
+        boolean isnotEnable = ComparatorUtils.equals(title.getText(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Server_Toolbar_Choose_Role"))&& !WorkContext.getCurrent().isRoot();
         for (ToolBarButton button : toolBarButtons) {
             button.setEnabled(!isnotEnable);
         }
@@ -271,14 +272,14 @@ public class AuthorityToolBarPane<T extends WebContent> extends BasicBeanPane<Re
         this.remove(title);
         // 如果是空值就说明采用服务器配置了
         if (reportWebAttr == null || this.getWebContent(reportWebAttr) == null) {
-            title = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Server", "ReportServerP-Toolbar", "Choose_Role"}));
+            title = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ServerToolbar_Choose_Role"));
             populateServerSettings();
             this.add(title, 0);
             return;
         }
         // 模板设置
         T webContent = this.getWebContent(reportWebAttr);
-        title = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"the_template", "ReportServerP-Toolbar", "Choose_Role"}));
+        title = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Template_Toolbar_Choose_Role"));
         this.add(title, 0);
         populate(webContent.getToolBarManagers());
     }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java
index decec2544..42d4f1d39 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java
@@ -100,7 +100,7 @@ public class CellElementPropertyPane extends DockingView {
         cellElementEditPane = new CellElementEditPane();
         cellElementEditPane.addTitleChangeListner(titleListener);
         titlePane = new JPanel(new BorderLayout());
-        title = new UILabel(this.getViewTitle() + '-' + com.fr.design.i18n.Toolkit.i18nText("ExpandD-Expand_Attribute")) {
+        title = new UILabel(this.getViewTitle() + '-' + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Expand_Attribute")) {
             private static final long serialVersionUID = 1L;
 
             @Override
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java b/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java
index e6ab7dc10..8832ec4c3 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java
@@ -4,7 +4,6 @@
 package com.fr.design.mainframe;
 
 import com.fr.base.BaseFormula;
-import com.fr.base.BaseUtils;
 import com.fr.base.DynamicUnitList;
 import com.fr.base.FRContext;
 import com.fr.base.Formula;
@@ -1049,9 +1048,9 @@ public abstract class ElementCasePane<T extends TemplateElementCase> extends Tar
             return popupMenu;
         }
 
-        InsertRowAction insertRowAction = new InsertRowAction(this, com.fr.design.i18n.Toolkit.i18nText("Utils-Insert_Row"));
+        InsertRowAction insertRowAction = new InsertRowAction(this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Insert_Row"));
 
-        DeleteRowAction deleteRowAction = new DeleteRowAction(this, com.fr.design.i18n.Toolkit.i18nText("Utils-Delete_Row"));
+        DeleteRowAction deleteRowAction = new DeleteRowAction(this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Delete_Row"));
 
         RowHeightAction rowHeightAction = new RowHeightAction(this, selectedRows);
 
@@ -1142,9 +1141,9 @@ public abstract class ElementCasePane<T extends TemplateElementCase> extends Tar
             return popupMenu;
         }
 
-        InsertColumnAction insertColumnAction = new InsertColumnAction(this, com.fr.design.i18n.Toolkit.i18nText("Utils-Insert_Column"));
+        InsertColumnAction insertColumnAction = new InsertColumnAction(this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Insert_Column"));
 
-        DeleteColumnAction deleteColumnAction = new DeleteColumnAction(this, com.fr.design.i18n.Toolkit.i18nText("Utils-Delete_Column"));
+        DeleteColumnAction deleteColumnAction = new DeleteColumnAction(this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Delete_Column"));
 
         ColumnWidthAction columnWidthAction = new ColumnWidthAction(this, selectedColumn);
 
@@ -1237,7 +1236,7 @@ public abstract class ElementCasePane<T extends TemplateElementCase> extends Tar
      */
     public ShortCut[] shortCuts4Authority() {
         return new ShortCut[]{
-                new NameSeparator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DashBoard-Potence", "Edit"})),
+                new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_DashBoard_Potence")),
                 DesignerMode.isAuthorityEditing() ? new ExitAuthorityEditAction(this) : new AllowAuthorityEditAction(this),
         };
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java
index be277c01e..f2dea0e7e 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java
@@ -193,7 +193,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
     private boolean setAuthorityColumn() {
         initSelectedPathArray();
         String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
-        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role"))) {
+        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role"))) {
             return false;
         }
         if (selectedRoles == null) {
@@ -222,7 +222,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
     private boolean setAuthorityRow() {
         initSelectedPathArray();
         String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
-        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role"))) {
+        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role"))) {
             return false;
         }
         if (selectedRoles == null) {
@@ -252,7 +252,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
     private boolean setLFloatAuthorityStyle() {
         initSelectedPathArray();
         String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
-        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role"))) {
+        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role"))) {
             return false;
         }
         if (selectedRoles == null) {
@@ -274,7 +274,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
     private boolean setAuthorityStyle(int type) {
         initSelectedPathArray();
         String selectedRoles = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
-        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Role")) ||
+        if (ComparatorUtils.equals(selectedRoles, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Role")) ||
                 selectedRoles == null || selectedPathArray == null) {
             return false;
         }
@@ -427,7 +427,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
      */
     public void populateType() {
         if (selectionType == CellSelection.NORMAL) {
-            type.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"));
+            type.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"));
         } else if (selectionType == CellSelection.CHOOSE_ROW) {
             type.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Row"));
         } else if (selectionType == CellSelection.CHOOSE_COLUMN) {
@@ -683,8 +683,8 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
         double f = TableLayout.FILL;
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget"), SwingConstants.LEFT), widgetVisible},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget"), SwingConstants.LEFT), widgetVisible},
                 new Component[]{null, widgetAvailable}
         };
         double[] rowSize = {p, p, p};
@@ -867,12 +867,12 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[hyperlinkCheckBoxes.length + 1][];
         if (linkGroup.size() == 1) {
-            components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes};
-            components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
+            components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes};
+            components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
 
         } else {
-            components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
-            components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(linkGroup.getNameHyperlink(0).getName() + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
+            components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
+            components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(linkGroup.getNameHyperlink(0).getName() + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
             for (int i = 1; i < hyperlinkCheckBoxes.length; i++) {
                 components[i + 1] = new Component[]{null, hyperlinkCheckBoxes[i] = new UICheckBox(linkGroup.getNameHyperlink(i).getName() + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
             }
@@ -898,8 +898,8 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
         double f = TableLayout.FILL;
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[2][];
-        components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes};
-        components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
+        components[0] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"), SwingConstants.LEFT), cellElementVisibleCheckBoxes};
+        components[1] = new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Hyperlink"), SwingConstants.LEFT), hyperlinkCheckBoxes[0] = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Visible"))};
         hyperlinkCheckBoxes[0].setEnabled(cellElementVisibleCheckBoxes.isSelected());
         addHyperlinkListener();
         double[] rowSize = {p, p};
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/JWorkBook.java b/designer-realize/src/main/java/com/fr/design/mainframe/JWorkBook.java
index 6fff792db..fc1945daf 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/JWorkBook.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/JWorkBook.java
@@ -681,7 +681,7 @@ public class JWorkBook extends JTemplate<WorkBook, WorkBookUndoState> {
     @Override
     public ShortCut[] shortCuts4Authority() {
         return new ShortCut[]{
-                new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Permissions_Edition")),
+                new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Permissions_Edition")),
                 DesignerMode.isAuthorityEditing() ? new ExitAuthorityEditAction(this) : new AllowAuthorityEditAction(this),
         };
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/ReportComponent.java b/designer-realize/src/main/java/com/fr/design/mainframe/ReportComponent.java
index ea74cc7b3..1957d68bc 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/ReportComponent.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/ReportComponent.java
@@ -68,7 +68,7 @@ public abstract class ReportComponent<T extends TemplateReport, E extends Elemen
 
     public ShortCut[] shortCuts4Authority() {
         return new ShortCut[]{
-                new NameSeparator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DashBoard-Potence", "Edit"})),
+                new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_DashBoard_Potence")),
                 DesignerMode.isAuthorityEditing() ? new ExitAuthorityEditAction(this) : new AllowAuthorityEditAction(this),
         };
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/SheetAuthorityEditPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/SheetAuthorityEditPane.java
index a853f7883..e3a9ff86d 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/SheetAuthorityEditPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/SheetAuthorityEditPane.java
@@ -41,7 +41,7 @@ public class SheetAuthorityEditPane extends AuthorityEditPane {
         @Override
         public void itemStateChanged(ItemEvent e) {
             String selectedRole = ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName();
-            if (ComparatorUtils.equals(selectedRole, com.fr.design.i18n.Toolkit.i18nText("Role"))) {
+            if (ComparatorUtils.equals(selectedRole, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Role"))) {
                 return;
             }
             if (selectedRole == null) {
@@ -95,8 +95,8 @@ public class SheetAuthorityEditPane extends AuthorityEditPane {
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type") + "        ", SwingConstants.LEFT), typePane},
-                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WF_Name") + "        ", SwingConstants.LEFT), namePane},
+                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Type") + "        ", SwingConstants.LEFT), typePane},
+                new Component[]{new UILabel(" " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_WF_Name") + "        ", SwingConstants.LEFT), namePane},
                 new Component[]{checkPane, null},
         };
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java
index 03ea5fe0a..be80f45bf 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/SheetNameTabPane.java
@@ -769,7 +769,7 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
 
     protected abstract class SheetInsertAction extends UpdateAction {
         SheetInsertAction() {
-            this.setName(com.fr.design.i18n.Toolkit.i18nText("Insert") + getTemplateReportType());
+            this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert") + getTemplateReportType());
             this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/add.png"));
         }
 
@@ -863,10 +863,10 @@ public class SheetNameTabPane extends JComponent implements MouseListener, Mouse
             }
             int count = reportComposite.getEditingWorkBook().getReportCount();
             if (count <= 1) {
-                JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("At_least_one_visual_worksheet") + "!");
+                JOptionPane.showMessageDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_At_Least_One_Visual_Worksheet") + "!");
                 return;
             }
-            int returnValue = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("Des-Remove_WorkSheet"), ProductConstants.APP_NAME,
+            int returnValue = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(reportComposite), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Des_Remove_Work_Sheet"), ProductConstants.APP_NAME,
                     JOptionPane.OK_CANCEL_OPTION);
             if (returnValue == JOptionPane.OK_OPTION) {
                 if (DesignerContext.getFormatState() != DesignerContext.FORMAT_STATE_NULL) {
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/ActionSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/ActionSearchManager.java
index 5b8d72a87..b17b14d06 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/ActionSearchManager.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/ActionSearchManager.java
@@ -62,7 +62,7 @@ public class ActionSearchManager implements AlphaFineSearchProvider {
         lessModelList = new SearchResult();
         moreModelList = new SearchResult();
         if (StringUtils.isBlank(searchText)) {
-            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set")));
+            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set")));
             return lessModelList;
         }
         if (DesignerEnvManager.getEnvManager().getAlphaFineConfigManager().isContainAction()) {
@@ -84,10 +84,10 @@ public class ActionSearchManager implements AlphaFineSearchProvider {
             if (result.isEmpty()) {
                 return lessModelList;
             } else if (result.size() < AlphaFineConstants.SHOW_SIZE + 1) {
-                lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set")));
+                lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set")));
                 lessModelList.addAll(result);
             } else {
-                lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Set"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.ACTION));
+                lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.ACTION));
                 lessModelList.addAll(result.subList(0, AlphaFineConstants.SHOW_SIZE));
                 moreModelList.addAll(result.subList(AlphaFineConstants.SHOW_SIZE, result.size()));
             }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/DocumentSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/DocumentSearchManager.java
index 115a30329..59595229a 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/DocumentSearchManager.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/DocumentSearchManager.java
@@ -54,7 +54,7 @@ public class DocumentSearchManager implements AlphaFineSearchProvider {
         lessModelList = new SearchResult();
         moreModelList = new SearchResult();
         if (StringUtils.isBlank(searchText)) {
-            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP")));
+            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help")));
             return lessModelList;
         }
         if (DesignerEnvManager.getEnvManager().getAlphaFineConfigManager().isContainDocument()) {
@@ -82,10 +82,10 @@ public class DocumentSearchManager implements AlphaFineSearchProvider {
                     if (searchResult.isEmpty()) {
                         return lessModelList;
                     } else if (searchResult.size() < AlphaFineConstants.SHOW_SIZE + 1) {
-                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP")));
+                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help")));
                         lessModelList.addAll(searchResult);
                     } else {
-                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.DOCUMENT));
+                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.DOCUMENT));
                         lessModelList.addAll(searchResult.subList(0, AlphaFineConstants.SHOW_SIZE));
                         moreModelList.addAll(searchResult.subList(AlphaFineConstants.SHOW_SIZE, searchResult.size()));
                     }
@@ -104,7 +104,7 @@ public class DocumentSearchManager implements AlphaFineSearchProvider {
      */
     private SearchResult getNoConnectList() {
         SearchResult result = new SearchResult();
-        result.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_COMMUNITY_HELP")));
+        result.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Community_Help")));
         result.add(AlphaFineHelper.NO_CONNECTION_MODEL);
         return result;
     }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java
index 79ff8986b..d72859891 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java
@@ -68,7 +68,7 @@ public class FileSearchManager implements AlphaFineSearchProvider {
         this.moreModelList = new SearchResult();
         this.searchText = dealWithSearchText(searchText);
         if (StringUtils.isBlank(this.searchText) || ComparatorUtils.equals(this.searchText, DS_NAME)) {
-            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Templates")));
+            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Templates")));
             return lessModelList;
         }
         AlphaFineHelper.checkCancel();
@@ -79,10 +79,10 @@ public class FileSearchManager implements AlphaFineSearchProvider {
         if (filterModelList.isEmpty()) {
             return new SearchResult();
         } else if (filterModelList.size() < AlphaFineConstants.SHOW_SIZE + 1) {
-            lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Templates")));
+            lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Templates")));
             lessModelList.addAll(filterModelList);
         } else {
-            lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Templates"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.FILE));
+            lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Templates"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.FILE));
             lessModelList.addAll(filterModelList.subList(0, AlphaFineConstants.SHOW_SIZE));
             moreModelList.addAll(filterModelList.subList(AlphaFineConstants.SHOW_SIZE, filterModelList.size()));
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java
index 12ff0e005..975e94311 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java
@@ -99,7 +99,7 @@ public class PluginSearchManager implements AlphaFineSearchProvider {
         this.lessModelList = new SearchResult();
         this.moreModelList = new SearchResult();
         if (StringUtils.isBlank(searchText)) {
-            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Addon")));
+            lessModelList.add(new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Plugin_Addon")));
             return lessModelList;
         }
         if (DesignerEnvManager.getEnvManager().getAlphaFineConfigManager().isContainPlugin()) {
@@ -128,10 +128,10 @@ public class PluginSearchManager implements AlphaFineSearchProvider {
                     if (searchResult.isEmpty()) {
                         return this.lessModelList;
                     } else if (searchResult.size() < AlphaFineConstants.SHOW_SIZE + 1) {
-                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Addon")));
+                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Plugin_Addon")));
                         lessModelList.addAll(searchResult);
                     } else {
-                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Addon"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.PLUGIN));
+                        lessModelList.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Plugin_Addon"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_AlphaFine_ShowAll"), true, CellType.PLUGIN));
                         lessModelList.addAll(searchResult.subList(0, AlphaFineConstants.SHOW_SIZE));
                         moreModelList.addAll(searchResult.subList(AlphaFineConstants.SHOW_SIZE, searchResult.size()));
                     }
@@ -147,7 +147,7 @@ public class PluginSearchManager implements AlphaFineSearchProvider {
 
     private SearchResult getNoConnectList() {
         SearchResult result = new SearchResult();
-        result.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer-Plugin_Addon")));
+        result.add(0, new MoreModel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Plugin_Addon")));
         result.add(AlphaFineHelper.NO_CONNECTION_MODEL);
         return result;
     }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/app/CptApp.java b/designer-realize/src/main/java/com/fr/design/mainframe/app/CptApp.java
index 86d22d287..a381cd6d4 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/app/CptApp.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/app/CptApp.java
@@ -47,7 +47,7 @@ class CptApp extends AbstractWorkBookApp {
         if (XMLEncryptUtils.isCptEncoded() &&
             !XMLEncryptUtils.checkVaild(DesignerEnvManager.getEnvManager().getEncryptionKey())) {
             if (!new DecodeDialog(file).isPwdRight()) {
-                FRContext.getLogger().error(com.fr.design.i18n.Toolkit.i18nText("ECP-error_pwd"));
+                FRContext.getLogger().error(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ECP_Error_Pwd"));
                 return new WorkBook();
             }
         }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java
index 1ddaea126..be62fb584 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java
@@ -147,7 +147,7 @@ public class CellElementEditPane extends BasicPane {
                     ePane.fireTargetModified();
                 }
             } else {
-                DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"FR-Designer_Not_use_a_cell_attribute_table_editing", "FR-Designer_Float_Element"}) + "!");
+                DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Float_Element_Edit_Tips") + "!");
             }
             ePane.setSupportDefaultParentCalculate(false);
         }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/QuickEditorRegion.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/QuickEditorRegion.java
index a5b8ce4ee..77dcebef1 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/QuickEditorRegion.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/QuickEditorRegion.java
@@ -32,7 +32,7 @@ public class QuickEditorRegion extends JPanel {
     public static JPanel getEmptyEditor() {
         if (EMPTY == null) {
             EMPTY = new JPanel(new BorderLayout());
-            UILabel content = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DataFunction-None", "HJS-Message", "Form-Widget_Property_Table"}) + "!");
+            UILabel content = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_None_Message_Property_Table") + "!");
             content.setBorder(BorderFactory.createEmptyBorder(0, 70, 0, 0));
             EMPTY.add(content, BorderLayout.CENTER);
         }
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java
index 94cb796bb..f6e272217 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java
@@ -43,7 +43,7 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
      * @return
      */
     public JPanel createContentPane() {
-        String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("ExpandD-Not_Expand"), com.fr.design.i18n.Toolkit.i18nText("Utils-Top_to_Bottom"), com.fr.design.i18n.Toolkit.i18nText("Utils-Left_to_Right")};
+        String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Not_Expand"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Top_To_Bottom"), com.fr.design.i18n.Toolkit.i18nText("FIne-Design_Report_Utils_Left_To_Right")};
         Icon[][] iconArray = {
                 {BaseUtils.readIcon("/com/fr/design/images/expand/none16x16.png"), BaseUtils.readIcon("/com/fr/design/images/expand/none16x16_selected@1x.png")},
                 {BaseUtils.readIcon("/com/fr/design/images/expand/vertical.png"), BaseUtils.readIcon("/com/fr/design/images/expand/vertical_selected@1x.png")},
@@ -54,8 +54,8 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
         expandDirectionButton.setAllToolTips(nameArray);
         leftFatherPane = new ExpandLeftFatherPane();
         rightFatherPane = new ExpandUpFatherPane();
-        horizontalExpandableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Horizontal_Extendable"));
-        verticalExpandableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Vertical_Extendable"));
+        horizontalExpandableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Horizontal_Extendable"));
+        verticalExpandableCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Vertical_Extendable"));
         sortAfterExpand = new SortExpandAttrPane();
         initAllNames();
         return layoutPane();
@@ -73,7 +73,7 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
         layoutPane = new JPanel(new BorderLayout());
         basicPane = new JPanel();
         seniorPane = new JPanel();
-        basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), 223, 24, basicPane());
+        basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), 223, 24, basicPane());
         seniorPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Advanced"), 223, 24, seniorPane());
         layoutPane.add(basicPane, BorderLayout.NORTH);
         layoutPane.add(seniorPane, BorderLayout.CENTER);
@@ -164,7 +164,7 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
     @Override
     public String getIconPath() {
 //		return "com/fr/design/images/expand/cellAttr.gif";
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Expand");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Expand");
     }
 
 
@@ -237,7 +237,7 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
      * @return
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("ExpandD-Expand_Attribute");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Expand_Attribute");
     }
 
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java
index b5e5aa7ad..c02b5f0c1 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java
@@ -90,7 +90,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
         downPane.add(new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Auto_Adjust_Size"), HEAD_WDITH, HEAD_HEIGTH, seniorPane()), BorderLayout.NORTH);
         downPane.add(new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Pagination"), HEAD_WDITH, HEAD_HEIGTH, pagePane()), BorderLayout.CENTER);
         JPanel contentPane = new JPanel(new BorderLayout(0, 0));
-        contentPane.add(new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), HEAD_WDITH, HEAD_HEIGTH, basicPane()), BorderLayout.NORTH);
+        contentPane.add(new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), HEAD_WDITH, HEAD_HEIGTH, basicPane()), BorderLayout.NORTH);
         contentPane.add(downPane, BorderLayout.CENTER);
         initAllNames();
         return contentPane;
@@ -256,7 +256,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
         previewCellContent = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Preview_Cell_Content"));
         printAndExportContent = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Print_Content"));
         printAndExportBackground = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Print_Background"));
-        showContent = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Show_As_Image"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Show_As_HTML"),
+        showContent = new UIComboBox(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Show_As_Image"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Show_As_HTML"),
                 com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Show_As_Download")});
         final CardLayout fileNameLayout = new CardLayout();
         final JPanel fileNamePane = new JPanel(fileNameLayout);
@@ -291,7 +291,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
         noAutoRadioButton.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_No_Auto_Adjust"));
         autoHeightRadioButton.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Auto_Adjust_Height"));
         autoWidthRadioButton.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Auto_Adjust_Width"));
-        previewCellContent.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        previewCellContent.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         printAndExportContent.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Print_Content"));
         printAndExportBackground.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CellWrite_Print_Background"));
         showContent.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Show_Content"));
@@ -311,7 +311,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
     @Override
     public String getIconPath() {
 //        return "com/fr/design/images/m_format/cellstyle/otherset.png";
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other");
     }
 
     @Override
@@ -357,7 +357,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
             showContent.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Show_As_Download"));
             fileNameTextField.setText(cellGUIAttr.getFileName());
         } else {
-            showContent.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DEFAULT"));
+            showContent.setSelectedItem(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_DEFAULT"));
         }
         tooltipTextField.setText(cellGUIAttr.getTooltipText());
         CellPageAttr cellPageAttr = cellElement.getCellPageAttr(); // 分页
@@ -427,7 +427,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
             }
         }
 
-        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"))) {
+        if (ComparatorUtils.equals(getGlobalName(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"))) {
             cellGUIAttr.setPreviewContent(previewCellContent.isSelected());
         }
 
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java
index 1f46f5ff1..db369c1ef 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java
@@ -56,7 +56,7 @@ public class CellStylePane extends AbstractCellAttrPane {
     @Override
     public String getIconPath() {
 //		return "com/fr/design/images/m_format/cell.png";
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Style");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Style");
     }
 
 
@@ -121,11 +121,11 @@ public class CellStylePane extends AbstractCellAttrPane {
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Style"));
+        return com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Style"));
     }
 
     public void setSelectedByIds(int level, String... id) {
         stylePane.setSelctedByName(id[level]);
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/CustomStylePane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/CustomStylePane.java
index 960c20d8d..2d7277239 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/CustomStylePane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/CustomStylePane.java
@@ -59,7 +59,7 @@ public class CustomStylePane extends MultiTabPane<Style> {
      * @return
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Custom", "Style"});
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Style");
     }
 
     /**
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/PredefinedStylePane.java b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/PredefinedStylePane.java
index 3f889ff42..dc7856555 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/PredefinedStylePane.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/style/PredefinedStylePane.java
@@ -124,7 +124,7 @@ public class PredefinedStylePane extends FurtherBasicBeanPane<NameStyle> impleme
      * @return 标题
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"PageSetup-Predefined", "Style"});
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Predefined_Style");
     }
 
     /**
diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/form/FormElementCaseDesigner.java b/designer-realize/src/main/java/com/fr/design/mainframe/form/FormElementCaseDesigner.java
index 6578caf00..ba883874c 100644
--- a/designer-realize/src/main/java/com/fr/design/mainframe/form/FormElementCaseDesigner.java
+++ b/designer-realize/src/main/java/com/fr/design/mainframe/form/FormElementCaseDesigner.java
@@ -94,7 +94,7 @@ public class FormElementCaseDesigner<T extends FormElementCaseProvider, E extend
     @Override
     public ShortCut[] shortCuts4Authority() {
         return new ShortCut[]{
-                new NameSeparator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DashBoard-Potence", "Edit"})),
+                new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_DashBoard_Potence")),
                 DesignerMode.isAuthorityEditing() ? new ExitAuthorityEditAction(this) : new AllowAuthorityEditAction(this),
         };
 
diff --git a/designer-realize/src/main/java/com/fr/design/parameter/ParameterDefinitePane.java b/designer-realize/src/main/java/com/fr/design/parameter/ParameterDefinitePane.java
index 9278c6244..17598097e 100644
--- a/designer-realize/src/main/java/com/fr/design/parameter/ParameterDefinitePane.java
+++ b/designer-realize/src/main/java/com/fr/design/parameter/ParameterDefinitePane.java
@@ -481,7 +481,7 @@ public class ParameterDefinitePane extends JPanel implements ToolBarMenuDockPlus
         if (!DesignerMode.isAuthorityEditing()) {
             tplMenu.addShortCut(new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_WorkBook")));
             tplMenu.addShortCut(new ReportParameterAction(workBook));
-            tplMenu.addShortCut(new NameSeparator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"DashBoard-Potence", "Edit"})));
+            tplMenu.addShortCut(new NameSeparator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_DashBoard_Potence")));
             tplMenu.addShortCut(new AllowAuthorityEditAction(workBook));
         } else {
             tplMenu.addShortCut(new ExitAuthorityEditAction(workBook));
diff --git a/designer-realize/src/main/java/com/fr/design/present/BarCodePane.java b/designer-realize/src/main/java/com/fr/design/present/BarCodePane.java
index 93a37e3a4..0df35672a 100644
--- a/designer-realize/src/main/java/com/fr/design/present/BarCodePane.java
+++ b/designer-realize/src/main/java/com/fr/design/present/BarCodePane.java
@@ -68,7 +68,7 @@ public class BarCodePane extends FurtherBasicBeanPane<BarcodePresent> {
         this.barWidthSpinner.setPreferredSize(new Dimension(60, 20));
         this.barHeightSpinner.setPreferredSize(new Dimension(60, 20));
         JPanel borderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-        TitledBorder titledBorder = new TitledBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Sample"), 4, 2, this.getFont(), UIConstants.LINE_COLOR);
+        TitledBorder titledBorder = new TitledBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Sample"), 4, 2, this.getFont(), UIConstants.LINE_COLOR);
         borderPane.setBorder(titledBorder);
         borderPane.add(barCodePreviewPane, BorderLayout.CENTER);
         setTypeComboBox();
@@ -76,11 +76,11 @@ public class BarCodePane extends FurtherBasicBeanPane<BarcodePresent> {
         RCodesizespinner = new UISpinner(1,6,1,2);
         RCodeVersionComboBox = new UIComboBox();
         RCodeErrorCorrectComboBox = new UIComboBox();
-        typeSetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Type_Set"), UILabel.LEFT);
+        typeSetLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Type_Set"), UILabel.LEFT);
         initVersionComboBox();
         initErrorCorrectComboBox();
 
-        drawingTextCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("BarCodeD-Drawing_Text"));
+        drawingTextCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bar_CodeD_Drawing_Text"));
         drawingTextCheckBox.setSelected(true);
         double p = TableLayout.PREFERRED;
         double f = TableLayout.FILL;
@@ -225,7 +225,7 @@ public class BarCodePane extends FurtherBasicBeanPane<BarcodePresent> {
     }
 
     private void initVersionComboBox() {
-        String[] array = {com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Auto", "Choose"}), "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"};
+        String[] array = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Auto_Choose"), "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"};
         initcombobox(this.RCodeVersionComboBox, array, 0);
     }
 
diff --git a/designer-realize/src/main/java/com/fr/design/present/CurrencyLinePane.java b/designer-realize/src/main/java/com/fr/design/present/CurrencyLinePane.java
index 5ce431519..05d26b6ed 100644
--- a/designer-realize/src/main/java/com/fr/design/present/CurrencyLinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/present/CurrencyLinePane.java
@@ -85,7 +85,7 @@ public class CurrencyLinePane extends FurtherBasicBeanPane<CurrencyLinePresent>
         CurrencyLinePreviewPane = new CurrencyLinePreviewPane();
         CurrencyLinePreviewPane.setPreferredSize(new Dimension(0, 145));
         JPanel borderPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-        TitledBorder titledBorder = new TitledBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Sample"), 4, 2, this.getFont(), UIConstants.LINE_COLOR);
+        TitledBorder titledBorder = new TitledBorder(new UIRoundedBorder(UIConstants.LINE_COLOR, 1, 5), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Sample"), 4, 2, this.getFont(), UIConstants.LINE_COLOR);
         borderPane.setBorder(titledBorder);
         borderPane.add(CurrencyLinePreviewPane, BorderLayout.CENTER);
 
@@ -102,7 +102,7 @@ public class CurrencyLinePane extends FurtherBasicBeanPane<CurrencyLinePresent>
         Component[][] components = new Component[][]{
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Data"), UILabel.LEFT), textField},
                 new Component[]{borderPane, null},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("IntPart"), UILabel.LEFT), groupPane(intPartSpinner)},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_IntPart"), UILabel.LEFT), groupPane(intPartSpinner)},
                 new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("DeciPart"), UILabel.LEFT), groupPane(deciPartSpinner)}
 
         };
@@ -124,7 +124,7 @@ public class CurrencyLinePane extends FurtherBasicBeanPane<CurrencyLinePresent>
      *    @return 同上
      */
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Currency_Line");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Currency_Line");
     }
 
     /**
@@ -230,4 +230,4 @@ public class CurrencyLinePane extends FurtherBasicBeanPane<CurrencyLinePresent>
         return new CurrencyLinePresent(currencylineAttr);
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/report/ExcelExportPane.java b/designer-realize/src/main/java/com/fr/design/report/ExcelExportPane.java
index ea478abdb..9b1e84036 100644
--- a/designer-realize/src/main/java/com/fr/design/report/ExcelExportPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/ExcelExportPane.java
@@ -21,7 +21,7 @@ public class ExcelExportPane extends BasicPane {
 	private UITextField passwordField;
 	private UICheckBox protectedWord;
 	private UITextField protectedField;
-	
+
 	private JPanel passwordWritePane;
 	private JPanel wordPane;
 
@@ -44,14 +44,14 @@ public class ExcelExportPane extends BasicPane {
 		isExportHidenColumn = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ReportD_Export_Hided_Column"));
 		isExportHidenColumn.setSelected(false);
 		rowAndColumnPane.add(isExportHidenColumn);
-		
+
 		JPanel passwordPane =FRGUIPaneFactory.createNormalFlowInnerContainer_M_Pane();
 		isNeedPassword = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_IS_Need_Password"), false);
 		passwordPane.add(isNeedPassword);
 		northPane.add(passwordPane);
 		passwordWritePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 		passwordPane.add(passwordWritePane);
-		UILabel passwordLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"File", "Password"}) + ":");
+		UILabel passwordLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_File_Password") + ":");
 		passwordWritePane.add(passwordLabel);
 		passwordField = new UITextField(11);
 		passwordWritePane.add(passwordField);
@@ -66,12 +66,12 @@ public class ExcelExportPane extends BasicPane {
 			}
 
 		});
-		
-		
+
+
 		JPanel protectedWordPane =FRGUIPaneFactory.createNormalFlowInnerContainer_M_Pane();
-		protectedWord = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Protected", "Password"}));
+		protectedWord = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Protected_Password"));
 		wordPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
-		wordPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Sheet", "Password"}) + ":"));
+		wordPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sheet_Password") + ":"));
 		protectedField = new UITextField(11);
 		wordPane.add(protectedField);
 		protectedWordPane.add(protectedWord);
@@ -89,7 +89,7 @@ public class ExcelExportPane extends BasicPane {
 
 		});
 	}
-	
+
 	@Override
 	protected String title4PopupWindow() {
 		return "ExcelExport";
@@ -122,7 +122,7 @@ public class ExcelExportPane extends BasicPane {
 	public ExcelExportAttr update() {
 
 		ExcelExportAttr excelExportAttr = new ExcelExportAttr();
-		
+
 		excelExportAttr.setExportHidedColumn(isExportHidenColumn.isSelected());
 		excelExportAttr.setExportHidedRow(isExportHidedRow.isSelected());
 		if (!isNeedPassword.isSelected()) {
diff --git a/designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java b/designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java
index 180d2140d..6ff3a6d11 100644
--- a/designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/LayerReportPane.java
@@ -49,12 +49,12 @@ public class LayerReportPane extends BasicBeanPane<LayerReportAttr> {
 
 	protected void initComponents() {
 		this.setLayout(FRGUIPaneFactory.createBorderLayout());
-		JPanel outlayerReportPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Report_Engine", "Attribute"}));
+		JPanel outlayerReportPane = FRGUIPaneFactory.createTitledBorderPane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Report_Engine_Attribute"));
 		JPanel layerReportPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_M_Pane();
 		this.add(outlayerReportPane);
 		outlayerReportPane.add(layerReportPane);
 		JPanel isLayerReportBoxPanle = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
-		isLayerReportBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Execute_Report_by_Layer_Engine"));
+		isLayerReportBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Execute_Report_by_Layer_Engine"));
 		isLayerReportBox.setSelected(false);
 		isLayerReportBoxPanle.add(isLayerReportBox);
 		layerReportPane.add(isLayerReportBoxPanle);
@@ -113,7 +113,7 @@ public class LayerReportPane extends BasicBeanPane<LayerReportAttr> {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Report_Engine", "Attribute"});
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Report_Engine_Attribute");
 	}
 
 	@Override
@@ -150,7 +150,7 @@ public class LayerReportPane extends BasicBeanPane<LayerReportAttr> {
 	public void checkValid() throws Exception {
 		if (isLayerReportBox.isSelected()) {
 			if (!ReportUtils.isLayerReportUsable(worksheet)) {
-				int value = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("After_Changed_Some_Attributes_Are_Different") + "?",
+				int value = JOptionPane.showConfirmDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_After_Changed_Some_Attributes_Are_Different") + "?",
 						ProductConstants.PRODUCT_NAME, JOptionPane.YES_NO_OPTION);
 				if (value != JOptionPane.YES_OPTION) {
 					isLayerReportBox.setSelected(false);
diff --git a/designer-realize/src/main/java/com/fr/design/report/PDFExportPane.java b/designer-realize/src/main/java/com/fr/design/report/PDFExportPane.java
index d6eddbcf7..87f3d3fcf 100644
--- a/designer-realize/src/main/java/com/fr/design/report/PDFExportPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/PDFExportPane.java
@@ -40,7 +40,7 @@ public class PDFExportPane extends BasicPane {
 		northPane.add(passwordPane);
 		passwordWritePane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 		passwordPane.add(passwordWritePane);
-		UILabel passwordLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"File", "Password"}) + ":");
+		UILabel passwordLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_File_Password") + ":");
 		passwordWritePane.add(passwordLabel);
 		passwordField = new UITextField(11);
 		passwordWritePane.add(passwordField);
diff --git a/designer-realize/src/main/java/com/fr/design/report/PageSetupPane.java b/designer-realize/src/main/java/com/fr/design/report/PageSetupPane.java
index 058c3ba1c..c0f98ec62 100644
--- a/designer-realize/src/main/java/com/fr/design/report/PageSetupPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/PageSetupPane.java
@@ -277,7 +277,7 @@ public class PageSetupPane extends BasicPane {
 
             JPanel marginLeftTextPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
             marginLeftPane.add(marginLeftTextPane);
-            marginLeftTextPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Top") + ":"));
+            marginLeftTextPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Top_Duplicate") + ":"));
             marginTopUnitFieldPane = new UnitFieldPane(Constants.UNIT_MM);
             marginLeftTextPane.add(marginTopUnitFieldPane);
             JPanel marginLeftUnitPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
diff --git a/designer-realize/src/main/java/com/fr/design/report/RowColumnPane.java b/designer-realize/src/main/java/com/fr/design/report/RowColumnPane.java
index 989b0ba8e..94267695e 100644
--- a/designer-realize/src/main/java/com/fr/design/report/RowColumnPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/RowColumnPane.java
@@ -38,9 +38,9 @@ public class RowColumnPane extends BasicPane {
         this.add(centerPane, BorderLayout.CENTER);
         centerPane.setBorder(BorderFactory.createEmptyBorder(6, 12, 6, 8));
 
-        entireRowRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("EditRC-Entire_row"));
+        entireRowRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_RC_Entire_Row"));
         entireRowRadioButton.setMnemonic('r');
-        entireColRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("EditRC-Entire_column"));
+        entireColRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_RC-Entire_Column"));
         entireColRadioButton.setMnemonic('c');
         entireRowRadioButton.setSelected(true);
 
diff --git a/designer-realize/src/main/java/com/fr/design/report/SelectImagePane.java b/designer-realize/src/main/java/com/fr/design/report/SelectImagePane.java
index 61c4dcdd0..263fc6ea1 100644
--- a/designer-realize/src/main/java/com/fr/design/report/SelectImagePane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/SelectImagePane.java
@@ -74,7 +74,7 @@ public class SelectImagePane extends BasicPane {
                 .createEmptyBorder(8, 2, 4, 0));
 
         UIButton selectPictureButton = new UIButton(
-                com.fr.design.i18n.Toolkit.i18nText("Image-Select_Picture"));
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Select_Picture"));
         selectFilePane.add(selectPictureButton, BorderLayout.NORTH);
         selectPictureButton.setMnemonic('S');
         selectPictureButton.addActionListener(selectPictureActionListener);
@@ -84,7 +84,7 @@ public class SelectImagePane extends BasicPane {
 
         //布局
         defaultRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Default"));
-        tiledRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Image-Titled"));
+        tiledRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Titled"));
         extendRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image_Extend"));
         adjustRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Image_Adjust"));
 
@@ -173,7 +173,7 @@ public class SelectImagePane extends BasicPane {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("Image");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Image");
     }
 
     public void populate(Elem cell) {
diff --git a/designer-realize/src/main/java/com/fr/design/report/SubReportPane.java b/designer-realize/src/main/java/com/fr/design/report/SubReportPane.java
index 60b5208fe..88d7c472d 100644
--- a/designer-realize/src/main/java/com/fr/design/report/SubReportPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/SubReportPane.java
@@ -45,14 +45,14 @@ public class SubReportPane extends BasicPane {
     	this.setLayout(FRGUIPaneFactory.createM_BorderLayout());
         JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
 //        northPane.setLayout(FRGUIPaneFactory.createM_BorderLayout());
-		northPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Sub_Report", "Path"}),null));
+		northPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sub_Report_Path"),null));
         northPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Location") + ":"), BorderLayout.WEST);
         northPane.add(pathTextField = new UITextField(), BorderLayout.CENTER);
 		pathTextField.setEditable(false);
 		UIButton browseButton = new UIButton("...");
 		northPane.add(browseButton, BorderLayout.EAST);
 		browseButton.setPreferredSize(new java.awt.Dimension(20, 20));
-		browseButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Click_this_button"));
+		browseButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Click_this_button"));
 		
 		browseButton.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
@@ -79,10 +79,10 @@ public class SubReportPane extends BasicPane {
 		centerPane.setLayout(FRGUIPaneFactory.createM_BorderLayout());
 		centerPane.setBorder(BorderFactory.createEmptyBorder(0, 5, 10, 5));
         kvPane = new ReportletParameterViewPane();
-        centerPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Set", "Delivery", "Parameter"}),null));
-        JPanel kcPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
+		centerPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Delivery_Parameter"),null));
+		JPanel kcPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
         kcPane.add(kvPane);
-        extend = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Extends_Report_Parameters"));
+        extend = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Extends_Report_Parameters"));
         kcPane.add(extend, BorderLayout.SOUTH);
         centerPane.add(kcPane, BorderLayout.CENTER);
 		UITextArea description = new UITextArea(2, 1);
@@ -94,8 +94,8 @@ public class SubReportPane extends BasicPane {
     
     @Override
     protected String title4PopupWindow() {
-    	return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Insert", "Sub_Report"});
-    }
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert_Sub_Report");
+	}
 
     public void populate(ElementCase report, CellElement cellElment) {
     	Object cellValue = cellElment.getValue();
diff --git a/designer-realize/src/main/java/com/fr/design/report/UnitFieldPane.java b/designer-realize/src/main/java/com/fr/design/report/UnitFieldPane.java
index efce9613a..4a6984d0f 100644
--- a/designer-realize/src/main/java/com/fr/design/report/UnitFieldPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/UnitFieldPane.java
@@ -3,19 +3,10 @@
  */
 package com.fr.design.report;
 
-import java.awt.Dimension;
-
-import javax.swing.JFormattedTextField;
-
 import com.fr.common.inputevent.InputEventBaseOnOS;
 import com.fr.design.gui.ilable.UILabel;
-import javax.swing.JPanel;
-import javax.swing.JSpinner;
-import javax.swing.SpinnerNumberModel;
-
 import com.fr.design.gui.ispinner.UIBasicSpinner;
 import com.fr.design.layout.FRGUIPaneFactory;
-
 import com.fr.stable.Constants;
 import com.fr.stable.OperatingSystem;
 import com.fr.stable.unit.CM;
@@ -23,6 +14,12 @@ import com.fr.stable.unit.INCH;
 import com.fr.stable.unit.MM;
 import com.fr.stable.unit.UNIT;
 
+import javax.swing.JFormattedTextField;
+import javax.swing.JPanel;
+import javax.swing.JSpinner;
+import javax.swing.SpinnerNumberModel;
+import java.awt.Dimension;
+
 /**
  * UnitFieldPane
  */
@@ -48,11 +45,11 @@ public class UnitFieldPane extends JPanel {
 
         public void setUnitType(int unitType) {
             if (unitType == Constants.UNIT_CM) {
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_CM"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_CM"));
             } else if (unitType == Constants.UNIT_INCH) {
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_INCH"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_INCH"));
             } else {
-                this.setText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Unit_MM"));
+                this.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unit_MM"));
             }
 
             //ajust the heigt of unitLabel.
@@ -107,4 +104,4 @@ public class UnitFieldPane extends JPanel {
             valueSpinner.setValue(new Float(value.toMMValue4Scale2()));
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/report/VerifierListPane.java b/designer-realize/src/main/java/com/fr/design/report/VerifierListPane.java
index 25a025a26..be8f1605e 100644
--- a/designer-realize/src/main/java/com/fr/design/report/VerifierListPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/VerifierListPane.java
@@ -1 +1,100 @@
-package com.fr.design.report;

import com.fr.data.Verifier;
import com.fr.design.ExtraDesignClassManager;
import com.fr.design.fun.VerifyDefineProvider;
import com.fr.design.gui.controlpane.NameObjectCreator;
import com.fr.design.gui.controlpane.NameableCreator;
import com.fr.design.gui.controlpane.ObjectJControlPane;
import com.fr.design.mainframe.ElementCasePane;

import com.fr.general.NameObject;
import com.fr.report.write.ReportWriteAttr;
import com.fr.report.write.ValueVerifier;
import com.fr.report.write.WClassVerifier;
import com.fr.stable.ArrayUtils;
import com.fr.stable.Nameable;

import java.util.ArrayList;
import java.util.Set;

/**
 * 校验列表
 */
public class VerifierListPane extends ObjectJControlPane {

    public VerifierListPane(ElementCasePane ePane) {
        super(ePane);
    }

    /**
     * 创建选项
     *
     * @return 选项
     */
    public NameableCreator[] createNameableCreators() {
        NameableCreator[] creators = new NameableCreator[]{
                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"BuildIn", "Verify"}),
                        "/com/fr/web/images/reportlet.png",
                        ValueVerifier.class,
                        BuildInVerifierPane.class)
        };
        Set<VerifyDefineProvider> set = ExtraDesignClassManager.getInstance().getArray(VerifyDefineProvider.MARK_STRING);
        for (VerifyDefineProvider provider : set) {
            creators = ArrayUtils.add(creators, new NameObjectCreator(
                    provider.nameForVerifier(),
                    provider.iconPath(),
                    provider.classForVerifier(),
                    provider.appearanceForVerifier()
            ) {
            });
        }
        creators = ArrayUtils.add(creators, new NameObjectCreator(
                com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Custom", "Verify"}),
                "/com/fr/web/images/reportlet.png",
                WClassVerifier.class,
                CustomVerifierPane.class));
        return creators;
    }

    @Override
    protected String title4PopupWindow() {
        return "Verify Collections";
    }

    public void populate(ReportWriteAttr reportWriteAttr) {
        if (reportWriteAttr == null) {
            return;
        }

        java.util.List<NameObject> nameObjectList = new ArrayList<>();

        int verifierCount = reportWriteAttr.getVerifierCount();
        for (int i = 0; i < verifierCount; i++) {
            Verifier verifier = reportWriteAttr.getVerifier(i);
            nameObjectList.add(new NameObject(verifier.getName(), verifier));
        }

        this.populate(nameObjectList.toArray(new NameObject[nameObjectList.size()]));
    }

    public void updateReportWriteAttr(ReportWriteAttr reportWriteAttr) {
        // Nameable[]居然不能强转成NameObject[],一定要这么写...
        Nameable[] res = this.update();
        NameObject[] res_array = new NameObject[res.length];
        java.util.Arrays.asList(res).toArray(res_array);

        reportWriteAttr.clearVerifiers();

        for (int i = 0; i < res_array.length; i++) {
            NameObject nameObject = res_array[i];
            if (nameObject.getObject() instanceof Verifier) {
                Verifier verifier = (Verifier) nameObject.getObject();
                verifier.setName(nameObject.getName());
                reportWriteAttr.addVerifier(verifier);
            }
        }
    }


}
\ No newline at end of file
+package com.fr.design.report;
+
+import com.fr.data.Verifier;
+import com.fr.design.ExtraDesignClassManager;
+import com.fr.design.fun.VerifyDefineProvider;
+import com.fr.design.gui.controlpane.NameObjectCreator;
+import com.fr.design.gui.controlpane.NameableCreator;
+import com.fr.design.gui.controlpane.ObjectJControlPane;
+import com.fr.design.mainframe.ElementCasePane;
+
+import com.fr.general.NameObject;
+import com.fr.report.write.ReportWriteAttr;
+import com.fr.report.write.ValueVerifier;
+import com.fr.report.write.WClassVerifier;
+import com.fr.stable.ArrayUtils;
+import com.fr.stable.Nameable;
+
+import java.util.ArrayList;
+import java.util.Set;
+
+/**
+ * 校验列表
+ */
+public class VerifierListPane extends ObjectJControlPane {
+
+    public VerifierListPane(ElementCasePane ePane) {
+        super(ePane);
+    }
+
+    /**
+     * 创建选项
+     *
+     * @return 选项
+     */
+    public NameableCreator[] createNameableCreators() {
+        NameableCreator[] creators = new NameableCreator[]{
+                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_BuildIn_Verify"),
+                        "/com/fr/web/images/reportlet.png",
+                        ValueVerifier.class,
+                        BuildInVerifierPane.class)
+        };
+        Set<VerifyDefineProvider> set = ExtraDesignClassManager.getInstance().getArray(VerifyDefineProvider.MARK_STRING);
+        for (VerifyDefineProvider provider : set) {
+            creators = ArrayUtils.add(creators, new NameObjectCreator(
+                    provider.nameForVerifier(),
+                    provider.iconPath(),
+                    provider.classForVerifier(),
+                    provider.appearanceForVerifier()
+            ) {
+            });
+        }
+        creators = ArrayUtils.add(creators, new NameObjectCreator(
+                com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Verify"),
+                "/com/fr/web/images/reportlet.png",
+                WClassVerifier.class,
+                CustomVerifierPane.class));
+        return creators;
+    }
+
+    @Override
+    protected String title4PopupWindow() {
+        return "Verify Collections";
+    }
+
+    public void populate(ReportWriteAttr reportWriteAttr) {
+        if (reportWriteAttr == null) {
+            return;
+        }
+
+        java.util.List<NameObject> nameObjectList = new ArrayList<>();
+
+        int verifierCount = reportWriteAttr.getVerifierCount();
+        for (int i = 0; i < verifierCount; i++) {
+            Verifier verifier = reportWriteAttr.getVerifier(i);
+            nameObjectList.add(new NameObject(verifier.getName(), verifier));
+        }
+
+        this.populate(nameObjectList.toArray(new NameObject[nameObjectList.size()]));
+    }
+
+    public void updateReportWriteAttr(ReportWriteAttr reportWriteAttr) {
+        // Nameable[]居然不能强转成NameObject[],一定要这么写...
+        Nameable[] res = this.update();
+        NameObject[] res_array = new NameObject[res.length];
+        java.util.Arrays.asList(res).toArray(res_array);
+
+        reportWriteAttr.clearVerifiers();
+
+        for (int i = 0; i < res_array.length; i++) {
+            NameObject nameObject = res_array[i];
+            if (nameObject.getObject() instanceof Verifier) {
+                Verifier verifier = (Verifier) nameObject.getObject();
+                verifier.setName(nameObject.getName());
+                reportWriteAttr.addVerifier(verifier);
+            }
+        }
+    }
+
+
+}
\ No newline at end of file
diff --git a/designer-realize/src/main/java/com/fr/design/report/WordExportPane.java b/designer-realize/src/main/java/com/fr/design/report/WordExportPane.java
index 3e231827d..18035e188 100644
--- a/designer-realize/src/main/java/com/fr/design/report/WordExportPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/WordExportPane.java
@@ -40,7 +40,7 @@ public class WordExportPane extends BasicPane {
 		
         MultilineLabel wordLineLabel = new MultilineLabel();
         wordLineLabel.setPreferredSize(new Dimension(250, 100));
-        wordLineLabel.setText(com.fr.design.i18n.Toolkit.i18nText("alert_word"));
+        wordLineLabel.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Alert_Word"));
         wordLineLabel.setForeground(Color.RED);
 		alertPane.add(wordLineLabel);
 		
diff --git a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezePagePane.java b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezePagePane.java
index 8902a9820..671db918a 100644
--- a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezePagePane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezePagePane.java
@@ -12,7 +12,7 @@ public class FreezePagePane extends FreezeAndRepeatPane {
 
 	public FreezePagePane(boolean isNumber) {
 		this.isNumber = isNumber;
-		start = new UILabel(isNumber ? com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."})+" 1" : com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."})+" A", SwingConstants.CENTER);
+		start = new UILabel(isNumber ? com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.")+" 1" : com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.")+" A", SwingConstants.CENTER);
 		end = new UILabel(isNumber ? " 1"+com.fr.design.i18n.Toolkit.i18nText("Row") : " A"+com.fr.design.i18n.Toolkit.i18nText("Column"), SwingConstants.CENTER);
 		super.initComponent();
 	}
@@ -42,6 +42,6 @@ public class FreezePagePane extends FreezeAndRepeatPane {
 
 	@Override
 	public String getLabeshow() {
-		return isNumber ? com.fr.design.i18n.Toolkit.i18nText("RowTo") : com.fr.design.i18n.Toolkit.i18nText("ColumnTo");
+		return isNumber ? com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Row_To") : com.fr.design.i18n.Toolkit.i18nText("ColumnTo");
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteColPane.java b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteColPane.java
index f41f41e1b..58735c4dc 100644
--- a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteColPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteColPane.java
@@ -10,7 +10,7 @@ public class FreezeWriteColPane extends FreezeAndRepeatPane {
 
 	public FreezeWriteColPane() {
 
-		start = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."}) + " A", SwingConstants.CENTER);
+        start = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.") + " A", SwingConstants.CENTER);
 		end = new ColSpinner(1,Integer.MAX_VALUE,1,1);
 	    super.initComponent();
 		this.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Column")));
@@ -25,7 +25,7 @@ public class FreezeWriteColPane extends FreezeAndRepeatPane {
 
 	@Override
 	public void populateBean(FT ob) {
-		((UILabel)start).setText(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."}) + StableUtils.convertIntToABC(ob.getFrom()));
+		((UILabel)start).setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.") + StableUtils.convertIntToABC(ob.getFrom()));
 		((ColSpinner)end).setValue((ob.getTo() + 1));
 	}
 
diff --git a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteRowPane.java b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteRowPane.java
index fa8e2e680..cf999c8d2 100644
--- a/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteRowPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/freeze/FreezeWriteRowPane.java
@@ -9,7 +9,7 @@ import com.fr.stable.StableUtils;
 public class FreezeWriteRowPane extends FreezeAndRepeatPane {
 
 	public FreezeWriteRowPane() {
-		start = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."}) + " 1", SwingConstants.CENTER);
+		start = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.") + " 1", SwingConstants.CENTER);
 		end =  new RowSpinner(1, Integer.MAX_VALUE, 1,1);
 		super.initComponent();
 		this.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Row")));
@@ -22,7 +22,7 @@ public class FreezeWriteRowPane extends FreezeAndRepeatPane {
 
 	@Override
 	public void populateBean(FT ob) {
-		((UILabel)start).setText(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Frozen", "N.O."}) + String.valueOf(ob.getFrom()));
+		((UILabel)start).setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Frozen_N.O.") + String.valueOf(ob.getFrom()));
 		((RowSpinner)end).setValue(ob.getTo() + 1);
 	}
 
@@ -33,7 +33,7 @@ public class FreezeWriteRowPane extends FreezeAndRepeatPane {
 
 	@Override
 	public String getLabeshow() {
-		return com.fr.design.i18n.Toolkit.i18nText("RowTo");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Row_To");
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java b/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java
index 8b6fc1e76..f3551e31f 100644
--- a/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatAndFreezeSettingPane.java
@@ -66,7 +66,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane {
         JPanel soverlapRowStartPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         useRepeatTitleRCheckBox = new UICheckBox();
         soverlapRowStartPane.add(useRepeatTitleRCheckBox);
-        soverlapRowStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"PageSetup-Title_Start_Row", "From"})));
+        soverlapRowStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Title_Start_Row_Form")));
         repeatTitleRowPane = new RepeatRowPane();
         soverlapRowStartPane.add(repeatTitleRowPane);
 
@@ -81,7 +81,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane {
         JPanel soverlapColStartPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         useRepeatTitleCCheckBox = new UICheckBox();
         soverlapColStartPane.add(useRepeatTitleCCheckBox);
-        soverlapColStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"PageSetup-Title_Start_Column", "From"})));
+        soverlapColStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Title_Start_Column_Form")));
         // 重复打印标题的结束列
         repeatTitleColPane = new RepeatColPane();
         soverlapColStartPane.add(repeatTitleColPane);
@@ -97,7 +97,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane {
         JPanel foverlapRowStartPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         useRepeatFinisRCheckBox = new UICheckBox();
         foverlapRowStartPane.add(useRepeatFinisRCheckBox);
-        foverlapRowStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"PageSetup-Finis_Start_Row", "From"})));
+        foverlapRowStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Finis_Start_Row_Form")));
         repeatFinisRowPane = new RepeatRowPane();
         foverlapRowStartPane.add(repeatFinisRowPane);
 
@@ -112,7 +112,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane {
         JPanel foverlapColStartPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         useRepeatFinisCCheckBox = new UICheckBox();
         foverlapColStartPane.add(useRepeatFinisCCheckBox);
-        foverlapColStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"PageSetup-Finis_Start_Column", "From"})));
+        foverlapColStartPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Finis_Start_Column_Form")));
         repeatFinisColPane = new RepeatColPane();
         foverlapColStartPane.add(repeatFinisColPane);
 
@@ -175,7 +175,7 @@ public class RepeatAndFreezeSettingPane extends BasicPane {
     private JPanel initWriteFrozenPane() {
         JPanel writePanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
         // 填报冻结
-        UILabel writeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Face_Write", "Frozen"}) + ":");
+        UILabel writeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Face_Write_Frozen") + ":");
         JPanel writeLabelPanel = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         writeLabelPanel.add(writeLabel);
         writePanel.add(writeLabelPanel, BorderLayout.NORTH);
diff --git a/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatRowPane.java b/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatRowPane.java
index 9b8628e8a..e46a59a6e 100644
--- a/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatRowPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/freeze/RepeatRowPane.java
@@ -32,7 +32,7 @@ public class RepeatRowPane extends FreezeAndRepeatPane {
 
     @Override
     public String getLabeshow() {
-        return StringUtils.BLANK + com.fr.design.i18n.Toolkit.i18nText("RowTo") + StringUtils.BLANK;
+        return StringUtils.BLANK + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Row_To") + StringUtils.BLANK;
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/report/mobile/MobileOthersPane.java b/designer-realize/src/main/java/com/fr/design/report/mobile/MobileOthersPane.java
index 857631c32..35c7da06d 100644
--- a/designer-realize/src/main/java/com/fr/design/report/mobile/MobileOthersPane.java
+++ b/designer-realize/src/main/java/com/fr/design/report/mobile/MobileOthersPane.java
@@ -55,6 +55,6 @@ public class MobileOthersPane extends BasicBeanPane<ElementCaseMobileAttr> {
 
     @Override
     protected String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Other");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Other");
     }
 }
diff --git a/designer-realize/src/main/java/com/fr/design/style/StylePane.java b/designer-realize/src/main/java/com/fr/design/style/StylePane.java
index d4e6a9202..1ddf0c130 100644
--- a/designer-realize/src/main/java/com/fr/design/style/StylePane.java
+++ b/designer-realize/src/main/java/com/fr/design/style/StylePane.java
@@ -82,7 +82,7 @@ public class StylePane extends BasicBeanPane<Style> implements ChangeListener {
 
 		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Format"), this.getFormatPane());
 		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Alignment"), FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane());
-		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Sytle-FRFont"), FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane());
+		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Sytle_FRFont"), FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane());
 		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Border"), FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane());
 		mainTabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Background"), FRGUIPaneFactory.createY_AXISBoxInnerContainer_L_Pane());
 
@@ -466,4 +466,4 @@ public class StylePane extends BasicBeanPane<Style> implements ChangeListener {
 	
 
 	
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/CommonPane.java b/designer-realize/src/main/java/com/fr/design/webattr/CommonPane.java
index 51ed01316..bb9e7296a 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/CommonPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/CommonPane.java
@@ -40,7 +40,7 @@ public class CommonPane extends JPanel {
         this.cacheValidateTimeEditor = new LongEditor();
 
         JComponent[][] comps = {
-				{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Title") + ":"), this.titleTextField, null},
+				{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Title") + ":"), this.titleTextField, null},
 				{new UILabel(com.fr.design.i18n.Toolkit.i18nText("CacheValidateTime") + ":"), this.cacheValidateTimeEditor, new UILabel("milliseconds")}
 		};
 
@@ -70,4 +70,4 @@ public class CommonPane extends JPanel {
         
         reportWebAttr.setCacheValidateTime(this.cacheValidateTimeEditor.getValue().longValue());
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/DragToolBarPane.java b/designer-realize/src/main/java/com/fr/design/webattr/DragToolBarPane.java
index 76440b943..b79e19e13 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/DragToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/DragToolBarPane.java
@@ -136,7 +136,7 @@ public class DragToolBarPane extends WidgetToolBarPane {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ReportServerP-Toolbar", "Set"});
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Toolbar");
 	}
 
 	ListCellRenderer optionRenderer = new DefaultListCellRenderer() {
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java b/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java
index 37d104dba..072c14810 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java
@@ -152,12 +152,12 @@ public class EditToolBar extends BasicPane {
 		this.add(splitPane);
 		list.addListSelectionListener(listSelectionListener);
 		JPanel backgroundPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
-		UIButton bgButton = new UIButton(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Background", "Set"}));
-		defaultCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Default", "Background"}));
+		UIButton bgButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Background"));
+		defaultCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Default_Background"));
 		bgButton.addActionListener(actioner);
 		backgroundPane.add(defaultCheckBox);
 		backgroundPane.add(bgButton);
-		backgroundPane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Background", "Set"})));
+		backgroundPane.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Background")));
 		this.add(backgroundPane, BorderLayout.SOUTH);
 	}
 
@@ -176,7 +176,7 @@ public class EditToolBar extends BasicPane {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit");
 	}
 
 	public void populate(FToolBar ftoolbar) {
@@ -235,7 +235,7 @@ public class EditToolBar extends BasicPane {
 
 	private class MoveUpItemAction extends UpdateAction {
 		public MoveUpItemAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));
 			this.setMnemonic('U');
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/up.png"));
 		}
@@ -266,7 +266,7 @@ public class EditToolBar extends BasicPane {
 
 	private class MoveDownItemAction extends UpdateAction {
 		public MoveDownItemAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));
 			this.setMnemonic('D');
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/down.png"));
 		}
@@ -301,7 +301,7 @@ public class EditToolBar extends BasicPane {
 
 	public class RemoveAction extends UpdateAction {
 		public RemoveAction() {
-			this.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Delete"));
+			this.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Delete"));
 			this.setSmallIcon(BaseUtils.readIcon("/com/fr/base/images/cell/control/remove.png"));
 		}
 
@@ -380,13 +380,13 @@ public class EditToolBar extends BasicPane {
 			double rowSize[] = {p, p};
 			double columnSize[] = {p, p};
 
-			Component[][] coms = new Component[][]{{new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Widget", "Printer-Alias"}) + ":"), nameField}, {new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Widget", "Icon"}) + ":"), iconPane}};
+			Component[][] coms = new Component[][]{{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Printer_Alias") + ":"), nameField}, {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Icon") + ":"), iconPane}};
 
 			JPanel nameIconPane = TableLayoutHelper.createTableLayoutPane(coms, rowSize, columnSize);
 
 			north.add(nameIconPane, BorderLayout.SOUTH);
 
-			north.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Form-Button", "Property", "Set"})));
+			north.setBorder(BorderFactory.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property")));
 			this.add(north, BorderLayout.NORTH);
 			JPanel none = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 			centerPane = FRGUIPaneFactory.createCardLayout_S_Pane();
@@ -413,7 +413,7 @@ public class EditToolBar extends BasicPane {
 
 			button = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_User_Defined_Event"));
 			customPane.add(button);
-			customPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit") + "JS", null));
+			customPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit") + "JS", null));
 			button.addActionListener(l);
 			return customPane;
 		}
@@ -442,14 +442,14 @@ public class EditToolBar extends BasicPane {
 				export = exportToolBarProviders[i].updateCenterPane(export);
 			}
 
-			export.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Form-Button", "Property", "Set"}), null));
+			export.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property"), null));
 			return export;
 		}
 
 		private JPanel getCpane() {
 			JPanel appendCountPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane();
 			count = new UIBasicSpinner(new SpinnerNumberModel(1, 0, Integer.MAX_VALUE, 1));
-			UILabel countLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Add", "Row", "Column", "Numbers"}) + ":");
+			UILabel countLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Add_Row_Column_Numbers") + ":");
 			JPanel cpane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
 			cpane.add(countLabel);
 			cpane.add(count);
@@ -459,11 +459,11 @@ public class EditToolBar extends BasicPane {
 
 
 		private JPanel getSubmitPane() {
-			isVerify = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Verify-Data_Verify"));
-			failSubmit = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Verify_Fail", "Still", "Submit"}));
+			isVerify = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Data_Verify"));
+			failSubmit = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Fail_Still_Submit"));
 			isCurSheet = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Only_Submit_Current_Sheet"));
 			JPanel submitPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane();
-			submitPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Form-Button", "Property", "Set"}), null));
+			submitPane.setBorder(GUICoreUtils.createTitledBorder(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property"), null));
 			submitPane.add(isVerify);
 			submitPane.add(failSubmit);
 			submitPane.add(isCurSheet);
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ErrorTemplatePane.java b/designer-realize/src/main/java/com/fr/design/webattr/ErrorTemplatePane.java
index 39954cd7a..20ff40f5f 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ErrorTemplatePane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ErrorTemplatePane.java
@@ -1,18 +1,17 @@
 package com.fr.design.webattr;
 
-import java.awt.BorderLayout;
-import java.awt.Component;
-
-import javax.swing.BorderFactory;
-import com.fr.design.gui.ilable.UILabel;
-import javax.swing.JPanel;
-
 import com.fr.design.beans.BasicBeanPane;
+import com.fr.design.gui.ilable.UILabel;
 import com.fr.design.gui.itextfield.UITextField;
 import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.layout.TableLayout;
 import com.fr.design.layout.TableLayoutHelper;
 
+import javax.swing.BorderFactory;
+import javax.swing.JPanel;
+import java.awt.BorderLayout;
+import java.awt.Component;
+
 
 
 public class ErrorTemplatePane extends BasicBeanPane<String> {
@@ -33,12 +32,12 @@ public class ErrorTemplatePane extends BasicBeanPane<String> {
         reportletNamePane.add(this.templateField);
 
         Component[][] components = {
-        		{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Template_Path") + ":"), reportletNamePane},
+        		{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Template_Path") + ":"), reportletNamePane},
 
-        		{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Template_Parameters") + ":"), null},
+        		{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Template_Parameters") + ":"), null},
         		{new UILabel("message" + ":"), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Message"))},
         		{new UILabel("charset" + ":"), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Server_Charset"))},
-        		{new UILabel("exception" + ":"), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Exception_StackTrace"))}
+        		{new UILabel("exception" + ":"), new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Exception_Stack_Trace"))}
         };
         JPanel northPane = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize);
         
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/EventPane.java b/designer-realize/src/main/java/com/fr/design/webattr/EventPane.java
index 3e4dceab0..6090c4878 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/EventPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/EventPane.java
@@ -96,7 +96,7 @@ public class EventPane extends BasicPane {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nText("Event_Set");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event_Set");
 	}
 
 
@@ -168,7 +168,7 @@ public class EventPane extends BasicPane {
 				return;
 			}
 
-			int val = JOptionPane.showConfirmDialog(EventPane.this, com.fr.design.i18n.Toolkit.i18nText("Are_You_Sure_To_Delete_The_Data") + "?", "Message",
+			int val = JOptionPane.showConfirmDialog(EventPane.this, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Are_You_Sure_To_Delete_The_Data") + "?", "Message",
 					JOptionPane.YES_NO_OPTION);
 			if (val != JOptionPane.YES_OPTION) {
 				return;
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/PageToolBarPane.java b/designer-realize/src/main/java/com/fr/design/webattr/PageToolBarPane.java
index 955e27417..79096cc82 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/PageToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/PageToolBarPane.java
@@ -40,9 +40,9 @@ public class PageToolBarPane extends AbstractEditToolBarPane {
 	private EventPane eventPane;
 	
 	private UILabel showLocationLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Show_Location") + ":");
-	private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Editing_Listeners") + ":");
+	private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Editing_Listeners") + ":");
  	
-	private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+	private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
 	
 	public PageToolBarPane() {
 		this.setLayout(FRGUIPaneFactory.createBorderLayout());
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebAttrPane.java b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebAttrPane.java
index bde358625..c8cef4ff9 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebAttrPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebAttrPane.java
@@ -43,7 +43,7 @@ public class ReportWebAttrPane extends LoadingBasicPane {
         //Tabbed Pane
         tabbedPane = new UITabbedPane();
         defaultPane.add(tabbedPane, BorderLayout.CENTER);
-        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), commonPane = new CommonPane());
+        tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), commonPane = new CommonPane());
         tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Printer(Server)"), serverPrintPane = new ReportServerPrinterPane());
         
         tabbedPane.add(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Pagination_Setting"), pageWeb = new PageWebSettingPane());
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java
index 37b33ffc1..8defa54b6 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java
@@ -130,9 +130,9 @@ public class ReportWebWidgetConstants {
             BaseUtils.readIcon("/com/fr/web/images/appendRow.png"), AppendColumnRow.class);
     public static final WidgetOption DELETECOLUMNROW = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Delete_Record"),
             BaseUtils.readIcon("/com/fr/web/images/deleteRow.png"), DeleteColumnRow.class);
-    public static final WidgetOption VERIFY = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Verify-Data_Verify"), BaseUtils.readIcon("/com/fr/web/images/verify.gif"),
+    public static final WidgetOption VERIFY = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Data_Verify"), BaseUtils.readIcon("/com/fr/web/images/verify.gif"),
             Verify.class);
-    public static final WidgetOption SUBMITFORCIBLY = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Utils-Submit_Forcibly"),
+    public static final WidgetOption SUBMITFORCIBLY = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Submit_Forcibly"),
             BaseUtils.readIcon("/com/fr/web/images/save2.png"), SubmitForcibly.class);
 
     // show cell value
@@ -140,7 +140,7 @@ public class ReportWebWidgetConstants {
             BaseUtils.readIcon("/com/fr/web/images/showValue.png"), ShowCellValue.class);
 
     // import excel data
-    public static final WidgetOption IMPORTEXCELDATA = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Utils-Import_Excel_Data"),
+    public static final WidgetOption IMPORTEXCELDATA = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Import_Excel_Data"),
             BaseUtils.readIcon("/com/fr/web/images/excel.png"), ImportExcelData.class);
     //自定义导入excel
     public static final WidgetOption IMPORTEXCELDATA_CUSTOMIZED = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Utils_Import_Excel_Data_Customized"),
@@ -149,7 +149,7 @@ public class ReportWebWidgetConstants {
     public static final WidgetOption SETPRINTEROFFSET = WidgetOptionFactory.createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_SetPrinterOffset"), BaseUtils.readIcon("/com/fr/web/images/pianyi.png"), SetPrinterOffset.class);
 
     public static final WidgetOption CUSTOM_BUTTON = WidgetOptionFactory
-            .createByWidgetClass(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Custom", "Form-Button"}), CustomToolBarButton.class);
+            .createByWidgetClass(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Form_Button"), CustomToolBarButton.class);
 
     // 输出离线html报表
     public static final WidgetOption WRITEOFFLINEHTML = WidgetOptionFactory
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ReportWriteAttrPane.java b/designer-realize/src/main/java/com/fr/design/webattr/ReportWriteAttrPane.java
index 4da1a6b79..356fce98c 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ReportWriteAttrPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ReportWriteAttrPane.java
@@ -54,7 +54,7 @@ public class ReportWriteAttrPane extends LoadingBasicPane {
 		writeShortCutsPane = new WriteShortCutsPane();
 
 		tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Submit"), submiterListPane);
-		tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Verify-Data_Verify"), verifierListPane);
+		tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Verify_Data_Verify"), verifierListPane);
 		tabbedPane.addTab(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Writer_ShortCuts_Setting"), writeShortCutsPane);
 	}
 
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java b/designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java
index ad37bf183..706a70b49 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ServerPrinterPane.java
@@ -76,12 +76,12 @@ public class ServerPrinterPane extends BasicPane {
 
 		moveUpButton = new UIButton(BaseUtils.readIcon("/com/fr/design/images/control/up.png"));
 		moveUpButton.addActionListener(this.moveUpActionListener);
-		moveUpButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Up"));//"moveUp"
+		moveUpButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Up"));//"moveUp"
 		moveUpButton.setPreferredSize(preferDimension);
 
 		moveDownButton = new UIButton(BaseUtils.readIcon("/com/fr/design/images/control/down.png"));
 		moveDownButton.addActionListener(this.moveDownActionListener);
-		moveDownButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Utils-Move_Down"));//"moveDown"
+		moveDownButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Move_Down"));//"moveDown"
 		moveDownButton.setPreferredSize(preferDimension);
 
 		toolbar.add(addButton);
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/SettingToolBar.java b/designer-realize/src/main/java/com/fr/design/webattr/SettingToolBar.java
index d25420629..24f5bd190 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/SettingToolBar.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/SettingToolBar.java
@@ -31,7 +31,7 @@ public  class SettingToolBar extends JPanel {
 		this.add(new UILabel(name));
 		this.toolBarPane = toolBarPane;
 		setButton = GUICoreUtils.createTransparentButton(setIcon, setIcon, setIcon);
-		setButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Edit_Button_ToolBar"));
+		setButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_Button_ToolBar"));
 		setButton.setAction(new SetAction());
 		delButton = GUICoreUtils.createTransparentButton(delIcon, delIcon, delIcon);
 		delButton.setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Remove_Button_ToolBar"));
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ToolBarDragPane.java b/designer-realize/src/main/java/com/fr/design/webattr/ToolBarDragPane.java
index 80cba6b6c..d339f201a 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ToolBarDragPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ToolBarDragPane.java
@@ -256,7 +256,7 @@ public class ToolBarDragPane extends WidgetToolBarPane {
 
 	@Override
 	protected String title4PopupWindow() {
-		return com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"ReportServerP-Toolbar", "Set"});
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Toolbar");
 	}
 
 	public void setCheckBoxSelected(boolean b) {
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ViewToolBarPane.java b/designer-realize/src/main/java/com/fr/design/webattr/ViewToolBarPane.java
index 881dc29f5..2f0b75a6d 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/ViewToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/ViewToolBarPane.java
@@ -31,8 +31,8 @@ public class ViewToolBarPane extends AbstractEditToolBarPane {
 	private EventPane eventPane;
 	
 	private UICheckBox isUseToolBarCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Use_ToolBar"));
-	private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
-	private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Editing_Listeners") + ":");
+	private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
+	private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Editing_Listeners") + ":");
 	private UICheckBox sortCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Sort_Sort"));
 	private UICheckBox conditonFilterBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_Selection_Filter"));
 	private UICheckBox listFilterBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Engine_List_Filter"));
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/WebCssPane.java b/designer-realize/src/main/java/com/fr/design/webattr/WebCssPane.java
index 7ac7e9775..58b46655f 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/WebCssPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/WebCssPane.java
@@ -43,11 +43,11 @@ public class WebCssPane extends BasicPane {
 		chooseFile = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Selection"));
 		chooseFile.setPreferredSize(new Dimension(75, 23));
 		chooseFile.addActionListener(chooseFileListener);
-		northPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Disk_File") + ":"), FlowLayout.LEFT);
+		northPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Disk_File") + ":"), FlowLayout.LEFT);
 		northPane.add(localText, FlowLayout.CENTER);
 		northPane.add(chooseFile, FlowLayout.RIGHT);
 		outnorth.add(northPane,BorderLayout.NORTH);
-		UILabel infor = new UILabel(com.fr.design.i18n.Toolkit.i18nText("CSS_warning"));
+		UILabel infor = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_CSS_Warning"));
 		infor.setForeground(new Color(207, 42, 39));
 		outnorth.add(infor,BorderLayout.CENTER);
 		this.add(outnorth, BorderLayout.NORTH);
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/WebJsPane.java b/designer-realize/src/main/java/com/fr/design/webattr/WebJsPane.java
index d10ef5cb4..6723658f6 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/WebJsPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/WebJsPane.java
@@ -51,7 +51,7 @@ public class WebJsPane extends BasicPane {
 		this.setLayout(new BorderLayout(0, 20));
 		this.setBorder(BorderFactory.createEmptyBorder(10, 5, 0, 0));
 
-		localFileRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Disk_File") + ":", true);
+		localFileRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Disk_File") + ":", true);
 		urlFileRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Url_Location")+ ":", false);
 		ButtonGroup bg = new ButtonGroup();
 		bg.add(localFileRadioButton);
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java b/designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java
index 918d4ebb8..3efacb27e 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java
@@ -46,8 +46,8 @@ public class WriteToolBarPane extends AbstractEditToolBarPane {
     private UIRadioButton leftRadioButton = new UIRadioButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Left_Display"));
     private UILabel rptShowLocationLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Show_Location") + ":", UILabel.LEFT);
     private UICheckBox isUseToolBarCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Use_ToolBar"));
-    private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
-    private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Editing_Listeners") + ":");
+    private UIButton editToolBarButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
+    private UILabel showListenersLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Editing_Listeners") + ":");
     private UICheckBox unloadCheck;
     private UICheckBox showWidgets;
     private UICheckBox isAutoStash;//自动暂存
@@ -73,7 +73,7 @@ public class WriteToolBarPane extends AbstractEditToolBarPane {
         rptButtonGroup.add(centerRadioButton);
         northPane.add(GUICoreUtils.createFlowPane(new Component[]{rptShowLocationLabel, centerRadioButton, leftRadioButton}, FlowLayout.LEFT));
 
-        colorBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Face_Write", "Current", "Edit", "Row", "Background", "Set"}) + ":");
+        colorBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Face_Write_Current_Edit_Row_Background") + ":");
         colorBox.setSelected(true);
         colorBox.addActionListener(colorListener);
         colorButton = new UIColorButton(BaseUtils.readIcon("/com/fr/design/images/gui/color/background.png"));
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/WriteWebSettingPane.java b/designer-realize/src/main/java/com/fr/design/webattr/WriteWebSettingPane.java
index d15ab0490..6636c2214 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/WriteWebSettingPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/WriteWebSettingPane.java
@@ -76,7 +76,7 @@ public class WriteWebSettingPane extends WebSettingPane<WebWrite> {
         unloadCheck = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unload_Check"));
         unloadCheck.setSelected(true);
 
-        showWidgets = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"FR-Engine_Event_showWidgets"}));
+        showWidgets = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event_Show_Widgets"));
         showWidgets.setSelected(false);
         isAutoStash = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Write_Auto_Stash"));
         isAutoStash.setSelected(false);
diff --git a/designer-realize/src/main/java/com/fr/design/webattr/printsettings/PageMarginSettingPane.java b/designer-realize/src/main/java/com/fr/design/webattr/printsettings/PageMarginSettingPane.java
index fe15cb25d..ebede67fb 100644
--- a/designer-realize/src/main/java/com/fr/design/webattr/printsettings/PageMarginSettingPane.java
+++ b/designer-realize/src/main/java/com/fr/design/webattr/printsettings/PageMarginSettingPane.java
@@ -31,7 +31,7 @@ public class PageMarginSettingPane extends JPanel {
 
         JPanel marginLeftTextPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
         marginLeftPane.add(marginLeftTextPane);
-        marginLeftTextPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Top") + ":"));
+        marginLeftTextPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Top_Duplicate") + ":"));
         marginTopUnitFieldPane = new UnitFieldPane(Constants.UNIT_MM);
         marginLeftTextPane.add(marginTopUnitFieldPane);
         JPanel marginLeftUnitPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
diff --git a/designer-realize/src/main/java/com/fr/design/widget/CellWidgetCardPane.java b/designer-realize/src/main/java/com/fr/design/widget/CellWidgetCardPane.java
index f2cbcc6ff..3bca81c1e 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/CellWidgetCardPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/CellWidgetCardPane.java
@@ -74,7 +74,7 @@ public class CellWidgetCardPane extends BasicPane {
             }
         };
         widgetPropertyPane = new BasicWidgetPropertySettingPane();
-        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), 280, 24, widgetPropertyPane);
+        UIExpandablePane uiExpandablePane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), 280, 24, widgetPropertyPane);
         attriTabPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 0, 10));
         attriTabPane.add(uiExpandablePane, BorderLayout.NORTH);
         attriCardPane = FRGUIPaneFactory.createCardLayout_S_Pane();
@@ -94,12 +94,12 @@ public class CellWidgetCardPane extends BasicPane {
         mobileCardLayout = (CardLayout) mobileCardPane.getLayout();
 
         center.add(basicScrollPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Attribute"));
-        center.add(eventTabPane, com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Event"));
+        center.add(eventTabPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event"));
         center.add(mobileTabPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Mobile_Terminal"));
         initPaneList();
 
 
-        final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Attribute"), com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Event"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Mobile_Terminal")};
+        final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Attribute"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Event"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Mobile_Terminal")};
         tabsHeaderIconPane = new UIHeadGroup(tabTitles) {
             @Override
             public void tabChanged(int index) {
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ValueWidgetPane.java b/designer-realize/src/main/java/com/fr/design/widget/ValueWidgetPane.java
index 8006c818a..b941b02ef 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ValueWidgetPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ValueWidgetPane.java
@@ -27,7 +27,7 @@ public class ValueWidgetPane extends WidgetPane {
 
 	public JPanel initNorthPane(){
 		JPanel northPane = super.initNorthPane();
-		label = new UILabel("     " + com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Widget", "Value"})+ ":");
+		label = new UILabel("     " + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget_Value")+ ":");
 		label.setVisible(false);
 		widgetValuePane = new JPanel();
 		widgetValuePane.setLayout(FRGUIPaneFactory.createBorderLayout());
diff --git a/designer-realize/src/main/java/com/fr/design/widget/WidgetPane.java b/designer-realize/src/main/java/com/fr/design/widget/WidgetPane.java
index 046643a50..00e80c5d4 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/WidgetPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/WidgetPane.java
@@ -81,7 +81,7 @@ public class WidgetPane extends AbstractAttrNoScrollPane implements ItemListener
         double[] columnSize = {p, p, f};
         double[] rowSize = {p};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"FR-Designer_Selection", "FR-Designer_Widget"})), emptyLabel, editorTypeComboBox},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Select_Widget")), emptyLabel, editorTypeComboBox},
         };
         JPanel jPanel = TableLayoutHelper.createTableLayoutPane(components, rowSize, columnSize);
         return jPanel;
@@ -130,7 +130,7 @@ public class WidgetPane extends AbstractAttrNoScrollPane implements ItemListener
 
     @Override
     public String title4PopupWindow() {
-        return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget");
+        return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Widget");
     }
 
     public void populate(Widget widget) {
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/ButtonGroupDictPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/ButtonGroupDictPane.java
index 345b150d8..5d456d9b7 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/ButtonGroupDictPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/ButtonGroupDictPane.java
@@ -39,7 +39,7 @@ public class ButtonGroupDictPane extends JPanel {
 	public void initComponents() {
 		dictPane = new AccessibleDictionaryEditor();
 		this.setLayout(FRGUIPaneFactory.createBorderLayout());
-		adaptiveCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Adaptive"), true);
+		adaptiveCheckbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Adaptive"), true);
 		adaptiveCheckbox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 		adaptiveCheckbox.addActionListener(new ActionListener() {
 			public void actionPerformed(ActionEvent e) {
@@ -47,7 +47,7 @@ public class ButtonGroupDictPane extends JPanel {
 				columnLabel.setVisible(!adaptiveCheckbox.isSelected());
 			}
 		});
-		this.columnLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Button-Group-Display-Columns") + ":");
+		this.columnLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Button_Group_Display_Columns") + ":");
 		columnSpinner = new UIBasicSpinner(new SpinnerNumberModel(0, 0, Integer.MAX_VALUE, 1));
 
 		double f = TableLayout.FILL;
@@ -55,7 +55,7 @@ public class ButtonGroupDictPane extends JPanel {
 		double rowSize[] = {p, p};
 		double columnSize[] = {p, p, f};
 		Component[][] n_components = {
-				{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), dictPane, null},
+				{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), dictPane, null},
 				{adaptiveCheckbox, columnLabel, columnSpinner}
 		};
 		JPanel panel = TableLayoutHelper.createGapTableLayoutPane(n_components, rowSize, columnSize, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
@@ -78,4 +78,4 @@ public class ButtonGroupDictPane extends JPanel {
 		buttonGroup.setColumnsInRow((Integer)(columnSpinner.getValue()));
 	}
 	
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxDefinePane.java
index 52c4e58e3..5581449cf 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxDefinePane.java
@@ -1,6 +1,5 @@
 package com.fr.design.widget.ui;
 
-import com.fr.design.constants.LayoutConstants;
 import com.fr.design.designer.IntervalConstants;
 import com.fr.design.foldablepane.UIExpandablePane;
 import com.fr.design.gui.ilable.UILabel;
@@ -27,7 +26,7 @@ public class CheckBoxDefinePane extends AbstractDataModify<CheckBox> {
         double f = TableLayout.FILL;
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Text")), text},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Text")), text},
         };
         double[] rowSize = {p};
         double[] columnSize = {p, f};
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxGroupDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxGroupDefinePane.java
index fb6f2442d..188e766ee 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxGroupDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/CheckBoxGroupDefinePane.java
@@ -37,7 +37,7 @@ public class CheckBoxGroupDefinePane extends FieldEditorDefinePane<CheckBoxGroup
 	@Override
 	protected JPanel setFirstContentPane() {
 		JPanel advancePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-		checkbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Provide", "Choose_All"}));
+		checkbox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Provide_Choose_All"));
 		checkbox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 		buttonGroupDictPane = new ButtonGroupDictPane();
 		checkBoxDictPane = new CheckBoxDictPane();
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/ComboBoxDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/ComboBoxDefinePane.java
index 56e6cbace..be3b9bd52 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/ComboBoxDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/ComboBoxDefinePane.java
@@ -28,7 +28,7 @@ public class ComboBoxDefinePane extends CustomWritableRepeatEditorPane<ComboBox>
 	protected JPanel setForthContentPane () {
 		dictPane = new AccessibleDictionaryEditor();
 		JPanel jPanel =  TableLayoutHelper.createGapTableLayoutPane(
-				new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), dictPane}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
+				new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), dictPane}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W1, IntervalConstants.INTERVAL_L1);
 		jPanel.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
 		return jPanel;
 	}
@@ -53,4 +53,4 @@ public class ComboBoxDefinePane extends CustomWritableRepeatEditorPane<ComboBox>
     public DataCreatorUI dataUI() {
         return null;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/ComboCheckBoxDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/ComboCheckBoxDefinePane.java
index d2f5cc27c..2dd80143c 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/ComboCheckBoxDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/ComboCheckBoxDefinePane.java
@@ -29,14 +29,14 @@ public class ComboCheckBoxDefinePane extends CustomWritableRepeatEditorPane<Comb
 	protected JPanel setForthContentPane() {
 		dictPane = new AccessibleDictionaryEditor();
 		checkBoxDictPane = new CheckBoxDictPane();
-		supportTagCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-SupportTag"), true);
+		supportTagCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Support_Tag"), true);
 		supportTagCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 		JPanel advancePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
 		double f = TableLayout.FILL;
 		double p = TableLayout.PREFERRED;
 		Component[][] components = new Component[][]{
 				new Component[]{supportTagCheckBox,  null },
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")),  dictPane },
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")),  dictPane },
 				new Component[]{checkBoxDictPane,  null },
 
 		};
@@ -75,4 +75,4 @@ public class ComboCheckBoxDefinePane extends CustomWritableRepeatEditorPane<Comb
 		return "ComboCheckBox";
 	}
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/CustomWritableRepeatEditorPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/CustomWritableRepeatEditorPane.java
index de1d62406..5c878f072 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/CustomWritableRepeatEditorPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/CustomWritableRepeatEditorPane.java
@@ -18,7 +18,7 @@ import java.awt.*;
 public abstract class CustomWritableRepeatEditorPane<T extends CustomWriteAbleRepeatEditor> extends WritableRepeatEditorPane<T> {
 
 	private UICheckBox customDataCheckBox;
-	private static final int CUSTOM_DATA_CHECK_BOX_WIDTH = GraphHelper.getLocTextWidth("Form-Allow_CustomData") + 30;
+	private static final int CUSTOM_DATA_CHECK_BOX_WIDTH = GraphHelper.getWidth(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Custom_Data")) + 30;
 	private static final int CUSTOM_DATA_CHECK_BOX_HEIGHT = 30;
 
 	public CustomWritableRepeatEditorPane() {
@@ -29,7 +29,7 @@ public abstract class CustomWritableRepeatEditorPane<T extends CustomWriteAbleRe
 	protected JPanel setThirdContentPane() {
 		JPanel contentPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
 		contentPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		this.customDataCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_CustomData"), false);
+		this.customDataCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Custom_Data"), false);
 		this.customDataCheckBox.setPreferredSize(
 				new Dimension(CUSTOM_DATA_CHECK_BOX_WIDTH, CUSTOM_DATA_CHECK_BOX_HEIGHT));
 		this.customDataCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
@@ -63,4 +63,4 @@ public abstract class CustomWritableRepeatEditorPane<T extends CustomWriteAbleRe
 
 	protected abstract T updateSubCustomWritableRepeatEditorBean();
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/DateEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/DateEditorDefinePane.java
index 5f88b532f..0f757a0db 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/DateEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/DateEditorDefinePane.java
@@ -69,7 +69,7 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane<DateEditor
 				new Component[]{startDateLabel, startDv},
 				new Component[]{endDateLabel, endDv},
 				new Component[]{waterMarkDictPane, null},
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Widget-Date_Selector_Return_Type")), returnTypeComboBox }
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Date_Selector_Return_Type")), returnTypeComboBox }
 		};
 		double[] rowSize = {p, p, p, p, p, p, p};
 		double[] columnSize = {p, f};
@@ -132,10 +132,10 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane<DateEditor
 		final JPanel customPane = new JPanel(cardLayout);
 		JPanel dateFormatPane = createFormatPane(dateFormatComboBox, dateSampleLabel);
 		JPanel timeFormatPane = createFormatPane(timeFormatComboBox, timeSampleLabel);
-		customPane.add(dateFormatPane, com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"));
-		customPane.add(timeFormatPane, com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time"));
-		final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time")};
-		fomatHeadGroup = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Date"), com.fr.design.i18n.Toolkit.i18nText("StyleFormat-Time")});
+		customPane.add(dateFormatPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"));
+		customPane.add(timeFormatPane, com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time"));
+		final String[] tabTitles = new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time")};
+		fomatHeadGroup = new UIButtonGroup(new String[]{com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Date"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_StyleFormat_Time")});
 		fomatHeadGroup.addChangeListener(new ChangeListener() {
 			@Override
 			public void stateChanged(ChangeEvent e) {
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/DirectWriteEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/DirectWriteEditorDefinePane.java
index 46ede4ab4..535c13496 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/DirectWriteEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/DirectWriteEditorDefinePane.java
@@ -23,7 +23,7 @@ public abstract class DirectWriteEditorDefinePane<T extends DirectWriteEditor> e
 	protected JPanel setFirstContentPane() {
 		JPanel contentPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
 		contentPane.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0));
-		directWriteCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Allow_Edit"), false);
+		directWriteCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Edit"), false);
 		directWriteCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		waterMarkDictPane = new WaterMarkDictPane();
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/FieldEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/FieldEditorDefinePane.java
index eafd19f73..c22ef6822 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/FieldEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/FieldEditorDefinePane.java
@@ -96,7 +96,7 @@ public abstract class FieldEditorDefinePane<T extends FieldEditor> extends Abstr
 
     protected void addValidatePane() {
         validatePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
-        final UILabel uiLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Widget_Error_Tip"));
+        final UILabel uiLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Widget_Error_Tip"));
         initErrorMsgPane();
         allowBlankCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Allow_Null"));
         allowBlankCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/IframeEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/IframeEditorDefinePane.java
index aac1fb52d..7d7c94eb6 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/IframeEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/IframeEditorDefinePane.java
@@ -54,7 +54,7 @@ public class IframeEditorDefinePane extends AbstractDataModify<IframeEditor> {
         double[] rowSize = {p, p, p, p};
         double[] columnSize = {p, f};
 
-        parameterViewPaneButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        parameterViewPaneButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         parameterViewPaneButton.addActionListener(parameterListener);
         parameterViewPane = new ReportletParameterViewPane();
         horizontalCheck.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
@@ -63,7 +63,7 @@ public class IframeEditorDefinePane extends AbstractDataModify<IframeEditor> {
                 {horizontalCheck, null},
                 {verticalCheck, null},
                 {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Form-Url")), srcTextField = new UITextField()},
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Parameters")), parameterViewPaneButton}};
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Parameters")), parameterViewPaneButton}};
         int[][] rowCount = {{1, 1}, {1, 1}, {1, 1}, {1, 1}};
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(coms, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W3, IntervalConstants.INTERVAL_L1);
 
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/ListEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/ListEditorDefinePane.java
index a69b854c8..c198df96b 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/ListEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/ListEditorDefinePane.java
@@ -1,7 +1,5 @@
 package com.fr.design.widget.ui;
 
-import javax.swing.*;
-
 import com.fr.data.Dictionary;
 import com.fr.design.data.DataCreatorUI;
 import com.fr.design.gui.icheckbox.UICheckBox;
@@ -10,8 +8,10 @@ import com.fr.design.layout.FRGUIPaneFactory;
 import com.fr.design.mainframe.widget.accessibles.AccessibleDictionaryEditor;
 import com.fr.form.ui.ListEditor;
 
-
-import java.awt.*;
+import javax.swing.BorderFactory;
+import javax.swing.JPanel;
+import java.awt.BorderLayout;
+import java.awt.Component;
 
 public class ListEditorDefinePane extends WriteUnableRepeatEditorPane<ListEditor> {
 	private UICheckBox needHeadCheckBox;
@@ -28,7 +28,7 @@ public class ListEditorDefinePane extends WriteUnableRepeatEditorPane<ListEditor
 
 	protected Component[] createDicPane(){
 		dictPane = new AccessibleDictionaryEditor();
-		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_DS-Dictionary")), dictPane};
+		return new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_DS_Dictionary")), dictPane};
 	}
 
 
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/MultiFileEditorPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/MultiFileEditorPane.java
index 331993a2d..ca84f5590 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/MultiFileEditorPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/MultiFileEditorPane.java
@@ -41,7 +41,7 @@ public class MultiFileEditorPane extends FieldEditorDefinePane<MultiFileEditor>
         fileSizeField.setPreferredSize(new Dimension(140, 20));
 
         JPanel fileSizePane = new JPanel(new BorderLayout());
-        UILabel fileTypeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Utils-File_type"));
+        UILabel fileTypeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_File_Type"));
         UILabel fileSizeLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Size_Limit"));
         fileSizePane.add(fileSizeField, BorderLayout.CENTER);
         fileSizePane.add(new UILabel(" KB"), BorderLayout.EAST);
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/ParameterTreeComboBox.java b/designer-realize/src/main/java/com/fr/design/widget/ui/ParameterTreeComboBox.java
index afc3f1982..b15d6899b 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/ParameterTreeComboBox.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/ParameterTreeComboBox.java
@@ -171,7 +171,7 @@ public class ParameterTreeComboBox extends FRTreeComboBox {
 			}
 		}
 		if (!ArrayUtils.isEmpty(parameters)) {
-			groupList.add(new ParameterGroup(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Server", "Datasource-Datasource", "Parameter"}), parameters));
+			groupList.add(new ParameterGroup(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Server_Datasource_Parameter"), parameters));
 		}
 		return groupList.toArray(new ParameterGroup[0]);
 
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/TreeComboBoxEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/TreeComboBoxEditorDefinePane.java
index ea70adf5c..881e832fb 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/TreeComboBoxEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/TreeComboBoxEditorDefinePane.java
@@ -5,7 +5,6 @@ import java.awt.*;
 import javax.swing.BorderFactory;
 import javax.swing.JPanel;
 
-import com.fr.data.Dictionary;
 import com.fr.design.data.DataCreatorUI;
 import com.fr.design.designer.IntervalConstants;
 import com.fr.design.gui.ilable.UILabel;
@@ -40,7 +39,7 @@ public class TreeComboBoxEditorDefinePane extends CustomWritableRepeatEditorPane
 		treeSettingPane = new AccessibleTreeModelEditor();
 		JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
 		JPanel north = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Create_Tree")), treeSettingPane}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Create_Tree")), treeSettingPane}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
 		north.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
 		JPanel center = super.setFirstContentPane();
 		jPanel.add(north, BorderLayout.NORTH);
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/TreeEditorDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/TreeEditorDefinePane.java
index 71ec087b4..6d6e1d4a8 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/TreeEditorDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/TreeEditorDefinePane.java
@@ -1,6 +1,5 @@
 package com.fr.design.widget.ui;
 
-import com.fr.data.Dictionary;
 import com.fr.design.data.DataCreatorUI;
 import com.fr.design.designer.IntervalConstants;
 import com.fr.design.gui.icheckbox.UICheckBox;
@@ -57,13 +56,13 @@ public class TreeEditorDefinePane extends FieldEditorDefinePane<TreeEditor> {
 	protected JPanel setSecondContentPane() {
 		accessibleTreeModelEditor = new AccessibleTreeModelEditor();
 		JPanel createTree = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{
-				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Create_Tree")), accessibleTreeModelEditor}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
+				new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Create_Tree")), accessibleTreeModelEditor}}, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
 		createTree.setBorder(BorderFactory.createEmptyBorder(0, 0, 10, 0));
 		JPanel contentPane = FRGUIPaneFactory.createBorderLayout_L_Pane();
 		JPanel contenter = FRGUIPaneFactory.createBorderLayout_S_Pane();
 
 		contentPane.add(contenter,BorderLayout.NORTH);
-		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Remove_Repeat_Data"), false);
+		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Remove_Repeat_Data"), false);
 		removeRepeatCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 		contenter.add(createTree, BorderLayout.NORTH);
 		contenter.add(removeRepeatCheckBox, BorderLayout.CENTER);
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/WaterMarkDictPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/WaterMarkDictPane.java
index 31afa425d..dc1bf72ca 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/WaterMarkDictPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/WaterMarkDictPane.java
@@ -24,7 +24,7 @@ public class WaterMarkDictPane extends JPanel {
         double f = TableLayout.FILL;
         double p = TableLayout.PREFERRED;
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_WaterMark")), waterMarkTextField},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_WaterMark")), waterMarkTextField},
         };
         double[] rowSize = {p};
         double[] columnSize = {p, f};
@@ -58,4 +58,4 @@ public class WaterMarkDictPane extends JPanel {
         return this.waterMarkTextField.getText();
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/WriteUnableRepeatEditorPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/WriteUnableRepeatEditorPane.java
index b8ca9bc14..fdfeb06a8 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/WriteUnableRepeatEditorPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/WriteUnableRepeatEditorPane.java
@@ -24,7 +24,7 @@ public abstract class WriteUnableRepeatEditorPane<E extends WriteUnableRepeatEdi
 	@Override
 	protected JPanel setFirstContentPane() {
 		JPanel contentPane = FRGUIPaneFactory.createYBoxEmptyBorderPane();
-		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Form-Remove_Repeat_Data"), false);
+		removeRepeatCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Remove_Repeat_Data"), false);
 		removeRepeatCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
 
 		Component[] dicPane = createDicPane();
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/AppendRowButtonDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/AppendRowButtonDefinePane.java
index fe406563d..dbf650b7e 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/AppendRowButtonDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/AppendRowButtonDefinePane.java
@@ -32,7 +32,7 @@ public class AppendRowButtonDefinePane<T extends AppendRowButton> extends Button
     @Override
     public AppendRowButton createButton() {
         AppendRowButton button = new AppendRowButton();
-        button.setText(com.fr.design.i18n.Toolkit.i18nText("Utils-Insert_Row"));
+        button.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Insert_Row"));
         button.setIconName(IconManager.ADD.getName());
         return button;
     }
@@ -55,4 +55,4 @@ public class AppendRowButtonDefinePane<T extends AppendRowButton> extends Button
     public Class classType() {
         return AppendRowButton.class;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/ButtonSytleDefinedPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/ButtonSytleDefinedPane.java
index b8d79cf83..27f862630 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/ButtonSytleDefinedPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/ButtonSytleDefinedPane.java
@@ -46,9 +46,9 @@ public class ButtonSytleDefinedPane extends BasicPane {
         double[] columnSize = {p, f};
         int[][] rowCount = {{1, 1},{1, 1},{1, 1}};
         Component[][] components = new Component[][]{
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Initial")), initBackgroundPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Over")), overBackgroundPane},
-                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Background-Click")), clickBackgroundPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Initial")), initBackgroundPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Over")), overBackgroundPane},
+                new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Background_Click")), clickBackgroundPane},
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, 7, 7);
         panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
@@ -98,7 +98,7 @@ public class ButtonSytleDefinedPane extends BasicPane {
             ImagePreviewPane.setPreferredSize(new Dimension(100, 20));
             this.add(ImagePreviewPane);
 
-            editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+            editButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
             editButton.addActionListener(new ActionListener() {
 
                 public void actionPerformed(ActionEvent e) {
@@ -141,4 +141,4 @@ public class ButtonSytleDefinedPane extends BasicPane {
             return background;
         }
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineAppendColumnRowPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineAppendColumnRowPane.java
index 7a07384a7..66081305a 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineAppendColumnRowPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineAppendColumnRowPane.java
@@ -41,13 +41,13 @@ public class DefineAppendColumnRowPane extends BasicPane {
 		crEditor = new ColumnRowEditor();
 		jNumberEditor = new UISpinner(0, 100 , 1, 0);
 
-		rowCountLable = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Edit-Row_Count"));
+		rowCountLable = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit_Row_Count"));
 		JPanel lpane = FRGUIPaneFactory.createBorderLayout_S_Pane();
 		lpane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
-		UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Append_Delete_Row_Message"));
+		UILabel label = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Append_Delete_Row_Message"));
 		label.setForeground(new Color(0x8F8F92));
 		lpane.add(label);
-		Component[][] components = { { new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Specify", "Cell"})), crEditor }, { rowCountLable, jNumberEditor } ,{lpane,null}};
+		Component[][] components = { { new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Specify_Cell")), crEditor }, { rowCountLable, jNumberEditor } ,{lpane,null}};
 		JPanel contentPane = TableLayoutHelper.createGapTableLayoutPane(components, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
 		contentPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
 
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineDeleteColumnRowPane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineDeleteColumnRowPane.java
index 0793f8ad5..e4ef8c5af 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineDeleteColumnRowPane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DefineDeleteColumnRowPane.java
@@ -35,10 +35,10 @@ public class DefineDeleteColumnRowPane extends BasicPane {
 		double rowSize[] = { p, p};
 		double columnSize[] = { p, f};
 		crEditor = new ColumnRowEditor();
-		UILabel messageLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Append_Delete_Row_Message"));
+		UILabel messageLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Append_Delete_Row_Message"));
 		messageLabel.setForeground(new Color(0x8F8F92));
 		Component[][] components = {
-				{ new UILabel(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Specify", "Cell"})), crEditor },
+				{ new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Specify_Cell")), crEditor },
 				{ messageLabel, null}};
 		JPanel contentPane = TableLayoutHelper.createGapTableLayoutPane(components, TableLayoutHelper.FILL_LASTCOLUMN, IntervalConstants.INTERVAL_L2, IntervalConstants.INTERVAL_L1);
 		contentPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DeleteRowButtonDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DeleteRowButtonDefinePane.java
index cb90e386c..0ed2a6703 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DeleteRowButtonDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/DeleteRowButtonDefinePane.java
@@ -25,7 +25,7 @@ public class DeleteRowButtonDefinePane<T extends DeleteRowButton> extends Button
     @Override
     public DeleteRowButton createButton() {
         DeleteRowButton button = new DeleteRowButton();
-        button.setText(com.fr.design.i18n.Toolkit.i18nText("Utils-Delete_Row"));
+        button.setText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Utils_Delete_Row"));
         button.setIconName(IconManager.DELETE.getName());
         return button;
     }
@@ -48,4 +48,4 @@ public class DeleteRowButtonDefinePane<T extends DeleteRowButton> extends Button
         ddcp.update(btn);
         return btn;
     }
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/TreeNodeToogleButtonDefinePane.java b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/TreeNodeToogleButtonDefinePane.java
index a1adb1c02..f15f15eae 100644
--- a/designer-realize/src/main/java/com/fr/design/widget/ui/btn/TreeNodeToogleButtonDefinePane.java
+++ b/designer-realize/src/main/java/com/fr/design/widget/ui/btn/TreeNodeToogleButtonDefinePane.java
@@ -34,7 +34,7 @@ public class TreeNodeToogleButtonDefinePane<T extends TreeNodeToggleButton> exte
         double rowSize[] = {p};
         double columnSize[] = {p, f};
         Component[][] n_components = {
-                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Button-Type")), createButtonTypeComboBox()},
+                {new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Button_Type")), createButtonTypeComboBox()},
         };
         JPanel panel = TableLayoutHelper.createGapTableLayoutPane(n_components, rowSize, columnSize, IntervalConstants.INTERVAL_L2, 8);
         JPanel borderPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
diff --git a/designer-realize/src/main/java/com/fr/design/write/submit/SmartInsertDBManipulationPane.java b/designer-realize/src/main/java/com/fr/design/write/submit/SmartInsertDBManipulationPane.java
index 33d2b8013..26271037b 100644
--- a/designer-realize/src/main/java/com/fr/design/write/submit/SmartInsertDBManipulationPane.java
+++ b/designer-realize/src/main/java/com/fr/design/write/submit/SmartInsertDBManipulationPane.java
@@ -82,11 +82,11 @@ public class SmartInsertDBManipulationPane extends DBManipulationPane {
         @Override
         public NameableCreator[] createNameableCreators() {
             return new NameableCreator[]{
-                    new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Submit", "Event"}),
+                    new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Submit_Event"),
                             "/com/fr/web/images/reportlet.png",
                             DMLConfigJob.class,
                             SmartInsertDMLJobPane.class),
-                    new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Custom", "Event"}),
+                    new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Custom_Event"),
                             "/com/fr/web/images/reportlet.png",
                             ClassSubmitJob.class,
                             CustomSubmitJobPane.class)};
diff --git a/designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java b/designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java
index 27c6aaf0d..e6eb983c6 100644
--- a/designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java
+++ b/designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java
@@ -385,7 +385,7 @@ public class CellSelection extends Selection {
         TemplateElementCase ec = ePane.getEditingElementCase();
         Iterator cells = ec.intersect(column, row, columnSpan, rowSpan);
         if (cells.hasNext()) { // alex:有两个以上的格子在这个区域内
-            int returnValue = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(ePane), com.fr.design.i18n.Toolkit.i18nText("Des-Merger_Cell"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Merge_Cell"),
+            int returnValue = JOptionPane.showConfirmDialog(SwingUtilities.getWindowAncestor(ePane), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Des_Merger_Cell"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Utils_Merge_Cell"),
                     JOptionPane.OK_CANCEL_OPTION);
             if (returnValue != JOptionPane.OK_OPTION) {
                 return false;
@@ -485,7 +485,7 @@ public class CellSelection extends Selection {
                 styleMenu.add(useMenuItem);
             }
             styleMenu.addSeparator();
-            styleMenu.add(new GlobalStyleMenuDef.CustomStyleAction(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Custom")));
+            styleMenu.add(new GlobalStyleMenuDef.CustomStyleAction(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Custom")));
             popup.add(styleMenu);
         } else {
             popup.add(new StyleAction().createMenuItem());
@@ -655,7 +655,7 @@ public class CellSelection extends Selection {
     public boolean triggerDeleteAction(ElementCasePane ePane) {
         final TemplateElementCase ec = ePane.getEditingElementCase();
         final RowColumnPane rcPane = new RowColumnPane();
-        rcPane.setTitle(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Delete"));
+        rcPane.setTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Delete"));
         rcPane.showWindow(SwingUtilities.getWindowAncestor(ePane), new DialogActionAdapter() {
 
             @Override
@@ -743,4 +743,4 @@ public class CellSelection extends Selection {
         CellWidgetPropertyPane.getInstance().reInit(ePane);
     }
 
-}
+}
\ No newline at end of file
diff --git a/designer-realize/src/main/java/com/fr/grid/selection/FloatSelection.java b/designer-realize/src/main/java/com/fr/grid/selection/FloatSelection.java
index da6f1d45a..c982934a0 100644
--- a/designer-realize/src/main/java/com/fr/grid/selection/FloatSelection.java
+++ b/designer-realize/src/main/java/com/fr/grid/selection/FloatSelection.java
@@ -78,7 +78,7 @@ public class FloatSelection extends Selection {
     @Override
     public boolean pasteCellElementsClip(CellElementsClip ceClip, ElementCasePane ePane) {
         Toolkit.getDefaultToolkit().beep();
-        DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Only_selected_cell_can_paste_only", "M_Insert-Cell"}));
+        DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Paste_Cell_Tips"));
 
         return false;
     }
@@ -86,7 +86,7 @@ public class FloatSelection extends Selection {
     @Override
     public boolean pasteString(String str, ElementCasePane ePane) {
         Toolkit.getDefaultToolkit().beep();
-        DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nTextArray(new String[]{"Only_selected_cell_can_paste_only", "Character"}));
+        DesignUtils.errorMessage(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Paste_Character_Tips"));
 //		return pasteOtherType(str, ePane);
         return false;
     }
@@ -238,7 +238,7 @@ public class FloatSelection extends Selection {
         FloatElement selectedFloat = ePane.getEditingElementCase().getFloatElement(selectedFloatName);
         Object value = null;
         //处理撤销时npe
-        if(selectedFloat != null) {
+        if (selectedFloat != null) {
             value = selectedFloat.getValue();
         }
         value = value == null ? "" : value;
diff --git a/designer-realize/src/main/java/com/fr/poly/PolyBlockProperPane.java b/designer-realize/src/main/java/com/fr/poly/PolyBlockProperPane.java
index cc2bdd498..f6803a90f 100644
--- a/designer-realize/src/main/java/com/fr/poly/PolyBlockProperPane.java
+++ b/designer-realize/src/main/java/com/fr/poly/PolyBlockProperPane.java
@@ -42,7 +42,7 @@ public class PolyBlockProperPane extends DockingView {
 
 	@Override
 	public String getViewTitle() {
-		return com.fr.design.i18n.Toolkit.i18nText("Form-Widget_Property_Table");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Property_Table");
 	}
 
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/poly/PolyBlockProperTable.java b/designer-realize/src/main/java/com/fr/poly/PolyBlockProperTable.java
index d5f46d3c2..452b4d7f6 100644
--- a/designer-realize/src/main/java/com/fr/poly/PolyBlockProperTable.java
+++ b/designer-realize/src/main/java/com/fr/poly/PolyBlockProperTable.java
@@ -33,7 +33,7 @@ public class PolyBlockProperTable extends JPanel {
 		this.setLayout(new BorderLayout());
 
 		blockPropertyPane = new BasicPropertyPane();
-		UIExpandablePane basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic"), 280, 24, blockPropertyPane);
+		UIExpandablePane basicPane = new UIExpandablePane(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic"), 280, 24, blockPropertyPane);
 		this.add(basicPane, BorderLayout.NORTH);
 
 		x = new UISpinner(0, MAX_SPINNER_VALUE, 1);
@@ -112,4 +112,4 @@ public class PolyBlockProperTable extends JPanel {
 		boundsgroup.setValue(height.getValue(), 3, 1);
 		firePropertyEdit();
 	}
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/poly/group/PolyBoundsGroup.java b/designer-realize/src/main/java/com/fr/poly/group/PolyBoundsGroup.java
index cf3d8a691..aadeb0178 100644
--- a/designer-realize/src/main/java/com/fr/poly/group/PolyBoundsGroup.java
+++ b/designer-realize/src/main/java/com/fr/poly/group/PolyBoundsGroup.java
@@ -31,7 +31,7 @@ public class PolyBoundsGroup implements GroupModel {
 
 	@Override
 	public String getGroupName() {
-		return com.fr.design.i18n.Toolkit.i18nText("Form-Component_Bounds");
+		return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Component_Bounds");
 	}
 
 	@Override
diff --git a/designer-realize/src/main/java/com/fr/quickeditor/CellQuickEditor.java b/designer-realize/src/main/java/com/fr/quickeditor/CellQuickEditor.java
index b118d142b..cd1f5d9a2 100644
--- a/designer-realize/src/main/java/com/fr/quickeditor/CellQuickEditor.java
+++ b/designer-realize/src/main/java/com/fr/quickeditor/CellQuickEditor.java
@@ -209,7 +209,7 @@ public abstract class CellQuickEditor extends QuickEditor<ElementCasePane> {
         double f = TableLayout.FILL;
         double[] columnSize = {p, f};
         double[] rowSize = {p, p};
-        UILabel cellLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Cell"));
+        UILabel cellLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Cell"));
         cellLabel.setPreferredSize(LABEL_DIMENSION);
         UILabel insertContentLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Insert_Cell_Element"));
         insertContentLabel.setPreferredSize(LABEL_DIMENSION);
@@ -306,7 +306,7 @@ public abstract class CellQuickEditor extends QuickEditor<ElementCasePane> {
                 // barry:检查输入是否正确
                 if (!ColumnRow.validate(columnRowEdit)) {
                     Object[] options = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_OK")};
-                    JOptionPane.showOptionDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Please_Input_Letters+Numbers(A1,AA1,A11....)"), com.fr.design.i18n.Toolkit.i18nText("Warning"),
+                    JOptionPane.showOptionDialog(DesignerContext.getDesignerFrame(), com.fr.design.i18n.Toolkit.i18nText("Please_Input_Letters+Numbers(A1,AA1,A11....)"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Warning"),
                             JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);
                     // 重新选中当前的selection,把columnRowTextField
                     tc.setSelection(tc.getSelection());
diff --git a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java
index f91de1389..50ac6f8d7 100644
--- a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java
+++ b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java
@@ -259,7 +259,7 @@ public class CellDSColumnEditor extends CellQuickEditor {
             }
             //丢掉icon,修改按钮名称为编辑
             condition.setSmallIcon(null);
-            condition.setName(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+            condition.setName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
             conditionUIButton = new UIButton(condition);
             Component[][] components = new Component[][]{
                     new Component[]{uiLabel, conditionUIButton}
@@ -273,12 +273,12 @@ public class CellDSColumnEditor extends CellQuickEditor {
 
         @Override
         public String getIconPath() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic");
         }
 
         @Override
         public String title4PopupWindow() {
-            return com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Basic");
+            return com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Basic");
         }
 
 
@@ -570,8 +570,8 @@ public class CellDSColumnEditor extends CellQuickEditor {
 
             //可扩展性
             JPanel extendableDirectionPane = FRGUIPaneFactory.createYBoxEmptyBorderPane();
-            extendableDirectionPane.add(heCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Horizontal_Extendable")));
-            extendableDirectionPane.add(veCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("ExpandD-Vertical_Extendable")));
+            extendableDirectionPane.add(heCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Horizontal_Extendable")));
+            extendableDirectionPane.add(veCheckBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_ExpandD_Vertical_Extendable")));
 
             //补充空白数据
             JPanel multiNumPane = FRGUIPaneFactory.createYBoxEmptyBorderPane();
@@ -582,7 +582,7 @@ public class CellDSColumnEditor extends CellQuickEditor {
             multiNumSpinner = new UISpinner(1, 10000, 1, 1);
 
             //数据倍数
-            UILabel multipleLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Column_Multiple"));
+            UILabel multipleLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Multiple"));
             multiPane = TableLayoutHelper.createGapTableLayoutPane(new Component[][]{
                             new Component[]{
                                     multipleLabel, multiNumSpinner
@@ -659,7 +659,7 @@ public class CellDSColumnEditor extends CellQuickEditor {
                         IOUtils.readIcon("/com/fr/design/images/expand/asc.png"),
                         IOUtils.readIcon("/com/fr/design/images/expand/des.png")
                 };
-                String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Sort-Original"), com.fr.design.i18n.Toolkit.i18nText("Sort-Ascending"), com.fr.design.i18n.Toolkit.i18nText("Sort-Descending")};
+                String[] nameArray = {com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Original"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Ascending"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Sort_Descending")};
                 sortTypePane = new UIButtonGroup(iconArray);
                 sortTypePane.setAllToolTips(nameArray);
                 sortTypePane.setGlobalName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_ExpandD_Sort_After_Expand"));
@@ -849,15 +849,15 @@ public class CellDSColumnEditor extends CellQuickEditor {
 
             public ResultSetFilterConfigPane() {
                 this.setLayout(FRGUIPaneFactory.createBorderLayout());
-                UILabel filterLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("BindColumn-Results_Filter"));
+                UILabel filterLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Results_Filter"));
                 //结果集筛选下拉框
                 rsComboBox = new UIComboBox(new String[]{
-                        com.fr.design.i18n.Toolkit.i18nText("Undefined"),
-                        com.fr.design.i18n.Toolkit.i18nText("BindColumn-Top_N"),
-                        com.fr.design.i18n.Toolkit.i18nText("BindColumn-Bottom_N"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Undefined"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Top_N"),
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Bind_Column_Bottom_N"),
                         com.fr.design.i18n.Toolkit.i18nText("Odd"),
                         com.fr.design.i18n.Toolkit.i18nText("Even"),
-                        com.fr.design.i18n.Toolkit.i18nText("Specify")
+                        com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Specify")
                 });
                 rsComboBox.addActionListener(actionListener);
                 //配置展示CardLayout
@@ -1157,7 +1157,7 @@ public class CellDSColumnEditor extends CellQuickEditor {
 
             public CustomValuePane() {
                 this.setLayout(new BorderLayout());
-                UILabel customValueLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Display_Value"));
+                UILabel customValueLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Display_Value"));
                 customValueLabel.setPreferredSize(LABEL_DIMENSION);
                 formulaField = new JFormulaField(DEFAULT_VALUE);
                 this.add(TableLayoutHelper.createGapTableLayoutPane(new Component[][]{
diff --git a/designer-realize/src/main/java/com/fr/quickeditor/floatquick/FloatImageQuickEditor.java b/designer-realize/src/main/java/com/fr/quickeditor/floatquick/FloatImageQuickEditor.java
index 1aec5e227..2cb2bef24 100644
--- a/designer-realize/src/main/java/com/fr/quickeditor/floatquick/FloatImageQuickEditor.java
+++ b/designer-realize/src/main/java/com/fr/quickeditor/floatquick/FloatImageQuickEditor.java
@@ -25,7 +25,7 @@ public class FloatImageQuickEditor extends FloatQuickEditor {
 
     public FloatImageQuickEditor() {
         super();
-        UIButton editbutton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Edit"));
+        UIButton editbutton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Edit"));
         editbutton.addActionListener(new ActionListener() {
 
             @Override
@@ -77,4 +77,4 @@ public class FloatImageQuickEditor extends FloatQuickEditor {
     protected void refreshDetails() {
     }
 
-}
\ No newline at end of file
+}
diff --git a/designer-realize/src/main/java/com/fr/start/CollectUserInformationDialog.java b/designer-realize/src/main/java/com/fr/start/CollectUserInformationDialog.java
index c64e2bc9b..c32c2307d 100644
--- a/designer-realize/src/main/java/com/fr/start/CollectUserInformationDialog.java
+++ b/designer-realize/src/main/java/com/fr/start/CollectUserInformationDialog.java
@@ -157,7 +157,7 @@ public class CollectUserInformationDialog extends UIDialog {
         JPanel buttonsPane = FRGUIPaneFactory.createRightFlowInnerContainer_S_Pane();
         controlPane.add(buttonsPane, BorderLayout.EAST);
 
-        UIButton finishButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Collect-Use_Designer"));
+        UIButton finishButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Collect_Use_Designer"));
         finishButton.setMnemonic('F');
         buttonsPane.add(finishButton);
         finishButton.addActionListener(verifyActionListener);
diff --git a/designer-realize/src/main/java/com/fr/start/Designer.java b/designer-realize/src/main/java/com/fr/start/Designer.java
index 80ebddfad..58d450b68 100644
--- a/designer-realize/src/main/java/com/fr/start/Designer.java
+++ b/designer-realize/src/main/java/com/fr/start/Designer.java
@@ -353,7 +353,7 @@ public class Designer extends BaseDesigner {
         };
         run.setExtraPainted(false);
         run.set4Toolbar();
-        run.getUpButton().setToolTipText(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Preview"));
+        run.getUpButton().setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Preview"));
         run.getDownButton().setToolTipText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Dropdown_More_Preview"));
     }
 
diff --git a/designer-realize/src/main/java/com/fr/start/module/DesignerActivator.java b/designer-realize/src/main/java/com/fr/start/module/DesignerActivator.java
index 2b5e5ab62..715ad9958 100644
--- a/designer-realize/src/main/java/com/fr/start/module/DesignerActivator.java
+++ b/designer-realize/src/main/java/com/fr/start/module/DesignerActivator.java
@@ -253,10 +253,10 @@ public class DesignerActivator extends Activator {
     private static NameableCreator[] hyperlinkTypes() {
         return new NameableCreator[]{
                 new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Hyperlink_Reportlet"), ReportletHyperlink.class, ReportletHyperlinkPane.ChartNoRename.class),
-                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_Email"), EmailJavaScript.class, EmailPane.class),
-                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Hyperlink-Web_link"), WebHyperlink.class, WebHyperlinkPane.ChartNoRename.class),
-                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("JavaScript-Dynamic_Parameters"), ParameterJavaScript.class, ParameterJavaScriptPane.ChartNoRename.class),
-                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("FR-Designer_JavaScript"), JavaScriptImpl.class, JavaScriptImplPane.ChartNoRename.class)
+                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"), EmailJavaScript.class, EmailPane.class),
+                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"), WebHyperlink.class, WebHyperlinkPane.ChartNoRename.class),
+                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Dynamic_Parameters"), ParameterJavaScript.class, ParameterJavaScriptPane.ChartNoRename.class),
+                new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript"), JavaScriptImpl.class, JavaScriptImplPane.ChartNoRename.class)
         };
     }
 
@@ -410,4 +410,4 @@ public class DesignerActivator extends Activator {
         unloadLogAppender();
         DesignerSocketIO.close();
     }
-}
\ No newline at end of file
+}