Re: Icon update .diff

2005-09-19 Thread Colin Harrison
Hi,

Belatedly found an error in Joe's icon_and_class.diff patch:-

http://cygwin.com/ml/cygwin-xfree/2005-09/msg00028.html

The system menu can be modified by the use of an .XWinrc file.
In Joe's winmultiwindowwindow.c file patch SetupSysMenu is called directly
instead of via the main WNDPROC
with PostMessage (WM_INIT_SYS_MENU) to  winmultiwindowwndproc.c. Reverting
to the PostMessage/WM_INIT_SYS_MENU code, in both files, enables the 'Always
on Top' system menu addition, for example, to work as intended.

Thanks

Colin Harrison


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Peter Valdemar Morch

Joe Krahn jkrahn-at-nc.rr.com |Lists| wrote:

3) Decide if Win95/Me/NT/2000 need continued support.


Win 2000 - yes please...

Peter

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Colin Harrison
Hi,

Joe Krahn wrote:

 3) Decide if Win95/Me/NT/2000 need continued support.

Cygwin has dropped Me, Microsoft 95/98 (support 'till Jun 2006) and NT (dead
now even if you pay).
Typical Microsoft, though...you have to read loads of pages of guff until
you can guess at the true story!

Anyone tried Xwin/Xming on Vista?

And then there is the possibility that loads of people may abandon Microsoft
desktops when/if Apple move to Intel processors on cheap machines, or Gnome
and/or KDE become de rigueur (pigs may fly).

I vote for coding/maintenance for 2000/2003/XP and Vista for the time being,
and can only test on 2003/XP.

Colin Harrison


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Alexander Gottwald
On Sun, 4 Sep 2005, Joe Krahn wrote:

 When I use the CVS defaults, only multi-window mode is built, so I 
 didn't see the #ifdef XWIN_MULTIWINDOW code compiled. Why is only one 
 version built? Is it rootless mode that gets excluded?

XWin has basicly 3 operation modes.

windowed (includes -rootless and -fullscreen)
-multiwindow
-externalwm and -internalwm

With rootless there is a name clash between the option -rootless (which
does hide the root window only) and the XServer rootless extension. 
The rootless extension assigns every window its own small framebuffer 
rather than a global one which occupies the whole screen.

so the XWIN_MULTIWINDOW refers to code specific to -multiwindow.
XWIN_MULTIWINDOWEXTWM refers to the externalwm and internalwm code and
the rootless extension.

The rootless code is still not ready since it does crash easily because
of memory access faults so it's not enable by default. Removing multiwindow
support has also been handy when I ported to mingw and had no threads 
support. Disabling multiwindow and clipboard support also removed the
pthread dependency.

bye
ago
BTW: We always tried to maintain support for all windows systems until Win95
by providing alternative code paths if available. The GetProcAddress feature
does help a lot. You should check out the code for EnumDisplayMonitors how
this can be achieved.
-- 
 [EMAIL PROTECTED] 
 http://www.gotti.org   ICQ: 126018723

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Colin Harrison
Hi,

Another decision is what executables and dlls are built in distributions?

Do we provide:-

1) Support for GL and Mesa only by two builds (current situation), where GL
version is faster but less universally applicable?
2) Support for builds of both Xwin and Xming from the same source tree?
3) Additional specialist builds...I do my own xc/config/cf file changes, for
instance, to optimise for Pentium processors and performance/codesize (~40%
improvements easily made)?

In the long run xorg is becoming modular (moving away from the original
monolithic structure, we build against), should this be taken on board
sooner or later?


Colin Harrison 


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Alexander Gottwald
On Mon, 5 Sep 2005, Colin Harrison wrote:

 Hi,
 
 Another decision is what executables and dlls are built in distributions?
 
 Do we provide:-

About the current status:

 1) Support for GL and Mesa only by two builds (current situation), where GL
 version is faster but less universally applicable?

There is ongoing work to add a layer between xserver glx code and the OpenGL 
library (native or mesa) which will make it possibe to switch at runtime.
The current code requires this decision at build/link time

 2) Support for builds of both Xwin and Xming from the same source tree?

It is already possible. The CYGWIN branch on freedesktop is only used for 
creating stable releases while the HEAD branch includes newer features like
the internalwm code and some changes to the multiwindow code but were still
evolving. Xming is built from HEAD because it required some changes to the 
code which I did not wanted to backport to the CYGWIN branch.

 3) Additional specialist builds...I do my own xc/config/cf file changes, for
 instance, to optimise for Pentium processors and performance/codesize (~40%
 improvements easily made)?
 
 In the long run xorg is becoming modular (moving away from the original
 monolithic structure, we build against), should this be taken on board
 sooner or later?

