Changes On Branch feature/hex-viewer
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch feature/hex-viewer Excluding Merge-Ins

This is equivalent to a diff from c4b54c40b6 to 5ecb7152bb

2015-02-25
09:42
Hex viewer background color. check-in: b26e4249b9 user: tinus tags: develop
08:43
ZPreview: added some comments for future development of the hex viewer. Leaf check-in: 5ecb7152bb user: tinus tags: feature/hex-viewer
2015-02-18
14:20
Started on a hex viewer. check-in: c4b54c40b6 user: tinus tags: develop
2015-02-17
16:32
Enable changing order of renderers (changes are not stored yet). check-in: c4b41ad964 user: tinus tags: develop

Changes to ZPreview/src/Delphi/F_PE_Hex.dfm.

16
17
18
19
20
21
22

23
24
25
26
27
28
29
  TextHeight = 13
  object pbxPreview: TPaintBox
    Left = 0
    Top = 0
    Width = 401
    Height = 282
    Align = alClient

    ParentColor = False
    OnPaint = pbxPreviewPaint
    ExplicitLeft = 120
    ExplicitTop = 56
    ExplicitWidth = 105
    ExplicitHeight = 105
  end







>







16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  TextHeight = 13
  object pbxPreview: TPaintBox
    Left = 0
    Top = 0
    Width = 401
    Height = 282
    Align = alClient
    Color = clBtnFace
    ParentColor = False
    OnPaint = pbxPreviewPaint
    ExplicitLeft = 120
    ExplicitTop = 56
    ExplicitWidth = 105
    ExplicitHeight = 105
  end

Changes to ZPreview/src/Delphi/F_PE_Hex.pas.

74
75
76
77
78
79
80






81
82
83
84
85
86
87
{ ------------------------------------------------------------------------------------------------ }
procedure TfrmPEHex.pbxPreviewPaint(Sender: TObject);
var
  Canvas: TCanvas;
begin
  {$MESSAGE WARN 'TODO: TfrmPEHex.pbxPreviewPaint — MCO 18-02-2015'}
  // TODO: check whether anything has changed since last time?






  if not Assigned(FBitmap)
    or (pbxPreview.ClientWidth <> FBitmap.Width)
    or (pbxPreview.ClientHeight <> FBitmap.Height)
    or CompareMem(@FCurrLayout, @FPrevLayout, SizeOf(TLayoutInfo))
  then begin
    // if things have changed (or there is no old bitmap), then draw a new one
    FreeAndNil(FBitmap);







>
>
>
>
>
>







74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{ ------------------------------------------------------------------------------------------------ }
procedure TfrmPEHex.pbxPreviewPaint(Sender: TObject);
var
  Canvas: TCanvas;
begin
  {$MESSAGE WARN 'TODO: TfrmPEHex.pbxPreviewPaint — MCO 18-02-2015'}
  // TODO: check whether anything has changed since last time?
  // TODO: differentiate between context changes and content changes
  //        (context being the width, height, font; content being the file (name),
  //        position, selection start and end, etc).
  //       Context change means we need to recalculate everything, then redraw;
  //        content change means we don't need to recalculate everything, just
  //        the position and actual contents.
  if not Assigned(FBitmap)
    or (pbxPreview.ClientWidth <> FBitmap.Width)
    or (pbxPreview.ClientHeight <> FBitmap.Height)
    or CompareMem(@FCurrLayout, @FPrevLayout, SizeOf(TLayoutInfo))
  then begin
    // if things have changed (or there is no old bitmap), then draw a new one
    FreeAndNil(FBitmap);