From 2c5157b57052ab889120afe5bc39f2c170490aed Mon Sep 17 00:00:00 2001 From: Marc Durdin Date: Thu, 13 Aug 2026 15:26:49 +0200 Subject: [PATCH] chore(windows): remove junk files from kmshell Test-bot: skip --- windows/src/desktop/kmshell/UfrmKMShell.dfm | 17 -- .../kmshell/main/UfrmUnderlyingLayout.dfm | 64 ---- .../kmshell/main/UfrmUnderlyingLayout.pas | 273 ------------------ windows/src/desktop/kmshell/menuframe_pro.pdn | Bin 6220 -> 0 bytes 4 files changed, 354 deletions(-) delete mode 100644 windows/src/desktop/kmshell/UfrmKMShell.dfm delete mode 100644 windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.dfm delete mode 100644 windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.pas delete mode 100644 windows/src/desktop/kmshell/menuframe_pro.pdn diff --git a/windows/src/desktop/kmshell/UfrmKMShell.dfm b/windows/src/desktop/kmshell/UfrmKMShell.dfm deleted file mode 100644 index 8a67e763b4..0000000000 --- a/windows/src/desktop/kmshell/UfrmKMShell.dfm +++ /dev/null @@ -1,17 +0,0 @@ -object frmKMShell: TfrmKMShell - Left = 192 - Top = 114 - HelpContext = 1 - ClientHeight = 606 - ClientWidth = 862 - Color = clBtnFace - Font.Charset = DEFAULT_CHARSET - Font.Color = clWindowText - Font.Height = -11 - Font.Name = 'MS Sans Serif' - Font.Style = [] - OldCreateOrder = False - OnHelp = TntFormHelp - PixelsPerInch = 96 - TextHeight = 13 -end diff --git a/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.dfm b/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.dfm deleted file mode 100644 index cc2d092f16..0000000000 --- a/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.dfm +++ /dev/null @@ -1,64 +0,0 @@ -inherited frmUnderlyingLayout: TfrmUnderlyingLayout - Left = 360 - Top = 413 - BorderIcons = [biSystemMenu] - BorderStyle = bsDialog - Caption = 'Select Underlying Layout' - ClientHeight = 285 - ClientWidth = 290 - OldCreateOrder = True - Position = poScreenCenter - OnCreate = FormCreate - OnDestroy = FormDestroy - PixelsPerInch = 96 - TextHeight = 13 - object lblKeyboardNotInstalled: TLabel - Left = 8 - Top = 240 - Width = 270 - Height = 39 - Caption = - 'The selected layout must be installed from your Windows install ' + - 'media through Control Panel before it can be used as an underlyi' + - 'ng layout.' - Visible = False - WordWrap = True - end - object cmdOK: TButton - Left = 208 - Top = 8 - Width = 73 - Height = 25 - Caption = 'OK' - Default = True - TabOrder = 1 - OnClick = cmdOKClick - end - object gridKeyboards: TStringGrid - Left = 8 - Top = 28 - Width = 189 - Height = 205 - ColCount = 4 - DefaultRowHeight = 16 - DefaultDrawing = False - FixedCols = 0 - FixedRows = 0 - Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRowSelect] - TabOrder = 0 - OnClick = gridKeyboardsClick - OnDblClick = gridKeyboardsDblClick - OnDrawCell = gridKeyboardsDrawCell - OnKeyPress = gridKeyboardsKeyPress - end - object cmdCancel: TButton - Left = 208 - Top = 40 - Width = 73 - Height = 25 - Cancel = True - Caption = 'Cancel' - ModalResult = 2 - TabOrder = 2 - end -end diff --git a/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.pas b/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.pas deleted file mode 100644 index 1505766f5c..0000000000 --- a/windows/src/desktop/kmshell/main/UfrmUnderlyingLayout.pas +++ /dev/null @@ -1,273 +0,0 @@ -(* - Name: UfrmUnderlyingLayout - Copyright: Copyright (C) SIL International. - Documentation: - Description: - Create Date: 20 Jun 2006 - - Modified Date: 3 May 2011 - Authors: mcdurdin - Related Files: - Dependencies: - - Bugs: - Todo: - Notes: - History: 20 Jun 2006 - mcdurdin - Initial version - 03 May 2011 - mcdurdin - I2890 - Record diagnostic data when encountering registry errors -*) -unit UfrmUnderlyingLayout; - -interface - -uses - Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, - StdCtrls, Grids, ExtCtrls, UfrmKMShell; - -type - TfrmUnderlyingLayout = class(TfrmKMShell) - cmdOK: TButton; - gridKeyboards: TStringGrid; - cmdCancel: TButton; - lblKeyboardNotInstalled: TLabel; - procedure FormCreate(Sender: TObject); - procedure gridKeyboardsKeyPress(Sender: TObject; var Key: Char); - procedure gridKeyboardsClick(Sender: TObject); - procedure gridKeyboardsDrawCell(Sender: TObject; ACol, ARow: Integer; - Rect: TRect; State: TGridDrawState); - procedure gridKeyboardsDblClick(Sender: TObject); - procedure cmdOKClick(Sender: TObject); - procedure FormDestroy(Sender: TObject); - private - FLookupText: string; - tmrResetLookup: TTimer; - procedure tmrResetLookupTimer(Sender: TObject); - procedure InvalidateCell(ACol, ARow: Integer); - { Private declarations } - public - { Public declarations } - end; - -implementation - -uses - ErrorControlledRegistry, - RegistryKeys, - Utilkmshell; - -{$R *.DFM} - -procedure TfrmUnderlyingLayout.FormCreate(Sender: TObject); -var - str: TStringList; - i, n: Integer; - FSelected, syspath, s: string; - buf: array[0..260] of Char; -begin - tmrResetLookup := TTimer.Create(nil); - tmrResetLookup.Interval := 500; - tmrResetLookup.Enabled := False; - tmrResetLookup.OnTimer := tmrResetLookupTimer; - - if not Assigned(gridKeyboards) then Exit; - - GetSystemDirectory(buf, 260); - syspath := AppendSlash(buf); - str := TStringList.Create; - with TRegistryErrorControlled.Create do // I2890 - try - RootKey := HKEY_CURRENT_USER; - if OpenKeyReadOnly(SRegKey_KeymanEngine) then - begin - if ValueExists(SRegValue_UnderlyingLayout) then - FSelected := ReadString(SRegValue_UnderlyingLayout); - CloseKey; - end - else - FSelected := ''; - - RootKey := HKEY_LOCAL_MACHINE; - - n := 0; - - if OpenKeyReadOnly(SRegKey_KeyboardLayouts) then - begin - GetKeyNames(str); - - for i := str.Count - 1 downto 0 do - if OpenKeyReadOnly('\'+SRegKey_KeyboardLayouts + '\' + str[i]) then - if ValueExists(SRegValue_KeyboardKeymanInstall) or not ValueExists('Layout Text') then - str.Delete(i) - else - begin - s := ReadString('Layout File'); - if not FileExists(syspath+s) - then str[i] := ReadString('Layout Text') + '|'+s+'|' + str[i] + '|0' - else str[i] := ReadString('Layout Text') + '|'+s+'|' + str[i] + '|1'; - end; - - str.Sort; - - gridKeyboards.RowCount := str.Count + 1; - - gridKeyboards.Cells[0,0] := 'Default layout'; - gridKeyboards.Cells[3,0] := '1'; - for i := 0 to str.Count - 1 do - begin - s := str[i]; - gridKeyboards.Cells[0, i+1] := StrToken(s, '|'); - gridKeyboards.Cells[1, i+1] := StrToken(s, '|'); - gridKeyboards.Cells[2, i+1] := StrToken(s, '|'); - gridKeyboards.Cells[3, i+1] := StrToken(s, '|'); - if FSelected = gridKeyboards.Cells[2, i+1] then n := i+1; - end; - end; - - gridKeyboards.DefaultRowHeight := 16 * PixelsPerInch div 96; - gridKeyboards.ColWidths[3] := -1; - gridKeyboards.ColWidths[1] := -1; - gridKeyboards.ColWidths[2] := -1; - gridKeyboards.ColWidths[0] := gridKeyboards.ClientWidth; - - gridKeyboards.Row := n; - finally - str.Free; - Free; - end; -end; - -procedure TfrmUnderlyingLayout.FormDestroy(Sender: TObject); -begin - inherited; - FreeAndNil(tmrResetLookup); -end; - -procedure TfrmUnderlyingLayout.gridKeyboardsKeyPress(Sender: TObject; var Key: Char); -var - i, n: Integer; -begin - tmrResetLookup.Enabled := False; - if Key = #8 then - begin - if FLookupText <> '' then Delete(FLookupText, 1, 1); - n := Length(FLookupText); - for i := 1 to gridKeyboards.RowCount - 1 do - if Copy(gridKeyboards.Cells[0, i], 1, n) = FLookupText then - begin - gridKeyboards.Row := i; - tmrResetLookup.Enabled := True; - Exit; - end; - end - else - begin - n := Length(FLookupText) + 1; - for i := 1 to gridKeyboards.RowCount - 1 do - if UpperCase(Copy(gridKeyboards.Cells[0, i], 1, n)) = FLookupText + UpCase(Key) then - begin - FLookupText := FLookupText + UpCase(Key); - gridKeyboards.Row := i; - InvalidateCell(0, gridKeyboards.Row); - gridKeyboards.Update; - tmrResetLookup.Enabled := True; - Exit; - end; - end; - tmrResetLookup.Enabled := True; -end; - -procedure TfrmUnderlyingLayout.tmrResetLookupTimer(Sender: TObject); -begin - FLookupText := ''; - tmrResetLookup.Enabled := False; - if not Assigned(gridKeyboards) then Exit; - InvalidateCell(0, gridKeyboards.Row); - gridKeyboards.Update; -end; - -procedure TfrmUnderlyingLayout.gridKeyboardsClick(Sender: TObject); -var - e: Boolean; -begin - if Assigned(gridKeyboards) then e := gridKeyboards.Cells[3, gridKeyboards.Row] = '1' else e := False; - if Assigned(cmdOK) then cmdOK.Enabled := e; - if Assigned(lblKeyboardNotInstalled) then lblKeyboardNotInstalled.Visible := not e; -end; - -procedure TfrmUnderlyingLayout.gridKeyboardsDrawCell(Sender: TObject; - ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); -var - w: Integer; -begin - if not Assigned(gridKeyboards) then Exit; - with gridKeyboards.Canvas do - begin - Font := gridKeyboards.Font; - if gdFixed in State then - begin - Brush.Color := clBtnFace; - Font.Color := clBtnText; - end - else if gdSelected in State then - begin - Brush.Color := clHighlight; - Font.Color := clHighlightText; - end - else - begin - Brush.Color := clWindow; - Font.Color := clWindowText; - end; - - if gridKeyboards.Cells[3, ARow] = '0' then Font.Color := clGrayText; - - Brush.Style := bsSolid; - FillRect(Rect); - TextRect(Rect, Rect.Left+2, Rect.Top+2, gridKeyboards.Cells[ACol, ARow]); - if (FLookupText <> '') and (gdSelected in State) and (ACol = 0) then - begin - w := TextWidth(Copy(gridKeyboards.Cells[ACol, ARow], 1, Length(FLookupText))); - Pen.Color := clBlack; - Pen.Width := 2; - MoveTo(w+2, Rect.Top); - LineTo(w+2, Rect.Bottom-1); - end; - end; -end; - -procedure TfrmUnderlyingLayout.InvalidateCell(ACol, ARow: Integer); -var - r: TRect; -begin - if not Assigned(gridKeyboards) then Exit; - r := gridKeyboards.CellRect(ACol, ARow); - InvalidateRect(gridKeyboards.Handle, @r, False); -end; - -procedure TfrmUnderlyingLayout.gridKeyboardsDblClick(Sender: TObject); -begin - if not Assigned(cmdOK) then Exit; - if cmdOK.Enabled then cmdOKClick(cmdOK); -end; - -procedure TfrmUnderlyingLayout.cmdOKClick(Sender: TObject); -begin - if not Assigned(gridKeyboards) then Exit; - with TRegistryErrorControlled.Create do // I2890 - try - RootKey := HKEY_CURRENT_USER; - if OpenKey(SRegKey_KeymanEngine, True) then - begin - if gridKeyboards.Row > 0 then - WriteString(SRegValue_UnderlyingLayout, gridKeyboards.Cells[2, gridKeyboards.Row]) - else if ValueExists(SRegValue_UnderlyingLayout) then DeleteValue(SRegValue_UnderlyingLayout); - end; - finally - Free; - end; - - ModalResult := mrOk; -end; - -end. - diff --git a/windows/src/desktop/kmshell/menuframe_pro.pdn b/windows/src/desktop/kmshell/menuframe_pro.pdn deleted file mode 100644 index 0f29e42dba62b1909ac113540a488a2b7b523823..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6220 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