Language.cs 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace parkMonitor.language {
  8. public enum LangType {
  9. zh_cn = 1,
  10. en_us = 2
  11. }
  12. public class Language : INotifyPropertyChanged {
  13. public static Language ins = new Language();
  14. public LangType lngType = LangType.zh_cn;
  15. Dictionary<string, string> mapLng = new Dictionary<string, string>();
  16. string[] lng = new string[0];
  17. public Language() {
  18. // key zh-cn eu-us
  19. lng = new string[] {
  20. "autoPackSys" , "智能泊车系统", "Intelligent Pack System" ,
  21. "central" , "中控" , "Central" ,
  22. "centralPort" , "中控端" , "Central" ,
  23. "webServer" , "Web服务器" , "Web Server" ,
  24. "plc" , "PLC" , "PLC" ,
  25. "numMachinePort", "号牌机端" , "Num Plate Machine" ,
  26. "numMachine" , "号牌机" , "Num Plate Machine" ,
  27. "measurePort" , "测量端" , "measuring" ,
  28. "laser" , "激光" , "Laser" ,
  29. "trayPort" , "托盘端" , "Tray" ,
  30. "tray" , "托盘" , "Tray" ,
  31. "robotPort" , "机械手端" , "Robot" ,
  32. "robot" , "机械手" , "Robot" ,
  33. "robotTongs" , "机械手" , "Robot" ,
  34. "raster" , "光栅" , "Raster" ,
  35. "ultrasonic" , "超声波" , "Ultrasonic" ,
  36. "sensor" , "传感器" , "Sensor" ,
  37. "garage" , "车库" , "Central" ,
  38. "car" , "车辆" , "Car" ,
  39. "carObject" , "车辆物体" , "Car" ,
  40. "ortherObject" , "其他物体" , "Orther Object" ,
  41. "cpu" , "CPU" , "CPU" ,
  42. "mem" , "内存" , "Mem" ,
  43. "hostNmae" , "主机名" , "Host Name" ,
  44. "gpu" , "显卡" , "GPU" ,
  45. "os" , "操作系统" , "OS" ,
  46. "version" , "版本" , "Version" ,
  47. "mainPanel" , "主界面" , "Main Panel" ,
  48. "name" , "名称" , "Name" ,
  49. "info" , "信息" , "Info" ,
  50. "detail" , "详细信息" , "Details" ,
  51. "alarmInfo" , "报警信息" , "Alarm Info" ,
  52. "serNum" , "编号" , "SN" ,
  53. "log" , "日志" , "Log" ,
  54. "ok" , "确定" , "Ok" ,
  55. "cancel" , "取消" , "Cancel" ,
  56. "sureExit" , "确定退出?" , "Sure Exit?" ,
  57. "devInfo" , "设备信息" , "Device Info" ,
  58. "devList" , "设备列表" , "Device List" ,
  59. "devName" , "设备名" , "Device Name" ,
  60. "reset" , "复位" , "Reset" ,
  61. "write" , "写入" , "Write" ,
  62. "file" , "文件" , "File" ,
  63. "open" , "打开" , "Open" ,
  64. "close" , "关闭" , "Close" ,
  65. "import" , "导入" , "Import" ,
  66. "exit" , "退出" , "Exit" ,
  67. "noDev" , "无设备" , "No Device" ,
  68. "run" , "启动" , "Run" ,
  69. "all" , "全部" , "All" ,
  70. "transferSys" , "转运系统" , "Transfer Sys" ,
  71. "laserRadar" , "激光雷达" , "Laser & Radar" ,
  72. "robotHand" , "机械手" , "Robot Hand" ,
  73. "measureSys" , "测量系统" , "Measure Sys" ,
  74. "restartProcess", "重启上次流程", "restart last process" ,
  75. "view" , "视图" , "View" ,
  76. "carView" , "车位视图" , "Car View" ,
  77. "robotView" , "机械手" , "Robot View" ,
  78. "alarm" , "预警" , "Alarm" ,
  79. "check" , "检查" , "Check" ,
  80. "help" , "帮助" , "Help" ,
  81. "sysInfo" , "系统信息" , "Sys Info" ,
  82. "helpDoc" , "使用帮助" , "Help Doc" ,
  83. "aboutUs" , "关于我们" , "About Us" ,
  84. "cmd" , "命令" , "Command" ,
  85. "startClient" , "启动客户端" , "Start Client" ,
  86. "startServer" , "启动服务器" , "Start Server" ,
  87. "server" , "服务器" , "Server" ,
  88. "client" , "客户端" , "Client" ,
  89. "offline" , "离线" , "Offline" ,
  90. "normal" , "正常" , "Normal" ,
  91. "canReset" , "可复位" , "Can Reset" ,
  92. "warning" , "警告" , "Warn" ,
  93. "error" , "错误" , "Error" ,
  94. "aFrew" , "个" , " " ,
  95. "connect" , "连接" , "Connect" ,
  96. "disconnect" , "断开" , "Disconnect" ,
  97. "search" , "搜索" , "Search" ,
  98. };
  99. //mapLng = new Dictionary<string, string>() {
  100. // { "central", "中控" },
  101. // { "garage", "车库" }
  102. //};
  103. int splitSize = 3;
  104. //int zhIdx = 1;
  105. //int enIdx = 2;
  106. int keyIdx = 0;
  107. int lngIdx = (int)lngType;
  108. for(int i = 0; i < lng.Length; i += splitSize) {
  109. mapLng[lng[i + keyIdx]] = lng[i + lngIdx];
  110. }
  111. mapLng["aboutWinText"] = @"智能泊车系统 中控端
  112. 武汉大学
  113. CopyRight(C) 2013 - 2018
  114. 保留所有权利";
  115. }
  116. //public void swithLanguage(string lngName) {
  117. //}
  118. public string autoPackSys { get { return mapLng["autoPackSys"]; } }
  119. public string central { get { return mapLng["central"]; } }
  120. public string centralPort { get { return mapLng["centralPort"]; } }
  121. public string webServer { get { return mapLng["webServer"]; } }
  122. public string plc { get { return mapLng["plc"]; } }
  123. public string numMachinePort { get { return mapLng["numMachinePort"]; } }
  124. public string numMachine { get { return mapLng["numMachine"]; } }
  125. public string measurePort { get { return mapLng["measurePort"]; } }
  126. public string laser { get { return mapLng["laser"]; } }
  127. public string trayPort { get { return mapLng["trayPort"]; } }
  128. public string tray { get { return mapLng["tray"]; } }
  129. public string robotPort { get { return mapLng["robotPort"]; } }
  130. public string robot { get { return mapLng["robot"]; } }
  131. public string robotTongs { get { return mapLng["robotTongs"]; } }
  132. public string raster { get { return mapLng["raster"]; } }
  133. public string ultrasonic { get { return mapLng["ultrasonic"]; } }
  134. public string sensor { get { return mapLng["sensor"]; } }
  135. public string garage { get { return mapLng["garage"]; } }
  136. public string car { get { return mapLng["car"]; } }
  137. public string carObject { get { return mapLng["carObject"]; } }
  138. public string ortherObject { get { return mapLng["ortherObject"]; } }
  139. public string cpu { get { return mapLng["cpu"]; } }
  140. public string mem { get { return mapLng["mem"]; } }
  141. public string hostNmae { get { return mapLng["hostNmae"]; } }
  142. public string gpu { get { return mapLng["gpu"]; } }
  143. public string os { get { return mapLng["os"]; } }
  144. public string version { get { return mapLng["version"]; } }
  145. public string mainPanel { get { return mapLng["mainPanel"]; } }
  146. public string name { get { return mapLng["name"]; } }
  147. public string info { get { return mapLng["info"]; } }
  148. public string detail { get { return mapLng["detail"]; } }
  149. public string alarmInfo { get { return mapLng["alarmInfo"]; } }
  150. public string serNum { get { return mapLng["serNum"]; } }
  151. public string log { get { return mapLng["log"]; } }
  152. public string ok { get { return mapLng["ok"]; } }
  153. public string cancel { get { return mapLng["cancel"]; } }
  154. public string sureExit { get { return mapLng["sureExit"]; } }
  155. public string devInfo { get { return mapLng["devInfo"]; } }
  156. public string devList { get { return mapLng["devList"]; } }
  157. public string devName { get { return mapLng["devName"]; } }
  158. public string reset { get { return mapLng["reset"]; } }
  159. public string write { get { return mapLng["write"]; } }
  160. public string file { get { return mapLng["file"]; } }
  161. public string open { get { return mapLng["open"]; } }
  162. public string close { get { return mapLng["close"]; } }
  163. public string import { get { return mapLng["import"]; } }
  164. public string exit { get { return mapLng["exit"]; } }
  165. public string noDev { get { return mapLng["noDev"]; } }
  166. public string run { get { return mapLng["run"]; } }
  167. public string all { get { return mapLng["all"]; } }
  168. public string transferSys { get { return mapLng["transferSys"]; } }
  169. public string laserRadar { get { return mapLng["laserRadar"]; } }
  170. public string robotHand { get { return mapLng["robotHand"]; } }
  171. public string measureSys { get { return mapLng["measureSys"]; } }
  172. public string restartProcess { get { return mapLng["restartProcess"]; } }
  173. public string view { get { return mapLng["view"]; } }
  174. public string carView { get { return mapLng["carView"]; } }
  175. public string alarm { get { return mapLng["alarm"]; } }
  176. public string check { get { return mapLng["check"]; } }
  177. public string help { get { return mapLng["help"]; } }
  178. public string sysInfo { get { return mapLng["sysInfo"]; } }
  179. public string helpDoc { get { return mapLng["helpDoc"]; } }
  180. public string aboutUs { get { return mapLng["aboutUs"]; } }
  181. public string cmd { get { return mapLng["cmd"]; } }
  182. public string startClient { get { return mapLng["startClient"]; } }
  183. public string startServer { get { return mapLng["startServer"]; } }
  184. public string server { get { return mapLng["server"]; } }
  185. public string client { get { return mapLng["client"]; } }
  186. public string offline { get { return mapLng["offline"]; } }
  187. public string normal { get { return mapLng["normal"]; } }
  188. public string canReset { get { return mapLng["canReset"]; } }
  189. public string warning { get { return mapLng["warning"]; } }
  190. public string error { get { return mapLng["error"]; } }
  191. public string aFrew { get { return mapLng["aFrew"]; } }
  192. public string connect { get { return mapLng["connect"]; } }
  193. public string disconnect { get { return mapLng["disconnect"]; } }
  194. public string search { get { return mapLng["search"]; } }
  195. public string aboutWinText { get { return mapLng["aboutWinText"]; } }
  196. public virtual event PropertyChangedEventHandler PropertyChanged;
  197. public virtual void FirePropertyChanged(string propertyName) {
  198. if(PropertyChanged != null) {
  199. PropertyChanged.Invoke(this, new PropertyChangedEventArgs(propertyName));
  200. }
  201. }
  202. }
  203. }