// TODO: pass in the app instances
        public void Refresh()
        {
            NSMenu menu = this.statusItem.Menu;

            if (menu == null)
            {
                menu = new NSMenu();
                this.statusItem.Menu = menu;
            }

            menu.RemoveAllItems();
            menu.AddItem(new NSMenuItem("VSMac Instances"));

            // TODO: maintain selection
            this.apps.Clear();
            this.SelectedApp = null;
            this.apps.AddRange(VisualStudioApp.FindApplications());

            for (int i = 0; i < this.apps.Count; i++)
            {
                // use selectors to avoid GC issues
                var item = new NSMenuItem(this.apps[i].AppPath)
                {
                    Tag    = i,
                    Action = new ObjCRuntime.Selector("selectApplicationInstance:"),
                    Target = this
                };

                menu.AddItem(item);
            }
        }