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]

XWinrc configurable server (menus/icons)


Howdy Harold,
At 07:31 PM 8/5/2003 -0400, you wrote:
Can't remember if I replied to this yet. I am in the process of getting my Inspiron 8500 returned after having it replaced (bought it 3 weeks ago). Both the original and the replacement randomly freeze. Google for ["Inspiron 8500" freeze] and you'll see exactly what I mean. I have been setting up computers for the past two weeks now.
I have finally ordered a Gateway 450X notebook. Hopefully that will work better and allow me to spend a little more time looking at patches.

Good luck, on the bright side since it went south so fast you didn't lose too much data on the drives.

In other words, I might look at your patch tomorrow, or I might look at it next week. Can't say for sure.
In any case, thanks for the patch, I like the idea and am looking forward to seeing what it does.

No rush. But just delete the tar file I sent yesterday, that was really just
a parser that read the config file. It took a few hours of futzing around today,
but I got it nicely integrated into the server. Now on init it parses ~/.XWinrc
or /usr/X11R6/lib/X11/system.XWinrc and makes custom menus and submenus for
the taskbar icon and each window, and can replace icons with ones specified
in the rc file.


I'm attaching the diffs against test95 below, please use these for any testing
you do (there are several new files, so if patch asks: you do want to make new
files...).  The file _usr_X11R6_lib_X11_system.XWinrc has all the documentation
on the RC format anyone'd need.  If the file's not found, you get the exact
same behaviour as test95 as far as menus/icons/etc.

** There's also a off-by-one bugfix in winmultiwindowclass.c, so no matter
what that file's changes should go in... **

Oh yeah, a simple "if (fork()==0) { execl(); exit(0); }" seems to spawn X and
Windoze apps fine.  I know there was some discussion about this earlier...

Below's the sample config that I'm running that replaces the X.ico with one that's
floating in my Windows directory, and replaces Xterm's with another, and adds
custom menus to Xterm, all other windows, and the toolbar window...


---
// Below are just some silly menus to demonstrate writing your
// own configuration file.

// Make some menus...
menu importantapps {
        xsol    exec    "xsol -display 127.0.0.1:0.0"
        xv      exec    "xv -display 127.0.0.1:0.0"
}

menu root {
// Comments fit here, too...
        xterm   exec    "xterm -display 127.0.0.1:0.0"
        notepad exec    notepad
        xload   exec    "xload -display 127.0.0.1:0.0"  # Comment
        separator
        "Good Apps"     menu    importantapps
        SEParATOR
}

menu aot {
        Separator
        "Always on Top" alwaysontop
}

menu xtermspecial {
        "Emacs"         exec    "emacs" # test
        "Always on Top" alwaysontop
        SepArAtor
}

RootMenu root

DefaultSysMenu aot atend

SysMenu {
        "xterm" xtermspecial atstart
}

IconDirectory "c:\winnt\"

DefaultIcon "reinstall.ico"

Icons {
        "xterm" "uninstall.ico"
}

DEBUG "Done parsing the configuration file..."
---

-Earle F. Philhower, III
 earle@ziplabel.com
 cdrlabel - ZipLabel - FlpLabel
 http://www.cdrlabel.com

Attachment: xwinrc.diffs.bz2
Description: Binary data


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