- Timestamp:
- Aug 12, 2009, 7:14:16 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptionsNotes.pas
r453 r541 4 4 interface 5 5 6 { //kt 8/09 The following objects were addeded to the *FORM* of this unit 7 8 object lblHTMLViewSize: TLabel 9 Left = 8 10 Top = 144 11 Width = 159 12 Height = 13 13 Caption = 'Formatted Text (HTML) View Size' 14 end 15 object cboHTMLViewSize: TComboBox 16 Left = 8 17 Top = 162 18 Width = 153 19 Height = 21 20 ItemHeight = 13 21 TabOrder = 6 22 Text = '<View Size>' 23 OnClick = cboHTMLViewSizeClick 24 Items.Strings = ( 25 'Smallest' 26 'Small' 27 'Medium' 28 'Large' 29 'Largest') 30 end 31 object cbDefaultHTMLMode: TCheckBox 32 Left = 8 33 Top = 112 34 Width = 225 35 Height = 17 36 Caption = 'Start notes in Formatted (HTML) Mode' 37 TabOrder = 7 38 OnClick = cbDefaultHTMLModeClick 39 } 40 41 6 42 uses 7 43 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 44 IniFiles, //kt for IniFile 8 45 StdCtrls, ExtCtrls, ORCtrls, ORFn, ComCtrls, DKLang; 9 46 … … 22 59 btnCancel: TButton; 23 60 lblAutoSave2: TLabel; 24 DKLanguageController1: TDKLanguageController; 61 cboHTMLViewSize: TComboBox; //kt 8/09 62 lblHTMLViewSize: TLabel; //kt 8/09 63 cbDefaultHTMLMode: TCheckBox; //kt 8/09 64 DKLanguageController1: TDKLanguageController; //kt 25 65 procedure FormShow(Sender: TObject); 26 66 procedure btnOKClick(Sender: TObject); … … 32 72 Direction, InsertAt: Integer); 33 73 procedure cboCosignerExit(Sender: TObject); 74 procedure FormCreate(Sender: TObject); //kt 8/09 75 procedure cbDefaultHTMLModeClick(Sender: TObject); //kt 8/09 76 procedure cboHTMLViewSizeChange(Sender: TObject); //kt 8/09 34 77 private 35 78 { Private declarations } … … 40 83 var 41 84 frmOptionsNotes: TfrmOptionsNotes; 85 OptionsNotesIniFile : TIniFile; //kt 8/09 86 DefaultEditHTMLMode : boolean; //kt 8/09 87 FHTMLEditTextSize : integer; //kt 8/09 42 88 43 89 procedure DialogOptionsNotes(topvalue, leftvalue, fontsize: integer; var actiontype: Integer); 90 procedure SetDefaultEditHTMLMode(Value : boolean); //kt 8/09 91 procedure Loaded; //kt 8/09 44 92 45 93 implementation … … 48 96 49 97 uses 98 uCore, //kt 8/09 99 Registry, //kt 8/09 50 100 rOptions, uOptions, rCore, rTIU, rDCSumm; 101 102 const 103 DEFAULT_HTML_EDIT_MODE = 'Edit-in-HTML default mode'; //kt 8/09 104 DEFAULT_HTML_TEXT_SIZE = 'Edit-in-HTML default text size'; //kt 8/09 105 106 procedure SetRegHTMLViewSize(Size : integer); forward; //kt 8/09 51 107 52 108 procedure DialogOptionsNotes(topvalue, leftvalue, fontsize: integer; var actiontype: Integer); … … 102 158 chkAskSubject.Checked := rpcGetSubject; 103 159 if chkAskSubject.Checked then chkAskSubject.Tag := 1; 160 cbDefaultHTMLMode.Checked := DefaultEditHTMLMode; //kt 104 161 end; 105 162 … … 207 264 end; 208 265 266 267 procedure SetRegHTMLViewSize(Size : integer); 268 //kt added entire function 8/09 269 //NOTE: The only way to affect the view size of the HTML renderer (IE) is to 270 // change a system-wide setting in the registry. Then CPRS has to be 271 // restarted for changes to take effect. 272 var 273 FontSizeData : array[0..3] of byte; 274 ZoomReg : TRegistry; 275 begin 276 if (Size < 0) or (Size > 255) then exit; 277 ZoomReg := TRegistry.Create; 278 FontSizeData[0] := Lo(Size); FontSizeData[1] := 0; FontSizeData[2] := 0; FontSizeData[3] := 0; 279 try 280 ZoomReg.Rootkey := HKEY_CURRENT_USER; 281 if ZoomReg.OpenKey('\Software\Microsoft\Internet Explorer\International\Scripts\3', False) then begin 282 ZoomReg.WriteBinaryData('IEFontSize',FontSizeData,SizeOf(FontSizeData)); 283 end; 284 finally 285 ZoomReg.Free; 286 end; 287 end; 288 289 procedure SetDefaultEditHTMLMode(Value : boolean); 290 //kt added entire function 8/09 291 begin 292 if Value <> DefaultEditHTMLMode then begin 293 OptionsNotesIniFile.WriteBool(User.Name,DEFAULT_HTML_EDIT_MODE,Value); 294 DefaultEditHTMLMode := Value; 295 end; 296 end; 297 298 procedure TfrmOptionsNotes.cbDefaultHTMLModeClick(Sender: TObject); 299 //kt added entire function 8/09 300 begin 301 SetDefaultEditHTMLMode(cbDefaultHTMLMode.Checked); 302 end; 303 304 procedure TfrmOptionsNotes.cboHTMLViewSizeChange(Sender: TObject); 305 //kt added entire function 8/09 306 begin 307 SetRegHTMLViewSize(cboHTMLViewSize.ItemIndex); 308 OptionsNotesIniFile.WriteInteger(User.Name,DEFAULT_HTML_TEXT_SIZE,cboHTMLViewSize.ItemIndex); 309 MessageDlg('Formated text size change will take '+#10+#13+ 310 'effect next time CPRS is restarted.',mtInformation,[mbOK],0); 311 end; 312 313 procedure Loaded; 314 //kt added entire function 8/09 315 begin 316 //Code was put in global access space because object is not instantiated until 317 //after user shows options (which could be never) 318 OptionsNotesIniFile := TIniFile.Create(ChangeFileExt(Application.ExeName, '.INI')); //kt 319 DefaultEditHTMLMode := OptionsNotesIniFile.ReadBool(User.Name,DEFAULT_HTML_EDIT_MODE,false); 320 FHTMLEditTextSize := OptionsNotesIniFile.ReadInteger(User.Name,DEFAULT_HTML_TEXT_SIZE,2); 321 SetRegHTMLViewSize(FHTMLEditTextSize); 322 end; 323 324 procedure TfrmOptionsNotes.FormCreate(Sender: TObject); 325 //kt added entire function 8/09 326 //NOTE: form is not created until first time needed. 327 begin 328 //NOTE: FHTMLEditTextSize is set in Loaded function (has to be called after sign on (so User.Name is available) 329 if (FHTMLEditTextSize > -1) and (FHTMLEditTextSize < cboHTMLViewSize.Items.Count) then begin 330 cboHTMLViewSize.ItemIndex := FHTMLEditTextSize; 331 cboHTMLViewSize.Text := cboHTMLViewSize.Items[FHTMLEditTextSize]; 332 SetRegHTMLViewSize(cboHTMLViewSize.ItemIndex); 333 end; 334 end; 335 336 initialization 337 338 finalization 339 OptionsNotesIniFile.Free; //kt 8/09 340 209 341 end.
Note:
See TracChangeset
for help on using the changeset viewer.