From dc9b830e2221d3446dc4455c7d0d2eda995b6faa Mon Sep 17 00:00:00 2001 From: Vladimir Kryvian Date: Tue, 11 Aug 2015 10:39:59 +0300 Subject: [PATCH] no message --- umain.lfm | 29 ++++++++++++++++------------- umain.pas | 26 ++++++++++++++++++-------- 2 files changed, 34 insertions(+), 21 deletions(-) diff --git a/umain.lfm b/umain.lfm index e6b7ae9..978b07f 100644 --- a/umain.lfm +++ b/umain.lfm @@ -647,7 +647,7 @@ object frmMain: TfrmMain MinSize = 10 MaxSize = 200 Title.Caption = '#' - Width = 52 + Width = 60 end item Alignment = taCenter @@ -655,7 +655,7 @@ object frmMain: TfrmMain MaxSize = 200 Title.Alignment = taCenter Title.Caption = 'BPP' - Width = 52 + Width = 40 end item Alignment = taCenter @@ -663,7 +663,7 @@ object frmMain: TfrmMain MaxSize = 200 Title.Alignment = taCenter Title.Caption = 'CLUTs' - Width = 52 + Width = 40 end item Alignment = taCenter @@ -671,7 +671,7 @@ object frmMain: TfrmMain MaxSize = 200 Title.Alignment = taCenter Title.Caption = 'Type' - Width = 52 + Width = 40 end item Alignment = taCenter @@ -679,19 +679,21 @@ object frmMain: TfrmMain MaxSize = 200 Title.Alignment = taCenter Title.Caption = 'W x H' - Width = 52 + Width = 60 end item Title.Alignment = taCenter Title.Caption = 'File Name' - Width = 54 + Width = 56 end> FixedCols = 0 Flat = True MouseWheelOption = mwGrid - Options = [goFixedVertLine, goDrawFocusSelected, goColSizing, goRowSelect, goThumbTracking, goRelaxedRowSelect, goDblClickAutoSize, goHeaderHotTracking, goHeaderPushedLook, goSelectionActive, goTruncCellHints, goCellEllipsis, goRowHighlight] + Options = [goFixedVertLine, goDrawFocusSelected, goColSizing, goRowSelect, goThumbTracking, goRelaxedRowSelect, goDblClickAutoSize, goHeaderHotTracking, goHeaderPushedLook, goSelectionActive, goCellHints, goTruncCellHints, goCellEllipsis, goRowHighlight] + ParentShowHint = False PopupMenu = pmList RowCount = 1 + ShowHint = True TabOrder = 1 TitleFont.Color = clWindowText TitleFont.Height = -11 @@ -700,14 +702,15 @@ object frmMain: TfrmMain UseXORFeatures = True OnCompareCells = grdTimsListCompareCells OnHeaderClick = grdTimsListHeaderClick + OnResize = grdTimsListResize OnSelection = grdTimsListSelection ColWidths = ( - 52 - 52 - 52 - 52 - 52 - 54 + 60 + 40 + 40 + 40 + 60 + 56 ) end end diff --git a/umain.pas b/umain.pas index 4e61bd6..5dff666 100644 --- a/umain.pas +++ b/umain.pas @@ -151,6 +151,7 @@ type BRow: Integer; var Result: integer); procedure grdTimsListHeaderClick(Sender: TObject; IsColumn: Boolean; Index: Integer); + procedure grdTimsListResize(Sender: TObject); procedure grdTimsListSelection(Sender: TObject; aCol, aRow: Integer); private { private declarations } @@ -319,10 +320,8 @@ begin actReturnFocus.Execute; if grdTimsList.RowCount = 1 then Exit; - if (ScanResults.Count = 0) then Exit; - grdTimsList.BeginUpdate; - for I := 1 to ScanResults.Last.Count do + for I := 1 to SelectedScanResult.Count do begin W := TimInfoByIdx[I - 1].Width; H := TimInfoByIdx[I - 1].Height; @@ -330,8 +329,9 @@ begin grdTimsList.Cells[0, I] := Format('%.6d', [I]); grdTimsList.Cells[1, I] := Format('%.2d', [TimInfoByIdx[I - 1].BitMode]); grdTimsList.Cells[2, I] := Format('%.2d', [TimInfoByIdx[I - 1].Cluts]); - grdTimsList.Cells[3, I] := Format('%s', [AnsiUpperCase(TIMTypeStr(TimInfoByIdx[I - 1].Magic))]); + grdTimsList.Cells[3, I] := AnsiUpperCase(TIMTypeStr(TimInfoByIdx[I - 1].Magic)); grdTimsList.Cells[4, I] := Format('%.3dx%.3d', [W, H]); + grdTimsList.Cells[5, I] := SelectedScanResult.ScanFile; end; grdTimsList.EndUpdate; @@ -850,10 +850,6 @@ begin // Result will be either <0, =0, or >0 for normal order. Result := AIdx - BIdx; end; - 3: - begin - Result := AnsiCompareStr(grdTimsList.Cells[ACol, ARow], grdTimsList.Cells[BCol, BRow]); - end; 4: begin AWxH := grdTimsList.Cells[ACol, ARow]; @@ -873,6 +869,10 @@ begin else Result := BW - AW; end; + else + begin + Result := AnsiCompareStr(grdTimsList.Cells[ACol, ARow], grdTimsList.Cells[BCol, BRow]); + end; end; // For inverse order, just negate the result (eg. based on grid's SortOrder). @@ -889,6 +889,16 @@ begin grdTimsList.TopRow := grdTimsList.Row - grdTimsList.VisibleRowCount + 1; end; +procedure TfrmMain.grdTimsListResize(Sender: TObject); +begin + grdTimsList.Columns[5].Width := grdTimsList.ClientWidth - + grdTimsList.Columns[4].Width - + grdTimsList.Columns[3].Width - + grdTimsList.Columns[2].Width - + grdTimsList.Columns[1].Width - + grdTimsList.Columns[0].Width; +end; + procedure TfrmMain.grdTimsListSelection(Sender: TObject; aCol, aRow: Integer); begin if (aRow < 1) then Exit;