Add wxRibbonMSWFlatArtProvider, a (Fluent UI) flat ribbon art provider (PR #26253)

13 views
Skip to first unread message

Blake-Madden

unread,
Feb 28, 2026, 4:10:31 AMFeb 28
to wx-...@googlegroups.com, Subscribed

Also, add pointer and underflow checks and proper wxDCClipper usage in other art providers, add descriptions for all of them to the help.

Old MSW provider:

image.png (view on web)

New one:

image.png (view on web)

You can view, comment on, or merge this pull request online at:

  https://github.com/wxWidgets/wxWidgets/pull/26253

Commit Summary

  • 77eb098 Add wxRibbonMSWFlatArtProvider, a (Fluent UI like) flat ribbon art provider
  • fa41715 Remove implementation leakage

File Changes

(17 files)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/26253@github.com>

Blake-Madden

unread,
Feb 28, 2026, 4:10:45 AMFeb 28
to wx-...@googlegroups.com, Push

@Blake-Madden pushed 1 commit.

  • fa41715 Remove implementation leakage


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/26253/before/77eb09889eefa4c3c6701e1758c8313ee0a29d04/after/fa417155c9379d2fbab3d7797ae1b52ecd9a77e1@github.com>

Blake-Madden

unread,
Feb 28, 2026, 4:51:36 AMFeb 28
to wx-...@googlegroups.com, Subscribed
Blake-Madden left a comment (wxWidgets/wxWidgets#26253)

I'm not wild about the hard coded numbers throughout all three art providers, but that will be a separate battle for another day...


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/26253/c3976762104@github.com>

VZ

unread,
Mar 13, 2026, 10:47:06 AM (yesterday) Mar 13
to wx-...@googlegroups.com, Subscribed

@vadz approved this pull request.

Thanks, I don't use ribbon myself but I guess it's a nice possibility for those who do, so I'll merge this soon.


In src/ribbon/art_msw.cpp:

> @@ -1948,7 +1951,7 @@ void wxRibbonMSWArtProvider::DrawPanelBackground(
             {
                 // Room for some characters and ...
                 // Display as many characters as possible and append ...
-                for(size_t len = label.Len() - 1; len >= 3; --len)
+                for( int len = static_cast<int>(label.Len()) - 1; len >= 3; --len )

Not sure why this had to be changed, but as long as it did, I'll at least use wxSsize() here instead of the cast.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/26253/review/3944565810@github.com>

VZ

unread,
Mar 13, 2026, 11:02:49 AM (yesterday) Mar 13
to wx-...@googlegroups.com, Subscribed

Closed #26253 via d9018cd.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <wxWidgets/wxWidgets/pull/26253/issue_event/23549710063@github.com>

Reply all
Reply to author
Forward
0 new messages