📄 sysoptmgr.pas
字号:
unit SysOptMgr;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms, Dialogs, Menus, HexEdit, OptionsMgr, Global;
const
//--系统设置:
SOptAutoShowOpen = 'AutoShowOpen'; //是否自动打开
SOptAddContextMenu = 'AddContextMenu'; //是否加入到资源管理器右键菜单
SOptAllowMultiInst = 'AllowMultiInst'; //是否允许多个程序实体
SOptDrawCharStyle = 'DrawCharStyle'; //字符的显示方式(TDrawCharStyle)
SOptSaveWinSize = 'SaveWinSize'; //是否保存窗体的大小和位置
SOptAutoShowPageHdr = 'AutoShowPageHdr'; //是否自动显示页面切换栏
SOptDblClickAct = 'DblClickAct'; //双击时的动作
SOptMinimizeMode = 'MinimizeMode'; //最小化方式
SOptEditFontName = 'EditFontName'; //编辑器字体(名称)
SOptEditFontSize = 'EditFontSize'; //编辑器字体(大小)
SOptEditFontStyle = 'EditFontStyle'; //编辑器字体(风格)
SOptEditFontColor = 'EditFontColor'; //编辑器字体(颜色)
SOptEditFontCharset = 'EditFontCharset'; //编辑器字体(字符集)
SOptAddrFColor = 'AddrFColor'; //地址区字符颜色
SOptAddrBColor = 'AddrBColor'; //地址区背景颜色
SOptHexFColor = 'HexFColor'; //十六进制区字符颜色
SOptHexBColor = 'HexBColor'; //十六进制区背景颜色
SOptChrFColor = 'ChrFColor'; //字符区字符颜色
SOptChrBColor = 'ChrBColor'; //字符区背景颜色
SOptBlockFColor = 'BlockFColor'; //块字符颜色
SOptBlockBColor = 'BlockBColor'; //块背景颜色
SOptCurItemFColor = 'CurItemFColor'; //光标字符颜色
SOptCurItemBColor = 'CurItemBColor'; //光标背景颜色
SOptPromptSave = 'PromptSave'; //是否在保存前提示
SOptCreateBak = 'CreateBak'; //是否创建备份文件
SOptMaxUndo = 'MaxUndo'; //UNDO的最大次数
SOptShowDataInsp = 'ShowDataInsp'; //是否自动显示数据浏览器
SOptShowU8Data = 'ShowU8Data'; //是否显示 无符号8位 数据
SOptShowS8Data = 'ShowS8Data'; //是否显示 有符号8位 数据
SOptShowU16Data = 'ShowU16Data'; //是否显示 无符号16位 数据
SOptShowS16Data = 'ShowS16Data'; //是否显示 有符号16位 数据
SOptShowU32Data = 'ShowU32Data'; //是否显示 无符号32位 数据
SOptShowS32Data = 'ShowS32Data'; //是否显示 有符号32位 数据
SOptShowS64Data = 'ShowS64Data'; //是否显示 有符号64位 数据
SOptShowSingleData = 'ShowSingleData'; //是否显示 单精度浮点 数据
SOptShowDoubleData = 'ShowDoubleData'; //是否显示 双精度浮点 数据
SOptShowReal48Data = 'ShowReal48Data'; //是否显示 Real48浮点 数据
SOptShowBinaryData = 'ShowBinaryData'; //是否显示 二进制 数据
SOptDefDataInspPos = 'DefDataInspPos'; //数据浏览器的缺省位置
SOptTempPath = 'TempPath'; //临时文件路径
SOptDefEditor = 'DefEditor'; //缺省文本编辑器
SOptShowToolbar = 'ShowToolbar'; //是否显示工具条
SOptShowStatusBar = 'ShowStatusBar'; //是否显示状态栏
SOptStayOnTop = 'StayOnTop'; //是否总时保持在最前面
SOptStatusLengthNumBase = 'StatusLengthNumBase'; //状态栏中Length的进制
SOptStatusOffsetNumBase = 'StatusOffsetNumBase'; //状态栏中Offset的进制
SOptStatusBlockInfoNumBase = 'StatusBlockInfoNumBase'; //状态栏中BlockInfo的进制
SOptStatusCurValueType = 'StatusCurValueType'; //状态栏中当前值的类型
SOptWinLeft = 'WinLeft'; //主窗体Left
SOptWinTop = 'WinTop'; //主窗体Top
SOptWinRight = 'WinRight'; //主窗体Right
SOptWinBottom = 'WinBottom'; //主窗体Bottom
type
{ TSysOptionsMgr }
TSysOptionsMgr = class(TOptionsManager)
protected
procedure InitDefault; override;
public
constructor Create;
destructor Destroy; override;
end;
var
OptMgr: TSysOptionsMgr;
implementation
uses Misc, DataInspFrm;
{ TSysOptionsMgr }
constructor TSysOptionsMgr.Create;
begin
inherited;
AccessorClass := TIniOptAccessor;
FileName := ExtractFilePath(Application.ExeName) + OptionsFileName;
end;
destructor TSysOptionsMgr.Destroy;
begin
inherited;
end;
procedure TSysOptionsMgr.InitDefault;
begin
inherited;
Clear;
Add(SOptAutoShowOpen, False);
Add(SOptAddContextMenu, True);
Add(SOptAllowMultiInst, False);
Add(SOptDrawCharStyle, dcDblByteChar);
Add(SOptSaveWinSize, False);
Add(SOptAutoShowPageHdr, True);
Add(SOptDblClickAct, 0);
Add(SOptMinimizeMode, 0);
Add(SOptEditFontName, 'Fixedsys');
Add(SOptEditFontSize, 12);
Add(SOptEditFontStyle, 0);
Add(SOptEditFontColor, clWindowText);
Add(SOptEditFontCharset, GB2312_CHARSET);
Add(SOptAddrFColor, clBlue);
Add(SOptAddrBColor, clWhite);
Add(SOptHexFColor, clBlack);
Add(SOptHexBColor, clWhite);
Add(SOptChrFColor, clBlack);
Add(SOptChrBColor, clWhite);
Add(SOptBlockFColor, clWhite);
Add(SOptBlockBColor, clNavy);
Add(SOptCurItemFColor, clWhite);
Add(SOptCurItemBColor, clBlue);
Add(SOptPromptSave, False);
Add(SOptCreateBak, True);
Add(SOptMaxUndo, 20);
Add(SOptShowDataInsp, False);
Add(SOptShowU8Data, True);
Add(SOptShowS8Data, True);
Add(SOptShowU16Data, True);
Add(SOptShowS16Data, True);
Add(SOptShowU32Data, True);
Add(SOptShowS32Data, True);
Add(SOptShowS64Data, True);
Add(SOptShowSingleData, True);
Add(SOptShowDoubleData, True);
Add(SOptShowReal48Data, True);
Add(SOptShowBinaryData, True);
Add(SOptDefDataInspPos, dpRightBottom);
Add(SOptTempPath, GetWinTempDir);
Add(SOptDefEditor, DefaultTextEditor);
Add(SOptShowToolbar, True);
Add(SOptShowStatusBar, True);
Add(SOptStayOnTop, False);
Add(SOptStatusLengthNumBase, raDec);
Add(SOptStatusOffsetNumBase, raDec);
Add(SOptStatusBlockInfoNumBase, raDec);
Add(SOptStatusCurValueType, vt32s);
Add(SOptWinLeft, 0); //全为0表示未初始化
Add(SOptWinTop, 0);
Add(SOptWinRight, 0);
Add(SOptWinBottom, 0);
end;
initialization
OptMgr := TSysOptionsMgr.Create;
finalization
OptMgr.Free;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -