Example #1
0
        void App_ClickItem(object sender, EventArgs e)
        {
            DesktopItem item      = (DesktopItem)sender;
            CDesktopApp App       = (CDesktopApp)item.m_BaseObject;
            bool        bIsWebUrl = App.Url.Length > 4 && App.Url.Substring(0, 4).Equals("http", StringComparison.OrdinalIgnoreCase);

            if (!bIsWebUrl && !File.Exists(App.Url))
            {
                MessageBox.Show(string.Format("{0} 不存在!", App.Url));
                return;
            }
            System.Diagnostics.Process.Start(App.Url);
        }
Example #2
0
        void menu_ClickItem(object sender, EventArgs e)
        {
            DesktopItem item = (DesktopItem)sender;
            CMenu       menu = (CMenu)item.m_BaseObject;

            if (menu.MType == enumMenuType.CatalogMenu)
            {
                ContextMenu popMenu = new ContextMenu();
                LoopLoadPopMenu(popMenu, menu);
                Point pt = this.PointToClient(MousePosition);
                popMenu.Show(this, pt, LeftRightAlignment.Right);
            }
            else
            {
                item_Click(menu);
            }
        }
Example #3
0
        void App_ClickClose(object sender, EventArgs e)
        {
            DesktopItem item = (DesktopItem)sender;
            CDesktopApp App  = (CDesktopApp)item.m_BaseObject;

            if (MessageBox.Show(string.Format("确认删除{0}?", App.Name), "确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
                != DialogResult.OK)
            {
                return;
            }
            if (!Program.User.DesktopAppMgr.Delete(App, true))
            {
                MessageBox.Show("删除失败!");
                return;
            }
            this.flowLayoutPanel.Controls.Remove(item);
        }
Example #4
0
        void addBox_ClickItem(object sender, EventArgs e)
        {
            AddDesktopApp frm = new AddDesktopApp();

            frm.UI_DesktopGroup_id = m_guidDesktopGroupId;
            if (frm.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            DesktopItem Item = new DesktopItem();

            Item.Title        = frm.m_App.Name;
            Item.Icon         = frm.m_App.IconUrl;
            Item.ItemType     = enumDesktopItemType.DesktopApp;
            Item.m_BaseObject = frm.m_App;
            Item.ClickItem   += new ClickEventHandler(App_ClickItem);
            Item.ClickClose  += new ClickEventHandler(App_ClickClose);
            this.flowLayoutPanel.Controls.Add(Item);
        }
Example #5
0
        void LoadList()
        {
            if (string.IsNullOrEmpty(Program.User.Name))
            {
                return;
            }

            this.flowLayoutPanel.Controls.Clear();

            if (Program.User.IsRole("管理员") && m_guidDesktopGroupId == Guid.Empty)
            {
                DesktopItem adminBox = new DesktopItem();
                adminBox.Title      = "系统管理";
                adminBox.Icon       = "admin.png";
                adminBox.ItemType   = enumDesktopItemType.Admin;
                adminBox.ClickItem += new ClickEventHandler(adminBox_ClickItem);
                this.flowLayoutPanel.Controls.Add(adminBox);
            }
            //用户菜单
            List <CBaseObject> lstObj = Program.User.UserMenuMgr.GetList();

            foreach (CBaseObject obj in lstObj)
            {
                CUserMenu UserMenu = (CUserMenu)obj;
                if (UserMenu.UI_DesktopGroup_id != m_guidDesktopGroupId)
                {
                    continue;
                }
                CMenu menu = (CMenu)Program.Ctx.MenuMgr.Find(UserMenu.UI_Menu_id);
                if (menu == null)
                {
                    continue;
                }

                DesktopItem Item = new DesktopItem();
                Item.Title        = menu.Name;
                Item.Icon         = menu.IconUrl;
                Item.ItemType     = (enumDesktopItemType)Convert.ToInt32(menu.MType);
                Item.m_BaseObject = menu;
                Item.ClickItem   += new ClickEventHandler(menu_ClickItem);
                this.flowLayoutPanel.Controls.Add(Item);
            }
            //角色菜单
            CCompany Company = (CCompany)Program.Ctx.CompanyMgr.Find(Program.User.B_Company_id);

            if (Company != null)
            {
                List <CBaseObject> lstObjR = Company.RoleMgr.GetList();
                foreach (CBaseObject objR in lstObjR)
                {
                    CRole Role = (CRole)objR;
                    if (!Program.User.IsRole(Role.Name))
                    {
                        continue;
                    }
                    List <CBaseObject> lstObjRM = Role.RoleMenuMgr.GetList();
                    foreach (CBaseObject objRM in lstObjRM)
                    {
                        CRoleMenu RoleMenu = (CRoleMenu)objRM;
                        if (RoleMenu.UI_DesktopGroup_id != m_guidDesktopGroupId)
                        {
                            continue;
                        }
                        CMenu menu = (CMenu)Program.Ctx.MenuMgr.Find(RoleMenu.UI_Menu_id);
                        if (menu == null)
                        {
                            continue;
                        }

                        DesktopItem Item = new DesktopItem();
                        Item.Title        = menu.Name;
                        Item.Icon         = menu.IconUrl;
                        Item.ItemType     = (enumDesktopItemType)Convert.ToInt32(menu.MType);
                        Item.m_BaseObject = menu;
                        Item.ClickItem   += new ClickEventHandler(menu_ClickItem);
                        this.flowLayoutPanel.Controls.Add(Item);
                    }
                }
            }
            //应用
            lstObj = Program.User.DesktopAppMgr.GetList();
            foreach (CBaseObject obj in lstObj)
            {
                CDesktopApp App = (CDesktopApp)obj;
                if (App.UI_DesktopGroup_id != m_guidDesktopGroupId)
                {
                    continue;
                }

                DesktopItem Item = new DesktopItem();
                Item.Title        = App.Name;
                Item.Icon         = App.IconUrl;
                Item.ItemType     = enumDesktopItemType.DesktopApp;
                Item.m_BaseObject = App;
                Item.ClickItem   += new ClickEventHandler(App_ClickItem);
                Item.ClickClose  += new ClickEventHandler(App_ClickClose);
                this.flowLayoutPanel.Controls.Add(Item);
            }
            //添加
            DesktopItem addBox = new DesktopItem();

            addBox.Title      = "添加应用";
            addBox.Icon       = "add.png";
            addBox.ItemType   = enumDesktopItemType.AddDesktopApp;
            addBox.ClickItem += new ClickEventHandler(addBox_ClickItem);
            this.flowLayoutPanel.Controls.Add(addBox);
        }