Some work is already done for building XWin from the modular tree but it is 
not working as expected. There will be a 6.9 _and_ 7.0 release the next months
where the feature set and code is identical but the build system is different.
With the current status only the 6.9 release will work for Cygwin but the 
monolithic tree will get abandoned in the next releases so following the 
modular path is a strict requirement.

bye
ago
-- 
 [EMAIL PROTECTED] 
 http://www.gotti.org   ICQ: 126018723

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Christopher Faylor
On Mon, Sep 05, 2005 at 07:59:19AM +0100, Colin Harrison wrote:
Joe Krahn wrote:
3) Decide if Win95/Me/NT/2000 need continued support.

Cygwin has dropped Me, Microsoft 95/98 (support 'till Jun 2006) and NT
(dead now even if you pay).

I think you mean Microsoft has dropped the above.  Cygwin still supports them.
We don't mirror Microsoft wrt what we support.

cgf

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Joe Krahn

Colin Harrison wrote:

Hi,

Another decision is what executables and dlls are built in distributions?

Do we provide:-

1) Support for GL and Mesa only by two builds (current situation), where GL
version is faster but less universally applicable?
There should be one build with both renderers, handled just like 
Indirect/Mesa versus DRI in other X servers.



2) Support for builds of both Xwin and Xming from the same source tree?
That will need separate versions of every object file, right? That is 
hard to do with the current design, but I have set up some Makefiles to 
prefix binary output files for multiple builds. I think this set up 
should really be more common, so one can build a Debug or Release 
versions without starting from scratch.



3) Additional specialist builds...I do my own xc/config/cf file changes, for
instance, to optimise for Pentium processors and performance/codesize (~40%
improvements easily made)?
I think these types of tweaks are supposed to be confined to site.def if 
the main .cf is done right, but it seems that nobody distributes 
multiple example site.defs. This probably fits into the multiple-build 
Makefile idea.




In the long run xorg is becoming modular (moving away from the original
monolithic structure, we build against), should this be taken on board
sooner or later?
I would say later. As long as things get tweaked, Cygwin is likely to 
get a lot of incompatible changes. Best to wait until it is very stable. 
But, meanwhile, code additions and clean-ups should keep modularization 
in mind.


Joe

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-05 Thread Joe Krahn

Peter Valdemar Morch wrote:

Joe Krahn jkrahn-at-nc.rr.com |Lists| wrote:


3) Decide if Win95/Me/NT/2000 need continued support.



Win 2000 - yes please...

OK, I was thinking this might be the one case where it may be needed for 
a while. Can you build and/or test code changes?


Thanks, Joe

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-04 Thread Colin Harrison
Hi,

All your diffs seem to work almost correctly (see below), but still testing.

In windialogs.c:-

Should SM_CXICONSM be SM_CXSMICON, SM_CYICONSM be SM_CYSMICON ?
Also had to remove the conditional on XWIN_MULTIWINDOW to get X icons

i.e.

--- my_windialogs.c 2005-09-03 22:36:08.0 +0100
+++ windialogs.c2005-09-04 11:44:22.0 +0100
@@ -213,18 +213,13 @@
0, 0,
SWP_NOSIZE);

-#if defined(XWIN_MULTIWINDOW)
-  hIcon = g_hIconX;
-  hIconSmall = g_hSmallIconX;
-#else
-  hIcon = LoadIcon (g_hInstance, MAKEINTRESOURCE(IDI_XWIN)));
+  hIcon = LoadIcon (g_hInstance, MAKEINTRESOURCE(IDI_XWIN));

   hIconSmall = LoadImage (g_hInstance,
MAKEINTRESOURCE(IDI_XWIN), IMAGE_ICON,
-   GetSystemMetrics(SM_CXICONSM),
-   GetSystemMetrics(SM_CYICONSM),
-   LR_SHARED));
-#endif
+   GetSystemMetrics(SM_CXSMICON),
+   GetSystemMetrics(SM_CYSMICON),
+   LR_SHARED);

   PostMessage (hwndDlg, WM_SETICON, ICON_BIG, (LPARAM) hIcon);
   PostMessage (hwndDlg, WM_SETICON, ICON_SMALL, (LPARAM) hIconSmall);

In winmultiwindowwindow.c:-
Get some unused variables warnings, I just removed them:-

--- my_winmultiwindowwindow.c   2005-09-04 11:13:28.0 +0100
+++ winmultiwindowwindow.c  2005-09-04 11:14:32.0 +0100
@@ -520,10 +520,6 @@
   winWindowPriv(pWin);
   HICONhIcon;
   HICONhIconSmall;
