Added: details view and Clear button to Observer.MonitorForm
This commit is contained in:
parent
041dfc71d6
commit
b96c2a9d72
BIN
Resources/Clear.bmp
Normal file
BIN
Resources/Clear.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
BIN
Resources/Save.bmp
Normal file
BIN
Resources/Save.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
@ -77,6 +77,9 @@ begin
|
|||||||
SetLogResourceString(@LogMonitorFormColumnTime, 'Tijd');
|
SetLogResourceString(@LogMonitorFormColumnTime, 'Tijd');
|
||||||
SetLogResourceString(@LogMonitorFormColumnMessage, 'Melding');
|
SetLogResourceString(@LogMonitorFormColumnMessage, 'Melding');
|
||||||
|
|
||||||
|
SetLogResourceString(@LogMonitorFormButtonClear, 'Wissen');
|
||||||
|
SetLogResourceString(@LogMonitorFormButtonSaveDetails, 'Opslaan');
|
||||||
|
|
||||||
FLog := TX2Log.Create;
|
FLog := TX2Log.Create;
|
||||||
FLog.SetExceptionStrategy(TX2LogmadExceptExceptionStrategy.Create);
|
FLog.SetExceptionStrategy(TX2LogmadExceptExceptionStrategy.Create);
|
||||||
|
|
||||||
|
@ -38,6 +38,10 @@ resourcestring
|
|||||||
LogMonitorFormColumnTime = 'Time';
|
LogMonitorFormColumnTime = 'Time';
|
||||||
LogMonitorFormColumnMessage = 'Message';
|
LogMonitorFormColumnMessage = 'Message';
|
||||||
|
|
||||||
|
{ Caption of the toolbar buttons }
|
||||||
|
LogMonitorFormButtonClear = 'Clear';
|
||||||
|
LogMonitorFormButtonSaveDetails = 'Save';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function GetLogLevelText(ALogLevel: TX2LogLevel): string;
|
function GetLogLevelText(ALogLevel: TX2LogLevel): string;
|
||||||
|
@ -3,7 +3,7 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
|
|||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'Live Log'
|
Caption = 'Live Log'
|
||||||
ClientHeight = 519
|
ClientHeight = 519
|
||||||
ClientWidth = 658
|
ClientWidth = 990
|
||||||
Color = clBtnFace
|
Color = clBtnFace
|
||||||
Font.Charset = DEFAULT_CHARSET
|
Font.Charset = DEFAULT_CHARSET
|
||||||
Font.Color = clWindowText
|
Font.Color = clWindowText
|
||||||
@ -11,53 +11,192 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
|
|||||||
Font.Name = 'Tahoma'
|
Font.Name = 'Tahoma'
|
||||||
Font.Style = []
|
Font.Style = []
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
|
Position = poScreenCenter
|
||||||
OnClose = FormClose
|
OnClose = FormClose
|
||||||
OnShow = FormShow
|
OnShow = FormShow
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
object vstLog: TVirtualStringTree
|
object splDetails: TSplitter
|
||||||
|
Left = 634
|
||||||
|
Top = 0
|
||||||
|
Width = 6
|
||||||
|
Height = 500
|
||||||
|
Align = alRight
|
||||||
|
ResizeStyle = rsUpdate
|
||||||
|
ExplicitLeft = 637
|
||||||
|
ExplicitHeight = 519
|
||||||
|
end
|
||||||
|
object pnlDetails: TPanel
|
||||||
|
Left = 640
|
||||||
|
Top = 0
|
||||||
|
Width = 350
|
||||||
|
Height = 500
|
||||||
|
Align = alRight
|
||||||
|
BevelOuter = bvNone
|
||||||
|
TabOrder = 0
|
||||||
|
ExplicitHeight = 519
|
||||||
|
object tbDetails: TToolBar
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 350
|
||||||
|
Height = 22
|
||||||
|
AutoSize = True
|
||||||
|
ButtonWidth = 51
|
||||||
|
Images = ilsLog
|
||||||
|
List = True
|
||||||
|
ShowCaptions = True
|
||||||
|
TabOrder = 0
|
||||||
|
object tbSaveDetails: TToolButton
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = 'Save'
|
||||||
|
Enabled = False
|
||||||
|
ImageIndex = 5
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pnlBorder: TPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 22
|
||||||
|
Width = 350
|
||||||
|
Height = 478
|
||||||
|
Align = alClient
|
||||||
|
BevelKind = bkFlat
|
||||||
|
BevelOuter = bvNone
|
||||||
|
TabOrder = 1
|
||||||
|
ExplicitLeft = 80
|
||||||
|
ExplicitTop = 240
|
||||||
|
ExplicitWidth = 185
|
||||||
|
ExplicitHeight = 41
|
||||||
|
object HeaderControl1: THeaderControl
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 346
|
||||||
|
Height = 17
|
||||||
|
Sections = <
|
||||||
|
item
|
||||||
|
AutoSize = True
|
||||||
|
ImageIndex = -1
|
||||||
|
Text = 'Details'
|
||||||
|
Width = 346
|
||||||
|
end>
|
||||||
|
NoSizing = True
|
||||||
|
ExplicitTop = 29
|
||||||
|
end
|
||||||
|
object reDetails: TRichEdit
|
||||||
|
Left = 0
|
||||||
|
Top = 17
|
||||||
|
Width = 346
|
||||||
|
Height = 457
|
||||||
|
Align = alClient
|
||||||
|
BorderStyle = bsNone
|
||||||
|
Font.Charset = ANSI_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -11
|
||||||
|
Font.Name = 'Courier New'
|
||||||
|
Font.Style = []
|
||||||
|
ParentFont = False
|
||||||
|
PlainText = True
|
||||||
|
ReadOnly = True
|
||||||
|
ScrollBars = ssBoth
|
||||||
|
TabOrder = 1
|
||||||
|
ExplicitTop = 29
|
||||||
|
ExplicitHeight = 486
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pnlLog: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 658
|
Width = 634
|
||||||
Height = 519
|
Height = 500
|
||||||
Align = alClient
|
Align = alClient
|
||||||
Header.AutoSizeIndex = 2
|
BevelOuter = bvNone
|
||||||
Header.Font.Charset = DEFAULT_CHARSET
|
TabOrder = 1
|
||||||
Header.Font.Color = clWindowText
|
ExplicitLeft = 408
|
||||||
Header.Font.Height = -11
|
ExplicitTop = 256
|
||||||
Header.Font.Name = 'Tahoma'
|
ExplicitWidth = 185
|
||||||
Header.Font.Style = []
|
ExplicitHeight = 41
|
||||||
Header.Options = [hoAutoResize, hoColumnResize, hoDrag, hoShowSortGlyphs, hoVisible, hoHeaderClickAutoSort]
|
object vstLog: TVirtualStringTree
|
||||||
Images = ilsLog
|
Left = 0
|
||||||
TabOrder = 0
|
Top = 22
|
||||||
TreeOptions.PaintOptions = [toHideFocusRect, toShowButtons, toShowDropmark, toThemeAware]
|
Width = 634
|
||||||
TreeOptions.SelectionOptions = [toFullRowSelect]
|
Height = 478
|
||||||
OnFreeNode = vstLogFreeNode
|
Align = alClient
|
||||||
OnGetText = vstLogGetText
|
Header.AutoSizeIndex = 2
|
||||||
OnGetImageIndex = vstLogGetImageIndex
|
Header.Font.Charset = DEFAULT_CHARSET
|
||||||
OnInitNode = vstLogInitNode
|
Header.Font.Color = clWindowText
|
||||||
Columns = <
|
Header.Font.Height = -11
|
||||||
item
|
Header.Font.Name = 'Tahoma'
|
||||||
Options = [coAllowClick, coDraggable, coEnabled, coParentBidiMode, coParentColor, coShowDropMark, coVisible, coAllowFocus]
|
Header.Font.Style = []
|
||||||
Position = 0
|
Header.Options = [hoAutoResize, hoColumnResize, hoDrag, hoShowSortGlyphs, hoVisible, hoHeaderClickAutoSort]
|
||||||
Width = 24
|
Images = ilsLog
|
||||||
|
TabOrder = 0
|
||||||
|
TreeOptions.PaintOptions = [toHideFocusRect, toShowButtons, toShowDropmark, toThemeAware]
|
||||||
|
TreeOptions.SelectionOptions = [toFullRowSelect]
|
||||||
|
OnFocusChanged = vstLogFocusChanged
|
||||||
|
OnFreeNode = vstLogFreeNode
|
||||||
|
OnGetText = vstLogGetText
|
||||||
|
OnGetImageIndex = vstLogGetImageIndex
|
||||||
|
OnInitNode = vstLogInitNode
|
||||||
|
ExplicitTop = 0
|
||||||
|
ExplicitWidth = 637
|
||||||
|
ExplicitHeight = 519
|
||||||
|
Columns = <
|
||||||
|
item
|
||||||
|
Options = [coAllowClick, coDraggable, coEnabled, coParentBidiMode, coParentColor, coShowDropMark, coVisible, coAllowFocus]
|
||||||
|
Position = 0
|
||||||
|
Width = 24
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Position = 1
|
||||||
|
Width = 150
|
||||||
|
WideText = 'Time'
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Position = 2
|
||||||
|
Width = 456
|
||||||
|
WideText = 'Message'
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
object tbLog: TToolBar
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 634
|
||||||
|
Height = 22
|
||||||
|
AutoSize = True
|
||||||
|
ButtonWidth = 52
|
||||||
|
Caption = 'tbLog'
|
||||||
|
Images = ilsLog
|
||||||
|
List = True
|
||||||
|
ShowCaptions = True
|
||||||
|
TabOrder = 1
|
||||||
|
ExplicitWidth = 637
|
||||||
|
object tbClear: TToolButton
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
AutoSize = True
|
||||||
|
Caption = 'Clear'
|
||||||
|
Enabled = False
|
||||||
|
ImageIndex = 6
|
||||||
|
OnClick = tbClearClick
|
||||||
end
|
end
|
||||||
item
|
end
|
||||||
Position = 1
|
end
|
||||||
Width = 150
|
object sbStatus: TStatusBar
|
||||||
WideText = 'Time'
|
Left = 0
|
||||||
end
|
Top = 500
|
||||||
item
|
Width = 990
|
||||||
Position = 2
|
Height = 19
|
||||||
Width = 480
|
Panels = <>
|
||||||
WideText = 'Message'
|
ExplicitLeft = 504
|
||||||
end>
|
ExplicitTop = 272
|
||||||
|
ExplicitWidth = 0
|
||||||
end
|
end
|
||||||
object ilsLog: TImageList
|
object ilsLog: TImageList
|
||||||
Left = 584
|
Left = 584
|
||||||
Top = 48
|
Top = 48
|
||||||
Bitmap = {
|
Bitmap = {
|
||||||
494C010105004000480010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
|
494C010107004000540010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
|
||||||
0000000000003600000028000000400000002000000001002000000000000020
|
0000000000003600000028000000400000002000000001002000000000000020
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
@ -69,115 +208,115 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
|
|||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
00000000000000000000000000000000000000000000000000009B7C6C009B7C
|
00000000000000000000000000000000000000000000000000009B7C6C009B7C
|
||||||
6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C
|
6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C6C009B7C
|
||||||
6C009B7C6C009B7C6C0000000000000000000000000000000000000000000000
|
6C009B7C6C009B7C6C0000000000000000000000000000000000AF704E00A747
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1100895E4600A7ABAB00B9B2AB00C8C7C300C9C9CC00AFAFAF0099A2A8008238
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0D00A7471100A34B2100A47763000000000000000000000000002427AE00161C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
AC005A5AA90000000000000000000000000000000000000000005353A9004F4F
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
A200000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
00000000000000000000000000000000000000000000000000009B776600FFFF
|
00000000000000000000000000000000000000000000000000009B776600FFFF
|
||||||
FF00FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900F9EF
|
FF00FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900FAF4E900F9EF
|
||||||
E000F9EFE0009779670000000000000000000000000000000000000000000000
|
E000F9EFE00097796700000000000000000000000000BC764500BE631700CD79
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
27009E877000B9875900CE700D00DCAF7A00FEFFFF00FEFFFF00D9E2EA00AD70
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
2400DD943500ECBE7500A4450E0000000000000000004E4EAB001844F600194D
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F8001031D2002427AE000000000000000000000000004E4EAB000928D7000928
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
D7000313B3004E4EAB0000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000A27F6F00FFFF
|
0000000000000000000000000000000000000000000000000000A27F6F00FFFF
|
||||||
FF00DDC1B400DDC1B400DDC1B400DDC1B400DDBEAD00DDBEAD00DCBAA500DCBA
|
FF00DDC1B400DDC1B400DDC1B400DDC1B400DDBEAD00DDBEAD00DCBAA500DCBA
|
||||||
A500F9EFE0009779670000000000000000000000000000000000000000000000
|
A500F9EFE00097796700000000000000000000000000C9680D00C0702800C36C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1E00A7876B00AE7C5A00BA580900C69A6C00D9DFE500FEFFFF00F4F9FC00A363
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1D00D5872D00E5AF6900A4450E0000000000000000002022B1002451F9001F52
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
FF00194DF8001744E8001017AF00000000004747AC000928D7001344F9001041
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F6000E3EF600041ABC006F6FAA00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000A3807000FFFF
|
0000000000000000000000000000000000000000000000000000A3807000FFFF
|
||||||
FF00DBC4BD00DBC4BD00DDC1B400DDC1B400DDBEAD00DDBEAD00DCBAA500DCBA
|
FF00DBC4BD00DBC4BD00DDC1B400DDC1B400DDBEAD00DDBEAD00DCBAA500DCBA
|
||||||
A500FAF4E9009B7C6C0000000000000000000000000000000000000000000000
|
A500FAF4E9009B7C6C00000000000000000000000000C9680D00BB682300BF66
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1900B4906E00B37C6000AF490000B5875E00BFC6CD00D5DEE400FEFFFF00A363
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1D00D5872D00E5AF6900A4450E000000000000000000000000001832DB00295A
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
FF002451F9002451F9001A4AF200060EAF000F30DD00164AFE001344F9001041
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F6000E3EF6000E3EF6002C2CA200000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000A9877800FFFF
|
0000000000000000000000000000000000000000000000000000A9877800FFFF
|
||||||
FF00DBC6C200DBC4BD00DBC4BD00DDC1B400DBBFB400DCBAA500DDBEAD00DDBE
|
FF00DBC6C200DBC4BD00DBC4BD00DDC1B400DBBFB400DCBAA500DDBEAD00DDBE
|
||||||
AD00FAF4E9009779670000000000000000000000000000000000000000000000
|
AD00FAF4E90097796700000000000000000000000000C9680D00BF661900BF66
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1900B07D5800C1BFBD00B0ACA80098918B009A8E8400A3978A00AEA79F009058
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1F00A7672300DA954200A4450E0000000000000000007777B3001832DB003A6F
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
FF00295AFF00295AFF00295AFF002451F900194DF800194DF8001344F9001344
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F9000E3EF600161CAC0000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000AB897A00FFFF
|
0000000000000000000000000000000000000000000000000000AB897A00FFFF
|
||||||
FF00DBC6C200DBC6C200DBC4BD00DBC4BD00DBBFB400DCBAA500DDBEAD00DCBA
|
FF00DBC6C200DBC6C200DBC4BD00DBC4BD00DBBFB400DCBAA500DDBEAD00DCBA
|
||||||
A500FAF4E9009B7C6C0000000000000000000000000000000000000000000000
|
A500FAF4E9009B7C6C00000000000000000000000000C9670A00B55D1B00B55D
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
1B00BA580900BA580900BA580900C2620E00C5671000C8691300C8691300CD79
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
2700D07F2A00D3893200A4450E000000000000000000000000006B6BB6001A25
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
C5003A6FFF003668FF00295AFF00295AFF002451F900194DF8001F52FF00123D
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
ED002427AE000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000AB897A00FFFF
|
0000000000000000000000000000000000000000000000000000AB897A00FFFF
|
||||||
FF00DBC6C200DBC4BD00DBC4BD00DBC4BD00DDC1B400DBBFB400DCBAA500DDBE
|
FF00DBC6C200DBC4BD00DBC4BD00DBC4BD00DDC1B400DBBFB400DCBAA500DDBE
|
||||||
AD00FAF4E9009B7C6C0000000000000000000000000000000000000000000000
|
AD00FAF4E9009B7C6C00000000000000000000000000C9680D00B0551400B169
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
3300AF714200AF714200AF714200B0764200B0764200B0764200B0764200B076
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
4200BD804100D5872D00A4450E00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
00002F2FB3002E4EE7003668FF00295AFF00295AFF002451F900123DED002C2C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
A200000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FCF9F500FCF9F500FAF4
|
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FCF9F500FCF9F500FAF4
|
||||||
E900FAF4E9009B7C6C0000000000000000000000000000000000000000000000
|
E900FAF4E9009B7C6C00000000000000000000000000C2620E00AF490000B39D
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8900E6F2FB00E4EDF300E4EDF300E4EDF300E1E9EF00D9E2EA00DFE3E600D9E2
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
EA00AD9A8A00D07F2600A4450E00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
000000000000253FDF003A6FFF003668FF00295AFF00295AFF001B46EA002427
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
AE00000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000AF8F8000FFFF
|
0000000000000000000000000000000000000000000000000000AF8F8000FFFF
|
||||||
FF00DFCDCB00DFCDCB00DBC6C200DBC4BD00DBC4BD00DDC1B400DDBEAD00DDBE
|
FF00DFCDCB00DFCDCB00DBC6C200DBC4BD00DBC4BD00DDC1B400DDBEAD00DDBE
|
||||||
AD00FCF9F5009B7C6C0000000000000000000000000000000000000000000000
|
AD00FCF9F5009B7C6C00000000000000000000000000C9670A00A8430300B899
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8400FEFFFF00D4D3D200BEBDBC00C1BFBD00C1BFBD00C2C1C000C9C9CC00DFE3
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
E600B19B8500CD792700A4450E00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
00002B2CC0004B7CFF004170FF003A6FFF003A6FFF00295AFF00295AFF001031
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
D2004A4AB2000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FCF9F500FAF4
|
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FCF9F500FAF4
|
||||||
E900F0E8E0009B7C6C0000000000000000000000000000000000000000000000
|
E900F0E8E0009B7C6C00000000000000000000000000C2620E00A23C0000B899
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8400FEFFFF00E4EDF300EEEEEE00EEEEEE00EEEEEE00E5E4E300DFE3E600E5E4
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
E300AD9A8A00CD792700A4450E00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000253FDF00527CFA004170FF003464FF000C13C1004170FF00295AFF002451
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F9000B1DC2000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
0000000000000000000000000000000000000000000000000000B1908000FFFF
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500A3807000A380
|
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500A3807000A380
|
||||||
7000A3807000A380700000000000000000000000000000000000000000000000
|
7000A3807000A3807000000000000000000000000000C2620E00A23C0000BC9C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8A00FEFFFF00DDDCDB00C1BFBD00C2C1C000C2C1C000C1BFBD00C9C9CC00E1E9
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
EF00B19B8500CD771F00A4450E00000000000000000000000000000000004F4F
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
BD00527CFA005081FF004B7CFF001A25C500000000001A25C5003A6FFF002451
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F9001A4AF2001419B10000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B8988800FFFF
|
0000000000000000000000000000000000000000000000000000B8988800FFFF
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FFFFFF00A3807000F5E2
|
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FCF9F500FFFFFF00A3807000F5E2
|
||||||
D900B08E7D00AB9E980000000000000000000000000000000000000000000000
|
D900B08E7D00AB9E9800000000000000000000000000C2620E009A310000BC9C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8A00FEFFFF00FEFFFF00EEEEEE00EEEEEE00EEEEEE00E5E4E300E5E4E300EEEE
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
EE00B39D8900C2701D00A9480D0000000000000000000000000000000000252D
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
D6006A9CFF005788FF002B46E7006B6BB60000000000000000001A25C500295A
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
FF002451F9001439DD004747AC00000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B8988800FFFF
|
0000000000000000000000000000000000000000000000000000B8988800FFFF
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A3807000B08E
|
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A3807000B08E
|
||||||
7D00AB9E98000000000000000000000000000000000000000000000000000000
|
7D00AB9E980000000000000000000000000000000000C562060093280000BC9C
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8A00FEFFFF00E5E4E300D1CFCC00D1CFCC00C9C9CC00D1CFCC00D4D3D200E4ED
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
F300B9A38C008A4F1400B0551400000000000000000000000000000000004B4B
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
C8003951E2005081FF002B2CC000000000000000000000000000000000001628
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
D300265AFF000F2EE3002022B100000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000B8988800B898
|
0000000000000000000000000000000000000000000000000000B8988800B898
|
||||||
8800B1908000B1908000B08E7D00B08E7D00AC887700AC887700A3807000AB9E
|
8800B1908000B1908000B08E7D00B08E7D00AC887700AC887700A3807000AB9E
|
||||||
9800000000000000000000000000000000000000000000000000000000000000
|
98000000000000000000000000000000000000000000BF8D5800C0540200C8A4
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
8300D4D3D200D4D3D200D4D3D200D4D3D200C9C9CC00C8C7C300C1BFBD00BEBD
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
BC00B1947B00C0540200B07D5800000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000003E3EB90000000000000000000000000000000000000000006B6B
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
B6002F2FB3000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
@ -317,11 +456,11 @@ object X2LogObserverMonitorForm: TX2LogObserverMonitorForm
|
|||||||
0000000000000000000000000000000000000000000000000000000000000000
|
0000000000000000000000000000000000000000000000000000000000000000
|
||||||
000000000000000000000000000000000000424D3E000000000000003E000000
|
000000000000000000000000000000000000424D3E000000000000003E000000
|
||||||
2800000040000000200000000100010000000000000100000000000000000000
|
2800000040000000200000000100010000000000000100000000000000000000
|
||||||
000000000000000000000000FFFFFF00FFFF000000000000C003000000000000
|
000000000000000000000000FFFFFF00FFFFFFFFFFFF0000C003C001C7CF0000
|
||||||
C003000000000000C003000000000000C003000000000000C003000000000000
|
C003800183830000C003800181010000C0038001C0010000C003800180030000
|
||||||
C003000000000000C003000000000000C003000000000000C003000000000000
|
C0038001C0070000C0038001F00F0000C0038001F80F0000C0038001F0070000
|
||||||
C003000000000000C003000000000000C003000000000000C007000000000000
|
C0038001F0070000C0038001E0830000C0038001E0C10000C0078001E1E10000
|
||||||
C00F000000000000FFFF000000000000FFFFFFFFFFFFFFFFF81FF81FFFFF8001
|
C00F8001FBE70000FFFFFFFFFFFF0000FFFFFFFFFFFFFFFFF81FF81FFFFF8001
|
||||||
F00FF00F80038001E007E00780018001C003C003800180018001800180018001
|
F00FF00F80038001E007E00780018001C003C003800180018001800180018001
|
||||||
80018001C003800180018001E003800180018001E007800180018001F00F8001
|
80018001C003800180018001E003800180018001E007800180018001F00F8001
|
||||||
80018001F00F8001C003C003F81F8001E007C007F81F8001F00FE00FFC3F8001
|
80018001F00F8001C003C003F81F8001E007C007F81F8001F00FE00FFC3F8001
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
unit X2Log.Observer.MonitorForm;
|
unit X2Log.Observer.MonitorForm;
|
||||||
|
|
||||||
|
// #ToDo3 -oMvR: 20-5-2014: pause button
|
||||||
|
|
||||||
interface
|
interface
|
||||||
uses
|
uses
|
||||||
System.Classes,
|
System.Classes,
|
||||||
@ -10,7 +12,7 @@ uses
|
|||||||
VirtualTrees,
|
VirtualTrees,
|
||||||
Winapi.Messages,
|
Winapi.Messages,
|
||||||
|
|
||||||
X2Log.Intf;
|
X2Log.Intf, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.ToolWin;
|
||||||
|
|
||||||
|
|
||||||
const
|
const
|
||||||
@ -21,6 +23,17 @@ type
|
|||||||
TX2LogObserverMonitorForm = class(TForm, IX2LogObserver)
|
TX2LogObserverMonitorForm = class(TForm, IX2LogObserver)
|
||||||
vstLog: TVirtualStringTree;
|
vstLog: TVirtualStringTree;
|
||||||
ilsLog: TImageList;
|
ilsLog: TImageList;
|
||||||
|
splDetails: TSplitter;
|
||||||
|
HeaderControl1: THeaderControl;
|
||||||
|
pnlDetails: TPanel;
|
||||||
|
reDetails: TRichEdit;
|
||||||
|
pnlLog: TPanel;
|
||||||
|
tbLog: TToolBar;
|
||||||
|
tbDetails: TToolBar;
|
||||||
|
pnlBorder: TPanel;
|
||||||
|
tbClear: TToolButton;
|
||||||
|
tbSaveDetails: TToolButton;
|
||||||
|
sbStatus: TStatusBar;
|
||||||
|
|
||||||
procedure FormShow(Sender: TObject);
|
procedure FormShow(Sender: TObject);
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
@ -28,6 +41,8 @@ type
|
|||||||
procedure vstLogFreeNode(Sender: TBaseVirtualTree; Node: PVirtualNode);
|
procedure vstLogFreeNode(Sender: TBaseVirtualTree; Node: PVirtualNode);
|
||||||
procedure vstLogGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: string);
|
procedure vstLogGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: string);
|
||||||
procedure vstLogGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer);
|
procedure vstLogGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer);
|
||||||
|
procedure vstLogFocusChanged(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex);
|
||||||
|
procedure tbClearClick(Sender: TObject);
|
||||||
private class var
|
private class var
|
||||||
FInstances: TDictionary<IX2Log,TX2LogObserverMonitorForm>;
|
FInstances: TDictionary<IX2Log,TX2LogObserverMonitorForm>;
|
||||||
private
|
private
|
||||||
@ -195,6 +210,9 @@ begin
|
|||||||
vstLog.NodeDataSize := SizeOf(TLogEntryNodeData);
|
vstLog.NodeDataSize := SizeOf(TLogEntryNodeData);
|
||||||
vstLog.Header.Columns[ColumnTime].Text := GetLogResourceString(@LogMonitorFormColumnTime);
|
vstLog.Header.Columns[ColumnTime].Text := GetLogResourceString(@LogMonitorFormColumnTime);
|
||||||
vstLog.Header.Columns[ColumnMessage].Text := GetLogResourceString(@LogMonitorFormColumnMessage);
|
vstLog.Header.Columns[ColumnMessage].Text := GetLogResourceString(@LogMonitorFormColumnMessage);
|
||||||
|
|
||||||
|
tbClear.Caption := GetLogResourceString(@LogMonitorFormButtonClear);
|
||||||
|
tbSaveDetails.Caption := GetLogResourceString(@LogMonitorFormButtonSaveDetails);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -248,9 +266,15 @@ var
|
|||||||
nodeData: PLogEntryNodeData;
|
nodeData: PLogEntryNodeData;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
|
// #ToDo1 -oMvR: 20-5-2014: thread safety; Log is not guaranteed to be called in the main thread!
|
||||||
|
if GetCurrentThreadId <> MainThreadID then
|
||||||
|
exit;
|
||||||
|
|
||||||
node := vstLog.AddChild(nil);
|
node := vstLog.AddChild(nil);
|
||||||
nodeData := vstLog.GetNodeData(node);
|
nodeData := vstLog.GetNodeData(node);
|
||||||
nodeData^.Initialize(ALevel, AMessage, ADetails);
|
nodeData^.Initialize(ALevel, AMessage, ADetails);
|
||||||
|
|
||||||
|
tbClear.Enabled := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -334,4 +358,25 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TX2LogObserverMonitorForm.vstLogFocusChanged(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex);
|
||||||
|
var
|
||||||
|
nodeData: PLogEntryNodeData;
|
||||||
|
|
||||||
|
begin
|
||||||
|
if Assigned(Node) then
|
||||||
|
begin
|
||||||
|
nodeData := Sender.GetNodeData(Node);
|
||||||
|
reDetails.Text := nodeData^.Details;
|
||||||
|
end else
|
||||||
|
reDetails.Text := '';
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TX2LogObserverMonitorForm.tbClearClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
vstLog.Clear;
|
||||||
|
tbClear.Enabled := False;
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
Loading…
Reference in New Issue
Block a user