// -------------------------------------------------------------------------------------------- /// <summary> /// Initializes a new instance of the <see cref="HierarchyCommandContext"/> class. /// </summary> /// <param name="package">The package owning this context.</param> /// <param name="selection">The list of selected nodes belonging to this context.</param> /// <param name="origin">The command origin.</param> // -------------------------------------------------------------------------------------------- public HierarchyCommandContext(PackageBase package, IList<HierarchyNode> selection, CommandOrigin origin) : base(package) { _Nodes = new ReadOnlyCollection<HierarchyNode>(selection); _Origin = origin; Handled = true; _ExplicitStatusSet = false; _Supported = false; _Disabled = false; _Invisible = false; }
public static string Render(PackageBase package, string renderStr) { string render_str = renderStr; Regex regex = new Regex(@"\$\w+\$"); MatchCollection match = regex.Matches(render_str); foreach (Match pattern in match) { string match_pattern = pattern.Groups[0].Value.Replace("$", @"\$"); string template_variable = match_pattern.Replace(@"\$", ""); render_str = Regex.Replace(render_str, match_pattern, package[template_variable]); } return render_str; }
public static string RenderTest(PartPackage partPack, PackageBase[] itemPacks, string renderType) { partPack["PartTemplate"] = Properties.Resources.StandardPart; switch (renderType) { case "StandardItem": partPack["ItemTemplate"] = Properties.Resources.StandardItem; break; case "DerivateItem": partPack["ItemTemplate"] = Properties.Resources.DerivateItem; break; case "Caption": partPack["ItemTemplate"] = Properties.Resources.Caption; break; } return RenderPart(partPack, itemPacks); }
public static ToastNotification GenerateProgressToast(PackageBase package) { if (!OperatingSystem.IsWindowsVersionAtLeast(10, 0, 18362)) { return(null); } var visualBinding = new ToastBindingGeneric { Children = { new AdaptiveText { Text = new BindableString("progressTitle") }, new AdaptiveProgressBar { Value = new BindableProgressBarValue("progressValue"), Title = new BindableString("progressVersion"), Status = new BindableString("progressStatus") } }, }; if (package.GetAppIcon().Result is SDK.Images.FileImage image && !image.Uri.IsFile) { visualBinding.AppLogoOverride = new ToastGenericAppLogo { Source = image.Url }; } var content = new ToastContent { Visual = new ToastVisual { BindingGeneric = visualBinding }, // TODO: Add cancel and pause functionality //Actions = new ToastActionsCustom() //{ // Buttons = // { // new ToastButton("Pause", $"action=pauseDownload&packageName={package.PackageMoniker}") // { // ActivationType = ToastActivationType.Background // }, // new ToastButton("Cancel", $"action=cancelDownload&packageName={package.PackageMoniker}") // { // ActivationType = ToastActivationType.Background // } // } //}, Launch = $"package/{package.Urn}", }; var notif = new ToastNotification(content.GetXml()); notif.Data = new NotificationData(new Dictionary <string, string>() { { "progressTitle", package.Title }, { "progressVersion", package.Version?.ToString() ?? string.Empty }, { "progressStatus", "Downloading..." } }); return(notif); }
/// <inheritdoc /> /// <summary> /// Initializes a new instance of the <see cref="T:Jfevia.ProductivityShell.Vsix.Commands.ProjectItem.ShowInExplorerCommand" /> class. /// </summary> /// <param name="package">The package.</param> private ShowInExplorerCommand(PackageBase package) : base(package, PackageCommands.ProjectItemShowInExplorerCommand) { }
private void RequestComplete(PackageResults packageRes, CommResults comRes, AckResults ackType, string strTag, PackageBase pack) { if (ackType != AckResults.ok || comRes != CommResults.ok || packageRes != PackageResults.ok) { if (strTag == "SetSaveSendCardsParameters") { _isSaveToHWSuccessful = false; } if (strTag == "SetParameterStore2SpiFlash") { string msg = ""; msg = "保存信息到硬件失败!"; GetLangString(msg, "Lang_ScreenInfo_SaveDataFailt", out msg); SendTextToMessageBox(msg, MessageBoxImage.Error); CloseProcessForm(); return; } if (strTag == "SetReturnFactoryValues") { string msg = ""; msg = "返回出厂设置失败!"; GetLangString(msg, "Lang_ScreenInfo_ReturnFactoryData", out msg); SendTextToMessageBox(msg, MessageBoxImage.Error); CloseProcessForm(); return; } } else { if (strTag == "SetParameterStore2SpiFlash") { CustomTransform.Delay(SpecialPackTimeOut.SAVE_PARAMS_TIMEOUT * 1000, 60); string msg = string.Empty; msg = "保存信息到硬件成功!"; GetLangString(msg, "Lang_ScreenInfo_SendToHWSuccess", out msg); _isSendDataToHW = false; //if (_globalParams.AllBaseInfo.AllInfoDict.ContainsKey(pack.PortName)) //{ // List<ILEDDisplayInfo> infoList = _globalParams.AllBaseInfo.AllInfoDict[pack.PortName].LEDDisplayInfoList; // infoList.Clear(); // for (int i = 0; i < _oldDisplayList.Count; i++) // { // infoList.Add(_oldDisplayList[i]); // } //} SendTextToMessageBox(msg, MessageBoxImage.Exclamation); CloseProcessForm(); Messenger.Default.Send<string>("", MsgToken.MSG_SCREENINFO_CHANGED); } else if (strTag == "SetReturnFactoryValues") { SpecialPackageRequest spcPack = new SpecialPackageRequest(SpecialPackID.RETURN_FACTORY_ID, SpecialPackTimeOut.RETURN_FACTORY); int curID; _serverProxy.SendEndRequestSpecialPacke(spcPack, out curID); RedundancyInfoAccessor reduInfoAccessor = new RedundancyInfoAccessor(_serverProxy, _hwCardType, _selectedPortName); HWSoftwareSpaceRes res = reduInfoAccessor.ClearHWReduInfo(OnClearReduInfoComplete); if (res != HWSoftwareSpaceRes.OK) { string msg = ""; msg = "返回出厂设置失败!"; GetLangString(msg, "Lang_ScreenInfo_ReturnFactoryData", out msg); SendTextToMessageBox(msg,MessageBoxImage.Error); CloseProcessForm(); return; } } } }
public static void Instantiate(PackageBase package) => Instantiate(new ServiceHubLogCommand(package));
//*** //===M private PathVariablesCommand(PackageBase package) : base(package, PackageIds.PathVariablesCommand) { }
private void OnTradeRcvMessage(object sender, PackageBase package) { if (this.InvokeRequired) { Smart.OnRcvMessage_EventHandler d = new Smart.OnRcvMessage_EventHandler(OnTradeRcvMessage); this.Invoke(d, new object[] { sender, package }); return; } StringBuilder sbtmp = new StringBuilder(); switch ((DT)package.DT) { case DT.LOGIN: // Bona登入 P001503 p1503 = (P001503)package; if (p1503.Code != 0) { AddInfo("登入失敗 CODE = " + p1503.Code + " " + tfcom.GetMessageMap(p1503.Code)); } else { AddInfo("登入成功 "); AddInfo("Yo:" + p1503.p001503_2[0].BrokeId + ":" + p1503.p001503_2[0].Account); } break; case DT.SECU_ALLOWANCE_RPT: //子帳額度控管: 回補 PT05002 p5002 = (PT05002)package; AddInfo(p5002.ToLog()); break; case DT.SECU_ALLOWANCE: PT05003 p5003 = (PT05003)package; AddInfo(p5003.ToLog()); break; #region 證券下單回報 case DT.SECU_ORDER_ACK: //下單第二回覆 // if (!cbShowUI.Checked) break; PT04002 p4002 = (PT04002)package; AddInfo(p4002.ToLog() + "訊息:" + tfcom.GetMessageMap(p4002.ErrorCode)); break; case DT.SECU_ORDER_RPT: // Bona委託回報 // if (!cbShowUI.Checked) break; PT04010 p4010 = (PT04010)package; AddInfo("RCV 4010 [" + p4010.CNT + "," + p4010.OrderNo + "]"); // "委託型態", "分公司代號", "帳號", "綜合帳戶", "營業員代碼", "委託書號", "交易日期", "回報時間", "委託日期時間", "商品代號", "下單序號", "委託來源別", "市場別", "買賣", "委託別", "委託種類", "委託價格", "改量前數量", "改量後數量", "錯誤代碼", "錯誤訊息" string[] row4010 = { p4010.OrderFunc.ToString(), p4010.BrokerId, p4010.Account, p4010.SubAccount, p4010.OmniAccount, p4010.AgentId, p4010.OrderNo, p4010.TradeDate, p4010.ReportTime, p4010.ClientOrderTime, p4010.StockID, p4010.CNT, p4010.Channel.ToString(), p4010.Market.ToString(), p4010.Side.ToString(), p4010.OrdLot.ToString(), p4010.OrdClass.ToString(), p4010.Price, p4010.BeforeQty, p4010.AfterQty, p4010.ErrCode, p4010.ErrMsg }; // dgv4010.Rows.Add(row4010); break; case DT.SECU_DEAL_RPT: //成交回報 // if (!cbShowUI.Checked) break; PT04011 p4011 = (PT04011)package; AddInfo("RCV 4011 [" + p4011.CNT + "]"); // "委託型態", "分公司代號", "帳號", "綜合帳戶", "營業員代碼", "委託書號", "交易日期", "回報時間", "電子單號", "來源別", "市場別", "商品代碼", "買賣別", "委託別", ",委託種類", "成交價格", "成交數量", "市場成交序號" string[] row4011 = { p4011.OrderFunc.ToString(), p4011.BrokerId, p4011.Account, p4011.SubAccount, p4011.OmniAccount, p4011.AgentId, p4011.OrderNo, p4011.TradeDate, p4011.ReportTime, p4011.CNT, p4011.Channel.ToString(), p4011.Market.ToString(), p4011.StockID, p4011.Side.ToString(), p4011.OrdLot.ToString(), p4011.OrdClass.ToString(), p4011.Price, p4011.DealQty, p4011.MarketNo }; // dgv4011.Rows.Add(row4011); break; #endregion #region 證券複委託回報 <2015.11 Add > case DT.SECU_SUBORDER_ACK: //下單第二回覆 // if (!cbShowUI.Checked) break; PT04102 p4102 = (PT04102)package; sbtmp.Append("[RCV 4102]").Append(" RequestId=").Append("" + p4102.RequestId) .Append(";CNT=").Append(p4102.CNT) .Append(";WEBID=").Append(p4102.WEBID) .Append(";Code=").Append("" + p4102.Code) //.Append(";CustomerID=").Append(p4102.CustomerID) .Append(";SeqNum=").Append(p4102.SeqNum) .Append(";OrdgSeqNum=").Append(p4102.OrdgSeqNum) .Append(";OrderNo=").Append(p4102.OrderNo) .Append(";ErrCode=").Append(p4102.ErrCode) .Append(";ErrMsg=").Append(p4102.ErrMsg); //AddInfo("RCV 4102 [" + p4102.RequestId + "," + p4102.WEBID + "," + "]"); AddInfo(sbtmp.ToString()); break; case DT.SECU_SUBORDER_RPT: //委託回報 // if (!cbShowUI.Checked) break; PT04110 p4110 = (PT04110)package; AddInfo("RCV 4110 [ SeqNo=" + p4110.SeqNo + " OrderNO=" + p4110.OrderNo + " OrgSeqNo=" + p4110.OrgSeqNo + "]"); //"委託型態", "客戶帳號", "客戶姓名", "委託書號", "交易日期", "市場別", "商品代號", "商品名稱", "買賣別", "幣別", "價格", "數量", "成交/改單數量", "成交狀態", "成交數量", "委託狀態", " 委託序號", "原始委託序號", "接單方式", "錯誤代碼", "錯誤訊息", "下單IP", "下單管道", "通路別", "建立日期" string[] row4110 = { p4110.OrderFunc, p4110.CustomerId, p4110.CustomerName, p4110.OrderNo, p4110.TradeDate, p4110.Market, p4110.Symbol, p4110.SymbolName, p4110.BS.ToString(), p4110.Currency, p4110.Price, p4110.Qty, p4110.Qty2, p4110.ExeStatus, p4110.ExeQty, p4110.Status, p4110.SeqNo, p4110.OrgSeqNo, p4110.OrderMethod, p4110.ErrorCode, p4110.ErrorMsg, p4110.IP, p4110.SystemID, p4110.Channel, p4110.CreateDate }; // dgv4110.Rows.Add(row4110); break; case DT.SECU_SUBDEAL_RPT: //成交回報 // if (!cbShowUI.Checked) break; PT04111 p4111 = (PT04111)package; AddInfo("RCV 4111 [" + p4111.OrderNo + "]"); // "客戶帳號", "客戶姓名", "交易日期", "市場別", "商品代碼", "商品名稱", "委託價格", "委託數量", "成交價格", "成交數量", "委託書號", "成交序號", "下單管道", "通路別" string[] row4111 = { p4111.CustomerId, p4111.CustomerName, p4111.TradeDate, p4111.Market, p4111.Symbol, p4111.SymbolName, p4111.Price, p4111.Qty, p4111.MatchPrice, p4111.MatchQty, p4111.OrderNo, p4111.MatchNo, p4111.SystemID, p4111.Channel }; // dgv4111.Rows.Add(row4111); break; #endregion #region 複委託帳務查詢 case DT.FINANCIAL_RCORDER: //4113. 複委託委託查詢 PT04113 p4113 = (PT04113)package; AddInfo("RCV 4113 [" + p4113.Code + "][" + p4113.CodeDesc + "][ 筆數:" + p4113.Rows + "]"); if (p4113.Code == 0) { // dgvRCQuery.DataSource = p4113.Detail; // SetGridHeader(4113); } break; case DT.FINANCIAL_RCMATCHSUM: //4115. 複委託成交彙總查詢 PT04115 p4115 = (PT04115)package; AddInfo("RCV 4115 [" + p4115.Code + "][" + p4115.CodeDesc + "][ 筆數:" + p4115.Rows + "]"); if (p4115.Code == 0) { // dgvRCQuery.DataSource = p4115.Detail; // SetGridHeader(4115); } break; case DT.FINANCIAL_RCMATCHDETAIL: //4117. 複委託成交明細查詢 PT04117 p4117 = (PT04117)package; AddInfo("RCV 4117 [" + p4117.Code + "][" + p4117.CodeDesc + "][ 筆數:" + p4117.Rows + "]"); if (p4117.Code == 0) { // dgvRCQuery.DataSource = p4117.Detail; // SetGridHeader(4117); } break; case DT.FINANCIAL_RCPOSITIONSUM: //4119. 複委託整戶部位明細查詢 PT04119 p4119 = (PT04119)package; AddInfo("RCV 4119 [" + p4119.Code + "][" + p4119.CodeDesc + "][ 筆數:" + p4119.Rows + "]"); if (p4119.Code == 0) { // dgvRCQuery.DataSource = p4119.Detail; // SetGridHeader(4119); } break; case DT.FINANCIAL_RCCURRENCY: //4121. 複委託單一幣別帳務查詢 PT04121 p4121 = (PT04121)package; AddInfo("RCV 4121 [" + p4121.Code + "][" + p4121.CodeDesc + "][ 筆數:" + p4121.Rows + "]"); if (p4121.Code == 0) { // dgvRCQuery.DataSource = p4121.Detail; // SetGridHeader(4121); } break; case DT.FINANCIAL_RCSTOCKPOSITION: //4123. 複委託股票庫存部位查詢 ; PT04123 p4123 = (PT04123)package; AddInfo("RCV 4123 [" + p4123.Code + "][" + p4123.CodeDesc + "][ 筆數:" + p4123.Rows + "]"); if (p4123.Code == 0) { // dgvRCQuery.DataSource = p4123.Detail; // SetGridHeader(4123); } break; case DT.FINANCIAL_RCDELIVERY: //4125. 複委託交割金額試算 ; 交割:Delivery ; PT04125 p4125 = (PT04125)package; AddInfo("RCV 4125 [" + p4125.Code + "][" + p4125.CodeDesc + "][ 筆數:" + p4125.Rows + "]"); if (p4125.Code == 0) { // dgvRCQuery.DataSource = p4125.Detail; // SetGridHeader(4125); } break; #endregion #region 帳務中台WebSerivce 查詢 case DT.FINANCIAL_WSSETAMTTRIAL: //當日交割金額試算查詢 PT04302 p4302 = (PT04302)package; AddInfo("RCV 4302 [" + p4302.Code + "][" + p4302.CodeDesc + "][ 筆數:" + p4302.Rows1 + " , " + p4302.Rows2 + "]"); // lbResult.Text = "4302[ " + p4302.Rows1 + "]筆"; // lbResult1.Text = "4302_2[ " + p4302.Rows2 + "]筆"; if (p4302.Code == 0) { // dgvWSDetail1.DataSource = p4302.Detail1; // dgvWSDetail2.DataSource = p4302.Detail2; // SetWSGridHeader(4302); } break; case DT.FINANCIAL_WSSETAMTDETAIL: //當日交割金額_沖銷明細(非當沖)查詢 PT04304 p4304 = (PT04304)package; AddInfo("RCV 4304 [" + p4304.Code + "][" + p4304.CodeDesc + "][ 筆數:" + p4304.Rows + "]"); // lbResult.Text = "4304[ " + p4304.Rows + "]筆"; if (p4304.Code == 0) { // dgvWSDetail1.DataSource = p4304.Detail; // SetWSGridHeader(4304); } break; case DT.FINANCIAL_WSSETTLEAMT: //交割金額查詢(3日)查詢 PT04306 p4306 = (PT04306)package; AddInfo("RCV 4306 [" + p4306.Code + "][" + p4306.CodeDesc + "][ 筆數:" + p4306.Rows + "]"); // lbResult.Text = "4304[ " + p4306.Rows + "]筆"; if (p4306.Code == 0) { // dgvWSDetail1.DataSource = p4306.Detail; // SetWSGridHeader(4306); } break; case DT.FINANCIAL_WSINVENTORY: //庫存損益及即時維持率試算查詢 PT04308 p4308 = (PT04308)package; AddInfo("RCV 4308 [" + p4308.Code + "][" + p4308.CodeDesc + "][ 筆數:" + p4308.Rows + "]"); // lbResult.Text = "4308[ " + p4308.Rows + "]筆"; if (p4308.Code == 0) { // dgvWSDetail1.DataSource = p4308.Detail; // SetWSGridHeader(4308); } break; case DT.FINANCIAL_WSINVENTORYSUM: //證券庫存彙總查詢 PT04310 p4310 = (PT04310)package; AddInfo("RCV 4310 [" + p4310.Code + "][" + p4310.CodeDesc + "][ 筆數:" + p4310.Rows + "]"); // lbResult.Text = "4310[ " + p4310.Rows + "]筆"; if (p4310.Code == 0) { // dgvWSDetail1.DataSource = p4310.Detail; // SetWSGridHeader(4310); } break; case DT.FINANCIAL_WSBALANCESTATEMENT: //證券對帳單查詢 PT04312 p4312 = (PT04312)package; AddInfo("RCV 4312 [" + p4312.Code + "][" + p4312.CodeDesc + "][ 筆數:" + p4312.Rows + "]"); // lbResult.Text = "4312[ " + p4312.Rows + "]筆"; if (p4312.Code == 0) { // dgvWSDetail1.DataSource = p4312.Detail; // SetWSGridHeader(4312); } break; #endregion case DT.SECU_EARMARK_SET: //圈存 ; //string[] header4031 = { "Requestid", "webid", "1.圈/D.解圈", "分公司代號", "帳號", "證券代號", "申請張數", "回覆張數", "申請日期" ,"申請時間","回覆時間","序號","代碼","訊息"}; P004031 p4031 = (P004031)package; //MessageBox.Show("EarMark Set:" + p4031.ErrCode); string[] row4031 = { p4031.RequestId.ToString(), p4031.Webid, p4031.TCode.ToString(), p4031.BrokerId, p4031.Account, p4031.StockNO, p4031.ApplyQTY, p4031.ReplyQTY, p4031.ApplyDate, p4031.ApplyTime, p4031.ReplyTime, p4031.Seqno, p4031.ErrCode, p4031.ErrMsg }; // dgv4031.Rows.Add(row4031); break; } }
public void OnRcvMessage(object sender, PackageBase package) { switch ((DT)package.DT) { case DT.INVENTORY_TRADER: //1616 P001616 p1616 = (P001616)package; if (p1616.Rows > 0) { foreach (P001616_2 p1616b in p1616.p001616_2) { string[] row1616 = { p1616b.BrokerId, p1616b.Account, p1616b.Group, p1616b.Trader, p1616b.Exchange, p1616b.ComType, p1616b.ComID, p1616b.ComYM, p1616b.StrikePrice, p1616b.CP, p1616b.BS, p1616b.DeliveryDate, p1616b.Currency, p1616b.OTQty, p1616b.TrdPrice, p1616b.MPrice, p1616b.PRTLOS, p1616b.DealPrice }; AddInfo("ComID : " + p1616b.ComID); AddInfo("OTQty : " + p1616b.BS + p1616b.OTQty); AddInfo("Keep : " + p1616b.DealPrice); if (p1616b.BS == "B") { chkQty = int.Parse(p1616b.OTQty); kgikeep = int.Parse(p1616b.DealPrice.Split('.')[0]); Console.WriteLine("CMD : kgiCheck keep B :" + kgikeep.ToString() + " : " + chkQty.ToString()); } else { chkQty = -int.Parse(p1616b.OTQty); kgikeep = int.Parse(p1616b.DealPrice.Split('.')[0]); Console.WriteLine("CMD : kgiCheck keep S : "+ kgikeep.ToString() + " : " + chkQty.ToString()); } } } break; case DT.FINANCIAL_COVER_TRADER: //1614 P001614 p1614 = (P001614)package; break; } }
private static string RenderItemAsIfSectionPack(PackageBase itemPack, PartPackage partPack) { SectionPackage section = itemPack as SectionPackage; if (section != null) { // sectionのHタグのために設定 int depth = int.Parse(partPack["Depth"]); itemPack["Depth"] = (depth + 3).ToString(); itemPack["Indent"] = AddIndent(depth); } return TemplateBase.Render(itemPack, partPack["ItemTemplate"]) + "\n"; }
private static string RenderItemAsIfRenderSection(PackageBase itemPack, PartPackage partPack) { string result = RenderItemAsIfSectionPack(itemPack, partPack); SectionPackage section_pack = itemPack as SectionPackage; if (section_pack != null) { var childs = section_pack.Childs.ToArray(); if (childs.Length > 0) { int depth = int.Parse(partPack["Depth"]) + 1; result += SectionPart.RenderSection(childs, depth); } } return result; }
private static string RenderingItems(PartPackage partPack, PackageBase[] itemPacks) { string result = ""; if (itemPacks.Length > 0) { result += RenderItemAsIfRenderSection(itemPacks[0], partPack); for (int i = 1; i < itemPacks.Length; i++) { string indent = ""; if (partPack.ContainsKey("Depth")) { int depth = int.Parse(partPack["Depth"]); indent = AddIndent(depth); indent += " "; } result += "\n" + indent + Properties.Resources.Separate; result += RenderItemAsIfRenderSection(itemPacks[i], partPack); } } return result; }
public static string RenderPart(PartPackage partPack, PackageBase[] itemPacks) { partPack["Contents"] = RenderingItems(partPack, itemPacks); return DepthForIndent(partPack) + TemplateBase.Render(partPack, partPack["PartTemplate"]); }
//!!! public static void Instantiate(PackageBase package) => Instantiate(new RestartNormalCommand(package));
//===M private InsertGuidCommand(PackageBase package) : base(package, CommandId) { }
public CarPay(PackageBase pb) : base(pb) { }
//===M public static void Instantiate(PackageBase package) => Instantiate(new InsertGuidCommand(package));
//*** //!!! private TimeSaversOptionsCommand(PackageBase package) : base(package, PackageIds.TimeSaversOptionsCommand) { }
// -------------------------------------------------------------------------------------------- /// <summary> /// Displays the message in a Visual Studio message box. /// </summary> /// <param name="package">Package the action is used from</param> /// <param name="id">Command ID activating the action.</param> // -------------------------------------------------------------------------------------------- public override void ExecuteAction(PackageBase package, CommandID id) { VsMessageBox.Show(_Text, _Title, _Buttons, _Icon, _DefaultButton); }
// -------------------------------------------------------------------------------------------- /// <summary> /// Initializes a new instance of the <see cref="CommandContext"/> class. /// </summary> /// <param name="package">The package belonging to this context.</param> // -------------------------------------------------------------------------------------------- public CommandContext(PackageBase package) { Package = package; }
// -------------------------------------------------------------------------------------------- /// <summary> /// Puts the message to the current pane of the output window. /// </summary> /// <param name="package">Package the action is used from</param> /// <param name="id">Command ID activating the action.</param> // -------------------------------------------------------------------------------------------- public override void ExecuteAction(PackageBase package, CommandID id) { package.ShowToolWindow(_Type, _InstanceId); }
/// <summary> /// Initializes the specified package. /// </summary> /// <param name="package">The package.</param> public static void Initialize(PackageBase package) { Instance = new ReloadCommand(package); }
// -------------------------------------------------------------------------------------------- /// <summary> /// Carries out the actions expected. /// </summary> /// <param name="package">Package the action is used from</param> /// <param name="id">Command ID activating the action.</param> // -------------------------------------------------------------------------------------------- public override void ExecuteAction(PackageBase package, CommandID id) { Console.WriteLine(_Message); }
public CReverse_QMPay(PackageBase pb) : base(pb) { }
// -------------------------------------------------------------------------------------------- /// <summary> /// Executes the specified Visual Studio command. /// </summary> /// <param name="package">Package the action is used from</param> /// <param name="id">Command ID activating the action.</param> // -------------------------------------------------------------------------------------------- public override void ExecuteAction(PackageBase package, CommandID id) { VsIde.ExecuteCommand(_CommandName, _Args); }
/// <summary> /// Initializes the specified package. /// </summary> /// <param name="package">The package.</param> public static void Initialize(PackageBase package) { Instance = new ShowInExplorerCommand(package); }
}//sim public void OnQuoteRcvMessage(object sender, PackageBase package) { kgiQuotesrv = true; if (package.TOPIC != null) if (RecoverMap.ContainsKey(package.TOPIC)) RecoverMap[package.TOPIC]++; switch (package.DT) { case (ushort)DT.LOGIN: P001503 _p001503 = (P001503)package; if (_p001503.Code == 0) AddInfo("可註冊檔數:" + _p001503.Qnum); break; #region 公告 2014.12.12 ADD case (ushort)DT.NOTICE_RPT: P001701 p1701 = (P001701)package; AddInfo(p1701.ToLog()); break; //公告(被動查詢) case (ushort)DT.NOTICE: //公告(主動) P001702 p1702 = (P001702)package; AddInfo(p1702.ToLog()); break; #endregion case (ushort)DT.QUOTE_I020: case 20022: PI20020 i20020 = (PI20020)package; kgi_tick_v = i20020.MatchQuantity; kgi_tick_price = (int)i20020.Price; kgi_tick_time = (int)i20020.MatchTime; int kgihour = (int)kgi_tick_time / 1000000; int kgim = (int)(kgi_tick_time % 1000000) / 10000; int kgis = (int)((kgi_tick_time % 1000000) % 10000 ) / 100; kginowidx = kgihour * 60 * 60 / 12 + kgim * 60 / 12 + kgis / 12 - 8 * 60 * 60 / 12 - 45 * 60 / 12; if (kginowidx < 0) { //Console.WriteLine(kgitime.ToString()); //Console.WriteLine(" "+kgihour.ToString()+" "+kgim.ToString() + " " + kgis.ToString()+" "+kgi_idx.ToString()); Console.WriteLine("Wait Trade open"); Console.WriteLine(kginowidx.ToString()); } kgisrv_wdg = true; if ((kginowidx >= 0) && (kginowidx <= 1400)) { if (kgi_idx == -1) { tempidx = kginowidx; kgi_idx += 1; kgitrademin_p[kgi_idx] = kgi_tick_price; kgitrademin_n[kgi_idx] = 1; kgitrademin_v[kgi_idx] = kgi_tick_v; kgi_usavgp = kgi_tick_price; kgi_usavgn = 1; } if (tempidx < kginowidx) { if (kgitrademin_v[kgi_idx] != 0) { kgitrademin_p[kgi_idx] /= kgitrademin_n[kgi_idx]; nowp = kgitrademin_p[kgi_idx]; kgi_idx += 1; //Sync.sync_kgidata_flash = true; //使用強制 tick to python / 250ms , 這裡如果在加 , 可能會亂 } else // 假如這個時間區塊無資料 將下個時間區塊替補上 { //kgitrademin_p[kgi_idx] = kgitrademin_p[kgi_idx - 1]; //kgitrademin_v[kgi_idx] = 1; } //Console.WriteLine(kgitrademin_p[kgi_idx].ToString() + " " + kgitrademin_v[kgi_idx].ToString()); //Console.WriteLine(kgihour.ToString() + " " + kgim.ToString() + " " + kgis.ToString() + " " + kgi_idx.ToString()); tempidx = kginowidx; kgitrademin_p[kgi_idx] = kgi_tick_price; kgitrademin_n[kgi_idx] = 1; kgitrademin_v[kgi_idx] = kgi_tick_v; } else { kgitrademin_p[kgi_idx] += kgi_tick_price; kgitrademin_n[kgi_idx] += 1; kgitrademin_v[kgi_idx] += kgi_tick_v; kgi_usavgp = kgi_tick_price; kgi_usavgn = 1; kgi_usavg_kgidata_flash = true; } } ticksrv_kgidata_flash = true; break; } }
public CTransScript(PackageBase pb) : base(pb) { }
/// <summary> /// Gets an enumerable set of the selected UI hierarchy items. /// </summary> /// <param name="package">The hosting package.</param> /// <returns>The enumerable set of selected UI hierarchy items.</returns> internal static IEnumerable <UIHierarchyItem> GetSelectedUIHierarchyItems(PackageBase package) { var solutionExplorer = GetSolutionExplorer(package); return(((object[])solutionExplorer.SelectedItems).Cast <UIHierarchyItem>().ToList()); }
//*** //!!! private RestartNormalCommand(PackageBase package) : base(package, PackageIds.RestartNormalCommand) { }
/// <summary> /// Gets the solution explorer for the specified hosting package. /// </summary> /// <param name="package">The hosting package.</param> /// <returns>The solution explorer.</returns> internal static UIHierarchy GetSolutionExplorer(PackageBase package) { return(package.Dte.ToolWindows.SolutionExplorer); }
// -------------------------------------------------------------------------------- /// <summary> /// Explicitly defined default constructor. Initialize new instance of the /// EditorFactory object. /// </summary> // -------------------------------------------------------------------------------- public EditorFactoryBase() { Package = PackageBase.GetPackageInstance <TPackage>(); }
/// <summary> /// Gets the top level (solution) UI hierarchy item. /// </summary> /// <param name="package">The hosting package.</param> /// <returns>The top level (solution) UI hierarchy item, otherwise null.</returns> internal static UIHierarchyItem GetTopUIHierarchyItem(PackageBase package) { var solutionExplorer = GetSolutionExplorer(package); return(solutionExplorer.UIHierarchyItems.Count > 0 ? solutionExplorer.UIHierarchyItems.Item(1) : null); }
private void OnQuoteRcvMessage(object sender, PackageBase package) { if (package.TOPIC != null) { if (RecoverMap.ContainsKey(package.TOPIC)) { RecoverMap[package.TOPIC]++; } } StringBuilder sb; switch (package.DT) { case (ushort)DT.LOGIN: P001503 _p001503 = (P001503)package; if (_p001503.Code == 0) { AddInfo("可註冊檔數:" + _p001503.Qnum); if (quoteCom.QuoteFuture) { AddInfo("可註冊期貨報價"); } if (quoteCom.QuoteStock) { AddInfo("可註冊證券報價"); } } break; case (ushort)DT.QUOTE_STOCK_MATCH1: //上市成交 case (ushort)DT.QUOTE_STOCK_MATCH2: //上櫃成交 PI31001 pi31001 = (PI31001)package; if (!cbShow.Checked) { break; } sb = new StringBuilder(Environment.NewLine); sb.Append((package.DT == (ushort)DT.QUOTE_STOCK_MATCH1) ? "上市 " : "上櫃 "); if (pi31001.Status == 0) { sb.Append("<試撮>"); } sb.Append("商品代號: ").Append(pi31001.StockNo).Append(" 更新時間: ").Append(pi31001.Match_Time).Append(Environment.NewLine); sb.Append(" 成交價: ").Append(pi31001.Match_Price).Append(" 單量: ").Append(pi31001.Match_Qty); sb.Append(" 總量: ").Append(pi31001.Total_Qty).Append(" 來源: ").Append(pi31001.Source).Append(Environment.NewLine); sb.Append("========================================="); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_DEPTH1: //上市五檔 case (ushort)DT.QUOTE_STOCK_DEPTH2: //上櫃五檔 PI31002 i31002 = (PI31002)package; if (!cbShow.Checked) { break; } sb = new StringBuilder(Environment.NewLine); sb.Append((package.DT == (ushort)DT.QUOTE_STOCK_DEPTH1) ? "上市 " : "上櫃 "); if (i31002.Status == 0) { sb.Append("<試撮> "); } sb.Append("商品代號: ").Append(i31002.StockNo).Append(" 更新時間: ").Append(i31002.Match_Time).Append(" 來源: ").Append(i31002.Source).Append(Environment.NewLine); for (int i = 0; i < 5; i++) { sb.Append(String.Format("五檔[{0}] 買[價:{1:N} 量:{2:N}] 賣[價:{3:N} 量:{4:N}]", i + 1, i31002.BUY_DEPTH[i].PRICE, i31002.BUY_DEPTH[i].QUANTITY, i31002.SELL_DEPTH[i].PRICE, i31002.SELL_DEPTH[i].QUANTITY)).Append(Environment.NewLine); } sb.Append("========================================="); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_LAST_PRICE_STOCK: PI30026 pi30026 = (PI30026)package; #region Comfup Add UpdateStockComfup(pi30026); #endregion sb = new StringBuilder(Environment.NewLine); sb.Append("商品代號:").Append(pi30026.StockNo).Append(" 最後價格:").Append(pi30026.LastMatchPrice).Append(Environment.NewLine); sb.Append("當日最高成交價格:").Append(pi30026.DayHighPrice).Append(" 當日最低成交價格:").Append(pi30026.DayLowPrice); sb.Append("開盤價:").Append(pi30026.FirstMatchPrice).Append(" 開盤量:").Append(pi30026.FirstMatchQty).Append(Environment.NewLine); sb.Append("參考價:").Append(pi30026.ReferencePrice).Append(Environment.NewLine); sb.Append("成交單量:").Append(pi30026.LastMatchQty).Append(Environment.NewLine); sb.Append("成交總量:").Append(pi30026.TotalMatchQty).Append(Environment.NewLine); for (int i = 0; i < 5; i++) { sb.Append(String.Format("五檔[{0}] 買[價:{1:N} 量:{2:N}] 賣[價:{3:N} 量:{4:N}]", i + 1, pi30026.BUY_DEPTH[i].PRICE, pi30026.BUY_DEPTH[i].QUANTITY, pi30026.SELL_DEPTH[i].PRICE, pi30026.SELL_DEPTH[i].QUANTITY)).Append(Environment.NewLine); } sb.Append("=============================================="); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_INDEX1: //上市指數 PI31011 pi31011 = (PI31011)package; sb = new StringBuilder(Environment.NewLine); sb.Append("[上市指數]更新時間:").Append(pi31011.Match_Time).Append(" 筆數: ").Append(pi31011.COUNT).Append(Environment.NewLine); for (int i = 0; i < pi31011.COUNT; i++) { sb.Append(" [" + (i + 1) + "] ").Append(pi31011.IDX[i].VALUE); } sb.Append("=============================================="); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_INDEX2: //上櫃指數 PI31011 pi32011 = (PI31011)package; sb = new StringBuilder(Environment.NewLine); sb.Append("[上櫃指數]更新時間:").Append(pi32011.Match_Time).Append(" 筆數: ").Append(pi32011.COUNT).Append(Environment.NewLine); for (int i = 0; i < pi32011.COUNT; i++) { sb.Append(" [" + (i + 1) + "]").Append(pi32011.IDX[i].VALUE); } sb.Append("=============================================="); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_NEWINDEX1: //上市新編指數 PI31021 pi31021 = (PI31021)package; sb = new StringBuilder(Environment.NewLine); sb.Append("上市新編指數[").Append(pi31021.IndexNo).Append("] 時間:").Append(pi31021.IndexTime); sb.Append("指數: ").Append(pi31021.LatestIndex).Append(Environment.NewLine); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_NEWINDEX2: //上櫃新編指數 PI31021 pi32021 = (PI31021)package; sb = new StringBuilder(Environment.NewLine); sb.Append("上櫃新編指數[").Append(pi32021.IndexNo).Append("] 時間:").Append(pi32021.IndexTime); sb.Append("最新指數: ").Append(pi32021.LatestIndex).Append(Environment.NewLine); AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_LAST_INDEX1: //上市最新指數查詢 PI31026 pi31026 = (PI31026)package; sb = new StringBuilder(Environment.NewLine); sb.Append(" 最新上市指數 筆數: ").Append(pi31026.COUNT).Append(Environment.NewLine); for (int i = 0; i < pi31026.COUNT; i++) { sb.Append(" [" + (i + 1) + "] ").Append(" 昨日收盤指數:").Append(pi31026.IDX[i].RefIndex); sb.Append(" 開盤指數:").Append(pi31026.IDX[i].FirstIndex).Append(" 最新指數:").Append(pi31026.IDX[i].LastIndex); sb.Append(" 最高指數:").Append(pi31026.IDX[i].DayHighIndex).Append(" 最低指數:").Append(pi31026.IDX[i].DayLowIndex).Append(Environment.NewLine); sb.Append("=============================================="); } AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_LAST_INDEX2: //上櫃最新指數查詢 PI31026 pi32026 = (PI31026)package; sb = new StringBuilder(Environment.NewLine); sb.Append(" 最新上櫃指數 筆數: ").Append(pi32026.COUNT).Append(Environment.NewLine); for (int i = 0; i < pi32026.COUNT; i++) { sb.Append(" [" + (i + 1) + "] ").Append(" 昨日收盤指數:").Append(pi32026.IDX[i].RefIndex); sb.Append(" 開盤指數:").Append(pi32026.IDX[i].FirstIndex).Append(" 最新指數:").Append(pi32026.IDX[i].LastIndex); sb.Append(" 最高指數:").Append(pi32026.IDX[i].DayHighIndex).Append(" 最低指數:").Append(pi32026.IDX[i].DayLowIndex).Append(Environment.NewLine); sb.Append("=============================================="); } AddInfo(sb.ToString()); break; case (ushort)DT.QUOTE_STOCK_AVGINDEX: //加權平均指數 2014.8.6 ADD ; PI31022 pi31022 = (PI31022)package; sb = new StringBuilder(Environment.NewLine); sb.Append("加權平均指數[").Append(pi31022.IndexNo).Append("] 時間:").Append(pi31022.IndexTime); sb.Append("最新指數: ").Append(pi31022.LatestIndex).Append(Environment.NewLine); AddInfo(sb.ToString()); break; } }
//*** //===M private RebuildSolutionCommand(PackageBase package) : base(package, PackageIds.RebuildSolutionCommand) { }
public RestartVS(PackageBase package) : base(package) { }
public YAPaymentPay(PackageBase pb) : base(pb) { }
//!!! public static void Instantiate(PackageBase package) => Instantiate(new TimeSaversOptionsCommand(package));
//*** //!!! private CloseSolutionCommand(PackageBase package) : base(package, PackageIds.CloseSolutionCommand) { }
//===M public static void Instantiate(PackageBase package) => Instantiate(new PathVariablesCommand(package));
//!!! public static void Instantiate(PackageBase package) => Instantiate(new CloseSolutionCommand(package));
private ServiceHubLogCommand(PackageBase package) : base(package, PackageIds.ServiceHubLogCommand) { }
//*** //!!! private KeyboardOptionsCommand(PackageBase package) : base(package, PackageIds.KeyboardOptionsCommand) { }
/// <inheritdoc /> /// <summary> /// Initializes a new instance of the <see cref="T:Jfevia.ProductivityShell.Vsix.Commands.Project.ReloadCommand" /> /// class. /// </summary> /// <param name="package">The package.</param> private ReloadCommand(PackageBase package) : base(package, PackageCommands.ProjectReloadCommand) { }
//!!! public static void Instantiate(PackageBase package) => Instantiate(new KeyboardOptionsCommand(package));
protected OtherCommand(PackageBase package, int id) : base(package, id) { }
// -------------------------------------------------------------------------------------------- /// <summary> /// Carries out the actions expected. /// </summary> /// <param name="package">Package the action is used from</param> /// <param name="id">Command ID activating the action.</param> // -------------------------------------------------------------------------------------------- public abstract void ExecuteAction(PackageBase package, CommandID id);