$System = CreateObject("Kixtart.System")
$Form1 = $System.Form()
$Form1.Resizable = 0
$Form1.MaximizeBox = 0
$Form1.OnClose = "Closing()"
$Form1.Menu = $System.MainMenu()
$Form1.Menu.Style = 0
$Form1.Menu.ImageList = $System.BuiltinImageList()
$Form1.FileMenu = $Form1.Menu.MenuItems.Add("File")
$Form1.TrayMenu = $Form1.FileMenu.MenuItems.Add("Minimize to Tray")
$Form1.TrayMenu.ImageIndex = 65
$Form1.TrayMenu.OnClick = "SetTray()"
$Form1.CloseMenu = $Form1.FileMenu.MenuItems.Add("Close")
$Form1.CloseMenu.ImageIndex = 9
$Form1.CloseMenu.OnClick = "Closing()"
$NotifyMenu = $System.ContextMenu()
$NotifyMenuClose = $NotifyMenu.MenuItems.Add("Open")
$NotifyMenuClose.OnClick = "OpenFromTray()"
$NotifyMenuClose = $NotifyMenu.MenuItems.Add("Close")
$NotifyMenuClose.OnClick = "Closing()"
$Form1.Show
$Form1.SetFocus()
SetTray()
While $Form1.Running or $Form1.Visible
$Nul = Execute($Form1.DoEvents)
Loop
Exit 0
Function SetTray()
If $Form1.TrayMenu.Checked
$Form1.TrayMenu.Checked=0
$Form1.TrayMenu.ImageIndex=65
$Form1.OnResize = ""
$NotifyIcon = ""
$Form1.Running = 0
Else
$Form1.TrayMenu.Checked=1
$Form1.TrayMenu.ImageIndex=64
$Form1.OnResize = "MinimizeToTray()"
$NotifyIcon = $System.NotifyIcon()
$NotifyIcon.Icon = $Form1.Icon
$NotifyIcon.Text = $Form1.Text
$NotifyIcon.Visible = "True"
$NotifyIcon.OnDoubleClick = "OpenFromTray()"
$NotifyIcon.OnMouseDown = "TrayClicked()"
$Form1.Running = 1
Endif
EndFunction
Function MinimizeToTray()
If $Form1.WindowState = 1
$Form1.Hide()
Endif
EndFunction
Function OpenFromTray()
If Not $Form1.Visible Or $Form1.WindowState = 1
$Form1.WindowState = 0
$Form1.Show()
$Form1.Activate()
Endif
EndFunction
Function TrayClicked()
If $NotifyIcon.MouseButton=2
$NotifyMenu.Show($notifyicon.mousex,$notifyicon.mousey)
EndIf
EndFunction
Function Closing()
$Form1.Hide()
$Form1.Running = 0
EndFunction