[PATCH v2 0/2] MR10950: shell32: Add an Info icon.
Hi Alex, I ran into an application that needed SIID_INFO. I noticed you added a lot of icons to shell32, so maybe you can help me with two issues: 1) On my WinXP and Win11, the (i) Icon has index 221, not 215. The power off icon however has index 215. Can you double check if you used the correct value for IDI_SHELL_POWER_OFF back in 9954c08dc8dc? 2) It seems the other shell icon SVGs have a rasterized image embedded, which tools/buildimage needs. For this .svg it writes "no render directive found in dlls/shell32/resources/info.svg". How did you generate those for the icons you added? Other Wikimedia Commons Tango icons don't seem to have them, so I guess they were added by one of us. -- v2: shell32: Use IDI_SHELL_INFO icon for SIID_INFO. shell32: Add an Info icon. https://gitlab.winehq.org/wine/wine/-/merge_requests/10950
From: Stefan Dösinger <stefan@codeweavers.com> The icon itself originates from the Tano Icons found at https://commons.wikimedia.org/wiki/Tango_icons#/ --- dlls/shell32/Makefile.in | 1 + dlls/shell32/resources/info.svg | 272 ++++++++++++++++++++++++++++++++ dlls/shell32/shell32.rc | 3 + dlls/shell32/shresdef.h | 2 + 4 files changed, 278 insertions(+) create mode 100644 dlls/shell32/resources/info.svg diff --git a/dlls/shell32/Makefile.in b/dlls/shell32/Makefile.in index 54059b73dc3..84615e29e3e 100644 --- a/dlls/shell32/Makefile.in +++ b/dlls/shell32/Makefile.in @@ -45,6 +45,7 @@ SOURCES = \ resources/folder_open.svg \ resources/help.svg \ resources/image.svg \ + resources/info.svg \ resources/internet.svg \ resources/log_off.svg \ resources/menu.svg \ diff --git a/dlls/shell32/resources/info.svg b/dlls/shell32/resources/info.svg new file mode 100644 index 00000000000..3902d39f1c1 --- /dev/null +++ b/dlls/shell32/resources/info.svg @@ -0,0 +1,272 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + height="272" + width="632" + version="1.1" + id="svg7" + sodipodi:docname="info.svg" + inkscape:version="1.4.3 (0d15f75042, 2025-12-25)" + xml:space="preserve" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview + id="namedview7" + pagecolor="#ffffff" + bordercolor="#000000" + borderopacity="0.25" + inkscape:showpageshadow="2" + inkscape:pageopacity="0.0" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:zoom="2.3320313" + inkscape:cx="569.46062" + inkscape:cy="152.65661" + inkscape:window-width="2568" + inkscape:window-height="1207" + inkscape:window-x="1260" + inkscape:window-y="226" + inkscape:window-maximized="0" + inkscape:current-layer="svg7" /><defs + id="defs6"><radialGradient + id="b" + gradientUnits="userSpaceOnUse" + cy="28.459999" + cx="26.540001" + gradientTransform="matrix(1.156,0.005968,-0.005968,1.261,-4.845,-7.341)" + r="22.379999"><stop + stop-color="#9cbcde" + offset="0" + id="stop1" /><stop + stop-color="#204a87" + offset="1" + id="stop2" /></radialGradient><radialGradient + id="a" + gradientUnits="userSpaceOnUse" + cy="17.68" + cx="-9.5" + gradientTransform="matrix(4.446,0,0,6.866,67.3,-104.4)" + r="8.75"><stop + stop-color="#fff" + offset="0" + id="stop3" /><stop + stop-color="#b8b8b8" + offset="1" + id="stop4" /></radialGradient><radialGradient + id="c" + gradientUnits="userSpaceOnUse" + cy="42" + cx="31.549999" + gradientTransform="matrix(1,0,0,0.3333,-7.55,28)" + r="18"><stop + offset="0" + id="stop5" /><stop + stop-opacity="0" + offset="1" + id="stop6" /></radialGradient><radialGradient + id="b-9" + gradientUnits="userSpaceOnUse" + cy="28.459999" + cx="26.540001" + gradientTransform="matrix(1.156,0.005968,-0.005968,1.261,-4.845,-7.341)" + r="22.379999"><stop + stop-color="#9cbcde" + offset="0" + id="stop1-4" /><stop + stop-color="#204a87" + offset="1" + id="stop2-7" /></radialGradient><radialGradient + id="a-8" + gradientUnits="userSpaceOnUse" + cy="17.68" + cx="-9.5" + gradientTransform="matrix(4.446,0,0,6.866,67.3,-104.4)" + r="8.75"><stop + stop-color="#fff" + offset="0" + id="stop3-4" /><stop + stop-color="#b8b8b8" + offset="1" + id="stop4-5" /></radialGradient><radialGradient + id="b-3" + gradientUnits="userSpaceOnUse" + cy="28.459999" + cx="26.540001" + gradientTransform="matrix(1.156,0.005968,-0.005968,1.261,-4.845,-7.341)" + r="22.379999"><stop + stop-color="#9cbcde" + offset="0" + id="stop1-2" /><stop + stop-color="#204a87" + offset="1" + id="stop2-0" /></radialGradient><radialGradient + id="a-6" + gradientUnits="userSpaceOnUse" + cy="17.68" + cx="-9.5" + gradientTransform="matrix(4.446,0,0,6.866,67.3,-104.4)" + r="8.75"><stop + stop-color="#fff" + offset="0" + id="stop3-1" /><stop + stop-color="#b8b8b8" + offset="1" + id="stop4-55" /></radialGradient></defs> + <image + width="16" + height="16" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAASUExURQAAAB5IhiJLiP///xxCeAAAAMp6HosAAAABdFJO UwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAAd0SU1FB+oFFA0bAM1+ hTUAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBUMTM6MjI6MzUrMDA6MDA0MO0PAAAAJXRF WHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDEzOjIyOjM1KzAwOjAwRW1VswAAACh0RVh0ZGF0ZTp0 aW1lc3RhbXAAMjAyNi0wNS0yMFQxMzoyNzowMCswMDowMCjml2wAAAAZdEVYdFNvZnR3YXJlAHd3 dy5pbmtzY2FwZS5vcmeb7jwaAAAATElEQVQI12NgYGBgFGAAAyVFISUQzaQoKCikAGQoCgobCgqB BUAMBQYmQTAAM4AiQIYghCGIYMClEAyYdriBCCsYnBSFVCDWszgACQBhqAjWO1PgIQAAAABJRU5E rkJggg== " + id="icon:16-4" + x="608" + y="252" + inkscape:label="16-4" + inkscape:svg-dpi="96" /><image + width="16" + height="16" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAAkUExURQAAAB5IhiJLiCJNiSBJhiRMif///yNMhyRLiB9D ehpBdwAAAEawUp4AAAABdFJOUwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAADsMBx2+o ZAAAAAd0SU1FB+oFFA0aM2u11WIAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBUMTM6MjI6 MzUrMDA6MDA0MO0PAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDEzOjIyOjM1KzAwOjAw RW1VswAAACh0RVh0ZGF0ZTp0aW1lc3RhbXAAMjAyNi0wNS0yMFQxMzoyNjo1MSswMDowMCmz+YIA AAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAX0lEQVQI12NgYGBgFGAAA2UV JyMQzRooKCgcAGQECoolCgozMDBBGAoMzIJgYMDAJAgSEVRgEIEwHBEMuBQzhAFUbAhiiBpADRQF msxuKCgo2gCybJKKkybEeq4FQAIAnToN7/50GJIAAAAASUVORK5CYII= " + id="icon:16-8" + x="584" + y="252" + inkscape:label="16-8" + inkscape:svg-dpi="96" /><image + width="16" + height="16" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAA GXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAy Ni0wNS0yMFQxMzoxNzozOCswMDowMCosIYoAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjYtMDUtMjBU MTM6MTc6MzgrMDA6MDBbcZk2AAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDI2LTA1LTIwVDEzOjE3 OjM4KzAwOjAwDGS46QAAAcpJREFUOI2Vks1qU0EUx//nTO7HwjYkSNJrpNCbgDUuXATdVPHjDVwU fQXFrksfwXUh6ANIwY0gQpdWrYsusrGLphpbg9hUow2J0uTeyZ3jwjYkMULy2w1z/h9nGMIIEoXl uDt15lbMVQsAEAV6s9063miUHjWHZ2nglFty/AuZx2C6K0ZcMYYAgIiFmToisra3+/UBKqvBvwaF 5XjOS5ZBlA51d9D4BMtSQkCtcnCUx0kbBgDkF+2clyyH3WimX1xdX0F1faVnoHVEoY7OZb3EDvKL ds/Anys8AVF6VOpIiGf8uUIRACiZW5pOzGe+6a5xxzYAYMVUu/lxN83O+dRtI3BGDQ2v0I8x4qqM f5Njrlo4fe1JEBFyHL7GkwqH4SjQm0QskwqJSIIwesudLz9eMVNn4mSmtnlf2+CjympLRNYsS43d wrZiYiBP6/XibwaAvf3SfQJqY9cXHOy/LD0E+r9y9k4qe/HqNohTWkf/SWbA4LBS3rqMT8+/A4Dq 3TbK3UZ1+9m0d2nWsl2fiBQBRERgZlFMYXjcfPH5dfEe6qU6gGiwwV8sAK5zdt6bmr1+w 44nrwCA /vVzq/Xh3ZugtXMIoANAnwr+AMGJsMPAlL3IAAAAAElFTkSuQmCC " + id="icon:16-32" + x="560" + y="252" + inkscape:svg-dpi="96" + inkscape:label="16-32" /><image + width="32" + height="32" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAAqUExURQAAAClSjEJnm1F2qHiaxK6+1dPc6Ovu846qzJ2y zl2CsmqNuRs/dAAAAOZ1xkMAAAABdFJOUwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAA DsMBx2+oZAAAAAd0SU1FB+oFFAsZA2LMyr8AAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBU MTE6MjU6MDMrMDA6MDBb73HkAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDExOjI1OjAz KzAwOjAwKrLJWAAAACh0RVh0ZGF0ZTp0aW1lc3RhbXAAMjAyNi0wNS0yMFQxMToyNTowMyswMDow MH2n6IcAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAABQ0lEQVQoz43RvU/C QBQA8OLMYEQmF70KIXGCFzHUzXQw6URNYRe5i6zGa41bQ6w4aiLsTRiuE4hKeot/mu+u5WMyvu39 8t67u3eG8b8o7AEc7W7lxx3G+xdrKdRYfzLq8HAlpe5NgxDz6b6eF0wDlRNzPMhKSnROAKNxTrOS yiMxodOPAb5d3RGFBCzGPwBagerZoQ0TEuanAoAeIhwEWJB4nkxjiGYI5Z4JQo4mjhTw1UaouqaV LHzfdlJoXiM0X8GSCENbxqc9hDMFlxpE6y4DoeAZezQ0XUgWCJOhk+qW6tUGpmpoebABfex+oIBp GM/01WOBwHGo1FcvRG94CuN47Kd+nFEJ8GKUIkRuvqCXRNq27Sx5PV/hQyoXOKGbrxCXf OtIuXxf Ldko1hj1PMbDn9XHFE/UR83XOYr6yq38z/gF/G6CPxZAOVYAAAAASUVORK5CYII= " + id="icon:32-4" + x="520" + y="236" + inkscape:label="32-4" + inkscape:svg-dpi="96" /><image + width="32" + height="32" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAE1UExURQAAAB5IhixTjUNnm1V1pFx6piRNiYGavbPB1s/Y 5d7k7ePp8OTp8X6Xuj1iloqiwtXd6Orv9LzK3aK1z5Ssy6K20SFKh8DM3cXQ4Vt9q0Jonj5mnUVs oYOewuzw9WOBq+Hn70xypkhvo1B2qdvi7HGTvlV6rE91qHyYveHn8Ku91qzA2F2CspCmxmGFtP38 /GWJt+3w9Vp/sGqOu8rV5KW61LbH3W6RvWaKuJ200nOWwXaZw/X3+ff4+t/n8H+gx8DO4M7X5Xyf yPr5+Yepz3qcxYSlzPb29oqqz3+hyZSz1uHo767A1/Lx8Zm32Yqr0dni7Ovv9e7t7V2Ars/a6Jux ztzk7Yifv4agw8PR49Lc5+ru9B5HhNXd6Ro+c4mfwKu/2DtfkyBFekJklxg8byhNhAAAALeUPxcA AAABdFJOUwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAAd0SU1FB+oF FAsZAhXL+ikAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBUMTE6MjU6MDIrMDA6MDD9mHpQ AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDExOjI1OjAyKzAwOjAwjMXC7AAAACh0RVh0 ZGF0ZTp0aW1lc3RhbXAAMjAyNi0wNS0yMFQxMToyNTowMiswMDowMNvQ4zMAAAAZdEVYdFNvZnR3 YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAACMklEQVQ4y62Tf1uaUBTHVfDXBeXHMAFph QSGMYKu CsK2NhVNt9ZqtVZrbct6/29hB8XM2X/b/es+z/nc8/2ec89Jpf7nSWcIMpsliUz62XCOyBeKiKJR sVAicuuvywzLsfwLQajwcGHKf2XZIKucmJfkmizLirQpvqySGyvxLXabUWuyotThKIomUOzWEyJN sjs6PK2rmmEYDVWt13cRSy5VylVTh+dqQ2qK4p6laZpa36Wq5Uf/DPdq/txG+/vIkSRDU1XBZRa1 EKyoynH8AANgYtuyJE2VWiyROChx+ZoCccvC7U6n7fmOHRMMV5q7yBRYSY7jtuMJ3a4QeNi3LaPh 7BQyc4Uir0CCA8vHIXr95u1hQhjv3s81SFSZJXCw1zP7fWoQhTp2QKSJyBmQpYU4ge17wdAc9amj cRR64FTr0tklAA5wEA7M0YiaDMdRACmMCpVNJNpKI1YIoqMPMTAYRoHnW8bHRAJMqjHgAbB9fEx/ Ohn2QgAssUgkZX62AfATgFoAOkrKTJdOmUUGdHZGTU7mEsJp0ihodetLYhIANBnMTOLzRavhs9wL Q5qV+RUASABlOm33Mrf8bvpbXIbeu7q+voJ4gH3hO//43fHAIMayfaxHvXEvhDiGkXoyMPHI0RVs Q7P1INA9rDe5lZFLpW7Iqnt+EWIfY+xtdn+4PHmzOta35Z+si1qdX3t8y3TZy9+3a5txNy3B4tCz xZnePbtb9w/TePWmD/f/sL/r5w9Y72Kji0cJwAAAAABJRU5ErkJggg== " + id="icon:32-8" + x="480" + y="236" + inkscape:label="32-8" + inkscape:svg-dpi="96" /><rect + id="icon:32-32" + height="32" + width="32" + y="236" + x="440" + style="fill:none" /><image + width="48" + height="48" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAAqUExURQAAACFLiDNblF2CspCrzbbG2tHa52qMufDz9kZr n3eaxE91qBo8bgAAAAjvBqwAAAABdFJOUwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAA DsMBx2+oZAAAAAd0SU1FB+oFFAsZAhXL+ikAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBU MTE6MjU6MDIrMDA6MDD9mHpQAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDExOjI1OjAy KzAwOjAwjMXC7AAAACh0RVh0ZGF0ZTp0aW1lc3RhbXAAMjAyNi0wNS0yMFQxMToyNTowMiswMDow MNvQ4zMAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAB8klEQVQ4y7WTsU/b UBDG470DlgqoUrcuSN1qRAKZqgbhwoQgELpVqKlTJhToM2Frjf0BExICGWYUlLFQFOSl3fmjuO/5 ObFDB5aeZEW6X7679+59Vyr9h7B1PElb9pv5tS+r7+yx0fwudKyPEPs7ENbrHvC1UM0+Q7gQS+wA rRyxJhHuxTouPGwPi9kuPsYmThEMJNZLbErqMkkS+fHxPpNYfngvmYRxH196UQZeYYuC23p9iaI+ ToxgArMs1AeOqTnH5zFTKdANZoCfTlWIa2rZXosNbipA5DiiuQvTc01iTwQ3DoEiucW2BuMhBU55 p1ZbUIrFsKxbTAVaoJTqyNcWSeMHm1iViKCsZI7fuiJJEv9YA/dQgAh84KjXpaQfaNBos YXqXBP0 KLk7SMFGzEoGiCQDXgp6AoJFkbSrv0MD2KKjQS0PGnmwSJD1aKXATUF3ANzDIlBVc9xKNArc9IJT B6MgHUlpHLxfb9jDSYcoY1/KH7fbnjZjt72t4j0q5qHkaTnDIWiYpxUz7JuRHLH3XGYGsU/EIV41 m584XT+zDw23z1oMeSkMDCcWpUQTpdyhRWnqFb45Yzdnar0GH8o6LwuSWwMuDlaZny8uTukFVw3N Jrhqf561nKJ5y3X+Vfy/Jn+5/6+f5IkeHv6VfnY8AhZDTx60yniXAAAAAElFTkSuQmCC " + id="icon:48-4" + x="384" + y="220" + inkscape:label="48-4" + inkscape:svg-dpi="96" /><image + width="48" + height="48" + preserveAspectRatio="none" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAIGNIUk0AAHomAACAhAAA+gAAAIDo AAB1MAAA6mAAADqYAAAXcJy6UTwAAAFEUExURQAAACBKhzFXkGOBrY2jwq2908LO38zW5DBXjyNN iXOOtL3K3PDz9/P1+GyJsnyVud3j7e/y99be6rbG23mSt0lrneDn756yzmiHsUJpnj5lnKG1z+Hn 8MvV4x9KhneQtuzv9UBnnUVsoYGbv9jg65Clw5Opx0hvo5ityt/m70xypuPq8lB0pU91qFF3qVl+ rtvi7KG10VV6rOnu9fv7+/z8/GaLuN/n8F2CsvT2+SdQi2GGtXyYvuTq8mSJt4aix1p/sI2oy5qy 0JOszGqOu7nH2m2RvaW50y5Vj9vk73KWwXGUvmJ/qnaZw+bt9Hqcxvf3936hycfT44KkzIus0sLP 4OXr832fyPPz9I+w1Yaoz5Oy1ZO02ICcwe3t7a/B2L3O4tHc6cPS5Ky/2B5GgPb4+hk7as/a6B1D exYyXBc3ZAAAAOsGfBcAAAABdFJOUwBA5thmAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAAOwwAADsMB x2+oZAAAAAd0SU1FB+oFFAsZAhXL+ikAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjYtMDUtMjBUMTE6 MjU6MDIrMDA6MDD9mHpQAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI2LTA1LTIwVDExOjI1OjAyKzAw OjAwjMXC7AAAACh0RVh0ZGF0ZTp0aW1lc3RhbXAAMjAyNi0wNS0yMFQxMToyNTowMiswMDowMNvQ 4zMAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAADeklEQVRIx9WVW 1faUBCF OYJgkEEBkWIVlFotRsSCxpzGxBteCgawWLA3W61S9P//gM6cQzAoXh760v2ga7H2d/bMyWTi8fwP Yi69yD3k9Q37AwH/sM878hzDmBIcDUFPodGw8hTClLFx8kWi/ljMHxXk+ITCHj0+HkDHZOJVckoo GX49jT/MxAeHpFh6FiA6hs65ZDKZyWTo75t5gNn0IIKxt1jLwhweTOZMZnFR/Mu8w8p8LDXQn/Wi nbxLjggKq0Tcz2BpgPll4UdfLrdCyuUEk18FCN4DWHwWsstYPJ2eW0nEUO8LBYKWljJ5FYrxvqKY MgMR79QcHY+HF7Jra+vrk/l8ARkitAgE+m6XjQEsSD/aC3kBbOi6jgyFLCY4pF0A+zAO0TmsX/jz up5F//q0YRAiQ8Zh1RXBwgCb0l8gv6Gif93ULIuYPBFbHMIuYBQmp6hfPH9bNwxrZxe1VyppmuUQ Kuz3ADYUggQF5ITf0kqlAylEiMCqlg4hcuQQzAsQlgXlhf/gYxG1US5XEEFiGyMqHI57gA8iSRmg 6+SvqGso07btsiToruhxO8AwRKeoAwpAf9k2CajWaoLQLCxqJbcKwz3AD/5ugGHh+bZt1gk4OUGE CBHxCfw9IAAxBO4CamYdVW00iMA+RMQoBFzAvqgIOxD+EwmcEkER2EU/4IfPmUWnIgQaTQkg0arZ 3ZrcJWHT3RawIrvWajTPzur14pfTrzJCAFlX0z4I0ZSKFipYEQFnZ8VvFCFrwil0X6sXeHAA8N0N /HA/uJEQHPYD5w8SfvK70aDhUx3ggADzHFUlwOlBN13DR+PNt3q3hE1L4FQ2XaFb2usfbwXfjxX3 cyCg6VwSAsY0zLvfUTYBPNF90thESyXAbIjHIFo45P17g5YATIjhFhECUBsnrW5ADRdm/4qlNWNa WJMcpl8XqMsWz R6NUqXJi8n7iykNPKuJCCLsGskWfq2i8geLDFelD7i5uS2JCiL0+pTxLdW2qnzw ckUCDg1JIEJufN9Kv2Ggn9Z9sIhl7RliC5TkDijtYjnF4CC/x3PF4jPAeTO2pVmaYHZixWsOM0l2 5RmodkpJ46Lm1zD95/LyQgV0w3xaSbU9j6nDlPA+fdo4ij52+/hR7HieUoexo2Pns3t8xJ6xi8I6 Keeznuq0n7VL3dy227c3LzT/a/0FVsUHMvXwgasAAAAASUVORK5CYII= " + id="icon:48-8" + x="328" + y="220" + inkscape:label="48-8" + inkscape:svg-dpi="96" /><rect + id="icon:48-32" + height="48" + width="48" + y="220" + x="272" + style="fill:none" /><rect + id="icon:256-32" + height="256" + width="256" + y="8" + x="8" + style="fill:none" /><g + id="g8-3" + inkscape:label="32-32" + transform="matrix(0.65116279,0,0,0.65115371,440.61209,236.61212)"><circle + cy="24" + cx="24" + r="21.5" + fill="#204a87" + id="circle6-6" /><g + stroke-linejoin="round" + stroke="#ffffff" + id="g7-1"><circle + stroke-opacity="0.94" + r="18.6" + cy="24" + cx="24" + stroke-width="2.5" + fill="url(#b)" + id="circle7-0" + style="fill:url(#b-9)" /><path + stroke-width="0.8" + d="m 21.5,19.4 h 5 v 15.9 h -5 z m 0,-6.6 h 5 V 17 h -5 z" + stroke-opacity="0.78" + fill="url(#a)" + id="path7-6" + style="fill:url(#a-8)" /></g></g><g + id="g8-7" + inkscape:label="48-32" + transform="translate(272.3,220.3)"><circle + cy="24" + cx="24" + r="21.5" + fill="#204a87" + id="circle6-65" /><g + stroke-linejoin="round" + stroke="#ffffff" + id="g7-6"><circle + stroke-opacity="0.94" + r="18.6" + cy="24" + cx="24" + stroke-width="2.5" + fill="url(#b)" + id="circle7-9" + style="fill:url(#b-3)" /><path + stroke-width="0.8" + d="m 21.5,19.4 h 5 v 15.9 h -5 z m 0,-6.6 h 5 V 17 h -5 z" + stroke-opacity="0.78" + fill="url(#a)" + id="path7-3" + style="fill:url(#a-6)" /></g></g><g + id="g8" + inkscape:label="256" + transform="matrix(5.3333326,0,0,5.3333326,7.9996685,7.9996685)"><circle + cy="24" + cx="24" + r="21.5" + fill="#204a87" + id="circle6" /><g + stroke-linejoin="round" + stroke="#ffffff" + id="g7"><circle + stroke-opacity="0.94" + r="18.6" + cy="24" + cx="24" + stroke-width="2.5" + fill="url(#b)" + id="circle7" + style="fill:url(#b)" /><path + stroke-width="0.8" + d="m 21.5,19.4 h 5 v 15.9 h -5 z m 0,-6.6 h 5 V 17 h -5 z" + stroke-opacity="0.78" + fill="url(#a)" + id="path7" + style="fill:url(#a)" /></g></g></svg> diff --git a/dlls/shell32/shell32.rc b/dlls/shell32/shell32.rc index fe80339568b..3b3b8b7190c 100644 --- a/dlls/shell32/shell32.rc +++ b/dlls/shell32/shell32.rc @@ -794,6 +794,9 @@ IDI_SHELL_RESTRICTED ICON resources/restricted.ico /* @makedep: resources/folder.ico */ IDI_SHELL_DEFAULT_FOLDER ICON resources/folder.ico +/* @makedep: resources/info.ico */ +IDI_SHELL_INFO ICON resources/info.ico + /* @makedep: resources/users.ico */ IDI_SHELL_USERS ICON resources/users.ico diff --git a/dlls/shell32/shresdef.h b/dlls/shell32/shresdef.h index deabe568022..6d8231ec42f 100644 --- a/dlls/shell32/shresdef.h +++ b/dlls/shell32/shresdef.h @@ -376,6 +376,8 @@ /* 339 - 511 not used on Windows */ #define IDI_SHELL_WEB_BROWSER 512 +#define IDI_SHELL_INFO 1001 + /* AVI resources, windows shell32 has 14 of them: 150-152 and 160-170 FIXME: Need to add them, but for now just let them use the same: searching.avi -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10950
From: Stefan Dösinger <stefan@codeweavers.com> --- dlls/shell32/iconcache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/shell32/iconcache.c b/dlls/shell32/iconcache.c index 9433361440c..873f1a12a12 100644 --- a/dlls/shell32/iconcache.c +++ b/dlls/shell32/iconcache.c @@ -1037,7 +1037,7 @@ static INT stock_icon_id_to_resource_id(SHSTOCKICONID id) MISSING_ICON(SIID_FOLDERFRONT); case SIID_SHIELD: return IDI_SHELL_SHIELD; MISSING_ICON(SIID_WARNING); - MISSING_ICON(SIID_INFO); + case SIID_INFO: return IDI_SHELL_INFO; case SIID_ERROR: return IDI_SHELL_RESTRICTED; MISSING_ICON(SIID_KEY); MISSING_ICON(SIID_SOFTWARE); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10950
ok, I think I got the icon svg assembled in the right way. info.ico is generated and contains the same subicons as folder.ico, and in the same order. The 48x48 and 32x32 icons are just autogenerated. I re-did the 16x16 icons manually. The rasterization produced by ImageMagick was just a blurr. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140804
Alex Henrie (@alexhenrie) commented about dlls/shell32/shell32.rc:
/* @makedep: resources/folder.ico */ IDI_SHELL_DEFAULT_FOLDER ICON resources/folder.ico
+/* @makedep: resources/info.ico */ +IDI_SHELL_INFO ICON resources/info.ico Can we keep the icon lists in shell32.rc and shresdef.h in the same order please? (Put IDI_SHELL_INFO at the end.)
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140823
Alex Henrie (@alexhenrie) commented about dlls/shell32/shresdef.h:
/* 339 - 511 not used on Windows */ #define IDI_SHELL_WEB_BROWSER 512
A comment `/* 513 - 1000 not used on Windows */` would be more helpful than a blank line here. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140825
On Wed May 20 15:18:59 2026 +0000, Stefan Dösinger wrote:
ok, I think I got the icon svg assembled in the right way. info.ico is generated and contains the same subicons as folder.ico, and in the same order. The 48x48 and 32x32 icons are just autogenerated. I re-did the 16x16 icons manually. The rasterization produced by ImageMagick was just a blurr. info.svg looks good, well done! One more thing: I think the final info.ico file should be included in the commit. I'm not sure if it's generated automatically in maintainer mode, and even if it is, it's not added to Git automatically.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140827
On Wed May 20 15:11:29 2026 +0000, Alex Henrie wrote:
A comment `/* 513 - 1000 not used on Windows */` would be more helpful than a blank line here. Is the statement true though? I'll check the native DLL and add a comment
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140832
On Wed May 20 15:18:59 2026 +0000, Alex Henrie wrote:
info.svg looks good, well done! One more thing: I think the final info.ico file should be included in the commit. I'm not sure if it's generated automatically in maintainer mode, and even if it is, it's not added to Git automatically. It is generated in maintainer mode, yes. I think Alexandre adds it, similarly to how he adds configure if it is changed. I asked him about a different generated but committed file a while ago (I forgot which) and he told me not to include it in the MR.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140833
On Wed May 20 17:09:02 2026 +0000, Stefan Dösinger wrote:
Is the statement true though? I'll check the native DLL and add a comment So the numbering is still a mystery to me.
I looked at XP's shell32.exe with Resource Hacker, and the icons in question are listed as numbers 973 to 981. Only if I export the entire ICONS group to a .rc file does the number 1001 show up. The icons that were first listed as 973-981 end up in a file ICON1001_1.ico, and the generated .rc file has `1001 ICON "ICON1001_1.ico"`. Very mysterious. But the generated files indeed have a hole from 513 to 1000 (inclusive). Win11's shell32.dll has no icons at all, I guess it is redirected to a different DLL and Resource Hacker doesn't show that. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10950#note_140836
participants (3)
-
Alex Henrie (@alexhenrie) -
Stefan Dösinger -
Stefan Dösinger (@stefan)