[Tango-artists] Tango in Wine

Rodney Dawes dobey.pwns at gmail.com
Fri Apr 17 11:59:51 PDT 2009


On Fri, 2009-04-17 at 19:25 +0200, Simon Otter wrote:
> On Fri, 17 Apr 2009 16:02:43 +0200, Rodney Dawes <dobey.pwns at gmail.com>  
> wrote:
> 
> > On Fri, 2009-04-17 at 14:39 +0100, Joel Holdsworth wrote:
> >> > I would recommend having wine follow the Icon Theme Specification, and
> >> > load the icons from the system theme this way, to integrate with the
> >> > rest of the system.
> >>
> >> The problem is that these icons have to be baked into the dlls at
> >> compile time as windows resources - that is the way Windows does icons,
> >> so wine has to as well, otherwise it'll cause incompatibilities.
> >
> > Not exactly. It means that a request for those resources in those dlls
> > needs to return an icon. It doesn't necessarily mean that the resource
> > must actually be compiled in to the dll.
> >
> 
> Windows resources are baked into executables and DLLs. The resources isn't  
> resolved by specific program calls (necessarily.) If this is what Joel  
> refers to
> his way might be the only way to do it.

For apps that are requesting resources from their own executables or
DLLs, yes, the only way to change those icons, is to replace the
resources as there's no way to programmatically determine what icon is
being loaded. But for the "DLLs" that wine itself provides, requests
for specific resources could be handled by generating a resource in a
programmatic way, containing the icon, from the system theme.

For instance, I once wrote a patch (which I think I still have lying
around somewhere) to wine, which converts known cursor IDs in Windows,
into the XCursor when running under wine. This made a lot of apps not
have the ugly Windows cursor for most things. For cases where the cursor
was simply being set from a pixmap resource though, the pixmap resource
still got used. It was a nice hack, but I never got 'round to actually
making the code clean enough to land upstream.




More information about the Tango-artists mailing list