/// <summary>
        /// 展开
        /// </summary>
        public void Expand()
        {
            if (this.state != ExtendedPanelState.Collapsed)
            {
                throw new InvalidOperationException("控制必须在扩大后的状态,并要求被收起!");
            }

            DirectionStyle oldStyle = DirectionStyle.Down;
            DirectionStyle newStyle = DirectionStyle.Up;

            switch (captionAlign)
            {
            case DirectionStyle.Up:             //set above
                break;

            case DirectionStyle.Left:
                oldStyle = DirectionStyle.Right;
                newStyle = DirectionStyle.Left;
                break;

            case DirectionStyle.Right:
                oldStyle = DirectionStyle.Left;
                newStyle = DirectionStyle.Right;
                break;

            case DirectionStyle.Down:
                oldStyle = DirectionStyle.Up;
                newStyle = DirectionStyle.Down;
                break;
            }
            this.captionCtrl.SetDirectionStyle(newStyle);
            ChangeStyleEventArgs args = new ChangeStyleEventArgs(oldStyle, newStyle);

            CollapsingHandler(this, args);
        }
        /// <summary>
        /// Handles the <see cref="E:MouseClickEvent" /> event.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="System.Windows.Forms.MouseEventArgs"/> instance containing the event data.</param>
        void OnMouseClickEvent(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            DirectionStyle oldStyle = directionStyle;

            switch (directionStyle)
            {
            case DirectionStyle.Up:
                directionStyle = DirectionStyle.Down;
                break;

            case DirectionStyle.Down:
                directionStyle = DirectionStyle.Up;
                break;

            case DirectionStyle.Left:
                directionStyle = DirectionStyle.Right;
                break;

            case DirectionStyle.Right:
                directionStyle = DirectionStyle.Left;
                break;
            }
            InitializeImage();
            // Update();
            if (handlerStyleChange != null)
            {
                ChangeStyleEventArgs args = new ChangeStyleEventArgs(oldStyle, directionStyle);
                handlerStyleChange(this, args);
            }
        }
예제 #3
0
        /// <summary>
        /// Collapses the control. No need to click on the direction control to get the event raised
        /// </summary>
        public void Collapse()
        {
            if (this.state != ExtendedPanelState.Expanded)
            {
                throw new InvalidOperationException("The control has to be in an expanded state for calling collapsing!");
            }

            DirectionStyle oldStyle = DirectionStyle.Up;
            DirectionStyle newStyle = DirectionStyle.Down;

            switch (captionAlign)
            {
            case DirectionStyle.Up:             //set above
                break;

            case DirectionStyle.Left:
                oldStyle = DirectionStyle.Left;
                newStyle = DirectionStyle.Right;
                break;

            case DirectionStyle.Right:
                oldStyle = DirectionStyle.Right;
                newStyle = DirectionStyle.Left;
                break;

            case DirectionStyle.Down:
                oldStyle = DirectionStyle.Down;
                newStyle = DirectionStyle.Up;
                break;
            }
            this.captionCtrl.SetDirectionStyle(newStyle);
            ChangeStyleEventArgs args = new ChangeStyleEventArgs(oldStyle, newStyle);

            CollapsingHandler(this, args);
        }
예제 #4
0
        /// <summary>
        /// 权重:方向   同向10分 空闲5分 逆向1分
        /// </summary>
        /// <param name="type">外呼方向</param>
        /// <returns></returns>
        private static List <decimal> DirectionWeight(DirectionStyle type)
        {
            List <decimal> result = new List <decimal>();

            for (int i = 0; i < ElevatorService.Devices.Count; i++)
            {
                if (ElevatorService.Devices[i].Direction == DirectionStyle.None)
                {
                    result.Add(5);
                }
                else
                {
                    result.Add(ElevatorService.Devices[i].Direction == type ? 10 : 1);
                }
            }
            return(result);
        }
예제 #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ChangeStyleEventArgs"/> class.
 /// </summary>
 /// <param name="oldStyle">The old style.</param>
 /// <param name="newStyle">The new style.</param>
 public ChangeStyleEventArgs(DirectionStyle oldStyle, DirectionStyle newStyle)
 {
     this.oldStyle = oldStyle;
     this.newStyle = newStyle;
 }
예제 #6
0
 /// <summary>
 /// Set the direction style for the "click" control
 /// </summary>
 /// <param name="style">the new direction style</param>
 public void SetDirectionStyle(DirectionStyle style)
 {
     this.directionCtrl.DirectionStyle = style;
 }
 public ChangeStyleEventArgs(DirectionStyle oldStyle, DirectionStyle newStyle)
 {
     this.Old = oldStyle;
     this.New = newStyle;
 }
 public ChangeStyleEventArgs(DirectionStyle oldStyle, DirectionStyle newStyle)
 {
     this.Old = oldStyle;
       this.New = newStyle;
 }
예제 #9
0
 public void RunAsync(DirectionStyle direction)
 {
     Direction = direction;
     RunAsync();
 }