MACRO LIBRARY

Lesson 7.2 - cancel save using S_FALSE

Free public access. No account or subscription required.

Files

Lesson 7.2 - cancel save using S_FALSE

Code

Modules: SaveListener1

Dim listener As clsListener
    
Sub main()
    Set listener = New clsListener
    listener.connect
End Sub

Class Modules: clsListener

Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim WithEvents swPart As SldWorks.PartDoc
Dim intTimeStamp As Integer
    
Public Sub connect()
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swPart = swModel
    Debug.Print "listener on"
    intTimeStamp = swModel.GetUpdateStamp
End Sub
    
Private Function swPart_FileSaveAsNotify2(ByVal FileName As String) As Long
    If intTimeStamp = swModel.GetUpdateStamp Then
        swPart_FileSaveAsNotify2 = 1
        Debug.Print "No changes made to file; document will not be saved."
    Else
        Debug.Print "Changes made to file; document will be saved."
        intTimeStamp = swModel.GetUpdateStamp
    End If
End Function
    
Private Function swPart_FileSaveNotify(ByVal FileName As String) As Long
    If intTimeStamp = swModel.GetUpdateStamp Then
        swPart_FileSaveNotify = 1
        Debug.Print "No changes made to file; document will not be saved."
    Else
        Debug.Print "Changes made to file; document will be saved."
        intTimeStamp = swModel.GetUpdateStamp
    End If
End Function
    
'Notes: For return values, S_FALSE = 1, S_OK = 0