using System.Diagnostics;\r
using System.Text;\r
\r
+using System.ComponentModel;\r
+\r
namespace AppliStation.Util\r
{\r
public class ToolStripPetitLauncherMenuItem : ToolStripMenuItem\r
\r
private string baseFolderPath;\r
\r
+ private Form invokerForm;\r
+ \r
/// <summary>\r
/// 親フォルダ\r
/// </summary>\r
+ [ReadOnly(true)]\r
public string BaseFolderPath {\r
get { return baseFolderPath; }\r
set {\r
}\r
\r
/// <summary>\r
+ /// 別スレッドからInvokeするときのオブジェクト\r
+ /// </summary>\r
+ public Form InvokerForm {\r
+ get { return invokerForm; }\r
+ set { invokerForm = value; }\r
+ }\r
+ \r
+ /// <summary>\r
/// ドロップアイテムの(再)生成を行う\r
/// </summary>\r
public void BuildItems()\r
private delegate int ToolStripItemCollection_AddDelegate(ToolStripItem item);\r
private void _addToItemsInv(ToolStripItem item)\r
{\r
- if (Parent.InvokeRequired) {\r
- Parent.Invoke(new ToolStripItemCollection_AddDelegate(DropDownItems.Add), item);\r
+ if (InvokerForm.InvokeRequired) {\r
+ InvokerForm.Invoke(new ToolStripItemCollection_AddDelegate(DropDownItems.Add), item);\r
} else {\r
DropDownItems.Add(item);\r
}\r
private delegate void ToolStripItemCollection_InsertDelegate(int index, ToolStripItem item);\r
private void _insertToItemsInv(int index, ToolStripItem item)\r
{\r
- if (Parent.InvokeRequired) {\r
- Parent.Invoke(new ToolStripItemCollection_InsertDelegate(DropDownItems.Insert), index, item);\r
+ if (InvokerForm.InvokeRequired) {\r
+ InvokerForm.Invoke(new ToolStripItemCollection_InsertDelegate(DropDownItems.Insert), index, item);\r
} else {\r
DropDownItems.Insert(index, item);\r
}\r
this.installedDirectoryStripMenuItem.Name = "installedDirectoryStripMenuItem";\r
this.installedDirectoryStripMenuItem.Size = new System.Drawing.Size(204, 22);\r
this.installedDirectoryStripMenuItem.Text = "インストール先のフォルダ(&O)";\r
+ this.installedDirectoryStripMenuItem.InvokerForm = this;\r
// \r
// propertiesToolStripMenuItem\r
// \r