side_pane_pane.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. ////////////////////////////////////////////////////////////////////////////
  2. // System Pre-define Functions
  3. // 95099372-ef3e-11ea-9c81-bf848405c62e
  4. //Callback of data preparation stage before UI is fully loaded.
  5. function OnInitializeData(reload, preview) {
  6. PUI(()=>{
  7. //you can access the 'ui' namespace in the parent form using the variable 'pui' here.
  8. //The 'pui' variable is valid in all functions of this document.
  9. //For robustness, you'd better use 'PUI(cb);' to access 'pui' variable.
  10. });
  11. ui.part_import.index = 1;
  12. OnChangeModel('part');
  13. ui.process_d_20_topmenu.visible = false;
  14. ui.dieface_stk.index = 1;
  15. }
  16. //Callback after UI is fully loaded and displayed.
  17. function OnReady(reload, preview) {
  18. PUI(()=>{
  19. //you can access the 'ui' namespace in the parent form using the variable 'pui' here.
  20. //The 'pui' variable is valid in all functions of this document.
  21. //For robustness, you'd better use 'PUI(cb);' to access 'pui' variable.
  22. });
  23. }
  24. function OnCloseForm() {
  25. }
  26. function OnException(err) {
  27. //ui.MessageBox('Error', '' + err, MessageBox.Icon.Critical, MessageBox.Button.Ok);
  28. }
  29. function OnProcessPunch(){
  30. unit.form.process_D_20_ToolsDefine.Show();
  31. }
  32. function OnProcessBinder(){
  33. unit.form.process_D_20_ToolsBinder.Show();
  34. }
  35. function OnBlankOutlineCopy(){
  36. unit.form.blank_Outline_Copyform.Show();
  37. }
  38. function OnProcessBeadCopy(){
  39. unit.form.process_D_20_beads_copyform.Show();
  40. }
  41. //////////////////////////////////////////////////////////////////////////
  42. // Callback Functions.
  43. // 641a254c-ef3e-11ea-bc8a-379bb908bdd7
  44. function OnChangeSimulationTopmenu(Idx){
  45. const difStep = {
  46. '0':() => {
  47. ui.simulation_stk.index = 0;
  48. ui.simulation_control_topmune_model.visible = true;
  49. },
  50. '1':() => {
  51. ui.simulation_stk.index = 1;
  52. ui.simulation_control_topmune_model.visible = false;
  53. },
  54. '2':() => {
  55. ui.simulation_stk.index = 2;
  56. ui.simulation_control_topmune_model.visible = false;
  57. },
  58. '3':() => {
  59. ui.simulation_stk.index = 3;
  60. ui.simulation_control_topmune_model.visible = false;
  61. }
  62. };
  63. difStep[Idx]();
  64. }
  65. function OnChangeDieTopmenu(Idx){
  66. const difStep = {
  67. 'M':() => {
  68. ui.m_btn.valid = true;
  69. ui.d_btn.valid = false;
  70. ui.dieface_stk.index = 0;
  71. },
  72. 'D':() => {
  73. ui.m_btn.valid = false;
  74. ui.d_btn.valid = true;
  75. ui.dieface_stk.index = 1;
  76. }
  77. };
  78. difStep[Idx]();
  79. }
  80. function OnChangeSimulationControlTopmenu(Idx){
  81. const difStep = {
  82. '0':() => {
  83. ui.simulation_control_stk.index = 0;
  84. },
  85. '1':() => {
  86. ui.simulation_control_stk.index = 1;
  87. },
  88. '2':() => {
  89. ui.simulation_control_stk.index = 2;
  90. },
  91. '3':() => {
  92. ui.simulation_control_stk.index = 3;
  93. }
  94. };
  95. difStep[Idx]();
  96. }
  97. function OnChangeProcessD20Topmenu(Idx){
  98. const difStep = {
  99. '0':() => {
  100. ui.D_20_topmenu_stk.index = 0;
  101. ui.process_d_20_topmenu.visible = true;
  102. },
  103. '1':() => {
  104. ui.D_20_topmenu_stk.index = 1;
  105. ui.process_d_20_topmenu.visible = true;
  106. },
  107. '2':() => {
  108. ui.D_20_topmenu_stk.index = 2;
  109. ui.process_d_20_topmenu.visible = true;
  110. },
  111. '3':() => {
  112. ui.D_20_topmenu_stk.index = 3;
  113. ui.process_d_20_topmenu.visible = true;
  114. },
  115. '4':() => {
  116. ui.D_20_topmenu_stk.index = 4;
  117. ui.process_d_20_topmenu.visible = true;
  118. },
  119. '5':() => {
  120. ui.D_20_topmenu_stk.index = 5;
  121. ui.process_d_20_topmenu.visible = true;
  122. },
  123. '6':() => {
  124. ui.D_20_topmenu_stk.index = 6;
  125. ui.process_d_20_topmenu.visible = true;
  126. }
  127. };
  128. difStep[Idx]();
  129. }
  130. function OnChangeProcessTopmenu(Idx){
  131. const difStep = {
  132. '0':() => {
  133. ui.process_stk.index = 0;
  134. ui.process_d_20_topmenu.visible = false;
  135. },
  136. '1':() => {
  137. ui.process_stk.index = 1;
  138. ui.process_d_20_topmenu.visible = true;
  139. }
  140. };
  141. difStep[Idx]();
  142. }
  143. function OnChangeDiefaceTopmenu(Idx){
  144. const difStep = {
  145. '0':() => {ui.dieface_stk.index = 0;},
  146. '1':() => {ui.dieface_stk.index = 1;},
  147. '2':() => {ui.dieface_stk.index = 2;},
  148. '3':() => {ui.dieface_stk.index = 3;},
  149. '4':() => {ui.dieface_stk.index = 4;},
  150. '5':() => {ui.dieface_stk.index = 5;}
  151. };
  152. difStep[Idx]();
  153. }
  154. function OnChangePlanTopmenu(Idx){
  155. const difStep = {
  156. '0':() => {ui.plan_topmenu_stk.index = 0;},
  157. '1':() => {ui.plan_topmenu_stk.index = 1;},
  158. '2':() => {ui.plan_topmenu_stk.index = 2;},
  159. '3':() => {ui.plan_topmenu_stk.index = 3;},
  160. '4':() => {ui.plan_topmenu_stk.index = 4;}
  161. };
  162. difStep[Idx]();
  163. }
  164. function createPlan(){
  165. ui.Plan_stk.index = 1;
  166. ui.plan_topmenu_stk.index = 1;
  167. }
  168. function createBlank(){
  169. ui.Blank_stk.index = 1;
  170. ui.plan_topmenu_stk.index = 0;
  171. }
  172. function OnOpenPartFile(){
  173. var fname = ui.OpenFileDialog("Import File", unit.dir+"/", "(*.igs *.afd)");
  174. }
  175. function OnOpenToolFile(){
  176. var fname = ui.OpenFileDialog("Import File", unit.dir+"/", "(*.igs)");
  177. }
  178. function OnChangeStep(Idx){
  179. const difStep = {
  180. '0':() => {ui.part_import.index = 0;},
  181. '1':() => {ui.part_import.index = 1;},
  182. '2':() => {ui.part_import.index = 2;},
  183. '3':() => {ui.part_import.index = 3;},
  184. '4':() => {ui.part_import.index = 4;},
  185. '5':() => {ui.part_import.index = 5;},
  186. '6':() => {ui.part_import.index = 6;}
  187. };
  188. difStep[Idx]();
  189. }
  190. function OnChangeModel(Idx){
  191. const difModel = {
  192. 'part':() => {
  193. ui.part_btn.valid = true;
  194. ui.plan_btn.valid = false;
  195. ui.dieface_btn.valid = false;
  196. ui.blank_btn.valid = false;
  197. ui.process_btn.valid = false;
  198. ui.simulation_btn.valid = false;
  199. ui.evaluation_btn.valid = false;
  200. ui.stk_dif_model.index = 0;
  201. },
  202. 'plan':() => {
  203. ui.part_btn.valid = false;
  204. ui.plan_btn.valid = true;
  205. ui.dieface_btn.valid = false;
  206. ui.blank_btn.valid = false;
  207. ui.process_btn.valid = false;
  208. ui.simulation_btn.valid = false;
  209. ui.evaluation_btn.valid = false;
  210. ui.stk_dif_model.index = 1;
  211. },
  212. 'dieface':() => {
  213. ui.part_btn.valid = false;
  214. ui.plan_btn.valid = false;
  215. ui.dieface_btn.valid = true;
  216. ui.blank_btn.valid = false;
  217. ui.process_btn.valid = false;
  218. ui.simulation_btn.valid = false;
  219. ui.evaluation_btn.valid = false;
  220. ui.stk_dif_model.index = 2;
  221. },
  222. 'blank':() => {
  223. ui.part_btn.valid = false;
  224. ui.plan_btn.valid = false;
  225. ui.dieface_btn.valid = false;
  226. ui.blank_btn.valid = true;
  227. ui.process_btn.valid = false;
  228. ui.simulation_btn.valid = false;
  229. ui.evaluation_btn.valid = false;
  230. ui.stk_dif_model.index = 3;
  231. },
  232. 'process':() => {
  233. ui.part_btn.valid = false;
  234. ui.plan_btn.valid = false;
  235. ui.dieface_btn.valid = false;
  236. ui.blank_btn.valid = false;
  237. ui.process_btn.valid = true;
  238. ui.simulation_btn.valid = false;
  239. ui.evaluation_btn.valid = false;
  240. ui.stk_dif_model.index = 4;
  241. },
  242. 'simulation':() => {
  243. ui.part_btn.valid = false;
  244. ui.plan_btn.valid = false;
  245. ui.dieface_btn.valid = false;
  246. ui.blank_btn.valid = false;
  247. ui.process_btn.valid = false;
  248. ui.simulation_btn.valid = true;
  249. ui.evaluation_btn.valid = false;
  250. ui.stk_dif_model.index = 5;
  251. },
  252. 'evaluation':() => {
  253. ui.part_btn.valid = false;
  254. ui.plan_btn.valid = false;
  255. ui.dieface_btn.valid = false;
  256. ui.blank_btn.valid = false;
  257. ui.process_btn.valid = false;
  258. ui.simulation_btn.valid = false;
  259. ui.evaluation_btn.valid = true;
  260. ui.stk_dif_model.index = 6;
  261. unit.form.evaluation_splits.update();
  262. }
  263. };
  264. return difModel[Idx]();
  265. }
  266. //The message corresponding callback executed by the docker pane.
  267. // when calling [side_pane].fireEvent(type,para) in the main form.
  268. function OnParentDockerMessage(type, para) {
  269. }
  270. //////////////////////////////////////////////////////////////////////////
  271. // Utils Functions.
  272. // 6c165ad6-ef3e-11ea-987c-b761a131c2fe
  273. function onDragFile(filepath) {
  274. }
  275. function PUI(cb) {
  276. if(pui){cb();}
  277. }
  278. /*Usage of BLOCK_EVENT
  279. BLOCK_EVENT(()=>{
  280. ui.[name].[var] = ...;
  281. });
  282. */
  283. function BLOCK_EVENT(cb) {
  284. ui.block_event = true;
  285. cb();
  286. ui.block_event = false;
  287. }
  288. //////////////////////////////////////////////////////////////////////////
  289. // template codes for cw callback js.
  290. function CW_DeclareVariable(name, setter, getter) {
  291. if(typeof(__DeclareVariable) === 'function') {
  292. __DeclareVariable(name, setter, getter);
  293. }
  294. }
  295. function CW_DeclareOuterVariable(name) {
  296. if(typeof(__DeclareOuterVariable) === 'function') {
  297. __DeclareOuterVariable(name);
  298. }
  299. }