Ignore:
Timestamp:
Jul 7, 2010, 4:51:54 PM (14 years ago)
Author:
Kevin Toppenberg
Message:

Upgrading to version 27

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cprs/trunk/CPRS-Chart/fDrawers.pas

    r456 r830  
    1010  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    1111  ExtCtrls, StdCtrls, Buttons, ORCtrls, ComCtrls, ImgList, uTemplates,
    12   Menus, ORClasses, ORFn;
     12  Menus, ORClasses, ORFn, fBase508Form, VA508AccessibilityManager,
     13  VA508ImageListLabeler;
    1314
    1415type
     
    1617  TDrawers = set of TDrawer;
    1718
    18   TfrmDrawers = class(TForm)
     19  TfrmDrawers = class(TfrmBase508Form)
    1920    lbOrders: TORListBox;
    2021    sbOrders: TORAlignSpeedButton;
     
    5253    N5: TMenuItem;
    5354    mnuViewTemplateIconLegend: TMenuItem;
     55    fldAccessTemplates: TVA508ComponentAccessibility;
     56    fldAccessReminders: TVA508ComponentAccessibility;
     57    imgLblReminders: TVA508ImageListLabeler;
     58    imgLblTemplates: TVA508ImageListLabeler;
    5459    procedure FormCanResize(Sender: TObject; var NewWidth,
    5560      NewHeight: Integer; var Resize: Boolean);
     
    105110    procedure tvRemindersNodeCaptioning(Sender: TObject;
    106111      var Caption: String);
    107     procedure tvRemindersAddition(Sender: TObject; Node: TTreeNode);
    108     procedure tvRemindersDeletion(Sender: TObject; Node: TTreeNode);
     112    procedure fldAccessTemplatesStateQuery(Sender: TObject; var Text: string);
     113    procedure fldAccessTemplatesInstructionsQuery(Sender: TObject;
     114      var Text: string);
     115    procedure fldAccessRemindersInstructionsQuery(Sender: TObject;
     116      var Text: string);
     117    procedure fldAccessRemindersStateQuery(Sender: TObject; var Text: string);
    109118  private
    110119    FOpenToNode: string;
     
    211220uses fTemplateView, uCore, rTemplates, fTemplateEditor, dShared, uReminders,
    212221  fReminderDialog, RichEdit, fRptBox, Clipbrd, fTemplateDialog, fIconLegend,
    213   uAccessibleTreeView, uAccessibleTreeNode;
     222  VA508AccessibilityRouter, uVA508CPRSCompatibility, VAUtils, fFindingTemplates;
    214223
    215224{$R *.DFM}
     
    534543  end;
    535544  ToggleDrawer(odTemplates);
     545  if ScreenReaderActive then
     546    pnlTemplatesButton.SetFocus;
    536547end;
    537548
     
    559570      ToggleDrawer(odReminders)
    560571  end;
     572  if ScreenReaderActive then
     573    pnlRemindersButton.SetFocus;
    561574end;
    562575
     
    884897      begin
    885898        CheckBoilerplate4Fields(txt, 'Template: ' + Template.PrintName);
    886         BeforeLine := SendMessage(FRichEditControl.Handle, EM_EXLINEFROMCHAR, 0, FRichEditControl.SelStart);
    887         FRichEditControl.SelText := txt;
    888         FRichEditControl.SetFocus;
    889         SendMessage(FRichEditControl.Handle, EM_SCROLLCARET, 0, 0);
    890         AfterTop := SendMessage(FRichEditControl.Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
    891         SendMessage(FRichEditControl.Handle, EM_LINESCROLL, 0, -1 * (AfterTop - BeforeLine));
     899        if txt <> '' then
     900        begin
     901          BeforeLine := SendMessage(FRichEditControl.Handle, EM_EXLINEFROMCHAR, 0, FRichEditControl.SelStart);
     902          FRichEditControl.SelText := txt;
     903          FRichEditControl.SetFocus;
     904          SendMessage(FRichEditControl.Handle, EM_SCROLLCARET, 0, 0);
     905          AfterTop := SendMessage(FRichEditControl.Handle, EM_GETFIRSTVISIBLELINE, 0, 0);
     906          SendMessage(FRichEditControl.Handle, EM_LINESCROLL, 0, -1 * (AfterTop - BeforeLine));
     907          SpeakTextInserted;
     908        end;
    892909      end;
    893910    end;
     
    960977procedure TfrmDrawers.FormDestroy(Sender: TObject);
    961978begin
    962   TAccessibleTreeView.UnwrapControl(tvReminders);
    963979  dmodShared.RemoveDrawerTree(Self);
    964980  KillObj(@FRemNotifyList);
     
    973989procedure TfrmDrawers.ReloadTemplates;
    974990begin
     991  SetFindNext(FALSE);
    975992  LoadTemplateData;
    976993  if(UserTemplateAccessLevel <> taNone) and (assigned(MyTemplate)) and
     
    9861003procedure TfrmDrawers.btnFindClick(Sender: TObject);
    9871004var
    988   TmpNode: TTreeNode;
    989   Found: boolean;
    990   S1,S2: string;
     1005  Found, TmpNode: TTreeNode;
     1006  IsNext: boolean;
    9911007
    9921008begin
    9931009  if(edtSearch.text <> '') then
    9941010  begin
    995     if(FEmptyNodeCount > 0) then
    996     begin
    997       FInternalExpand := TRUE;
    998       FInternalHiddenExpand := TRUE;
    999       try
    1000         TmpNode := tvTemplates.Items.GetFirstNode;
    1001         while(assigned(TmpNode)) do
    1002         begin
    1003           TmpNode.Expand(TRUE);
    1004           TmpNode := TmpNode.GetNextSibling;
    1005         end;
    1006       finally
    1007         FInternalExpand := FALSE;
    1008         FInternalHiddenExpand := FALSE;
    1009       end;
    1010     end;
    1011     if((FFindNext) and assigned (FLastFoundNode)) then
    1012       TmpNode := FLastFoundNode.GetNext
     1011    IsNext := ((FFindNext) and assigned (FLastFoundNode));
     1012    if IsNext then
     1013      TmpNode := FLastFoundNode
    10131014    else
    10141015      TmpNode := tvTemplates.Items.GetFirstNode;
    1015     Found := FALSE;
    1016     if(assigned(TmpNode)) then
    1017     begin
    1018       S1 := edtSearch.Text;
    1019       if(not cbMatchCase.Checked) then
    1020         S1 := UpperCase(S1);
    1021       while (assigned(TmpNode) and (not Found)) do
    1022       begin
    1023         S2 := TmpNode.Text;
    1024         if(not cbMatchCase.Checked) then
    1025           S2 := UpperCase(S2);
    1026         Found := SearchMatch(S1, S2, cbWholeWords.Checked);
    1027         if(not Found) then
    1028           TmpNode := TmpNode.GetNext;
    1029       end;
    1030     end;
    1031     if(Found) then
    1032     begin
    1033       FLastFoundNode := TmpNode;
     1016    FInternalExpand := TRUE;
     1017    FInternalHiddenExpand := TRUE;
     1018    try
     1019      Found := FindTemplate(edtSearch.Text, tvTemplates, Application.MainForm, TmpNode,
     1020                            IsNext, not cbMatchCase.Checked, cbWholeWords.Checked);
     1021    finally
     1022      FInternalExpand := FALSE;
     1023      FInternalHiddenExpand := FALSE;
     1024    end;
     1025
     1026    if assigned(Found) then
     1027    begin
     1028      FLastFoundNode := Found;
    10341029      SetFindNext(TRUE);
    10351030      FInternalExpand := TRUE;
    10361031      try
    1037         tvTemplates.Selected := TmpNode;
     1032        tvTemplates.Selected := Found;
    10381033      finally
    10391034        FInternalExpand := FALSE;
    10401035      end;
    1041     end
    1042     else
    1043     begin
    1044       if(FFindNext) then
    1045         S1 := ''
    1046       else
    1047         S1 := '  "' + edtSearch.Text + '" was not Found.';
    1048       SetFindNext(FALSE);
    1049       InfoBox('Search Complete.' + S1, 'Information', MB_OK or MB_ICONINFORMATION);
    10501036    end;
    10511037  end;
     
    11321118  dmodShared.AddDrawerTree(Self);
    11331119  FHasPersonalTemplates := FALSE;
    1134   TAccessibleTreeView.WrapControl(tvReminders);
    11351120end;
    11361121
     
    11431128  FEmptyNodeCount := 0;
    11441129  ReloadTemplates;
     1130end;
     1131
     1132procedure TfrmDrawers.fldAccessRemindersInstructionsQuery(Sender: TObject;
     1133  var Text: string);
     1134begin
     1135  inherited;
     1136  if FOpenDrawer = odReminders then
     1137    Text := 'to close'
     1138  else
     1139    Text := 'to open';
     1140  Text := Text + ' drawer press space bar';
     1141end;
     1142
     1143procedure TfrmDrawers.fldAccessRemindersStateQuery(Sender: TObject;
     1144  var Text: string);
     1145begin
     1146  inherited;
     1147  if FOpenDrawer = odReminders then
     1148    Text := ', Drawer Open'
     1149  else
     1150    Text := ', Drawer Closed';
     1151end;
     1152
     1153procedure TfrmDrawers.fldAccessTemplatesInstructionsQuery(Sender: TObject;
     1154  var Text: string);
     1155begin
     1156  inherited;
     1157  if FOpenDrawer = odTemplates then
     1158    Text := 'to close'
     1159  else
     1160    Text := 'to open';
     1161  Text := Text + ' drawer press space bar';
     1162end;
     1163
     1164procedure TfrmDrawers.fldAccessTemplatesStateQuery(Sender: TObject;
     1165  var Text: string);
     1166begin
     1167  if FOpenDrawer = odTemplates then
     1168    Text := ', Drawer Open'
     1169  else
     1170    Text := ', Drawer Closed';
    11451171end;
    11461172
     
    13901416var
    13911417  OldInternalHE, OldInternalEX: boolean;
    1392  
     1418
    13931419begin
    13941420  if(Path <> '') then
     
    14251451    tmpl := TTemplate(tvTemplates.Selected.Data);
    14261452    if(tmpl.Description = '') then
    1427       ShowMessage('No notes found for ' + tmpl.PrintName)
     1453      ShowMsg('No notes found for ' + tmpl.PrintName)
    14281454    else
    14291455    begin
     
    14541480    CheckBoilerplate4Fields(txt, 'Template: ' + Template.PrintName);
    14551481    if txt <> '' then
     1482    begin
    14561483      Clipboard.SetTextBuf(PChar(txt));
     1484      GetScreenReader.Speak('Text Copied to Clip board');
     1485    end;
    14571486  end;
    14581487  if txt <> '' then
     
    15311560end;
    15321561
    1533 procedure TfrmDrawers.tvRemindersAddition(Sender: TObject;
    1534   Node: TTreeNode);
    1535 begin
    1536   TAccessibleTreeNode.WrapControl(Node as TORTreeNode);
    1537 end;
    1538 
    1539 procedure TfrmDrawers.tvRemindersDeletion(Sender: TObject;
    1540   Node: TTreeNode);
    1541 begin
    1542   TAccessibleTreeNode.UnwrapControl(Node as TORTreeNode);
    1543 end;
    1544 
    15451562procedure TfrmDrawers.DisableArrowKeyMove(Sender: TObject);
    15461563var
     
    15611578end;
    15621579
     1580initialization
     1581  SpecifyFormIsNotADialog(TfrmDrawers);
     1582
    15631583end.
    15641584
Note: See TracChangeset for help on using the changeset viewer.