windows-nt/Source/XPSP1/NT/admin/pchealth/authtools/prodtools/ui/frmstopsigns.frm
2020-09-26 16:20:57 +08:00

315 lines
8.2 KiB
Plaintext

VERSION 5.00
Begin VB.Form frmStopSigns
BorderStyle = 1 'Fixed Single
Caption = "Edit Stop Signs"
ClientHeight = 5910
ClientLeft = 45
ClientTop = 330
ClientWidth = 6480
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5910
ScaleWidth = 6480
StartUpPosition = 3 'Windows Default
Begin VB.Frame fraSeparator
Height = 135
Left = 120
TabIndex = 11
Top = 5160
Width = 6255
End
Begin VB.ListBox lstAllStopSigns
BeginProperty Font
Name = "Lucida Console"
Size = 8.25
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 4020
Left = 120
TabIndex = 1
Top = 360
Width = 3135
End
Begin VB.Frame fraCreate
Caption = "Create new Stop Sign"
Height = 2415
Left = 3360
TabIndex = 3
Top = 240
Width = 3015
Begin VB.CommandButton cmdCreate
Caption = "Create"
Height = 375
Left = 1680
TabIndex = 9
Top = 1920
Width = 1215
End
Begin VB.Frame fraContext
Caption = "Context"
Height = 855
Left = 120
TabIndex = 6
Top = 840
Width = 2775
Begin VB.OptionButton optAtEndOfWord
Caption = "At end of word"
Height = 255
Left = 240
TabIndex = 8
Top = 480
Width = 2415
End
Begin VB.OptionButton optAnywhere
Caption = "Anywhere"
Height = 255
Left = 240
TabIndex = 7
Top = 240
Width = 2415
End
End
Begin VB.TextBox txtStopSign
BeginProperty Font
Name = "Lucida Console"
Size = 8.25
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 285
Left = 960
TabIndex = 5
Top = 360
Width = 1935
End
Begin VB.Label lblStopSign
Caption = "Stop Sign:"
Height = 255
Left = 120
TabIndex = 4
Top = 360
Width = 735
End
End
Begin VB.CommandButton cmdDelete
Caption = "Delete"
Height = 375
Left = 2040
TabIndex = 2
Top = 4680
Width = 1215
End
Begin VB.CommandButton cmdClose
Caption = "Close"
Height = 375
Left = 5160
TabIndex = 10
Top = 5400
Width = 1215
End
Begin VB.Label lblAllStopSigns
Caption = "All Stop Signs:"
Height = 255
Left = 120
TabIndex = 0
Top = 120
Width = 1215
End
End
Attribute VB_Name = "frmStopSigns"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private p_clsStopSigns As AuthDatabase.StopSigns
Private p_rsAllStopSigns As ADODB.Recordset
Private Sub Form_Load()
On Error GoTo LErrorHandler
Set p_clsStopSigns = g_AuthDatabase.StopSigns
Set p_rsAllStopSigns = New ADODB.Recordset
p_UpdateAllStopSigns
optAnywhere.Value = True
cmdClose.Cancel = True
p_SetToolTips
LEnd:
Exit Sub
LErrorHandler:
p_DisplayErrorMessage "Form_Load"
GoTo LEnd
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set p_clsStopSigns = Nothing
Set p_rsAllStopSigns = Nothing
End Sub
Private Sub lstAllStopSigns_Click()
On Error GoTo LErrorHandler
p_rsAllStopSigns.Move lstAllStopSigns.ListIndex, adBookmarkFirst
LEnd:
Exit Sub
LErrorHandler:
p_DisplayErrorMessage "lstAllStopSigns_Click"
GoTo LEnd
End Sub
Private Sub cmdDelete_Click()
On Error GoTo LErrorHandler
p_clsStopSigns.Delete p_rsAllStopSigns("SSID")
p_UpdateAllStopSigns
LEnd:
Exit Sub
LErrorHandler:
p_DisplayErrorMessage "cmdDelete_Click"
GoTo LEnd
End Sub
Private Sub cmdCreate_Click()
On Error GoTo LErrorHandler
Dim strStopSign As String
Dim intContext As Long
strStopSign = LCase$(RemoveExtraSpaces(txtStopSign.Text))
If (strStopSign = "") Then
GoTo LEnd
End If
If (optAnywhere) Then
intContext = CONTEXT_ANYWHERE_E
Else
intContext = CONTEXT_AT_END_OF_WORD_E
End If
p_clsStopSigns.Create strStopSign, intContext
p_UpdateAllStopSigns
txtStopSign.Text = ""
txtStopSign.SetFocus
LEnd:
Exit Sub
LErrorHandler:
p_DisplayErrorMessage "cmdCreate_Click"
GoTo LEnd
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub p_UpdateAllStopSigns()
Dim strSuffix As String
p_clsStopSigns.GetAllStopSignsRs p_rsAllStopSigns
lstAllStopSigns.Clear
Do While (Not p_rsAllStopSigns.EOF)
If (Not IsNull(p_rsAllStopSigns("Context"))) Then
If (p_rsAllStopSigns("Context") = CONTEXT_ANYWHERE_E) Then
strSuffix = " (Anywhere)"
Else
strSuffix = " (At end of word)"
End If
lstAllStopSigns.AddItem p_rsAllStopSigns("StopSign") & strSuffix
End If
p_rsAllStopSigns.MoveNext
Loop
If (lstAllStopSigns.ListCount > 0) Then
' This simulates clicking the list box.
lstAllStopSigns.ListIndex = 0
End If
End Sub
Private Sub p_DisplayErrorMessage( _
ByVal i_strFunction As String _
)
Select Case Err.Number
Case errTooLong
MsgBox "The Stop Sign " & txtStopSign & " is too long", _
vbExclamation + vbOKOnly
Case errContainsOperatorShortcut
MsgBox "Since the Stop Sign " & txtStopSign & " is an operator shortcut, " & _
"its context must be ""At end of word""", _
vbExclamation + vbOKOnly
Case errAlreadyExists
MsgBox "The Stop Sign " & txtStopSign & " already exists", _
vbExclamation + vbOKOnly
Case E_FAIL
DisplayDatabaseLockedError
Case errDatabaseVersionIncompatible
DisplayDatabaseVersionError
Case errNotPermittedForAuthoringGroup, errAuthoringGroupDiffers, _
errAuthoringGroupNotPresent
DisplayAuthoringGroupError
Case Else
g_ErrorInfo.SetInfoAndDump i_strFunction
End Select
End Sub
Private Sub p_SetToolTips()
lblAllStopSigns.ToolTipText = "This is a list of all stop signs that have been " & _
"created for this database."
lstAllStopSigns.ToolTipText = lblAllStopSigns.ToolTipText
txtStopSign.ToolTipText = "Type in a new stop sign to add to the list."
optAnywhere.ToolTipText = "If Anywhere is selected as the context for a stop sign, " & _
"the search engine will remove all instances of the stop sign from the " & _
"search string."
optAtEndOfWord.ToolTipText = "If At end of word is selected as the context for " & _
"a stop sign, the search engine will remove instances of the stop sign from " & _
"the search string only when it appears at the end of a word."
End Sub