Exemple #1
0
        private void ThemeView_DragDrop(object sender, DragEventArgs e)
        {
            // find which theme item be draged
            ThemeItem currentItem = (ThemeItem)(e.Data.GetData(typeof(ThemeItem)));

            int selectedOrder = GetSelectedOrder(currentItem.ShapeName);

            // find mainform
            Control control = this;

            while (control.Parent != null)
            {
                control = control.Parent;
            }

            // 70 is toolStrip and menu's height
            int yOffset = (e.Y - control.Location.Y - 70) - currentItem.Location.Y;

            int remainder      = yOffset % currentItem.Height;
            int divider        = yOffset / currentItem.Height;
            int oneThirdHeight = currentItem.Height / 3;

            if (divider < 0 || (remainder > oneThirdHeight && divider > 0))
            {
                DoDragDropItem(selectedOrder, selectedOrder - divider);
                return;
            }
            if (divider > 1 || (remainder < -oneThirdHeight && divider <= 0))
            {
                DoDragDropItem(selectedOrder, selectedOrder - divider + 1);
                return;
            }
        }
Exemple #2
0
        private void SetupThemeItem(Layer layer)
        {
            ThemeItem themeItem = new ThemeItem();

            themeItem.ShapeName = layer.Name;

            themeItem.ItemCheckedChanged  += new EventHandler <ShapeEventArgs>(themeItem_ItemCheckedChanged);
            themeItem.ItemLinkClicked     += new EventHandler <ShapeLinkClickedEventArgs>(themeItem_ItemLinkClicked);
            themeItem.ThemeItemClick      += new EventHandler <LayerOrderEventArgs>(themeItem_ThemeItemClick);
            themeItem.ThemeItemRightClick += new EventHandler <RightClickEventArgs>(themeItem_ThemeItemRightClick);

            themeView.Items.Add(layer.Name, themeItem);
        }