home *** CD-ROM | disk | FTP | other *** search
- ' AddToProgMan, for Word for Windows v1.1
- '
- ' Robert M. Ryan, 28 January 1992, v1.4
- '
- ' This is a Word for Windows macro which allows you to add the current document to the
- ' specified Program Manager Group.
- '
- ' To install this macro, do the following:
- '
- ' 1. open this document in Word for Windows.
- ' 2. select (i.e. highlight) the entire document and select Edit, Copy (Ctrl-Ins)
- ' 3. Select "Edit..." from the "Macro" menu
- ' 4. Type in a macro name (e.g. "AddToProgMan")
- ' 5. Push the "Ok" button
- ' 6. Paste the macro in the buffer.
- ' 7. Close the window, saving changes.
- ' 8. If you want, assign it to a key
- ' 9. When you exit, make sure to save changes to the global glossary
- '
-
- Sub MAIN
- Begin Dialog UserDialog 410, 170
- Text 10, 6, 231, 13, "Add Item to Program Manager:"
- Text 47, 25, 73, 13, "Filename:"
- Text 47, 45, 40, 13, "Title:"
- Text 47, 66, 52, 13, "Group:"
- Text 47, 88, 40, 13, "Icon:"
- CheckBox 135, 112, 139, 16, "Save Changes", .Save
- OKButton 105, 135, 88, 21
- CancelButton 211, 135, 88, 21
- TextBox 135, 22, 262, 18, .FName$
- TextBox 135, 43, 262, 18, .Title$
- TextBox 135, 64, 262, 18, .Group$
- TextBox 135, 85, 263, 18, .Icon$
- End Dialog
-
- n$ = LCase$(FileName$(0))
- m$ = n$
- q$ = Chr$(34)
-
- ' remove path from filename
- For i = 1 To Len(n$)
- If Mid$(n$, i, 1) = "\" Then m$ = Right$(n$, Len(n$) - i)
- Next i
-
- ' remove extension from filename
- i = InStr(m$, ".")
- If i > 0 Then m$ = Left$(m$, i - 1)
-
- Dim dlg As UserDialog
-
- dlg.Group$ = GetProfileString$("Add To Group")
- If dlg.Group$ = "" Then dlg.Group$ = "Documents"
- dlg.Icon$ = GetProfileString$("Add Using Icon")
- If dlg.Icon$ = "" Then dlg.Icon$ = "\win\icons\doc.ico"
- dlg.FName$ = LCase$(FileName$(0))
- dlg.Title$ = m$
-
- On Error Goto NoDialog
- Dialog dlg
- On Error Goto 0
-
- ChanNum = DDEInitiate("PROGMAN", "PROGMAN")
- If ChanNum = 0 Then
- MsgBox "Unable to initiate DDE conversation with ProgMan", "Error"
- return
- Else
- window$ = WindowName$()
- AppActivate "Program Manager", 1
- DDEExecute ChanNum, "[CreateGroup(" + dlg.Group$ + ",6)]" ' create if necessary
- DDEExecute ChanNum, "[ShowGroup(" + dlg.Group$ + ",6)]" ' minimize
- DDEExecute ChanNum, "[ShowGroup(" + dlg.Group$ + ",1)]" ' restore
- cmd$ = "[AddItem(" + dlg.FName$ + "," + q$ + dlg.Title$ + q$ + "," + dlg.Icon$ + ")]"
- DDEExecute ChanNum, cmd$ ' add file to group
- DDEExecute ChanNum, "[ShowGroup(" + dlg.Group$ + ",6)]" ' minimize
- DDETerminate ChanNum ' terminate discussion
- Activate window$
- End If
- If dlg.Save Then
- SetProfileString "Add To Group", dlg.Group$
- SetProfileString "Add Using Icon", dlg.Icon$
- End If
-
- NoDialog:
-
- End Sub
-