Follow these instructions and paste in this LotusScript code to easily allow you to show or hide layers in a Lotus Notes database.
- Create a layer.
- Add a hidden 'layer state' field.
- Set the Hide/When formula for the paragraph containing the layer to layerStateFld = "0."
- Create a Hotspot action that calls the following sub routine.
Static Sub showAndHideLayer(stateFld$)
'-- Show or Hide a layer
'-- stateFld$ - name of the field
referenced by the layer's hide formula
'--
Dim doc As NotesDocument
Dim layers List As String
Dim layerState$
If Not ( Iselement(layers(stateFld$)) ) Then
'-- first time user clicked the show/hide icon for this layer
layers(stateFld$) = "0"
End If
'-- ws is NotesUIWorkspace, declared in
Form-Globals and set in Form-Initialize
Set doc = ws.CurrentDocument.Document
layerState$ = layers(stateFld$)
'-- change the layers display state 1=show
0=hide If(layerState$ = "0")
Then Call doc.ReplaceItemValue(stateFld$,"1")
Else
Call doc.ReplaceItemValue(stateFld$,"0")
End If
'-- save the layers new state
layers(stateFld$) = doc.GetItemValue(stateFld$)(0)
Call uidoc.RefreshHideFormulas
End Sub
Do you have comments on this tip? Let us know.
Related information from SearchDomino.com:
Learning Guide: LotusScript
FAQ: LotusScript advice
Tip: Create a Lotus Notes analyzer using LotusScript
Reference Center: LotusScript tips and resources
This tip was submitted to the SearchDomino.com tip library by member Jane Griscti. Please let others know how useful it is via the rating scale below. Do you have a useful Lotus Notes, Domino, Workplace or WebSphere tip or code snippet to share? Submit it to our monthly tip contest and you could win a prize.