-#define CLASS_NAME_LENGTH 512
-  char  pszClass[CLASS_NAME_LENGTH], pszWindowID[12];
-  char  *res_name, *res_class, *res_role;
-  static int   s_iWindowID = 0;
   winPrivScreenPtr pScreenPriv = pWinPriv-pScreenPriv;
   WinXSizeHints hints;

@@ -610,11 +606,6 @@
 {
   MSG  msg;
   winWindowPriv(pWin);
-  HICONhiconClass;
-  HICONhiconSmClass;
-  HMODULE  hInstance;
-  int  iReturn;
-  char pszClass[512];
   BOOL oldstate = winInDestroyWindowsWindow;

 #if CYGMULTIWINDOW_DEBUG

In winmultiwindowicons.c

(LPARAM) cast missing in 
 hIconOld = (HICON) SendMessage (pWinPriv-hWnd,
 WM_SETICON, ICON_SMALL, hIconSmall);

We probably need to work through bugzilla to get these changes into the xorg
tree?

Thanks
Colin Harrison


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-04 Thread Joe Krahn

Colin Harrison wrote:

Hi,

All your diffs seem to work almost correctly (see below), but still testing.

In windialogs.c:-

Should SM_CXICONSM be SM_CXSMICON, SM_CYICONSM be SM_CYSMICON ?
Also had to remove the conditional on XWIN_MULTIWINDOW to get X icons

It looks like that part of the code was #ifdef'ed out for 
XWIN_MULTIWINDOW. The intent was to use the two global overridable X 
icons for multiwindow mode, and get icons from the resources for other 
build modes.


Maybe the multi-window mode needs to revert to resource icons if the 
global icons being undefined. I had set an override icon.


As for Bugzilla, I would like to get a few more icon features tested, 
but maybe it's best to get bug-fixes sent in before trying enhancements.


When I use the CVS defaults, only multi-window mode is built, so I 
didn't see the #ifdef XWIN_MULTIWINDOW code compiled. Why is only one 
version built? Is it rootless mode that gets excluded?


Joe

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-04 Thread Colin Harrison
Joe Krahn wrote:

 When I use the CVS defaults, only multi-window mode is built, so I didn't
see the #ifdef XWIN_MULTIWINDOW code compiled. Why is only one version
built? Is it rootless mode that gets excluded?

Mystery to me..the code is loaded with many ifdef's, the use of which is
probably 'just-in-case' legacy stuff.
Loosing a few as things are changed is maybe a good idea now.

I only use GLX built versions and:- 

start Xwin :%DISNO% -emulate3buttons -multiwindow -clipboard
-silent-dup-error -clipupdates 5 -fp tcp/%XFT%:7100 -xkbmodel pc105
-xkblayout g

or

start Xwin :%DISNO% -notrayicon -lesspointer -screen 0 1024x768+125+100
-query %XFT% -emulate3buttons -fp tcp/%XFT%:7100 -xkbmodel pc105 -xkblayout
gb

where XFT is a linux font server
and DISTNO is the display 0,1,3 etc

So my coding and testing tends not to stray beyond these uses, locales or
into 'unix' window managers. All my X windows are also from remote linux
clients (typically without graphics cards). Using bugzilla may mop up a few
people with broader needs. I've also noticed that recent xorg tree changes
blow us out of the water..I just had a problem with Xming loosing xkb stuff
for instance, so Xwin changes can be driven from 'outside' this list's
scope, even if we change nothing!

Colin Harrison


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/



Re: Icon update .diff

2005-09-04 Thread Joe Krahn

Colin Harrison wrote:

Joe Krahn wrote:



When I use the CVS defaults, only multi-window mode is built, so I didn't
see the #ifdef XWIN_MULTIWINDOW code compiled. Why is only one version
built? Is it rootless mode that gets excluded?


Mystery to me..the code is loaded with many ifdef's, the use of which is
probably 'just-in-case' legacy stuff.
Loosing a few as things are changed is maybe a good idea now.

I was wondering about things like global icons (g_hIcon) which are 
#ifdef'ed in shared code to be used with XWIN_MULTIWINDOW, yet only the 
multiwindow code sets these icons.


I guess there's a need for a round of overall code clean up. But, it 
works right now, so the incentive is small.


It seems to me that it needs:

1) A review of globals, with true globals being made uniform across the 
root-window[less] modes, and other not-so-globals made non-global.


2) Get rid of unused 'legacy' #ifdef code.

3) Decide if Win95/Me/NT/2000 need continued support.

4) Reorganize files: get rid of the common win- prefix, and replace 
mode-specific prefixes with a directory, so xwin/winmultiwindowicons.c 
becomes xwin/multiwindow/icons.c.


I think these could be done successfully without too much effort. But, 
these need some maintainer decisions first.


Joe

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ:   http://x.cygwin.com/docs/faq/