Option Strict Off
Imports System
Imports System.Windows.Forms
Imports System.Drawing
Imports NXOpen
Imports NXOpen.UF
Module Module1
Dim red As Integer
Dim green As Integer
Dim blue As Integer
Dim ColorNo as String
Dim ColorName as String
Dim LW1 as String
Dim LW2 as String
Dim LW3 as String
Dim LW4 as String
Dim LW5 as String
Dim LW6 as String
Dim LW7 as String
Dim LW8 as String
Dim LW9 as String
Sub Main()
Dim theSession As Session = Session.GetSession()
Dim theUFSession As UFSession = UFSession.GetUFSession
Dim lw As ListingWindow = theSession.ListingWindow
Dim myObj As NXObject
Dim myDispObj As DisplayableObject
Dim myForm1 As New Form1
Dim MyFont as String
Dim MyWidth as String
LW1 = theSession.OptionsManager.GetStringValue("UG_lineWidth1Name", Options.LevelType.Site)
LW2 = theSession.OptionsManager.GetStringValue("UG_lineWidth2Name", Options.LevelType.Site)
LW3 = theSession.OptionsManager.GetStringValue("UG_lineWidth3Name", Options.LevelType.Site)
LW4 = theSession.OptionsManager.GetStringValue("UG_lineWidth4Name", Options.LevelType.Site)
LW5 = theSession.OptionsManager.GetStringValue("UG_lineWidth5Name", Options.LevelType.Site)
LW6 = theSession.OptionsManager.GetStringValue("UG_lineWidth6Name", Options.LevelType.Site)
LW7 = theSession.OptionsManager.GetStringValue("UG_lineWidth7Name", Options.LevelType.Site)
LW8 = theSession.OptionsManager.GetStringValue("UG_lineWidth8Name", Options.LevelType.Site)
LW9 = theSession.OptionsManager.GetStringValue("UG_lineWidth9Name", Options.LevelType.Site)
'lw.open
'lw.writeline("1: " & lw1)
'lw.writeline("2: " & lw2)
'lw.writeline("3: " & lw3)
'lw.writeline("4: " & lw4)
'lw.writeline("5: " & lw5)
'lw.writeline("6: " & lw6)
'lw.writeline("7: " & lw7)
'lw.writeline("8: " & lw8)
'lw.writeline("9: " & lw9)
'exit sub
Do Until SelectAnObject(myObj) = Selection.Response.Cancel
myDispObj = DirectCast(myObj, DisplayableObject)
ColorNo = myDispObj.Color
Dim myColor As NXColor
Myfont = myDispObj.linefont
MyWidth = myDispObj.linewidth
'MyWidth = myDispObj.ObjectWidth
'lw.writeline(MyWidth)
myColor = theSession.Parts.Work.Colors.Find(myDispObj.Color)
ColorNAme = myColor.Label
Dim red As Integer = myColor.GetRgb.R * 255
Dim green As Integer = myColor.GetRgb.G * 255
Dim blue As Integer = myColor.GetRgb.B * 255
myform1.ColorNo = ColorNo
myform1.ColorName = ColorName
myform1.Red = Red
myform1.Green = Green
myform1.Blue = Blue
myForm1.MyFont = MyFont
myform1.MyWidth = MyWidth
myform1.LW1 = LW1
myform1.LW2 = LW2
myform1.LW3 = LW3
myform1.LW4 = LW4
myform1.LW5 = LW5
myform1.LW6 = LW6
myform1.LW7 = LW7
myform1.LW8 = LW8
myform1.LW9 = LW9
myForm1.ShowDialog()
If myForm1.Canceled Then
'Exit sub
Return
Else
End If
Loop
'lw.close
End Sub
Function SelectAnObject(ByRef selObj As NXObject) As Selection.Response
Dim prompt As String = "Choose a curve:"
Dim theUI As UI = UI.GetUI
Dim cursor As Point3d
Dim typeArray() As Selection.SelectionType = {Selection.SelectionType.Curves}
Dim resp As Selection.Response = theUI.SelectionManager.SelectObject( _
prompt, "Choose a curve", _
Selection.SelectionScope.AnyInAssembly, _
False, typeArray, selObj, cursor)
If resp = Selection.Response.ObjectSelected Or _
resp = Selection.Response.ObjectSelectedByName Then
Return Selection.Response.Ok
Else
Return Selection.Response.Cancel
End If
End Function
Public Function GetUnloadOption(ByVal dummy As String) As Integer
'Unloads the image when the NX session terminates
GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination
End Function
End Module
Public Class Form1
Public Red As Integer
Public Green As Integer
Public Blue As Integer
Public ColorNo as String
Public ColorName as String
Public MyFont as String
Public MyWidth as Integer
Public LW1, LW2, LW3, LW4, LW5, LW6, LW7, LW8, LW9 as String
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Close()
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
_canceled = True
Me.Close()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
For Each c As Control In Controls
AddHandler c.MouseClick, AddressOf ClickHandler
Next
Label4.Text = ""
Label5.Text = ""
Label7.Text = ""
Label10.Text = ""
Label11.Text = ""
colorchange()
End Sub
Private Sub colorchange()
Label4.Text = ColorNo
Label5.Text = ColorName
Label7.Text = Red & ", " & Green & ", " & Blue
If MyFont = "1" then
Label10.Text = "Solid"
elseif MyFont = "2" then
Label10.Text = "Dashed"
elseif MyFont = "3" then
Label10.Text = "Phantom"
elseif MyFont = "4" then
Label10.Text = "Centerline"
elseif MyFont = "5" then
Label10.Text = "Dotted"
elseif MyFont = "6" then
Label10.Text = "Long Dashed"
elseif MyFont = "7" then
Label10.Text = "Dotted Dashed"
End if
if MyWidth = 5 then
Label11.Text = LW1
elseif MyWidth = 6 then
Label11.Text = LW2
elseif MyWidth = 7 then
Label11.Text = LW3
elseif MyWidth = 8 then
Label11.Text = LW4
elseif MyWidth = 9 then
Label11.Text = LW5
elseif MyWidth = 10 then
Label11.Text = LW6
elseif MyWidth = 11 then
Label11.Text = LW7
elseif MyWidth = 12 then
Label11.Text = LW8
elseif MyWidth = 13 then
Label11.Text = LW9
end if
Button2.BackColor = Color.FromArgb(255, Red, Green, Blue)
End Sub
Private Sub ClickHandler(sender As Object, e As MouseEventArgs) Handles Me.MouseClick
'Label1.Text = String.Format("{0}", e.Button.ToString.ToLower)
if e.Button = MouseButtons.Middle then
'Label2.Text = "Middle"
SendKeys.Send("{ENTER}")
end if
End Sub
Private _canceled As Boolean = False
Public ReadOnly Property Canceled() As Boolean
Get
Return _canceled
End Get
End Property
End Class
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form1
Inherits System.Windows.Forms.Form
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
Get
Dim param As System.Windows.Forms.CreateParams = MyBase.CreateParams
param.ClassStyle = param.ClassStyle Or &H200
Return param
End Get
End Property
Private components As System.ComponentModel.IContainer
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.Label1 = New System.Windows.Forms.Label()
Me.Label2 = New System.Windows.Forms.Label()
Me.Label3 = New System.Windows.Forms.Label()
Me.Label4 = New System.Windows.Forms.Label()
Me.Label5 = New System.Windows.Forms.Label()
Me.Label6 = New System.Windows.Forms.Label()
Me.Label7 = New System.Windows.Forms.Label()
Me.Label8 = New System.Windows.Forms.Label()
Me.Label9 = New System.Windows.Forms.Label()
Me.Label10 = New System.Windows.Forms.Label()
Me.Label11 = New System.Windows.Forms.Label()
Me.Button1 = New System.Windows.Forms.Button()
Me.Button2 = New System.Windows.Forms.Button()
Me.Button3 = New System.Windows.Forms.Button()
Me.SuspendLayout()
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Location = New System.Drawing.Point(10, 10)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(134, 25)
Me.Label1.TabIndex = 0
Me.Label1.Text = "Color Number:"
'
'Label2
'
Me.Label2.AutoSize = True
Me.Label2.Location = New System.Drawing.Point(10, 38)
Me.Label2.Name = "Label2"
Me.Label2.Size = New System.Drawing.Size(136, 25)
Me.Label2.TabIndex = 0
Me.Label2.Text = "Color name:"
'
'Label3
'
Me.Label3.AutoSize = True
Me.Label3.Location = New System.Drawing.Point(10, 66)
Me.Label3.Name = "Label3"
Me.Label3.Size = New System.Drawing.Size(64, 25)
Me.Label3.TabIndex = 0
Me.Label3.Text = "Color:"
'
'Label4
'
Me.Label4.AutoSize = True
Me.Label4.Location = New System.Drawing.Point(110, 10)
Me.Label4.Name = "Label4"
Me.Label4.Size = New System.Drawing.Size(45, 25)
Me.Label4.TabIndex = 0
Me.Label4.Text = ""
'
'Label5
'
Me.Label5.AutoSize = True
Me.Label5.Location = New System.Drawing.Point(110, 38)
Me.Label5.Name = "Label5"
Me.Label5.Size = New System.Drawing.Size(40, 25)
Me.Label5.TabIndex = 0
Me.Label5.Text = ""
'
'Label6
'
Me.Label6.AutoSize = True
Me.Label6.Location = New System.Drawing.Point(10, 94)
Me.Label6.Name = "Label6"
Me.Label6.Size = New System.Drawing.Size(40, 25)
Me.Label6.TabIndex = 0
Me.Label6.Text = "RGB:"
'
'Label7
'
Me.Label7.AutoSize = True
Me.Label7.Location = New System.Drawing.Point(110, 94)
Me.Label7.Name = "Label7"
Me.Label7.Size = New System.Drawing.Size(40, 25)
Me.Label7.TabIndex = 0
Me.Label7.Text = ""
'
'Label8
'
Me.Label8.AutoSize = True
Me.Label8.Location = New System.Drawing.Point(10, 122)
Me.Label8.Name = "Label8"
Me.Label8.Size = New System.Drawing.Size(40, 25)
Me.Label8.TabIndex = 0
Me.Label8.Text = "Type:"
'
'Label9
'
Me.Label9.AutoSize = True
Me.Label9.Location = New System.Drawing.Point(10, 150)
Me.Label9.Name = "Label9"
Me.Label9.Size = New System.Drawing.Size(40, 25)
Me.Label9.TabIndex = 0
Me.Label9.Text = "Thickness:"
'
'Label10
'
Me.Label10.AutoSize = True
Me.Label10.Location = New System.Drawing.Point(110, 122)
Me.Label10.Name = "Label10"
Me.Label10.Size = New System.Drawing.Size(40, 25)
Me.Label10.TabIndex = 0
Me.Label10.Text = ""
'
'Label11
'
Me.Label11.AutoSize = True
Me.Label11.Location = New System.Drawing.Point(110, 150)
Me.Label11.Name = "Label11"
Me.Label11.Size = New System.Drawing.Size(40, 25)
Me.Label11.TabIndex = 0
Me.Label11.Text = ""
'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(20, 176)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(80, 22)
Me.Button1.TabIndex = 2
Me.Button1.Text = "Next"
Me.Button1.UseVisualStyleBackColor = True
'
'Button2
'
Me.Button2.Location = New System.Drawing.Point(110, 66)
Me.Button2.Enabled = false
Me.Button2.Flatstyle = FlatStyle.flat
Me.Button2.Name = "Button2"
Me.Button2.Size = New System.Drawing.Size(85, 20)
Me.Button2.TabIndex = 0
Me.Button2.UseVisualStyleBackColor = True
'
'Button3
'
Me.Button3.Location = New System.Drawing.Point(120, 176)
Me.Button3.Name = "Button3"
Me.Button3.Size = New System.Drawing.Size(80, 22)
Me.Button3.TabIndex = 1
Me.Button3.Text = "Cancel"
Me.Button3.UseVisualStyleBackColor = True
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(8.0!, 16.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(230, 250)
Me.Controls.Add(Me.Button3)
Me.Controls.Add(Me.Button2)
Me.Controls.Add(Me.Button1)
Me.Controls.Add(Me.Label11)
Me.Controls.Add(Me.Label10)
Me.Controls.Add(Me.Label9)
Me.Controls.Add(Me.Label8)
Me.Controls.Add(Me.Label7)
Me.Controls.Add(Me.Label6)
Me.Controls.Add(Me.Label5)
Me.Controls.Add(Me.Label4)
Me.Controls.Add(Me.Label3)
Me.Controls.Add(Me.Label2)
Me.Controls.Add(Me.Label1)
Me.AcceptButton = Button1
Me.CancelButton = Button3
Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(238, Byte))
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Sizable
Me.MaximumSize = New System.Drawing.Size(230, 250)
Me.MinimumSize = New System.Drawing.Size(230, 250)
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "Form1"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Curve Color"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents Label1 As Label
Friend WithEvents Label2 As Label
Friend WithEvents Label3 As Label
Friend WithEvents Label4 As Label
Friend WithEvents Label5 As Label
Friend WithEvents Label6 As Label
Friend WithEvents Label7 As Label
Friend WithEvents Label8 As Label
Friend WithEvents Label9 As Label
Friend WithEvents Label10 As Label
Friend WithEvents Label11 As Label
Friend WithEvents Button1 As Button
Friend WithEvents Button2 As Button
Friend WithEvents Button3 As Button
End Class