home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 January / pcwk_01_1999.iso / Wtestowe / Vistdstd / Install / Data.Z / Nudge.FRM < prev    next >
Text File  |  1996-11-04  |  6KB  |  181 lines

  1. VERSION 4.00
  2. Begin VB.Form Form1 
  3.    Appearance      =   0  'Flat
  4.    BackColor       =   &H00C0C0C0&
  5.    BorderStyle     =   1  'Fixed Single
  6.    Caption         =   "Nudge"
  7.    ClientHeight    =   1395
  8.    ClientLeft      =   1380
  9.    ClientTop       =   2250
  10.    ClientWidth     =   1560
  11.    BeginProperty Font 
  12.       name            =   "MS Sans Serif"
  13.       charset         =   0
  14.       weight          =   700
  15.       size            =   8.25
  16.       underline       =   0   'False
  17.       italic          =   0   'False
  18.       strikethrough   =   0   'False
  19.    EndProperty
  20.    ForeColor       =   &H80000008&
  21.    Height          =   1800
  22.    Icon            =   "NUDGE.frx":0000
  23.    Left            =   1320
  24.    LinkTopic       =   "Form1"
  25.    MaxButton       =   0   'False
  26.    MinButton       =   0   'False
  27.    ScaleHeight     =   1395
  28.    ScaleWidth      =   1560
  29.    Top             =   1905
  30.    Width           =   1680
  31.    Begin VB.CommandButton cmdTop 
  32.       Appearance      =   0  'Flat
  33.       BackColor       =   &H80000005&
  34.       Caption         =   "U"
  35.       Height          =   360
  36.       Left            =   600
  37.       TabIndex        =   3
  38.       Top             =   120
  39.       Width           =   360
  40.    End
  41.    Begin VB.CommandButton cmdDown 
  42.       Appearance      =   0  'Flat
  43.       BackColor       =   &H80000005&
  44.       Caption         =   "D"
  45.       Height          =   360
  46.       Left            =   600
  47.       TabIndex        =   2
  48.       Top             =   840
  49.       Width           =   360
  50.    End
  51.    Begin VB.CommandButton cmdRight 
  52.       Appearance      =   0  'Flat
  53.       BackColor       =   &H80000005&
  54.       Caption         =   "R"
  55.       Height          =   360
  56.       Left            =   960
  57.       TabIndex        =   1
  58.       Top             =   480
  59.       Width           =   360
  60.    End
  61.    Begin VB.CommandButton cmdLeft 
  62.       Appearance      =   0  'Flat
  63.       BackColor       =   &H80000005&
  64.       Caption         =   "L"
  65.       Height          =   360
  66.       Left            =   240
  67.       TabIndex        =   0
  68.       Top             =   480
  69.       Width           =   360
  70.    End
  71. End
  72. Attribute VB_Name = "Form1"
  73. Attribute VB_Creatable = False
  74. Attribute VB_Exposed = False
  75. ' -----------------------------------------------------------------------------
  76. ' Copyright (C) 1996 Visio Corporation. All rights reserved.
  77. '
  78. ' You have a royalty-free right to use, modify, reproduce and distribute
  79. ' the Sample Application Files (and/or any modified version) in any way
  80. ' you find useful, provided that you agree that Visio has no warranty,
  81. ' obligations or liability for any Sample Application Files.
  82. ' -----------------------------------------------------------------------------
  83. Option Explicit
  84.  
  85.  
  86. Dim m_bDown As Integer
  87.  
  88.  
  89. Private Sub cmdDown_Click()
  90.     Nudge 0, -1
  91. End Sub
  92.  
  93. Private Sub cmdDown_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  94.     m_bDown = True
  95. End Sub
  96.  
  97. Private Sub cmdDown_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  98.     m_bDown = False
  99. End Sub
  100.  
  101. Private Sub cmdLeft_Click()
  102.     Nudge -1, 0
  103. End Sub
  104.  
  105. Private Sub cmdLeft_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  106.     m_bDown = True
  107. End Sub
  108.  
  109. Private Sub cmdLeft_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  110.     m_bDown = False
  111. End Sub
  112.  
  113. Private Sub cmdRight_Click()
  114.     Nudge 1, 0
  115. End Sub
  116.  
  117. Private Sub cmdRight_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  118.     m_bDown = True
  119. End Sub
  120.  
  121. Private Sub cmdRight_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  122.     m_bDown = False
  123. End Sub
  124.  
  125. Private Sub cmdTop_Click()
  126.     Nudge 0, 1
  127. End Sub
  128.  
  129. Private Sub cmdTop_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  130.     m_bDown = True
  131. End Sub
  132.  
  133. Private Sub cmdTop_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  134.     m_bDown = False
  135. End Sub
  136.  
  137. Private Sub Nudge(dX As Double, dY As Double)
  138. 'Call Nudge as follows:
  139. 'Nudge 0, -1    Move down one unit
  140. 'Nudge -1, 0    Move left one unit
  141. 'Nudge 1, 0     Move right one unit
  142. 'Nudge 0, 1     Move up one unit
  143.  
  144.     On Error GoTo lblErr
  145.     Dim appVisio As Visio.Application
  146.     Dim selObj As Visio.Selection
  147.     Dim shpObj As Visio.Shape
  148.     Dim unit As Double
  149.     Dim i As Integer
  150.  
  151.     ' Establish a base unit as one inch
  152.  
  153.     unit = 1
  154.     Set appVisio = GetObject(, "visio.application")
  155.     Set selObj = appVisio.ActiveWindow.Selection
  156.  
  157.     ' If the selection is empty, there's nothing to do.
  158.     ' Otherwise, move each object in the selection by the value of unit
  159.  
  160.     For i = 1 To selObj.Count
  161.         Set shpObj = selObj(i)
  162.         Debug.Print "Nudging "; shpObj.Name; " ("; shpObj.NameID; ")"
  163.         If (Not shpObj.OneD) Then
  164.             shpObj.Cells("PinX").ResultIU = (dX * unit) + shpObj.Cells("PinX").ResultIU
  165.             shpObj.Cells("PinY").ResultIU = (dY * unit) + shpObj.Cells("PinY").ResultIU
  166.         Else
  167.             shpObj.Cells("BeginX").ResultIU = (dX * unit) + shpObj.Cells("BeginX").ResultIU
  168.             shpObj.Cells("BeginY").ResultIU = (dY * unit) + shpObj.Cells("BeginY").ResultIU
  169.             shpObj.Cells("EndX").ResultIU = (dX * unit) + shpObj.Cells("EndX").ResultIU
  170.             shpObj.Cells("EndY").ResultIU = (dY * unit) + shpObj.Cells("EndY").ResultIU
  171.         End If
  172.  
  173.     Next i
  174.  
  175. lblErr:
  176.     Exit Sub
  177.  
  178. End Sub
  179.  
  180.  
  181.