public object done() { Action startJob_ = () => { log.exceuteInContext = _done; log.show(); }; Action askFirm_ = () => { string firms_ = CurrentVersion.ENV.getFirms(); if (firms_ == string.Empty) { startJob_.Invoke(); } else { List <string> lNr = new List <string>(); List <string> lDesc = new List <string>(); string[] arr_ = ToolString.explodeList(firms_); // for (int i = 0; i < arr_.Length; i += 2) { lNr.Add(arr_[i]); lDesc.Add(arr_[i + 1]); } // ToolMsg.askList(null, lDesc.ToArray(), (s, e) => { int nr_ = XmlFormating.helper.parseInt(lNr[e.Which]); int port_ = CurrentVersion.getPortByFirmNr(nr_); CurrentVersion.ENV.setEnv(CurrentVersion.ENV.PORT, XmlFormating.helper.format(port_)); startJob_.Invoke(); } ); } }; ToolMsg.confirm(null, string.Format("{0} - {1}", MessageCollection.T_MSG_COMMIT_BEGIN, MessageCollection.T_MSG_DATA_RECEIVING), () => { askFirm_(); //log.exceuteInContext = _done; //log.show(); }, null); return(null); }