Ejemplo n.º 1
0
        protected override void OnMouseWheel(System.Windows.Forms.MouseEventArgs e)
        {
            base.OnMouseWheel(e);
            RebarBand band = BandHitTest(new Point(e.X, e.Y));

            if (band != null)
            {
                band.OnMouseWheel(e);
            }
        }
Ejemplo n.º 2
0
 protected override void WndProc(ref System.Windows.Forms.Message m)
 {
     if (_rebar.Created)
     {
         if (m.Msg == (int)win32.WM_LBUTTONDBLCLK)
         {
             RebarBand band = _rebar.BandHitTest(new Point(m.LParam.ToInt32()));
             if (band != null)
             {
                 _selService.SetSelectedComponents(new Component[] { band });
             }
             return;
         }
     }
     base.WndProc(ref m);
     if (m.Msg == (int)win32.WM_LBUTTONDOWN) //No silly rectangle selection when you tinker with the bands
     {
         win32.SendMessage(_rebar.Handle, (int)win32.WM_LBUTTONUP, m.WParam, m.LParam);
     }
 }
Ejemplo n.º 3
0
 public RebarBand Add(RebarBand band)
 {
     List.Add(band);
     band.Bands = this;
     return(band);
 }
Ejemplo n.º 4
0
 public void Remove(RebarBand band)
 {
     band.DestroyBand();
     List.Remove(band);
     band.Dispose();
 }
Ejemplo n.º 5
0
 public int IndexOf(RebarBand band)
 {
     return(List.IndexOf(band));
 }
Ejemplo n.º 6
0
        private void LoadControls()
        {
            HandleDestroyed += new EventHandler(MineMain_HandleDestroyed);

            mineSetting = new MineSetting();
            mineSetting.HandleCreated += new EventHandler(mineSetting_HandleCreated);

            minePalette              = new MinePalette();
            minePalette.MessageSize += new MessageSizeEventHandler(minePalette_MessageSize);
            minePalette.Location     = new Point(0, 20);
            this.Controls.Add(minePalette);
            setting                     = minePalette.Setting;
            render                      = new MenuItemRender();
            render.ImageList            = new ImageList();
            render.ImageList.ColorDepth = ColorDepth.Depth32Bit;
            render.ImageList.ImageSize  = new System.Drawing.Size(32, 32);
            render.ImageList.Images.Add(Properties.Resources.help);
            render.ImageList.Images.Add(Properties.Resources.about);
            render.ImageList.Images.Add(Properties.Resources.begin);
            render.ImageList.Images.Add(Properties.Resources.sound);
            render.ImageList.Images.Add(Properties.Resources.soundGray);
            render.ImageList.Images.Add(Properties.Resources.color);
            render.ImageList.Images.Add(Properties.Resources.colorGray);
            render.ImageList.Images.Add(Properties.Resources.customer);
            render.ImageList.Images.Add(Properties.Resources.exit);
            contextMenuHelp = new ContextMenu();
            useHelp         = new MenuItem("使用帮助");
            render.SetEnable(useHelp, true);
            render.SetImageIndex(useHelp, 0);
            useHelp.Click += new EventHandler(useHelp_Click);
            contextMenuHelp.MenuItems.Add(useHelp);
            aboutMine = new MenuItem("关于扫雷");
            render.SetEnable(aboutMine, true);
            render.SetImageIndex(aboutMine, 1);
            aboutMine.Click += new EventHandler(aboutMine_Click);
            contextMenuHelp.MenuItems.Add(aboutMine);

            contextMenuGame = new ContextMenu();
            menuItemBegin   = new MenuItem("开局");
            render.SetEnable(menuItemBegin, true);
            render.SetImageIndex(menuItemBegin, 2);
            menuItemBegin.Click += new EventHandler(menuItemBegin_Click);
            contextMenuGame.MenuItems.Add(menuItemBegin);
            menuItemVoice = new MenuItem("声音");
            render.SetEnable(menuItemVoice, true);
            if (minePalette.Setting.AllowVoice)
            {
                render.SetImageIndex(menuItemVoice, 3);
            }
            else
            {
                render.SetImageIndex(menuItemVoice, 4);
            }
            menuItemVoice.Click += new EventHandler(menuItemVoice_Click);
            contextMenuGame.MenuItems.Add(menuItemVoice);
            menuItemColor = new MenuItem("颜色");
            render.SetEnable(menuItemColor, true);
            if (minePalette.Setting.AllowColor)
            {
                render.SetImageIndex(menuItemColor, 5);
            }
            else
            {
                render.SetImageIndex(menuItemColor, 6);
            }
            menuItemColor.Click += new EventHandler(menuItemColor_Click);
            contextMenuGame.MenuItems.Add(menuItemColor);
            menuItemCustom = new MenuItem("设置");
            render.SetEnable(menuItemCustom, true);
            render.SetImageIndex(menuItemCustom, 7);
            menuItemCustom.Click += new EventHandler(menuItemCustom_Click);
            contextMenuGame.MenuItems.Add(menuItemCustom);
            menuItemExit = new MenuItem("退出");
            render.SetEnable(menuItemExit, true);
            render.SetImageIndex(menuItemExit, 8);
            menuItemExit.Click += new EventHandler(menuItemExit_Click);
            contextMenuGame.MenuItems.Add(menuItemExit);

            menuBox                   = new MenuBox();
            menuItemGame              = new MenuBoxItem();
            menuItemGame.Text         = "游戏";
            menuItemGame.DropDownMenu = contextMenuGame;
            menuItemHelp              = new MenuBoxItem();
            menuItemHelp.Text         = "帮助";
            menuItemHelp.DropDownMenu = contextMenuHelp;
            menuBox.Items.Add(menuItemGame);
            menuBox.Items.Add(menuItemHelp);

            rebar        = new Rebar();
            rebar.Dock   = DockStyle.Top;
            rebar.Height = 20;
            band         = new RebarBand("扫雷 1.0", menuBox);
            rebar.Bands.Add(band);
            this.Controls.Add(rebar);
        }
Ejemplo n.º 7
0
        public void mnuAddBand(object sender, EventArgs e)
        {
            RebarBand band = (RebarBand)_host.CreateComponent(typeof(RebarBand));

            _rebar.Bands.Add(band);
        }