Skip to content

Commit

Permalink
Merge pull request #1 from Stefan6440/Stefan6440-materiallistview-rig…
Browse files Browse the repository at this point in the history
…ht-align-columns

Update MaterialListView.cs Added support for right-align columns.
  • Loading branch information
Stefan6440 authored May 27, 2023
2 parents 4affa6d + a6c9039 commit 0a34844
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions src/ReaLTaiizor/Controls/ListView/MaterialListView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,8 @@ protected override void OnDrawColumnHeader(DrawListViewColumnHeaderEventArgs e)
Enabled ? SkinManager.TextHighEmphasisNoAlphaColor : SkinManager.TextDisabledOrHintColor,
new Point(e.Bounds.Location.X + PAD, e.Bounds.Location.Y),
new Size(e.Bounds.Size.Width - (PAD * 2), e.Bounds.Size.Height),
MaterialNativeTextRenderer.TextAlignFlags.Left | MaterialNativeTextRenderer.TextAlignFlags.Middle);
e.Header.TextAlign == HorizontalAlignment.Left ? MaterialNativeTextRenderer.TextAlignFlags.Left | MaterialNativeTextRenderer.TextAlignFlags.Middle
: MaterialNativeTextRenderer.TextAlignFlags.Right | MaterialNativeTextRenderer.TextAlignFlags.Middle);
}

protected override void OnDrawItem(DrawListViewItemEventArgs e)
Expand All @@ -136,6 +137,7 @@ protected override void OnDrawItem(DrawListViewItemEventArgs e)
// Draw separator line
g.DrawLine(new Pen(SkinManager.DividersColor), e.Bounds.Left, e.Bounds.Y, e.Bounds.Right, e.Bounds.Y);

var idx = 0;
foreach (ListViewItem.ListViewSubItem subItem in e.Item.SubItems)
{
// Draw Text
Expand All @@ -146,7 +148,10 @@ protected override void OnDrawItem(DrawListViewItemEventArgs e)
Enabled ? SkinManager.TextHighEmphasisNoAlphaColor : SkinManager.TextDisabledOrHintColor,
new Point(subItem.Bounds.X + PAD, subItem.Bounds.Y),
new Size(subItem.Bounds.Width - (PAD * 2), subItem.Bounds.Height),
MaterialNativeTextRenderer.TextAlignFlags.Left | MaterialNativeTextRenderer.TextAlignFlags.Middle);
Columns[idx].TextAlign == HorizontalAlignment.Left
? MaterialNativeTextRenderer.TextAlignFlags.Left | MaterialNativeTextRenderer.TextAlignFlags.Middle
: MaterialNativeTextRenderer.TextAlignFlags.Right | MaterialNativeTextRenderer.TextAlignFlags.Middle);
++idx;
}
}

Expand Down Expand Up @@ -224,4 +229,4 @@ protected override void OnBackColorChanged(EventArgs e)
}

#endregion
}
}

0 comments on commit 0a34844

Please # to comment.