コード例 #1
0
        public void DistributeShapesHorizontal(Models.TargetShapes targets, Models.AlignmentHorizontal halign)
        {
            var cmdtarget = this._client.GetCommandTargetDocument();

            int shape_count = targets.SelectShapesAndCount(this._client);

            if (shape_count < 1)
            {
                return;
            }

            IVisio.VisUICmds cmd;

            switch (halign)
            {
            case VisioScripting.Models.AlignmentHorizontal.Left:
                cmd = IVisio.VisUICmds.visCmdDistributeLeft;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Center:
                cmd = IVisio.VisUICmds.visCmdDistributeCenter;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Right:
                cmd = IVisio.VisUICmds.visCmdDistributeRight;
                break;

            default: throw new System.ArgumentOutOfRangeException();
            }

            cmdtarget.Application.DoCmd((short)cmd);
        }
コード例 #2
0
        public void AlignHorizontal(TargetSelection targetselection, Models.AlignmentHorizontal align)
        {
            targetselection = targetselection.ResolveToSelection(this._client);

            IVisio.VisHorizontalAlignTypes halign;
            var valign = IVisio.VisVerticalAlignTypes.visVertAlignNone;

            switch (align)
            {
            case VisioScripting.Models.AlignmentHorizontal.Left:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignLeft;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Center:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignCenter;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Right:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignRight;
                break;

            default: throw new System.ArgumentOutOfRangeException();
            }

            const bool glue_to_guide = false;

            using (var undoscope = this._client.Undo.NewUndoScope(nameof(AlignHorizontal)))
            {
                targetselection.Selection.Align(halign, valign, glue_to_guide);
            }
        }
コード例 #3
0
        public void AlignSelectionHorizontal(Models.AlignmentHorizontal align)
        {
            var cmdtarget = this._client.GetCommandTargetDocument();

            IVisio.VisHorizontalAlignTypes halign;
            var valign = IVisio.VisVerticalAlignTypes.visVertAlignNone;

            switch (align)
            {
            case VisioScripting.Models.AlignmentHorizontal.Left:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignLeft;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Center:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignCenter;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Right:
                halign = IVisio.VisHorizontalAlignTypes.visHorzAlignRight;
                break;

            default: throw new System.ArgumentOutOfRangeException();
            }

            const bool glue_to_guide = false;

            using (var undoscope = this._client.Undo.NewUndoScope(nameof(AlignSelectionHorizontal)))
            {
                var window    = cmdtarget.Application.ActiveWindow;
                var selection = window.Selection;
                selection.Align(halign, valign, glue_to_guide);
            }
        }
コード例 #4
0
        public void DistributeHorizontal(TargetSelection targetselection, Models.AlignmentHorizontal halign)
        {
            targetselection = targetselection.ResolveToSelection(this._client);

            if (targetselection.Selection.Count < 2)
            {
                return;
            }

            IVisio.VisUICmds cmd;

            switch (halign)
            {
            case VisioScripting.Models.AlignmentHorizontal.Left:
                cmd = IVisio.VisUICmds.visCmdDistributeLeft;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Center:
                cmd = IVisio.VisUICmds.visCmdDistributeCenter;
                break;

            case VisioScripting.Models.AlignmentHorizontal.Right:
                cmd = IVisio.VisUICmds.visCmdDistributeRight;
                break;

            default: throw new System.ArgumentOutOfRangeException();
            }

            var app = targetselection.Selection.Application;

            using (var undoscope = this._client.Undo.NewUndoScope(nameof(DistributeHorizontal)))
            {
                app.DoCmd((short)cmd);
            }
        }