[453] | 1 | Include "HjGlobal.jsh" ; default HJ global variables
|
---|
| 2 | Include "hjconst.jsh" ; default HJ constants
|
---|
| 3 |
|
---|
| 4 | globals
|
---|
| 5 | int CoverVitalsID,
|
---|
| 6 | int ODProcReasonForRequestID,
|
---|
| 7 | int ODProcInpatientID,
|
---|
| 8 | int ODProcOutpatientID,
|
---|
| 9 | int ODCsltReasonForCsltID,
|
---|
| 10 | int ODCsltInpatientID,
|
---|
| 11 | int ODCsltOutpatientID,
|
---|
| 12 | int PtCWADAllergiesID,
|
---|
| 13 | int PtSelNotificationsID,
|
---|
| 14 | int TemplateEditorBlankLinesID,
|
---|
| 15 | int MedsInpatientID,
|
---|
| 16 | int MedsOutPatientID,
|
---|
| 17 | int ODMedsCommentsID,
|
---|
| 18 | int ODMedsPriorityID,
|
---|
| 19 | int NotesViewMenuID,
|
---|
| 20 | int ConsultsByStatusStatusID,
|
---|
| 21 | int ConsultActionCommentsID,
|
---|
| 22 | int ConsultActionAlertID,
|
---|
| 23 | int CurrentMenuContext
|
---|
| 24 |
|
---|
| 25 | Const
|
---|
| 26 | NoMenuContext = 0,
|
---|
| 27 | NotesActionMenuContext = 1,
|
---|
| 28 | NotesViewMenuContext = 2,
|
---|
| 29 | ConsultsActionMenuContext = 3,
|
---|
| 30 | ConsultsTrackingMenuContext = 4,
|
---|
| 31 | ConsultsViewMenuContext = 5
|
---|
| 32 |
|
---|
| 33 |
|
---|
| 34 | ;The component ID's vary from compile to compile, so constants aren't much help for identifying the components.
|
---|
| 35 | ;Instead, we use the component's hierarchical position as an address to locate it as a descendant of the form.
|
---|
| 36 | ;Finding addresses can be tricky. Uncomment the SayString line below to test an address by tracing through the address resolution.
|
---|
| 37 | ;If there are a lot of panels to wade through, it's easier to run CPRS with the Inspector that comes with MSAA developers kit.
|
---|
| 38 | ;Get the focus on the control you want, and work with the parent/child/siblings buttons to see where they fit in the order.
|
---|
| 39 | ;Note that MSAA Inspector treats "window" objects as parents of the corresponding "client" objects,
|
---|
| 40 | ;while the "GetFirstChild" JAWS script routine considers them to be part of the ame object. So, the addresses used here will be half as long
|
---|
| 41 | ;as what you will find in MSAA land.
|
---|
| 42 | handle function GetHandleFromAddress(handle Parent, string Address)
|
---|
| 43 | var
|
---|
| 44 | int AddressIndex,
|
---|
| 45 | string AddressPart,
|
---|
| 46 | int TabsLeft,
|
---|
| 47 | handle ControlAtAddress
|
---|
| 48 | let AddressIndex = 1
|
---|
| 49 | let AddressPart = StringSegment(Address, " ", AddressIndex)
|
---|
| 50 | let ControlAtAddress = Parent
|
---|
| 51 | while AddressPart != "" && ControlAtAddress != 0
|
---|
| 52 | let TabsLeft = StringToInt(AddressPart) - 1
|
---|
| 53 | let ControlAtAddress = GetFirstChild(ControlAtAddress)
|
---|
| 54 | ;SayString( "Control is " + GetWindowClass(ControlAtAddress) + GetWindowName(ControlAtAddress) + IntToString(TabsLeft) + " tabs left to go.")
|
---|
| 55 | while TabsLeft > 0
|
---|
| 56 | let TabsLeft = TabsLeft - 1
|
---|
| 57 | let ControlAtAddress = GetNextWindow(ControlAtAddress)
|
---|
| 58 | ;SayString( "Control is " + GetWindowClass(ControlAtAddress) + GetWindowName(ControlAtAddress) + IntToString(TabsLeft) + " tabs left to go.")
|
---|
| 59 | endwhile
|
---|
| 60 | let AddressIndex = AddressIndex+1
|
---|
| 61 | let AddressPart = StringSegment(Address, " ", AddressIndex)
|
---|
| 62 | endwhile
|
---|
| 63 | return ControlAtAddress
|
---|
| 64 | endFunction
|
---|
| 65 |
|
---|
| 66 | handle function GetCurrentPageHandle()
|
---|
| 67 | var
|
---|
| 68 | handle ContainingWindow
|
---|
| 69 | let ContainingWindow = GetRealWindow(GetFocus())
|
---|
| 70 | if GetWindowClass(ContainingWindow) == "TfrmFrame" then
|
---|
| 71 | return GetHandleFromAddress(ContainingWindow, "1 1 1"); pnlPatientSelected, pnlPage, frmPage
|
---|
| 72 | else
|
---|
| 73 | return 0
|
---|
| 74 | endif
|
---|
| 75 | endFunction
|
---|
| 76 |
|
---|
| 77 | string function YankString(string S, string Except, int ByRef Yanked)
|
---|
| 78 | let Yanked = SubString(S, 1, StringLength(Except)) == Except
|
---|
| 79 | if Yanked then
|
---|
| 80 | return SubString(S, StringLength(Except)+1, StringLength(S)-StringLength(Except))
|
---|
| 81 | else
|
---|
| 82 | return S
|
---|
| 83 | endif
|
---|
| 84 | endFunction
|
---|
| 85 |
|
---|
| 86 | string function StripControls( string KeyName, int ByRef Shifted, int ByRef Controlled, int ByRef Alted)
|
---|
| 87 | var
|
---|
| 88 | string S
|
---|
| 89 | let S = KeyName
|
---|
| 90 | let S = YankString(S, "LeftAlt+", Alted)
|
---|
| 91 | if not Alted then
|
---|
| 92 | let S = YankString(S, "RightAlt+", Alted)
|
---|
| 93 | endif
|
---|
| 94 | let S = YankString(S, "LeftControl+", Controlled)
|
---|
| 95 | if not Controlled then
|
---|
| 96 | let S = YankString(S, "RightControl+", Controlled)
|
---|
| 97 | endif
|
---|
| 98 | let S = YankString(S, "LeftShift+", Shifted)
|
---|
| 99 | if not Shifted then
|
---|
| 100 | let S = YankString(S, "RightShift+", Shifted)
|
---|
| 101 | endif
|
---|
| 102 | return S
|
---|
| 103 | endFunction
|
---|
| 104 |
|
---|
| 105 | Void Function NewTextEvent (handle hwnd, string buffer, int nAttributes,
|
---|
| 106 | int nTextColor, int nBackgroundColor, int nEcho, string sFrameName)
|
---|
| 107 | var
|
---|
| 108 | string sClass
|
---|
| 109 | Let sClass = GetWindowClass (hWnd)
|
---|
| 110 | if sClass != "TORComboEdit" then
|
---|
| 111 | NewTextEvent(hwnd,buffer,nAttributes,nTextColor,nBackgroundColor,nEcho,sFrameName)
|
---|
| 112 | endif
|
---|
| 113 | EndFunction
|
---|
| 114 |
|
---|
| 115 |
|
---|
| 116 | Void Function FocusChangedEvent (handle FocusWindow, handle PrevWindow)
|
---|
| 117 | var
|
---|
| 118 | string Class,
|
---|
| 119 | int ID,
|
---|
| 120 | handle ContainingWindow,
|
---|
| 121 | handle CurrentPage,
|
---|
| 122 | handle FormHandle
|
---|
| 123 | ;Populate component ID's
|
---|
| 124 | Let ContainingWindow = GetRealWindow(FocusWindow)
|
---|
| 125 | Let CurrentPage = GetCurrentPageHandle();
|
---|
| 126 | if GetWindowClass(CurrentPage) == "TfrmCover" then
|
---|
| 127 | if CoverVitalsID == 0 then
|
---|
| 128 | let FormHandle = GetHandleFromAddress(CurrentPage, "1 1 2 1 2");pnlBase, pnlBottom, pnl_Not8, pnl_7, lst_7
|
---|
| 129 | let CoverVitalsID = GetControlID(FormHandle)
|
---|
| 130 | endif
|
---|
| 131 | elif GetWindowClass(CurrentPage) == "TfrmMeds" then
|
---|
| 132 | if MedsInPatientID == 0 then
|
---|
| 133 | let MedsInPatientID = GetControlID(GetHandleFromAddress(CurrentPage, "2 3")); pnlMedIn, lstMedsIn
|
---|
| 134 | endif
|
---|
| 135 | if MedsOutPatientID == 0 then
|
---|
| 136 | let MedsOutPatientID = GetControlID(GetHandleFromAddress(CurrentPage, "1 2")); pnlMedOut, lstMedsOut
|
---|
| 137 | endif
|
---|
| 138 | elif GetWindowClass(ContainingWindow) == "TfrmODProc" then
|
---|
| 139 | if ODProcReasonForRequestID == 0 then
|
---|
| 140 | let FormHandle = GetHandleFromAddress(ContainingWindow, "16 1"); pnlReason, memReason
|
---|
| 141 | let ODProcReasonForRequestID = GetControlID(FormHandle)
|
---|
| 142 | endif
|
---|
| 143 | if ODProcInpatientID == 0 then
|
---|
| 144 | let FormHandle = GetHandleFromAddress(ContainingWindow, "12"); radInpatient
|
---|
| 145 | let ODProcInpatientID = GetControlID(FormHandle)
|
---|
| 146 | endif
|
---|
| 147 | if ODProcOutpatientID == 0 then
|
---|
| 148 | let FormHandle = GetHandleFromAddress(ContainingWindow, "11"); radOtpatient
|
---|
| 149 | let ODProcOutpatientID = GetControlID(FormHandle)
|
---|
| 150 | endif
|
---|
| 151 | elif GetWindowClass(ContainingWindow) == "TfrmODCslt" then
|
---|
| 152 | if ODCsltReasonForCsltID == 0 then
|
---|
| 153 | let FormHandle = GetHandleFromAddress(ContainingWindow, "21 1"); pnlReason, memReason
|
---|
| 154 | let ODCsltReasonForCsltID= GetControlID(FormHandle)
|
---|
| 155 | endif
|
---|
| 156 | if ODCsltOutpatientID == 0 then
|
---|
| 157 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 2"); gbInptOpt, radOutpatient
|
---|
| 158 | let ODCsltOutpatientID = GetControlID(FormHandle)
|
---|
| 159 | endif
|
---|
| 160 | if ODCsltInpatientID == 0 then
|
---|
| 161 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 1"); gbInptOpt, radInpatient
|
---|
| 162 | let ODCsltInpatientID = GetControlID(FormHandle)
|
---|
| 163 | endif
|
---|
| 164 | elif GetWindowClass(ContainingWindow) == "TfrmPtCWAD" then
|
---|
| 165 | if PtCWADAllergiesID == 0 then
|
---|
| 166 | let FormHandle = GetHandleFromAddress(ContainingWindow, "5"); allergies
|
---|
| 167 | let PtCWADAllergiesID = GetControlID(FormHandle)
|
---|
| 168 | endif
|
---|
| 169 | elif GetWindowClass(ContainingWindow) == "TfrmPtSel" then
|
---|
| 170 | if PtSelNotificationsID == 0 then
|
---|
| 171 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1"); notification
|
---|
| 172 | let PtSelNotificationsID = GetControlID(FormHandle)
|
---|
| 173 | endif
|
---|
| 174 | elif GetWindowClass(ContainingWindow) == "TfrmTemplateEditor" then
|
---|
| 175 | if TemplateEditorBlankLinesID == 0 then
|
---|
| 176 | let FormHandle = GetHandleFromAddress(ContainingWindow, "4 3 1 1 11"); pnlTop, pnlRightTop, pnlProperties, gbProperties,edtGap
|
---|
| 177 | let TemplateEditorBlankLinesID = GetControlID(FormHandle)
|
---|
| 178 | endif
|
---|
| 179 | elif GetWindowClass(ContainingWindow) == "TfrmODMeds" then
|
---|
| 180 | if ODMedsCommentsID == 0 then
|
---|
| 181 | if GetHandleFromAddress(ContainingWindow, "1 1 9") == 0 then; make sure we are in Inpatient
|
---|
| 182 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 1 7"); pnlFields, pnlBottom, memComment
|
---|
| 183 | let ODMedsCommentsID = GetControlID(FormHandle)
|
---|
| 184 | endif
|
---|
| 185 | endif
|
---|
| 186 | if ODMedsPriorityID == 0 then
|
---|
| 187 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 1 2 2"); pnlFields, pnlBottom, cboPriority, [Combo Edit]
|
---|
| 188 | let ODMedsPriorityID = GetControlID(FormHandle)
|
---|
| 189 | endif
|
---|
| 190 | elif GetWindowClass(ContainingWindow) == "TfrmConsultsByStatus" then
|
---|
| 191 | if ConsultsByStatusStatusID == 0 then
|
---|
| 192 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 4"); pnlBase,lstStatus
|
---|
| 193 | let ConsultsByStatusStatusID = GetControlID(FormHandle)
|
---|
| 194 | endif
|
---|
| 195 | elif GetWindowClass(ContainingWindow) == "TfrmConsultAction" then
|
---|
| 196 | if ConsultActionCommentsID == 0 then
|
---|
| 197 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 1 2 3"); pnlBase,pnlOther,pnlComments,memComments
|
---|
| 198 | let ConsultActionCommentsID = GetControlID(FormHandle)
|
---|
| 199 | endif
|
---|
| 200 | if ConsultActionAlertID == 0 then
|
---|
| 201 | let FormHandle = GetHandleFromAddress(ContainingWindow, "1 1 2 1 1"); pnlBase,pnlOther,pnlComments,pnlAlert,ckAlert
|
---|
| 202 | let ConsultActionAlertID = GetControlID(FormHandle)
|
---|
| 203 | endif
|
---|
| 204 | endif
|
---|
| 205 | Let Class = GetWindowClass (FocusWindow)
|
---|
| 206 | if Class == "TORListBox" then
|
---|
| 207 | Let ID = GetControlID(FocusWindow)
|
---|
| 208 | if ID == CoverVitalsID then ;Vitals list box on cover sheet
|
---|
| 209 | SayString("Vitals")
|
---|
| 210 | elif ID == PtCWADAllergiesID then; Allergies list box on patient postings
|
---|
| 211 | SayString("Allergies")
|
---|
| 212 | elif ID == ConsultsByStatusStatusID then; Status list box on consults by status dialog
|
---|
| 213 | SayString("Status")
|
---|
| 214 | SayString(GetWindowType(FocusWindow)); JAWS occasionally finds the label, so don't speak it again!
|
---|
| 215 | SayString(GetWindowText(FocusWindow, 0))
|
---|
| 216 | return
|
---|
| 217 | endif
|
---|
| 218 | elif Class == "TCaptionRichEdit" then
|
---|
| 219 | Let ID = GetControlID(FocusWindow)
|
---|
| 220 | if ID == ODProcReasonForRequestID then ;Reason for request on OD Procs
|
---|
| 221 | SayString("Reason for Request")
|
---|
| 222 | endif
|
---|
| 223 | elif Class == "TRichEdit" then
|
---|
| 224 | Let ID = GetControlID(FocusWindow)
|
---|
| 225 | if ID == ODCsltReasonForCsltID then ;Reason for request on OD Consult
|
---|
| 226 | SayString("Reason for Request")
|
---|
| 227 | endif
|
---|
| 228 | elif Class == "TRadioButton" then
|
---|
| 229 | Let ID = GetControlID(FocusWindow)
|
---|
| 230 | if ID == ID == ODCsltOutpatientID || ODProcInpatientID || ID == ODProcOutpatientID || ID == ODCsltInpatientID then ;Radio buttons on OD Procs
|
---|
| 231 | SayString("Patient will be seen as an ")
|
---|
| 232 | endif
|
---|
| 233 | elif Class == "TCaptionListView" then
|
---|
| 234 | Let ID = GetControlID(FocusWindow)
|
---|
| 235 | if ID == PtSelNotificationsID then ;Notification list on Patient select
|
---|
| 236 | SayString("Notifications")
|
---|
| 237 | endif
|
---|
| 238 | elif Class == "TCaptionEdit" then
|
---|
| 239 | Let ID = GetControlID(FocusWindow)
|
---|
| 240 | if ID == TemplateEditorBlankLinesID then ;Number of blank lines on Template Editor
|
---|
| 241 | SayString("Number of blank lines to insert between items")
|
---|
| 242 | SayString(GetWindowType(FocusWindow))
|
---|
| 243 | SayString(GetWindowText(FocusWindow, 0))
|
---|
| 244 | return
|
---|
| 245 | endif
|
---|
| 246 | elif Class == "TCaptionListBox" then
|
---|
| 247 | Let ID = GetControlID(FocusWindow)
|
---|
| 248 | if ID == MedsInPatientID then ;Inpatient Medications on Meds tab
|
---|
| 249 | SayString("Inpatient Medications")
|
---|
| 250 | elif ID == MedsOutPatientID then ;Outpatient Medications on Meds tab
|
---|
| 251 | SayString("Outpatient Medications")
|
---|
| 252 | endif
|
---|
| 253 | elif Class == "TCaptionMemo" then
|
---|
| 254 | Let ID = GetControlID(FocusWindow)
|
---|
| 255 | if ID == ODMedsCommentsID then ;Comment box on Meds order
|
---|
| 256 | SayString("Comments")
|
---|
| 257 | elif ID == ConsultActionCommentsID then ;Comment Box on consult action
|
---|
| 258 | SayString("Comments")
|
---|
| 259 | endif
|
---|
| 260 | elif Class == "TORComboEdit" then
|
---|
| 261 | Let ID = GetControlID(FocusWindow)
|
---|
| 262 | if ID == ODMedsPriorityID then ;Priority combo box on Meds order
|
---|
| 263 | SayString("Priority")
|
---|
| 264 | SayString(GetWindowType(FocusWindow))
|
---|
| 265 | SayString(GetWindowText(FocusWindow, 0))
|
---|
| 266 | return
|
---|
| 267 | endif
|
---|
| 268 | elif Class == "TCheckBox" then
|
---|
| 269 | Let ID = GetControlID(FocusWindow)
|
---|
| 270 | if ID == ConsultActionAlertID then ;Alert check box on consult action tab
|
---|
| 271 | SayString(GetWindowName(GetNextWindow(FocusWindow))) ;Auto-alert message
|
---|
| 272 | endif
|
---|
| 273 | endif
|
---|
| 274 | FocusChangedEvent(FocusWindow, PrevWindow)
|
---|
| 275 | EndFunction
|
---|
| 276 |
|
---|
| 277 |
|
---|
| 278 | Void Function AutoStartEvent ()
|
---|
| 279 | let CoverVitalsID = 0
|
---|
| 280 | let ODProcReasonForRequestID = 0
|
---|
| 281 | let ODProcInpatientID = 0
|
---|
| 282 | let ODProcOutpatientID = 0
|
---|
| 283 | let ODCsltReasonForCsltID = 0
|
---|
| 284 | let ODCsltInpatientID = 0
|
---|
| 285 | let ODCsltOutpatientID = 0
|
---|
| 286 | let PtCWADAllergiesID = 0
|
---|
| 287 | let PtSelNotificationsID = 0
|
---|
| 288 | let TemplateEditorBlankLinesID = 0
|
---|
| 289 | let MedsInPatientID = 0
|
---|
| 290 | let MedsOutPatientID = 0
|
---|
| 291 | let ODMedsCommentsID = 0
|
---|
| 292 | let ODMedsPriorityID = 0
|
---|
| 293 | let NotesViewMenuID = 0
|
---|
| 294 | let ConsultsByStatusStatusID = 0
|
---|
| 295 | let ConsultActionCommentsID = 0
|
---|
| 296 | let ConsultActionAlertID = 0
|
---|
| 297 | let CurrentMenuContext = NoMenuContext
|
---|
| 298 | AutoStartEvent ()
|
---|
| 299 | EndFunction
|
---|
| 300 |
|
---|
| 301 | Void Function MenuBarToMenuContext(string PlainKeyName)
|
---|
| 302 | var
|
---|
| 303 | string PageName
|
---|
| 304 | let PageName = GetWindowClass(GetCurrentPageHandle())
|
---|
| 305 | if PageName == "TfrmNotes" then
|
---|
| 306 | if PlainKeyName == "A" then
|
---|
| 307 | let CurrentMenuContext = NotesActionMenuContext
|
---|
| 308 | elif PlainKeyName == "V" then
|
---|
| 309 | let CurrentMenuContext = NotesViewMenuContext
|
---|
| 310 | endif
|
---|
| 311 | elif PageName == "TfrmConsults" then
|
---|
| 312 | if PlainKeyName == "A" then
|
---|
| 313 | let CurrentMenuContext = ConsultsActionMenuContext
|
---|
| 314 | elif PlainKeyName == "V" then
|
---|
| 315 | let CurrentMenuContext = ConsultsViewMenuContext
|
---|
| 316 | endif
|
---|
| 317 | endif
|
---|
| 318 | EndFunction
|
---|
| 319 |
|
---|
| 320 | Void Function KeyPressedEvent (int nKey, string strKeyName, int nIsBrailleKey, int nIsScriptKey)
|
---|
| 321 | var
|
---|
| 322 | string PlainKeyName,
|
---|
| 323 | int Shifted,
|
---|
| 324 | int Controlled,
|
---|
| 325 | int Alted,
|
---|
| 326 | string PageName,
|
---|
| 327 | int DoMenuBar
|
---|
| 328 | let PlainKeyName = StripControls(strKeyName, Shifted, Controlled, Alted)
|
---|
| 329 | let PageName = GetWindowClass(GetCurrentPageHandle())
|
---|
| 330 |
|
---|
| 331 | ;Handle shortcut keys first
|
---|
| 332 | if PageName == "TfrmNotes" && PlainKeyName == "A" && Shifted && Controlled && not Alted then
|
---|
| 333 | SayString("Saving note without signature")
|
---|
| 334 | else
|
---|
| 335 | let DoMenuBar = GlobalMenuMode == MENUBAR_ACTIVE || (GlobalMenuMode == MENU_INACTIVE && Alted)
|
---|
| 336 | if DoMenuBar then
|
---|
| 337 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 338 | elif CurrentMenuContext == NotesActionMenuContext then
|
---|
| 339 | if PlainKeyName == "A" then
|
---|
| 340 | SayString("Saving note without signature")
|
---|
| 341 | let CurrentMenuContext = NoMenuContext
|
---|
| 342 | else
|
---|
| 343 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 344 | endif
|
---|
| 345 | elif CurrentMenuContext == NotesViewMenuContext then
|
---|
| 346 | if PlainKeyName == "D" then
|
---|
| 347 | SayString("Toggling note details")
|
---|
| 348 | let CurrentMenuContext = NoMenuContext
|
---|
| 349 | else
|
---|
| 350 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 351 | endif
|
---|
| 352 | elif CurrentMenuContext == ConsultsActionMenuContext then
|
---|
| 353 | if PlainKeyName == "C" then
|
---|
| 354 | let CurrentMenuContext = ConsultsTrackingMenuContext
|
---|
| 355 | else
|
---|
| 356 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 357 | endif
|
---|
| 358 | elif CurrentMenuContext == ConsultsTrackingMenuContext then
|
---|
| 359 | if PlainKeyName == "T" then
|
---|
| 360 | SayString("Displaying consult details")
|
---|
| 361 | let CurrentMenuContext = NoMenuContext
|
---|
| 362 | elif PlainKeyName == "U" then
|
---|
| 363 | SayString("Displaying consult results")
|
---|
| 364 | let CurrentMenuContext = NoMenuContext
|
---|
| 365 | else
|
---|
| 366 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 367 | endif
|
---|
| 368 | elif CurrentMenuContext == ConsultsViewMenuContext then
|
---|
| 369 | if PlainKeyName == "F" then
|
---|
| 370 | SayString("Returning to default view")
|
---|
| 371 | let CurrentMenuContext = NoMenuContext
|
---|
| 372 | else
|
---|
| 373 | MenuBarToMenuContext(PlainKeyName)
|
---|
| 374 | endif
|
---|
| 375 | endif
|
---|
| 376 | endif
|
---|
| 377 | KeyPressedEvent (nKey, strKeyName, nIsBrailleKey, nIsScriptKey)
|
---|
| 378 | EndFunction
|
---|
| 379 |
|
---|
| 380 | Void Function MenuModeEvent (handle WinHandle, int mode)
|
---|
| 381 | if mode == MENU_INACTIVE then
|
---|
| 382 | let CurrentMenuContext = NoMenuContext
|
---|
| 383 | endif
|
---|
| 384 | MenuModeEvent(WinHandle,mode)
|
---|
| 385 | EndFunction
|
---|
| 386 |
|
---|
| 387 | /* Event chasing code below. Uncomment bits of this to trace the firing of events
|
---|
| 388 | Void Function FocusChangedEvent (handle FocusWindow, handle PrevWindow)
|
---|
| 389 | SayString( "Focus Changed Event")
|
---|
| 390 | FocusChangedEvent(FocusWindow, PrevWindow)
|
---|
| 391 | EndFunction
|
---|
| 392 |
|
---|
| 393 | Void Function ActiveItemChangedEvent (handle curHwnd, int curObjectId, int curChildId,
|
---|
| 394 | handle prevHwnd, int prevObjectId, int prevChildId)
|
---|
| 395 | SayString( "Active Item Changed Event")
|
---|
| 396 | ActiveItemChangedEvent (curHwnd, curObjectId, curChildId, prevHwnd, prevObjectId, prevChildId)
|
---|
| 397 | EndFunction
|
---|
| 398 |
|
---|
| 399 | Void Function AutoFinishEvent ()
|
---|
| 400 | SayString( "Auto Finish Event")
|
---|
| 401 | AutoFinishEvent ()
|
---|
| 402 | EndFunction
|
---|
| 403 |
|
---|
| 404 | Void Function KeyPressedEvent (int nKey, string strKeyName, int nIsBrailleKey, int nIsScriptKey)
|
---|
| 405 | SayString( "Key Pressed Event")
|
---|
| 406 | KeyPressedEvent (nKey, strKeyName, nIsBrailleKey, nIsScriptKey)
|
---|
| 407 | EndFunction
|
---|
| 408 |
|
---|
| 409 | void function ObjStateChangedEvent (handle hObj)
|
---|
| 410 | SayString( "Object State Changed Event")
|
---|
| 411 | ObjStateChangedEvent (hObj)
|
---|
| 412 | EndFunction
|
---|
| 413 |
|
---|
| 414 | Void Function FocusPointMovedEvent (int nX, int nY, int nOldX, int nOldY, int nUnit, int nDir, int nTimeElapsed)
|
---|
| 415 | SayString( "Focus Point Moved Event")
|
---|
| 416 | FocusPointMovedEvent (nX, nY, nOldX, nOldY, nUnit, nDir, nTimeElapsed)
|
---|
| 417 | EndFunction
|
---|
| 418 |
|
---|
| 419 | Void Function ValueChangedEvent (handle hwnd, int objId, int childId, int nObjType, string sObjName, string sObjValue)
|
---|
| 420 | SayString( "Value Changed Event")
|
---|
| 421 | ValueChangedEvent (hwnd, objId, childId, nObjType, sObjName, sObjValue)
|
---|
| 422 | EndFunction
|
---|
| 423 |
|
---|
| 424 | Void Function DocumentLoadedEvent ()
|
---|
| 425 | SayString( "Dcoument Loaded Event")
|
---|
| 426 | DocumentLoadedEvent ()
|
---|
| 427 | EndFunction
|
---|
| 428 |
|
---|
| 429 | void function FormsModeEvent(int bEntering)
|
---|
| 430 | SayString( "Forms Mode Event")
|
---|
| 431 | FormsModeEvent(bEntering)
|
---|
| 432 | EndFunction
|
---|
| 433 |
|
---|
| 434 | void function TextSelectedEvent(string strText, int bUnSelecting)
|
---|
| 435 | SayString( "Text Selected Event")
|
---|
| 436 | TextSelectedEvent(strText, bUnSelecting)
|
---|
| 437 | EndFunction
|
---|
| 438 | /* End of event chasing */
|
---|
| 439 |
|
---|
| 440 |
|
---|