From f5b60972c970fa6bbe85473d6daf784317cf0355 Mon Sep 17 00:00:00 2001 From: martin Date: Wed, 19 Jun 2019 15:26:19 +0000 Subject: [PATCH] LazDebugger: add operators for log-enable to main unit too. git-svn-id: trunk@61426 - --- components/lazutils/LazLoggerImpl.inc | 58 ++++++++++++++++++++++++++ components/lazutils/LazLoggerIntf.inc | 6 +++ components/lazutils/lazloggerbase.pas | 43 ------------------- components/lazutils/lazloggerdummy.pas | 25 ----------- 4 files changed, 64 insertions(+), 68 deletions(-) diff --git a/components/lazutils/LazLoggerImpl.inc b/components/lazutils/LazLoggerImpl.inc index 200ea0392d..266e588b1e 100644 --- a/components/lazutils/LazLoggerImpl.inc +++ b/components/lazutils/LazLoggerImpl.inc @@ -615,3 +615,61 @@ begin {$ENDIF} end; +{$IFDEF USED_BY_LAZLOGGER_DUMMY} + operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; + begin + Result := Default(TLazLoggerLogEnabled); + end; + + operator := (g: Boolean): TLazLoggerLogEnabled; + begin + Result := Default(TLazLoggerLogEnabled); + end; + + operator and(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; + begin + Result := Default(TLazLoggerLogEnabled); + end; + + operator or(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; + begin + Result := Default(TLazLoggerLogEnabled); + end; +{$ELSE} + operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; + begin + Result.Enabled := (g = nil) or (g^.Enabled); + Result.Group := g; + end; + + operator := (g: Boolean): TLazLoggerLogEnabled; + begin + Result.Enabled := g; + Result.Group := nil; + end; + + operator and(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; + begin + Result.Enabled := g1.Enabled and g2.Enabled; + if (g1.Group = nil) and g1.Enabled then + Result.Group := g2.Group + else + if (g2.Group = nil) and g2.Enabled then + Result.Group := g1.Group + else + Result.Group := nil; + end; + + operator or(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; + begin + Result.Enabled := g1.Enabled or g2.Enabled; + if (g1.Group = nil) then + Result.Group := g2.Group + else + if (g2.Group = nil) then + Result.Group := g1.Group + else + Result.Group := nil; + end; +{$ENDIF} + diff --git a/components/lazutils/LazLoggerIntf.inc b/components/lazutils/LazLoggerIntf.inc index 50a17b8b65..0361901770 100644 --- a/components/lazutils/LazLoggerIntf.inc +++ b/components/lazutils/LazLoggerIntf.inc @@ -114,3 +114,9 @@ function dbgMemRange(P: Pointer; Count: integer; Width: integer = 0): string; ov function dbgMemStream(MemStream: TCustomMemoryStream; Count: integer): string; overload; procedure DumpExceptionBackTrace; + +operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; +operator := (g: Boolean): TLazLoggerLogEnabled; +operator and (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; +operator or (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; + diff --git a/components/lazutils/lazloggerbase.pas b/components/lazutils/lazloggerbase.pas index 02dfca1cf0..1dc0c882c1 100644 --- a/components/lazutils/lazloggerbase.pas +++ b/components/lazutils/lazloggerbase.pas @@ -46,13 +46,6 @@ type Group: PLazLoggerLogGroup; // if only one group / remember nestlevel count end; -operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; -operator := (g: Boolean): TLazLoggerLogEnabled; -operator and (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -operator or (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; - -type - TLazLoggerWriteTarget = ( lwtNone, lwtStdOut, lwtStdErr, @@ -328,42 +321,6 @@ var // Using base TRefCountedObject, so if none of the functions is used in the PrevLazLogger: TRefCountedObject = nil; TheLazLoggerGroups: TRefCountedObject = nil; -operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; -begin - Result.Enabled := (g = nil) or (g^.Enabled); - Result.Group := g; -end; - -operator := (g: Boolean): TLazLoggerLogEnabled; -begin - Result.Enabled := g; - Result.Group := nil; -end; - -operator and(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -begin - Result.Enabled := g1.Enabled and g2.Enabled; - if (g1.Group = nil) and g1.Enabled then - Result.Group := g2.Group - else - if (g2.Group = nil) and g2.Enabled then - Result.Group := g1.Group - else - Result.Group := nil; -end; - -operator or(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -begin - Result.Enabled := g1.Enabled or g2.Enabled; - if (g1.Group = nil) then - Result.Group := g2.Group - else - if (g2.Group = nil) then - Result.Group := g1.Group - else - Result.Group := nil; -end; - procedure CreateDebugLogger; begin if (TheLazLogger <> nil) then diff --git a/components/lazutils/lazloggerdummy.pas b/components/lazutils/lazloggerdummy.pas index d1b1386be3..16e5440d0f 100644 --- a/components/lazutils/lazloggerdummy.pas +++ b/components/lazutils/lazloggerdummy.pas @@ -43,11 +43,6 @@ type TLazLoggerLogEnabled = record end; -operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; -operator := (g: Boolean): TLazLoggerLogEnabled; -operator and (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -operator or (g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; - type TLazLoggerWriteEvent = procedure (Sender: TObject; S: string; var Handled: Boolean) of object; @@ -234,26 +229,6 @@ var // Using base TRefCountedObject, so if none of the functions is used in the {$I LazLoggerImpl.inc} {$pop} -operator := (g: PLazLoggerLogGroup): TLazLoggerLogEnabled; -begin - Result := Default(TLazLoggerLogEnabled); -end; - -operator := (g: Boolean): TLazLoggerLogEnabled; -begin - Result := Default(TLazLoggerLogEnabled); -end; - -operator and(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -begin - Result := Default(TLazLoggerLogEnabled); -end; - -operator or(g1, g2: TLazLoggerLogEnabled): TLazLoggerLogEnabled; -begin - Result := Default(TLazLoggerLogEnabled); -end; - procedure CreateDebugLogger; begin if (TheLazLogger <> nil) then