This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: question about multiwindow mode and application icons


Ralf,

Did you see the patch from Earl yesterday? It does nearly the same thing, except it uses a .ini file to relate the WM_CLASS to a .ico file.

Harold

Ralf Habacker wrote:

Hi all,

I've added a patch for an initial implementation of application icons support
based on the Testserver85 release (will probably work with the TestServer86
release)

How does it work:

The patch provides application depending icon loading in each xserver created
window. The decision, which icons is used, is based on the client application
name eg. for the application "xterm" an icon "xterm.ico" is searched in all
pathes found in the PATH environment variable.

How is this patch implemented:

Windows icon displaying is provided by Window classes through the
RegisterClass() call. Each window which belongs to a specific window class, will
be shown with the same icon. (Creating uniq Window Classes for any client
application with corresponding application icon was the basic idea to use for
icon displaying. Unfortunally I hadn't success requesting the WM_CLASS property
in winCreateWindowsWindow(), the xserver hangs in the select of xReplay(), which
I couldn't find.)

The current implementation creates for each window a uniq window classes and
sets the icon in the WM_MAP event, which works at now.

Notes: There may be some issues, which could be improved, so I've called this
patch as an initial patch. While working on this patch I recognized already
some, which I was unable to fix at now, sorry.

Any comments ?

Cheers

Ralf



------------------------------------------------------------------------




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]