summaryrefslogtreecommitdiff
path: root/src/parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse.c')
-rw-r--r--src/parse.c1629
1 files changed, 839 insertions, 790 deletions
diff --git a/src/parse.c b/src/parse.c
index 044e02c..d81c2f3 100644
--- a/src/parse.c
+++ b/src/parse.c
@@ -49,7 +49,6 @@ in this Software without prior written authorization from The Open Group.
/** OR PERFORMANCE OF THIS SOFTWARE. **/
/*****************************************************************************/
-
/***********************************************************************
*
* parse the .twmrc file
@@ -78,30 +77,30 @@ in this Software without prior written authorization from The Open Group.
static FILE *twmrc;
static int ptr = 0;
static int len = 0;
-static unsigned char buff[BUF_LEN+1];
-static unsigned char overflowbuff[20]; /* really only need one */
+static unsigned char buff[BUF_LEN + 1];
+static unsigned char overflowbuff[20]; /* really only need one */
static int overflowlen;
static unsigned char **stringListSource, *currentString;
-static int doparse ( int (*ifunc)(void), const char *srctypename, const char *srcname );
-static int twmFileInput ( void );
-static int twmStringListInput ( void );
-static int ParseUsePPosition ( char *s );
-static int ParseStringList ( unsigned char **sl );
+static int doparse(int (*ifunc) (void), const char *srctypename,
+ const char *srcname);
+static int twmFileInput(void);
+static int twmStringListInput(void);
+static int ParseUsePPosition(char *s);
+static int ParseStringList(unsigned char **sl);
extern int yylineno;
-int ConstrainedMoveTime = 400; /* milliseconds, event times */
-
-int (*twmInputFunc)(void);
+int ConstrainedMoveTime = 400; /* milliseconds, event times */
+int (*twmInputFunc) (void);
/**
* parse the .twmrc file
* \param filename the filename to parse. NULL indicates $HOME/.twmrc
*/
-static int doparse (int (*ifunc)(void),
- const char *srctypename, const char *srcname)
+static int
+doparse(int (*ifunc) (void), const char *srctypename, const char *srcname)
{
mods = 0;
ptr = 0;
@@ -114,50 +113,50 @@ static int doparse (int (*ifunc)(void),
yyparse();
if (Scr->PointerForeground.pixel != Scr->Black ||
- Scr->PointerBackground.pixel != Scr->White)
- {
- XRecolorCursor(dpy, UpperLeftCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, RightButt,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, LeftButt,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, MiddleButt,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->FrameCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->TitleCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->IconCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->IconMgrCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->MoveCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->ResizeCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->MenuCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->ButtonCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->WaitCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->SelectCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
- XRecolorCursor(dpy, Scr->DestroyCursor,
- &Scr->PointerForeground, &Scr->PointerBackground);
+ Scr->PointerBackground.pixel != Scr->White) {
+ XRecolorCursor(dpy, UpperLeftCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, RightButt,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, LeftButt,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, MiddleButt,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->FrameCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->TitleCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->IconCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->IconMgrCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->MoveCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->ResizeCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->MenuCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->ButtonCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->WaitCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->SelectCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
+ XRecolorCursor(dpy, Scr->DestroyCursor,
+ &Scr->PointerForeground, &Scr->PointerBackground);
}
if (ParseError) {
- fprintf (stderr, "%s: errors found in twm %s",
- ProgramName, srctypename);
- if (srcname) fprintf (stderr, " \"%s\"", srcname);
- fprintf (stderr, "\n");
+ fprintf(stderr, "%s: errors found in twm %s",
+ ProgramName, srctypename);
+ if (srcname)
+ fprintf(stderr, " \"%s\"", srcname);
+ fprintf(stderr, "\n");
}
return (ParseError ? 0 : 1);
}
-
-int ParseTwmrc (char *filename)
+int
+ParseTwmrc(char *filename)
{
int i;
char *home = NULL;
@@ -170,122 +169,127 @@ int ParseTwmrc (char *filename)
* try system.twmrc; finally using built-in defaults.
*/
for (twmrc = NULL, i = 0; !twmrc && i < 4; i++) {
- switch (i) {
- case 0: /* -f filename */
- cp = filename;
- break;
-
- case 1: /* ~/.twmrc.screennum */
- if (!filename) {
- home = getenv ("HOME");
- if (home) {
- homelen = (int)strlen (home);
- cp = tmpfilename;
- (void) snprintf (tmpfilename, sizeof(tmpfilename),
- "%s/.twmrc.%d", home, Scr->screen);
- break;
- }
- }
- continue;
-
- case 2: /* ~/.twmrc */
- if (home) {
- tmpfilename[homelen + 7] = '\0';
- }
- break;
-
- case 3: /* system.twmrc */
- cp = SYSTEM_INIT_FILE;
- break;
- }
-
- if (cp) twmrc = fopen (cp, "r");
+ switch (i) {
+ case 0: /* -f filename */
+ cp = filename;
+ break;
+
+ case 1: /* ~/.twmrc.screennum */
+ if (!filename) {
+ home = getenv("HOME");
+ if (home) {
+ homelen = (int) strlen(home);
+ cp = tmpfilename;
+ (void) snprintf(tmpfilename, sizeof(tmpfilename),
+ "%s/.twmrc.%d", home, Scr->screen);
+ break;
+ }
+ }
+ continue;
+
+ case 2: /* ~/.twmrc */
+ if (home) {
+ tmpfilename[homelen + 7] = '\0';
+ }
+ break;
+
+ case 3: /* system.twmrc */
+ cp = SYSTEM_INIT_FILE;
+ break;
+ }
+
+ if (cp)
+ twmrc = fopen(cp, "r");
}
if (twmrc) {
- int status;
-
- if (filename && cp != filename) {
- fprintf (stderr,
- "%s: unable to open twmrc file %s, using %s instead\n",
- ProgramName, filename, cp);
- }
- status = doparse (twmFileInput, "file", cp);
- fclose (twmrc);
- return status;
- } else {
- if (filename) {
- fprintf (stderr,
- "%s: unable to open twmrc file %s, using built-in defaults instead\n",
- ProgramName, filename);
- }
- return ParseStringList (defTwmrc);
+ int status;
+
+ if (filename && cp != filename) {
+ fprintf(stderr,
+ "%s: unable to open twmrc file %s, using %s instead\n",
+ ProgramName, filename, cp);
+ }
+ status = doparse(twmFileInput, "file", cp);
+ fclose(twmrc);
+ return status;
+ }
+ else {
+ if (filename) {
+ fprintf(stderr,
+ "%s: unable to open twmrc file %s, using built-in defaults instead\n",
+ ProgramName, filename);
+ }
+ return ParseStringList(defTwmrc);
}
}
-static int ParseStringList (unsigned char **sl)
+static int
+ParseStringList(unsigned char **sl)
{
stringListSource = sl;
currentString = *sl;
- return doparse (twmStringListInput, "string list", (char *)NULL);
+ return doparse(twmStringListInput, "string list", (char *) NULL);
}
-
/**
* redefinition of the lex input routine for file input
*
* \return the next input character
*/
-static int twmFileInput(void)
+static int
+twmFileInput(void)
{
- if (overflowlen) return (int) overflowbuff[--overflowlen];
+ if (overflowlen)
+ return (int) overflowbuff[--overflowlen];
- while (ptr == len)
- {
- if (fgets((char *) buff, BUF_LEN, twmrc) == NULL)
- return 0;
+ while (ptr == len) {
+ if (fgets((char *) buff, BUF_LEN, twmrc) == NULL)
+ return 0;
- ptr = 0;
- len = (int)strlen((char *) buff);
+ ptr = 0;
+ len = (int) strlen((char *) buff);
}
- return ((int)buff[ptr++]);
+ return ((int) buff[ptr++]);
}
-static int twmStringListInput(void)
+static int
+twmStringListInput(void)
{
- if (overflowlen) return (int) overflowbuff[--overflowlen];
+ if (overflowlen)
+ return (int) overflowbuff[--overflowlen];
/*
* return the character currently pointed to
*/
if (currentString) {
- unsigned int c = (unsigned int) *currentString++;
+ unsigned int c = (unsigned int) *currentString++;
- if (c) return (int)c; /* if non-nul char */
- currentString = *++stringListSource; /* advance to next bol */
- return '\n'; /* but say that we hit last eol */
+ if (c)
+ return (int) c; /* if non-nul char */
+ currentString = *++stringListSource; /* advance to next bol */
+ return '\n'; /* but say that we hit last eol */
}
- return 0; /* eof */
+ return 0; /* eof */
}
-
/*
* redefinition of the lex unput routine
*
* \param c the character to push back onto the input stream
*/
-void twmUnput (int c)
+void
+twmUnput(int c)
{
- if ((size_t)overflowlen < sizeof overflowbuff) {
- overflowbuff[overflowlen++] = (unsigned char) c;
- } else {
- twmrc_error_prefix ();
- fprintf (stderr, "unable to unput character (%d)\n",
- c);
+ if ((size_t) overflowlen < sizeof overflowbuff) {
+ overflowbuff[overflowlen++] = (unsigned char) c;
+ }
+ else {
+ twmrc_error_prefix();
+ fprintf(stderr, "unable to unput character (%d)\n", c);
}
}
-
/**
* redefinition of the lex output routine
*
@@ -298,7 +302,6 @@ TwmOutput(int c)
putchar(c);
}
-
/**********************************************************************
* Parsing table and routines
***********************************************************************/
@@ -309,633 +312,666 @@ typedef struct _TwmKeyword {
int subnum;
} TwmKeyword;
-#define kw0_NoDefaults 1
-#define kw0_AutoRelativeResize 2
-#define kw0_ForceIcons 3
-#define kw0_NoIconManagers 4
-#define kw0_OpaqueMove 5
-#define kw0_InterpolateMenuColors 6
-#define kw0_NoVersion 7
-#define kw0_SortIconManager 8
-#define kw0_NoGrabServer 9
-#define kw0_NoMenuShadows 10
-#define kw0_NoRaiseOnMove 11
-#define kw0_NoRaiseOnResize 12
-#define kw0_NoRaiseOnDeiconify 13
-#define kw0_DontMoveOff 14
-#define kw0_NoBackingStore 15
-#define kw0_NoSaveUnders 16
-#define kw0_RestartPreviousState 17
-#define kw0_ClientBorderWidth 18
-#define kw0_NoTitleFocus 19
-#define kw0_RandomPlacement 20
-#define kw0_DecorateTransients 21
-#define kw0_ShowIconManager 22
-#define kw0_NoCaseSensitive 23
-#define kw0_NoRaiseOnWarp 24
-#define kw0_WarpUnmapped 25
-
-#define kws_UsePPosition 1
-#define kws_IconFont 2
-#define kws_ResizeFont 3
-#define kws_MenuFont 4
-#define kws_TitleFont 5
-#define kws_IconManagerFont 6
-#define kws_UnknownIcon 7
-#define kws_IconDirectory 8
-#define kws_MaxWindowSize 9
-
-#define kwn_ConstrainedMoveTime 1
-#define kwn_MoveDelta 2
-#define kwn_XorValue 3
-#define kwn_FramePadding 4
-#define kwn_TitlePadding 5
-#define kwn_ButtonIndent 6
-#define kwn_BorderWidth 7
-#define kwn_IconBorderWidth 8
-#define kwn_TitleButtonBorderWidth 9
-#define kwn_Priority 10
-#define kwn_MenuBorderWidth 11
-
-#define kwcl_BorderColor 1
-#define kwcl_IconManagerHighlight 2
-#define kwcl_BorderTileForeground 3
-#define kwcl_BorderTileBackground 4
-#define kwcl_TitleForeground 5
-#define kwcl_TitleBackground 6
-#define kwcl_IconForeground 7
-#define kwcl_IconBackground 8
-#define kwcl_IconBorderColor 9
-#define kwcl_IconManagerForeground 10
-#define kwcl_IconManagerBackground 11
-
-#define kwc_DefaultForeground 1
-#define kwc_DefaultBackground 2
-#define kwc_MenuForeground 3
-#define kwc_MenuBackground 4
-#define kwc_MenuTitleForeground 5
-#define kwc_MenuTitleBackground 6
-#define kwc_MenuShadowColor 7
-#define kwc_PointerForeground 8
-#define kwc_PointerBackground 9
-#define kwc_MenuBorderColor 10
-
+#define kw0_NoDefaults 1
+#define kw0_AutoRelativeResize 2
+#define kw0_ForceIcons 3
+#define kw0_NoIconManagers 4
+#define kw0_OpaqueMove 5
+#define kw0_InterpolateMenuColors 6
+#define kw0_NoVersion 7
+#define kw0_SortIconManager 8
+#define kw0_NoGrabServer 9
+#define kw0_NoMenuShadows 10
+#define kw0_NoRaiseOnMove 11
+#define kw0_NoRaiseOnResize 12
+#define kw0_NoRaiseOnDeiconify 13
+#define kw0_DontMoveOff 14
+#define kw0_NoBackingStore 15
+#define kw0_NoSaveUnders 16
+#define kw0_RestartPreviousState 17
+#define kw0_ClientBorderWidth 18
+#define kw0_NoTitleFocus 19
+#define kw0_RandomPlacement 20
+#define kw0_DecorateTransients 21
+#define kw0_ShowIconManager 22
+#define kw0_NoCaseSensitive 23
+#define kw0_NoRaiseOnWarp 24
+#define kw0_WarpUnmapped 25
+
+#define kws_UsePPosition 1
+#define kws_IconFont 2
+#define kws_ResizeFont 3
+#define kws_MenuFont 4
+#define kws_TitleFont 5
+#define kws_IconManagerFont 6
+#define kws_UnknownIcon 7
+#define kws_IconDirectory 8
+#define kws_MaxWindowSize 9
+
+#define kwn_ConstrainedMoveTime 1
+#define kwn_MoveDelta 2
+#define kwn_XorValue 3
+#define kwn_FramePadding 4
+#define kwn_TitlePadding 5
+#define kwn_ButtonIndent 6
+#define kwn_BorderWidth 7
+#define kwn_IconBorderWidth 8
+#define kwn_TitleButtonBorderWidth 9
+#define kwn_Priority 10
+#define kwn_MenuBorderWidth 11
+
+#define kwcl_BorderColor 1
+#define kwcl_IconManagerHighlight 2
+#define kwcl_BorderTileForeground 3
+#define kwcl_BorderTileBackground 4
+#define kwcl_TitleForeground 5
+#define kwcl_TitleBackground 6
+#define kwcl_IconForeground 7
+#define kwcl_IconBackground 8
+#define kwcl_IconBorderColor 9
+#define kwcl_IconManagerForeground 10
+#define kwcl_IconManagerBackground 11
+
+#define kwc_DefaultForeground 1
+#define kwc_DefaultBackground 2
+#define kwc_MenuForeground 3
+#define kwc_MenuBackground 4
+#define kwc_MenuTitleForeground 5
+#define kwc_MenuTitleBackground 6
+#define kwc_MenuShadowColor 7
+#define kwc_PointerForeground 8
+#define kwc_PointerBackground 9
+#define kwc_MenuBorderColor 10
/*
* The following is sorted alphabetically according to name (which must be
* in lowercase and only contain the letters a-z). It is fed to a binary
* search to parse keywords.
*/
+/* *INDENT-OFF* */
static TwmKeyword keytable[] = {
- { "all", ALL, 0 },
- { "autoraise", AUTO_RAISE, 0 },
- { "autorelativeresize", KEYWORD, kw0_AutoRelativeResize },
- { "bordercolor", CLKEYWORD, kwcl_BorderColor },
- { "bordertilebackground", CLKEYWORD, kwcl_BorderTileBackground },
- { "bordertileforeground", CLKEYWORD, kwcl_BorderTileForeground },
- { "borderwidth", NKEYWORD, kwn_BorderWidth },
- { "button", BUTTON, 0 },
- { "buttonindent", NKEYWORD, kwn_ButtonIndent },
- { "c", CONTROL, 0 },
- { "center", JKEYWORD, J_CENTER },
- { "clientborderwidth", KEYWORD, kw0_ClientBorderWidth },
- { "color", COLOR, 0 },
- { "constrainedmovetime", NKEYWORD, kwn_ConstrainedMoveTime },
- { "control", CONTROL, 0 },
- { "cursors", CURSORS, 0 },
- { "decoratetransients", KEYWORD, kw0_DecorateTransients },
- { "defaultbackground", CKEYWORD, kwc_DefaultBackground },
- { "defaultforeground", CKEYWORD, kwc_DefaultForeground },
- { "defaultfunction", DEFAULT_FUNCTION, 0 },
- { "destroy", KILL, 0 },
- { "donticonifybyunmapping", DONT_ICONIFY_BY_UNMAPPING, 0 },
- { "dontmoveoff", KEYWORD, kw0_DontMoveOff },
- { "dontsqueezetitle", DONT_SQUEEZE_TITLE, 0 },
- { "east", DKEYWORD, D_EAST },
- { "f", FRAME, 0 },
- { "f.autoraise", FKEYWORD, F_AUTORAISE },
- { "f.backiconmgr", FKEYWORD, F_BACKICONMGR },
- { "f.beep", FKEYWORD, F_BEEP },
- { "f.bottomzoom", FKEYWORD, F_BOTTOMZOOM },
- { "f.circledown", FKEYWORD, F_CIRCLEDOWN },
- { "f.circleup", FKEYWORD, F_CIRCLEUP },
- { "f.colormap", FSKEYWORD, F_COLORMAP },
- { "f.cut", FSKEYWORD, F_CUT },
- { "f.cutfile", FKEYWORD, F_CUTFILE },
- { "f.deiconify", FKEYWORD, F_DEICONIFY },
- { "f.delete", FKEYWORD, F_DELETE },
- { "f.deltastop", FKEYWORD, F_DELTASTOP },
- { "f.destroy", FKEYWORD, F_DESTROY },
- { "f.downiconmgr", FKEYWORD, F_DOWNICONMGR },
- { "f.exec", FSKEYWORD, F_EXEC },
- { "f.file", FSKEYWORD, F_FILE },
- { "f.focus", FKEYWORD, F_FOCUS },
- { "f.forcemove", FKEYWORD, F_FORCEMOVE },
- { "f.forwiconmgr", FKEYWORD, F_FORWICONMGR },
- { "f.fullzoom", FKEYWORD, F_FULLZOOM },
- { "f.function", FSKEYWORD, F_FUNCTION },
- { "f.hbzoom", FKEYWORD, F_BOTTOMZOOM },
- { "f.hideiconmgr", FKEYWORD, F_HIDELIST },
- { "f.horizoom", FKEYWORD, F_HORIZOOM },
- { "f.htzoom", FKEYWORD, F_TOPZOOM },
- { "f.hzoom", FKEYWORD, F_HORIZOOM },
- { "f.iconify", FKEYWORD, F_ICONIFY },
- { "f.identify", FKEYWORD, F_IDENTIFY },
- { "f.lefticonmgr", FKEYWORD, F_LEFTICONMGR },
- { "f.leftzoom", FKEYWORD, F_LEFTZOOM },
- { "f.lower", FKEYWORD, F_LOWER },
- { "f.menu", FSKEYWORD, F_MENU },
- { "f.move", FKEYWORD, F_MOVE },
- { "f.nexticonmgr", FKEYWORD, F_NEXTICONMGR },
- { "f.nop", FKEYWORD, F_NOP },
- { "f.previconmgr", FKEYWORD, F_PREVICONMGR },
- { "f.priority", FSKEYWORD, F_PRIORITY },
- { "f.quit", FKEYWORD, F_QUIT },
- { "f.raise", FKEYWORD, F_RAISE },
- { "f.raiselower", FKEYWORD, F_RAISELOWER },
- { "f.refresh", FKEYWORD, F_REFRESH },
- { "f.resize", FKEYWORD, F_RESIZE },
- { "f.restart", FKEYWORD, F_RESTART },
- { "f.righticonmgr", FKEYWORD, F_RIGHTICONMGR },
- { "f.rightzoom", FKEYWORD, F_RIGHTZOOM },
- { "f.saveyourself", FKEYWORD, F_SAVEYOURSELF },
- { "f.showiconmgr", FKEYWORD, F_SHOWLIST },
- { "f.sorticonmgr", FKEYWORD, F_SORTICONMGR },
- { "f.source", FSKEYWORD, F_BEEP }, /* XXX - don't work */
- { "f.startwm", FSKEYWORD, F_STARTWM },
- { "f.title", FKEYWORD, F_TITLE },
- { "f.topzoom", FKEYWORD, F_TOPZOOM },
- { "f.twmrc", FKEYWORD, F_RESTART },
- { "f.unfocus", FKEYWORD, F_UNFOCUS },
- { "f.upiconmgr", FKEYWORD, F_UPICONMGR },
- { "f.version", FKEYWORD, F_VERSION },
- { "f.vlzoom", FKEYWORD, F_LEFTZOOM },
- { "f.vrzoom", FKEYWORD, F_RIGHTZOOM },
- { "f.warpnext", FKEYWORD, F_WARPNEXT },
- { "f.warpprev", FKEYWORD, F_WARPPREV },
- { "f.warpring", FSKEYWORD, F_WARPRING },
- { "f.warpto", FSKEYWORD, F_WARPTO },
- { "f.warptoiconmgr", FSKEYWORD, F_WARPTOICONMGR },
- { "f.warptoscreen", FSKEYWORD, F_WARPTOSCREEN },
- { "f.winrefresh", FKEYWORD, F_WINREFRESH },
- { "f.zoom", FKEYWORD, F_ZOOM },
- { "forceicons", KEYWORD, kw0_ForceIcons },
- { "frame", FRAME, 0 },
- { "framepadding", NKEYWORD, kwn_FramePadding },
- { "function", FUNCTION, 0 },
- { "grayscale", GRAYSCALE, 0 },
- { "greyscale", GRAYSCALE, 0 },
- { "i", ICON, 0 },
- { "icon", ICON, 0 },
- { "iconbackground", CLKEYWORD, kwcl_IconBackground },
- { "iconbordercolor", CLKEYWORD, kwcl_IconBorderColor },
- { "iconborderwidth", NKEYWORD, kwn_IconBorderWidth },
- { "icondirectory", SKEYWORD, kws_IconDirectory },
- { "iconfont", SKEYWORD, kws_IconFont },
- { "iconforeground", CLKEYWORD, kwcl_IconForeground },
- { "iconifybyunmapping", ICONIFY_BY_UNMAPPING, 0 },
- { "iconmanagerbackground", CLKEYWORD, kwcl_IconManagerBackground },
- { "iconmanagerdontshow", ICONMGR_NOSHOW, 0 },
- { "iconmanagerfont", SKEYWORD, kws_IconManagerFont },
- { "iconmanagerforeground", CLKEYWORD, kwcl_IconManagerForeground },
- { "iconmanagergeometry", ICONMGR_GEOMETRY, 0 },
- { "iconmanagerhighlight", CLKEYWORD, kwcl_IconManagerHighlight },
- { "iconmanagers", ICONMGRS, 0 },
- { "iconmanagershow", ICONMGR_SHOW, 0 },
- { "iconmgr", ICONMGR, 0 },
- { "iconregion", ICON_REGION, 0 },
- { "icons", ICONS, 0 },
- { "interpolatemenucolors", KEYWORD, kw0_InterpolateMenuColors },
- { "l", LOCK, 0 },
- { "left", JKEYWORD, J_LEFT },
- { "lefttitlebutton", LEFT_TITLEBUTTON, 0 },
- { "lock", LOCK, 0 },
- { "m", META, 0 },
- { "maketitle", MAKE_TITLE, 0 },
- { "maxwindowsize", SKEYWORD, kws_MaxWindowSize },
- { "menu", MENU, 0 },
- { "menubackground", CKEYWORD, kwc_MenuBackground },
- { "menubordercolor", CKEYWORD, kwc_MenuBorderColor },
- { "menuborderwidth", NKEYWORD, kwn_MenuBorderWidth },
- { "menufont", SKEYWORD, kws_MenuFont },
- { "menuforeground", CKEYWORD, kwc_MenuForeground },
- { "menushadowcolor", CKEYWORD, kwc_MenuShadowColor },
- { "menutitlebackground", CKEYWORD, kwc_MenuTitleBackground },
- { "menutitleforeground", CKEYWORD, kwc_MenuTitleForeground },
- { "meta", META, 0 },
- { "mod", META, 0 }, /* fake it */
- { "monochrome", MONOCHROME, 0 },
- { "move", MOVE, 0 },
- { "movedelta", NKEYWORD, kwn_MoveDelta },
- { "nobackingstore", KEYWORD, kw0_NoBackingStore },
- { "nocasesensitive", KEYWORD, kw0_NoCaseSensitive },
- { "nodefaults", KEYWORD, kw0_NoDefaults },
- { "nograbserver", KEYWORD, kw0_NoGrabServer },
- { "nohighlight", NO_HILITE, 0 },
- { "noiconmanagers", KEYWORD, kw0_NoIconManagers },
- { "nomenushadows", KEYWORD, kw0_NoMenuShadows },
- { "noraiseondeiconify", KEYWORD, kw0_NoRaiseOnDeiconify },
- { "noraiseonmove", KEYWORD, kw0_NoRaiseOnMove },
- { "noraiseonresize", KEYWORD, kw0_NoRaiseOnResize },
- { "noraiseonwarp", KEYWORD, kw0_NoRaiseOnWarp },
- { "north", DKEYWORD, D_NORTH },
- { "nosaveunders", KEYWORD, kw0_NoSaveUnders },
- { "nostackmode", NO_STACKMODE, 0 },
- { "notitle", NO_TITLE, 0 },
- { "notitlefocus", KEYWORD, kw0_NoTitleFocus },
- { "notitlehighlight", NO_TITLE_HILITE, 0 },
- { "noversion", KEYWORD, kw0_NoVersion },
- { "opaquemove", KEYWORD, kw0_OpaqueMove },
- { "pixmaps", PIXMAPS, 0 },
- { "pointerbackground", CKEYWORD, kwc_PointerBackground },
- { "pointerforeground", CKEYWORD, kwc_PointerForeground },
- { "priority", NKEYWORD, kwn_Priority },
- { "r", ROOT, 0 },
- { "randomplacement", KEYWORD, kw0_RandomPlacement },
- { "resize", RESIZE, 0 },
- { "resizefont", SKEYWORD, kws_ResizeFont },
- { "restartpreviousstate", KEYWORD, kw0_RestartPreviousState },
- { "right", JKEYWORD, J_RIGHT },
- { "righttitlebutton", RIGHT_TITLEBUTTON, 0 },
- { "root", ROOT, 0 },
- { "s", SHIFT, 0 },
+ { "all", ALL, 0 },
+ { "autoraise", AUTO_RAISE, 0 },
+ { "autorelativeresize", KEYWORD, kw0_AutoRelativeResize },
+ { "bordercolor", CLKEYWORD, kwcl_BorderColor },
+ { "bordertilebackground", CLKEYWORD, kwcl_BorderTileBackground },
+ { "bordertileforeground", CLKEYWORD, kwcl_BorderTileForeground },
+ { "borderwidth", NKEYWORD, kwn_BorderWidth },
+ { "button", BUTTON, 0 },
+ { "buttonindent", NKEYWORD, kwn_ButtonIndent },
+ { "c", CONTROL, 0 },
+ { "center", JKEYWORD, J_CENTER },
+ { "clientborderwidth", KEYWORD, kw0_ClientBorderWidth },
+ { "color", COLOR, 0 },
+ { "constrainedmovetime", NKEYWORD, kwn_ConstrainedMoveTime },
+ { "control", CONTROL, 0 },
+ { "cursors", CURSORS, 0 },
+ { "decoratetransients", KEYWORD, kw0_DecorateTransients },
+ { "defaultbackground", CKEYWORD, kwc_DefaultBackground },
+ { "defaultforeground", CKEYWORD, kwc_DefaultForeground },
+ { "defaultfunction", DEFAULT_FUNCTION, 0 },
+ { "destroy", KILL, 0 },
+ { "donticonifybyunmapping", DONT_ICONIFY_BY_UNMAPPING, 0 },
+ { "dontmoveoff", KEYWORD, kw0_DontMoveOff },
+ { "dontsqueezetitle", DONT_SQUEEZE_TITLE, 0 },
+ { "east", DKEYWORD, D_EAST },
+ { "f", FRAME, 0 },
+ { "f.autoraise", FKEYWORD, F_AUTORAISE },
+ { "f.backiconmgr", FKEYWORD, F_BACKICONMGR },
+ { "f.beep", FKEYWORD, F_BEEP },
+ { "f.bottomzoom", FKEYWORD, F_BOTTOMZOOM },
+ { "f.circledown", FKEYWORD, F_CIRCLEDOWN },
+ { "f.circleup", FKEYWORD, F_CIRCLEUP },
+ { "f.colormap", FSKEYWORD, F_COLORMAP },
+ { "f.cut", FSKEYWORD, F_CUT },
+ { "f.cutfile", FKEYWORD, F_CUTFILE },
+ { "f.deiconify", FKEYWORD, F_DEICONIFY },
+ { "f.delete", FKEYWORD, F_DELETE },
+ { "f.deltastop", FKEYWORD, F_DELTASTOP },
+ { "f.destroy", FKEYWORD, F_DESTROY },
+ { "f.downiconmgr", FKEYWORD, F_DOWNICONMGR },
+ { "f.exec", FSKEYWORD, F_EXEC },
+ { "f.file", FSKEYWORD, F_FILE },
+ { "f.focus", FKEYWORD, F_FOCUS },
+ { "f.forcemove", FKEYWORD, F_FORCEMOVE },
+ { "f.forwiconmgr", FKEYWORD, F_FORWICONMGR },
+ { "f.fullzoom", FKEYWORD, F_FULLZOOM },
+ { "f.function", FSKEYWORD, F_FUNCTION },
+ { "f.hbzoom", FKEYWORD, F_BOTTOMZOOM },
+ { "f.hideiconmgr", FKEYWORD, F_HIDELIST },
+ { "f.horizoom", FKEYWORD, F_HORIZOOM },
+ { "f.htzoom", FKEYWORD, F_TOPZOOM },
+ { "f.hzoom", FKEYWORD, F_HORIZOOM },
+ { "f.iconify", FKEYWORD, F_ICONIFY },
+ { "f.identify", FKEYWORD, F_IDENTIFY },
+ { "f.lefticonmgr", FKEYWORD, F_LEFTICONMGR },
+ { "f.leftzoom", FKEYWORD, F_LEFTZOOM },
+ { "f.lower", FKEYWORD, F_LOWER },
+ { "f.menu", FSKEYWORD, F_MENU },
+ { "f.move", FKEYWORD, F_MOVE },
+ { "f.nexticonmgr", FKEYWORD, F_NEXTICONMGR },
+ { "f.nop", FKEYWORD, F_NOP },
+ { "f.previconmgr", FKEYWORD, F_PREVICONMGR },
+ { "f.priority", FSKEYWORD, F_PRIORITY },
+ { "f.quit", FKEYWORD, F_QUIT },
+ { "f.raise", FKEYWORD, F_RAISE },
+ { "f.raiselower", FKEYWORD, F_RAISELOWER },
+ { "f.refresh", FKEYWORD, F_REFRESH },
+ { "f.resize", FKEYWORD, F_RESIZE },
+ { "f.restart", FKEYWORD, F_RESTART },
+ { "f.righticonmgr", FKEYWORD, F_RIGHTICONMGR },
+ { "f.rightzoom", FKEYWORD, F_RIGHTZOOM },
+ { "f.saveyourself", FKEYWORD, F_SAVEYOURSELF },
+ { "f.showiconmgr", FKEYWORD, F_SHOWLIST },
+ { "f.sorticonmgr", FKEYWORD, F_SORTICONMGR },
+ { "f.source", FSKEYWORD, F_BEEP }, /* XXX - don't work */
+ { "f.startwm", FSKEYWORD, F_STARTWM },
+ { "f.title", FKEYWORD, F_TITLE },
+ { "f.topzoom", FKEYWORD, F_TOPZOOM },
+ { "f.twmrc", FKEYWORD, F_RESTART },
+ { "f.unfocus", FKEYWORD, F_UNFOCUS },
+ { "f.upiconmgr", FKEYWORD, F_UPICONMGR },
+ { "f.version", FKEYWORD, F_VERSION },
+ { "f.vlzoom", FKEYWORD, F_LEFTZOOM },
+ { "f.vrzoom", FKEYWORD, F_RIGHTZOOM },
+ { "f.warpnext", FKEYWORD, F_WARPNEXT },
+ { "f.warpprev", FKEYWORD, F_WARPPREV },
+ { "f.warpring", FSKEYWORD, F_WARPRING },
+ { "f.warpto", FSKEYWORD, F_WARPTO },
+ { "f.warptoiconmgr", FSKEYWORD, F_WARPTOICONMGR },
+ { "f.warptoscreen", FSKEYWORD, F_WARPTOSCREEN },
+ { "f.winrefresh", FKEYWORD, F_WINREFRESH },
+ { "f.zoom", FKEYWORD, F_ZOOM },
+ { "forceicons", KEYWORD, kw0_ForceIcons },
+ { "frame", FRAME, 0 },
+ { "framepadding", NKEYWORD, kwn_FramePadding },
+ { "function", FUNCTION, 0 },
+ { "grayscale", GRAYSCALE, 0 },
+ { "greyscale", GRAYSCALE, 0 },
+ { "i", ICON, 0 },
+ { "icon", ICON, 0 },
+ { "iconbackground", CLKEYWORD, kwcl_IconBackground },
+ { "iconbordercolor", CLKEYWORD, kwcl_IconBorderColor },
+ { "iconborderwidth", NKEYWORD, kwn_IconBorderWidth },
+ { "icondirectory", SKEYWORD, kws_IconDirectory },
+ { "iconfont", SKEYWORD, kws_IconFont },
+ { "iconforeground", CLKEYWORD, kwcl_IconForeground },
+ { "iconifybyunmapping", ICONIFY_BY_UNMAPPING, 0 },
+ { "iconmanagerbackground", CLKEYWORD, kwcl_IconManagerBackground },
+ { "iconmanagerdontshow", ICONMGR_NOSHOW, 0 },
+ { "iconmanagerfont", SKEYWORD, kws_IconManagerFont },
+ { "iconmanagerforeground", CLKEYWORD, kwcl_IconManagerForeground },
+ { "iconmanagergeometry", ICONMGR_GEOMETRY, 0 },
+ { "iconmanagerhighlight", CLKEYWORD, kwcl_IconManagerHighlight },
+ { "iconmanagers", ICONMGRS, 0 },
+ { "iconmanagershow", ICONMGR_SHOW, 0 },
+ { "iconmgr", ICONMGR, 0 },
+ { "iconregion", ICON_REGION, 0 },
+ { "icons", ICONS, 0 },
+ { "interpolatemenucolors", KEYWORD, kw0_InterpolateMenuColors },
+ { "l", LOCK, 0 },
+ { "left", JKEYWORD, J_LEFT },
+ { "lefttitlebutton", LEFT_TITLEBUTTON, 0 },
+ { "lock", LOCK, 0 },
+ { "m", META, 0 },
+ { "maketitle", MAKE_TITLE, 0 },
+ { "maxwindowsize", SKEYWORD, kws_MaxWindowSize },
+ { "menu", MENU, 0 },
+ { "menubackground", CKEYWORD, kwc_MenuBackground },
+ { "menubordercolor", CKEYWORD, kwc_MenuBorderColor },
+ { "menuborderwidth", NKEYWORD, kwn_MenuBorderWidth },
+ { "menufont", SKEYWORD, kws_MenuFont },
+ { "menuforeground", CKEYWORD, kwc_MenuForeground },
+ { "menushadowcolor", CKEYWORD, kwc_MenuShadowColor },
+ { "menutitlebackground", CKEYWORD, kwc_MenuTitleBackground },
+ { "menutitleforeground", CKEYWORD, kwc_MenuTitleForeground },
+ { "meta", META, 0 },
+ { "mod", META, 0 }, /* fake it */
+ { "monochrome", MONOCHROME, 0 },
+ { "move", MOVE, 0 },
+ { "movedelta", NKEYWORD, kwn_MoveDelta },
+ { "nobackingstore", KEYWORD, kw0_NoBackingStore },
+ { "nocasesensitive", KEYWORD, kw0_NoCaseSensitive },
+ { "nodefaults", KEYWORD, kw0_NoDefaults },
+ { "nograbserver", KEYWORD, kw0_NoGrabServer },
+ { "nohighlight", NO_HILITE, 0 },
+ { "noiconmanagers", KEYWORD, kw0_NoIconManagers },
+ { "nomenushadows", KEYWORD, kw0_NoMenuShadows },
+ { "noraiseondeiconify", KEYWORD, kw0_NoRaiseOnDeiconify },
+ { "noraiseonmove", KEYWORD, kw0_NoRaiseOnMove },
+ { "noraiseonresize", KEYWORD, kw0_NoRaiseOnResize },
+ { "noraiseonwarp", KEYWORD, kw0_NoRaiseOnWarp },
+ { "north", DKEYWORD, D_NORTH },
+ { "nosaveunders", KEYWORD, kw0_NoSaveUnders },
+ { "nostackmode", NO_STACKMODE, 0 },
+ { "notitle", NO_TITLE, 0 },
+ { "notitlefocus", KEYWORD, kw0_NoTitleFocus },
+ { "notitlehighlight", NO_TITLE_HILITE, 0 },
+ { "noversion", KEYWORD, kw0_NoVersion },
+ { "opaquemove", KEYWORD, kw0_OpaqueMove },
+ { "pixmaps", PIXMAPS, 0 },
+ { "pointerbackground", CKEYWORD, kwc_PointerBackground },
+ { "pointerforeground", CKEYWORD, kwc_PointerForeground },
+ { "priority", NKEYWORD, kwn_Priority },
+ { "r", ROOT, 0 },
+ { "randomplacement", KEYWORD, kw0_RandomPlacement },
+ { "resize", RESIZE, 0 },
+ { "resizefont", SKEYWORD, kws_ResizeFont },
+ { "restartpreviousstate", KEYWORD, kw0_RestartPreviousState },
+ { "right", JKEYWORD, J_RIGHT },
+ { "righttitlebutton", RIGHT_TITLEBUTTON, 0 },
+ { "root", ROOT, 0 },
+ { "s", SHIFT, 0 },
{ "savecolor", SAVECOLOR, 0},
- { "select", SELECT, 0 },
- { "shift", SHIFT, 0 },
- { "showiconmanager", KEYWORD, kw0_ShowIconManager },
- { "sorticonmanager", KEYWORD, kw0_SortIconManager },
- { "south", DKEYWORD, D_SOUTH },
- { "squeezetitle", SQUEEZE_TITLE, 0 },
- { "starticonified", START_ICONIFIED, 0 },
- { "t", TITLE, 0 },
- { "title", TITLE, 0 },
- { "titlebackground", CLKEYWORD, kwcl_TitleBackground },
- { "titlebuttonborderwidth", NKEYWORD, kwn_TitleButtonBorderWidth },
- { "titlefont", SKEYWORD, kws_TitleFont },
- { "titleforeground", CLKEYWORD, kwcl_TitleForeground },
- { "titlehighlight", TITLE_HILITE, 0 },
- { "titlepadding", NKEYWORD, kwn_TitlePadding },
- { "unknownicon", SKEYWORD, kws_UnknownIcon },
- { "usepposition", SKEYWORD, kws_UsePPosition },
- { "w", WINDOW, 0 },
- { "wait", WAIT, 0 },
- { "warpcursor", WARP_CURSOR, 0 },
- { "warpunmapped", KEYWORD, kw0_WarpUnmapped },
- { "west", DKEYWORD, D_WEST },
- { "window", WINDOW, 0 },
- { "windowfunction", WINDOW_FUNCTION, 0 },
- { "windowring", WINDOW_RING, 0 },
- { "xorvalue", NKEYWORD, kwn_XorValue },
- { "zoom", ZOOM, 0 },
+ { "select", SELECT, 0 },
+ { "shift", SHIFT, 0 },
+ { "showiconmanager", KEYWORD, kw0_ShowIconManager },
+ { "sorticonmanager", KEYWORD, kw0_SortIconManager },
+ { "south", DKEYWORD, D_SOUTH },
+ { "squeezetitle", SQUEEZE_TITLE, 0 },
+ { "starticonified", START_ICONIFIED, 0 },
+ { "t", TITLE, 0 },
+ { "title", TITLE, 0 },
+ { "titlebackground", CLKEYWORD, kwcl_TitleBackground },
+ { "titlebuttonborderwidth", NKEYWORD, kwn_TitleButtonBorderWidth },
+ { "titlefont", SKEYWORD, kws_TitleFont },
+ { "titleforeground", CLKEYWORD, kwcl_TitleForeground },
+ { "titlehighlight", TITLE_HILITE, 0 },
+ { "titlepadding", NKEYWORD, kwn_TitlePadding },
+ { "unknownicon", SKEYWORD, kws_UnknownIcon },
+ { "usepposition", SKEYWORD, kws_UsePPosition },
+ { "w", WINDOW, 0 },
+ { "wait", WAIT, 0 },
+ { "warpcursor", WARP_CURSOR, 0 },
+ { "warpunmapped", KEYWORD, kw0_WarpUnmapped },
+ { "west", DKEYWORD, D_WEST },
+ { "window", WINDOW, 0 },
+ { "windowfunction", WINDOW_FUNCTION, 0 },
+ { "windowring", WINDOW_RING, 0 },
+ { "xorvalue", NKEYWORD, kwn_XorValue },
+ { "zoom", ZOOM, 0 },
};
+/* *INDENT-ON* */
-static int numkeywords = (sizeof(keytable)/sizeof(keytable[0]));
+static int numkeywords = (sizeof(keytable) / sizeof(keytable[0]));
-int parse_keyword (char *s, int *nump)
+int
+parse_keyword(char *s, int *nump)
{
register int lower = 0, upper = numkeywords - 1;
- XmuCopyISOLatin1Lowered (s, s);
+ XmuCopyISOLatin1Lowered(s, s);
while (lower <= upper) {
int middle = (lower + upper) / 2;
- TwmKeyword *p = &keytable[middle];
- int res = strcmp (p->name, s);
+ TwmKeyword *p = &keytable[middle];
+ int res = strcmp(p->name, s);
if (res < 0) {
lower = middle + 1;
- } else if (res == 0) {
- *nump = p->subnum;
+ }
+ else if (res == 0) {
+ *nump = p->subnum;
return p->value;
- } else {
+ }
+ else {
upper = middle - 1;
}
}
return ERRORTOKEN;
}
-
-
/*
* action routines called by grammar
*/
-int do_single_keyword (int keyword)
+int
+do_single_keyword(int keyword)
{
switch (keyword) {
- case kw0_NoDefaults:
- Scr->NoDefaults = TRUE;
- return 1;
-
- case kw0_AutoRelativeResize:
- Scr->AutoRelativeResize = TRUE;
- return 1;
-
- case kw0_ForceIcons:
- if (Scr->FirstTime) Scr->ForceIcon = TRUE;
- return 1;
-
- case kw0_NoIconManagers:
- Scr->NoIconManagers = TRUE;
- return 1;
-
- case kw0_OpaqueMove:
- Scr->OpaqueMove = TRUE;
- return 1;
-
- case kw0_InterpolateMenuColors:
- if (Scr->FirstTime) Scr->InterpolateMenuColors = TRUE;
- return 1;
-
- case kw0_NoVersion:
- /* obsolete */
- return 1;
-
- case kw0_SortIconManager:
- if (Scr->FirstTime) Scr->SortIconMgr = TRUE;
- return 1;
-
- case kw0_NoGrabServer:
- Scr->NoGrabServer = TRUE;
- return 1;
-
- case kw0_NoMenuShadows:
- if (Scr->FirstTime) Scr->Shadow = FALSE;
- return 1;
-
- case kw0_NoRaiseOnMove:
- if (Scr->FirstTime) Scr->NoRaiseMove = TRUE;
- return 1;
-
- case kw0_NoRaiseOnResize:
- if (Scr->FirstTime) Scr->NoRaiseResize = TRUE;
- return 1;
-
- case kw0_NoRaiseOnDeiconify:
- if (Scr->FirstTime) Scr->NoRaiseDeicon = TRUE;
- return 1;
-
- case kw0_DontMoveOff:
- Scr->DontMoveOff = TRUE;
- return 1;
-
- case kw0_NoBackingStore:
- Scr->BackingStore = FALSE;
- return 1;
-
- case kw0_NoSaveUnders:
- Scr->SaveUnder = FALSE;
- return 1;
-
- case kw0_RestartPreviousState:
- RestartPreviousState = True;
- return 1;
-
- case kw0_ClientBorderWidth:
- if (Scr->FirstTime) Scr->ClientBorderWidth = TRUE;
- return 1;
-
- case kw0_NoTitleFocus:
- Scr->TitleFocus = FALSE;
- return 1;
-
- case kw0_RandomPlacement:
- Scr->RandomPlacement = TRUE;
- return 1;
-
- case kw0_DecorateTransients:
- Scr->DecorateTransients = TRUE;
- return 1;
-
- case kw0_ShowIconManager:
- Scr->ShowIconManager = TRUE;
- return 1;
-
- case kw0_NoCaseSensitive:
- Scr->CaseSensitive = FALSE;
- return 1;
-
- case kw0_NoRaiseOnWarp:
- Scr->NoRaiseWarp = TRUE;
- return 1;
-
- case kw0_WarpUnmapped:
- Scr->WarpUnmapped = TRUE;
- return 1;
+ case kw0_NoDefaults:
+ Scr->NoDefaults = TRUE;
+ return 1;
+
+ case kw0_AutoRelativeResize:
+ Scr->AutoRelativeResize = TRUE;
+ return 1;
+
+ case kw0_ForceIcons:
+ if (Scr->FirstTime)
+ Scr->ForceIcon = TRUE;
+ return 1;
+
+ case kw0_NoIconManagers:
+ Scr->NoIconManagers = TRUE;
+ return 1;
+
+ case kw0_OpaqueMove:
+ Scr->OpaqueMove = TRUE;
+ return 1;
+
+ case kw0_InterpolateMenuColors:
+ if (Scr->FirstTime)
+ Scr->InterpolateMenuColors = TRUE;
+ return 1;
+
+ case kw0_NoVersion:
+ /* obsolete */
+ return 1;
+
+ case kw0_SortIconManager:
+ if (Scr->FirstTime)
+ Scr->SortIconMgr = TRUE;
+ return 1;
+
+ case kw0_NoGrabServer:
+ Scr->NoGrabServer = TRUE;
+ return 1;
+
+ case kw0_NoMenuShadows:
+ if (Scr->FirstTime)
+ Scr->Shadow = FALSE;
+ return 1;
+
+ case kw0_NoRaiseOnMove:
+ if (Scr->FirstTime)
+ Scr->NoRaiseMove = TRUE;
+ return 1;
+
+ case kw0_NoRaiseOnResize:
+ if (Scr->FirstTime)
+ Scr->NoRaiseResize = TRUE;
+ return 1;
+
+ case kw0_NoRaiseOnDeiconify:
+ if (Scr->FirstTime)
+ Scr->NoRaiseDeicon = TRUE;
+ return 1;
+
+ case kw0_DontMoveOff:
+ Scr->DontMoveOff = TRUE;
+ return 1;
+
+ case kw0_NoBackingStore:
+ Scr->BackingStore = FALSE;
+ return 1;
+
+ case kw0_NoSaveUnders:
+ Scr->SaveUnder = FALSE;
+ return 1;
+
+ case kw0_RestartPreviousState:
+ RestartPreviousState = True;
+ return 1;
+
+ case kw0_ClientBorderWidth:
+ if (Scr->FirstTime)
+ Scr->ClientBorderWidth = TRUE;
+ return 1;
+
+ case kw0_NoTitleFocus:
+ Scr->TitleFocus = FALSE;
+ return 1;
+
+ case kw0_RandomPlacement:
+ Scr->RandomPlacement = TRUE;
+ return 1;
+
+ case kw0_DecorateTransients:
+ Scr->DecorateTransients = TRUE;
+ return 1;
+
+ case kw0_ShowIconManager:
+ Scr->ShowIconManager = TRUE;
+ return 1;
+
+ case kw0_NoCaseSensitive:
+ Scr->CaseSensitive = FALSE;
+ return 1;
+
+ case kw0_NoRaiseOnWarp:
+ Scr->NoRaiseWarp = TRUE;
+ return 1;
+
+ case kw0_WarpUnmapped:
+ Scr->WarpUnmapped = TRUE;
+ return 1;
}
return 0;
}
-
-int do_string_keyword (int keyword, char *s)
+int
+do_string_keyword(int keyword, char *s)
{
switch (keyword) {
- case kws_UsePPosition:
- {
- int ppos = ParseUsePPosition (s);
- if (ppos < 0) {
- twmrc_error_prefix();
- fprintf (stderr,
- "ignoring invalid UsePPosition argument \"%s\"\n", s);
- } else {
- Scr->UsePPosition = (short)ppos;
- }
- return 1;
- }
-
- case kws_IconFont:
- if (!Scr->HaveFonts) Scr->IconFont.name = s;
- return 1;
-
- case kws_ResizeFont:
- if (!Scr->HaveFonts) Scr->SizeFont.name = s;
- return 1;
-
- case kws_MenuFont:
- if (!Scr->HaveFonts) Scr->MenuFont.name = s;
- return 1;
-
- case kws_TitleFont:
- if (!Scr->HaveFonts) Scr->TitleBarFont.name = s;
- return 1;
-
- case kws_IconManagerFont:
- if (!Scr->HaveFonts) Scr->IconManagerFont.name = s;
- return 1;
-
- case kws_UnknownIcon:
- if (Scr->FirstTime) GetUnknownIcon (s);
- return 1;
-
- case kws_IconDirectory:
- if (Scr->FirstTime) Scr->IconDirectory = ExpandFilename (s);
- return 1;
-
- case kws_MaxWindowSize:
- JunkMask = (unsigned)XParseGeometry (s, &JunkX, &JunkY, &JunkWidth, &JunkHeight);
- if ((JunkMask & (WidthValue | HeightValue)) !=
- (WidthValue | HeightValue)) {
- twmrc_error_prefix();
- fprintf (stderr, "bad MaxWindowSize \"%s\"\n", s);
- return 0;
- }
- if (JunkWidth <= 0 || JunkHeight <= 0) {
- twmrc_error_prefix();
- fprintf (stderr, "MaxWindowSize \"%s\" must be positive\n", s);
- return 0;
- }
- Scr->MaxWindowWidth = (int)JunkWidth;
- Scr->MaxWindowHeight = (int)JunkHeight;
- return 1;
+ case kws_UsePPosition:
+ {
+ int ppos = ParseUsePPosition(s);
+
+ if (ppos < 0) {
+ twmrc_error_prefix();
+ fprintf(stderr,
+ "ignoring invalid UsePPosition argument \"%s\"\n", s);
+ }
+ else {
+ Scr->UsePPosition = (short) ppos;
+ }
+ return 1;
+ }
+
+ case kws_IconFont:
+ if (!Scr->HaveFonts)
+ Scr->IconFont.name = s;
+ return 1;
+
+ case kws_ResizeFont:
+ if (!Scr->HaveFonts)
+ Scr->SizeFont.name = s;
+ return 1;
+
+ case kws_MenuFont:
+ if (!Scr->HaveFonts)
+ Scr->MenuFont.name = s;
+ return 1;
+
+ case kws_TitleFont:
+ if (!Scr->HaveFonts)
+ Scr->TitleBarFont.name = s;
+ return 1;
+
+ case kws_IconManagerFont:
+ if (!Scr->HaveFonts)
+ Scr->IconManagerFont.name = s;
+ return 1;
+
+ case kws_UnknownIcon:
+ if (Scr->FirstTime)
+ GetUnknownIcon(s);
+ return 1;
+
+ case kws_IconDirectory:
+ if (Scr->FirstTime)
+ Scr->IconDirectory = ExpandFilename(s);
+ return 1;
+
+ case kws_MaxWindowSize:
+ JunkMask =
+ (unsigned) XParseGeometry(s, &JunkX, &JunkY, &JunkWidth,
+ &JunkHeight);
+ if ((JunkMask & (WidthValue | HeightValue)) !=
+ (WidthValue | HeightValue)) {
+ twmrc_error_prefix();
+ fprintf(stderr, "bad MaxWindowSize \"%s\"\n", s);
+ return 0;
+ }
+ if (JunkWidth <= 0 || JunkHeight <= 0) {
+ twmrc_error_prefix();
+ fprintf(stderr, "MaxWindowSize \"%s\" must be positive\n", s);
+ return 0;
+ }
+ Scr->MaxWindowWidth = (int) JunkWidth;
+ Scr->MaxWindowHeight = (int) JunkHeight;
+ return 1;
}
return 0;
}
-
-int do_number_keyword (int keyword, int num)
+int
+do_number_keyword(int keyword, int num)
{
switch (keyword) {
- case kwn_ConstrainedMoveTime:
- ConstrainedMoveTime = num;
- return 1;
-
- case kwn_MoveDelta:
- Scr->MoveDelta = (short)num;
- return 1;
-
- case kwn_XorValue:
- if (Scr->FirstTime) Scr->XORvalue = (unsigned long)num;
- return 1;
-
- case kwn_FramePadding:
- if (Scr->FirstTime) Scr->FramePadding = num;
- return 1;
-
- case kwn_TitlePadding:
- if (Scr->FirstTime) Scr->TitlePadding = num;
- return 1;
-
- case kwn_ButtonIndent:
- if (Scr->FirstTime) Scr->ButtonIndent = num;
- return 1;
-
- case kwn_BorderWidth:
- if (Scr->FirstTime) Scr->BorderWidth = num;
- return 1;
-
- case kwn_IconBorderWidth:
- if (Scr->FirstTime) Scr->IconBorderWidth = num;
- return 1;
-
- case kwn_MenuBorderWidth:
- if (Scr->FirstTime) Scr->MenuBorderWidth = num;
- return 1;
-
- case kwn_TitleButtonBorderWidth:
- if (Scr->FirstTime) Scr->TBInfo.border = num;
- return 1;
-
- case kwn_Priority:
- if (HasSync) XSyncSetPriority(dpy, /*self*/ None, num);
- return 1;
+ case kwn_ConstrainedMoveTime:
+ ConstrainedMoveTime = num;
+ return 1;
+
+ case kwn_MoveDelta:
+ Scr->MoveDelta = (short) num;
+ return 1;
+
+ case kwn_XorValue:
+ if (Scr->FirstTime)
+ Scr->XORvalue = (unsigned long) num;
+ return 1;
+
+ case kwn_FramePadding:
+ if (Scr->FirstTime)
+ Scr->FramePadding = num;
+ return 1;
+
+ case kwn_TitlePadding:
+ if (Scr->FirstTime)
+ Scr->TitlePadding = num;
+ return 1;
+
+ case kwn_ButtonIndent:
+ if (Scr->FirstTime)
+ Scr->ButtonIndent = num;
+ return 1;
+
+ case kwn_BorderWidth:
+ if (Scr->FirstTime)
+ Scr->BorderWidth = num;
+ return 1;
+
+ case kwn_IconBorderWidth:
+ if (Scr->FirstTime)
+ Scr->IconBorderWidth = num;
+ return 1;
+
+ case kwn_MenuBorderWidth:
+ if (Scr->FirstTime)
+ Scr->MenuBorderWidth = num;
+ return 1;
+
+ case kwn_TitleButtonBorderWidth:
+ if (Scr->FirstTime)
+ Scr->TBInfo.border = num;
+ return 1;
+
+ case kwn_Priority:
+ if (HasSync)
+ XSyncSetPriority(dpy, /*self */ None, num);
+ return 1;
}
return 0;
}
-name_list **do_colorlist_keyword (int keyword, int colormode, char *s)
+name_list **
+do_colorlist_keyword(int keyword, int colormode, char *s)
{
switch (keyword) {
- case kwcl_BorderColor:
- GetColor (colormode, &Scr->BorderColor, s);
- return &Scr->BorderColorL;
+ case kwcl_BorderColor:
+ GetColor(colormode, &Scr->BorderColor, s);
+ return &Scr->BorderColorL;
- case kwcl_IconManagerHighlight:
- GetColor (colormode, &Scr->IconManagerHighlight, s);
- return &Scr->IconManagerHighlightL;
+ case kwcl_IconManagerHighlight:
+ GetColor(colormode, &Scr->IconManagerHighlight, s);
+ return &Scr->IconManagerHighlightL;
- case kwcl_BorderTileForeground:
- GetColor (colormode, &Scr->BorderTileC.fore, s);
- return &Scr->BorderTileForegroundL;
+ case kwcl_BorderTileForeground:
+ GetColor(colormode, &Scr->BorderTileC.fore, s);
+ return &Scr->BorderTileForegroundL;
- case kwcl_BorderTileBackground:
- GetColor (colormode, &Scr->BorderTileC.back, s);
- return &Scr->BorderTileBackgroundL;
+ case kwcl_BorderTileBackground:
+ GetColor(colormode, &Scr->BorderTileC.back, s);
+ return &Scr->BorderTileBackgroundL;
- case kwcl_TitleForeground:
- GetColor (colormode, &Scr->TitleC.fore, s);
- return &Scr->TitleForegroundL;
+ case kwcl_TitleForeground:
+ GetColor(colormode, &Scr->TitleC.fore, s);
+ return &Scr->TitleForegroundL;
- case kwcl_TitleBackground:
- GetColor (colormode, &Scr->TitleC.back, s);
- return &Scr->TitleBackgroundL;
+ case kwcl_TitleBackground:
+ GetColor(colormode, &Scr->TitleC.back, s);
+ return &Scr->TitleBackgroundL;
- case kwcl_IconForeground:
- GetColor (colormode, &Scr->IconC.fore, s);
- return &Scr->IconForegroundL;
+ case kwcl_IconForeground:
+ GetColor(colormode, &Scr->IconC.fore, s);
+ return &Scr->IconForegroundL;
- case kwcl_IconBackground:
- GetColor (colormode, &Scr->IconC.back, s);
- return &Scr->IconBackgroundL;
+ case kwcl_IconBackground:
+ GetColor(colormode, &Scr->IconC.back, s);
+ return &Scr->IconBackgroundL;
- case kwcl_IconBorderColor:
- GetColor (colormode, &Scr->IconBorderColor, s);
- return &Scr->IconBorderColorL;
+ case kwcl_IconBorderColor:
+ GetColor(colormode, &Scr->IconBorderColor, s);
+ return &Scr->IconBorderColorL;
- case kwcl_IconManagerForeground:
- GetColor (colormode, &Scr->IconManagerC.fore, s);
- return &Scr->IconManagerFL;
+ case kwcl_IconManagerForeground:
+ GetColor(colormode, &Scr->IconManagerC.fore, s);
+ return &Scr->IconManagerFL;
- case kwcl_IconManagerBackground:
- GetColor (colormode, &Scr->IconManagerC.back, s);
- return &Scr->IconManagerBL;
+ case kwcl_IconManagerBackground:
+ GetColor(colormode, &Scr->IconManagerC.back, s);
+ return &Scr->IconManagerBL;
}
return NULL;
}
-int do_color_keyword (int keyword, int colormode, char *s)
+int
+do_color_keyword(int keyword, int colormode, char *s)
{
switch (keyword) {
- case kwc_DefaultForeground:
- GetColor (colormode, &Scr->DefaultC.fore, s);
- return 1;
+ case kwc_DefaultForeground:
+ GetColor(colormode, &Scr->DefaultC.fore, s);
+ return 1;
- case kwc_DefaultBackground:
- GetColor (colormode, &Scr->DefaultC.back, s);
- return 1;
+ case kwc_DefaultBackground:
+ GetColor(colormode, &Scr->DefaultC.back, s);
+ return 1;
- case kwc_MenuForeground:
- GetColor (colormode, &Scr->MenuC.fore, s);
- return 1;
+ case kwc_MenuForeground:
+ GetColor(colormode, &Scr->MenuC.fore, s);
+ return 1;
- case kwc_MenuBackground:
- GetColor (colormode, &Scr->MenuC.back, s);
- return 1;
+ case kwc_MenuBackground:
+ GetColor(colormode, &Scr->MenuC.back, s);
+ return 1;
- case kwc_MenuBorderColor:
- GetColor (colormode, &Scr->MenuBorderColor, s);
- return 1;
+ case kwc_MenuBorderColor:
+ GetColor(colormode, &Scr->MenuBorderColor, s);
+ return 1;
- case kwc_MenuTitleForeground:
- GetColor (colormode, &Scr->MenuTitleC.fore, s);
- return 1;
+ case kwc_MenuTitleForeground:
+ GetColor(colormode, &Scr->MenuTitleC.fore, s);
+ return 1;
- case kwc_MenuTitleBackground:
- GetColor (colormode, &Scr->MenuTitleC.back, s);
- return 1;
+ case kwc_MenuTitleBackground:
+ GetColor(colormode, &Scr->MenuTitleC.back, s);
+ return 1;
- case kwc_MenuShadowColor:
- GetColor (colormode, &Scr->MenuShadowColor, s);
- return 1;
+ case kwc_MenuShadowColor:
+ GetColor(colormode, &Scr->MenuShadowColor, s);
+ return 1;
- case kwc_PointerForeground:
- GetColorValue (colormode, &Scr->PointerForeground, s);
- return 1;
+ case kwc_PointerForeground:
+ GetColorValue(colormode, &Scr->PointerForeground, s);
+ return 1;
- case kwc_PointerBackground:
- GetColorValue (colormode, &Scr->PointerBackground, s);
- return 1;
+ case kwc_PointerBackground:
+ GetColorValue(colormode, &Scr->PointerBackground, s);
+ return 1;
}
return 0;
@@ -947,26 +983,27 @@ int do_color_keyword (int keyword, int colormode, char *s)
static void
put_pixel_on_root(Pixel pixel)
{
- int i, addPixel = 1;
- Atom pixelAtom, retAtom;
- int retFormat;
- unsigned long nPixels, retAfter;
- unsigned char*retProp;
- Pixel *pixelProp;
- pixelAtom = XInternAtom(dpy, "_MIT_PRIORITY_COLORS", True);
- if (XGetWindowProperty(dpy, Scr->Root, pixelAtom, 0, 8192,
- False, XA_CARDINAL, &retAtom,
- &retFormat, &nPixels, &retAfter,
- &retProp) == Success) {
- pixelProp = (Pixel *) retProp;
- for (i = 0; (unsigned long)i < nPixels; i++)
- if (pixel == pixelProp[i])
- addPixel = 0;
- }
- if (addPixel)
- XChangeProperty (dpy, Scr->Root, _XA_MIT_PRIORITY_COLORS,
- XA_CARDINAL, 32, PropModeAppend,
- (unsigned char *)&pixel, 1);
+ int i, addPixel = 1;
+ Atom pixelAtom, retAtom;
+ int retFormat;
+ unsigned long nPixels, retAfter;
+ unsigned char *retProp;
+ Pixel *pixelProp;
+
+ pixelAtom = XInternAtom(dpy, "_MIT_PRIORITY_COLORS", True);
+ if (XGetWindowProperty(dpy, Scr->Root, pixelAtom, 0, 8192,
+ False, XA_CARDINAL, &retAtom,
+ &retFormat, &nPixels, &retAfter,
+ &retProp) == Success) {
+ pixelProp = (Pixel *) retProp;
+ for (i = 0; (unsigned long) i < nPixels; i++)
+ if (pixel == pixelProp[i])
+ addPixel = 0;
+ }
+ if (addPixel)
+ XChangeProperty(dpy, Scr->Root, _XA_MIT_PRIORITY_COLORS,
+ XA_CARDINAL, 32, PropModeAppend,
+ (unsigned char *) &pixel, 1);
}
/**
@@ -975,12 +1012,16 @@ put_pixel_on_root(Pixel pixel)
void
do_string_savecolor(int colormode, char *s)
{
- Pixel p;
- GetColor(colormode, &p, s);
- put_pixel_on_root(p);
+ Pixel p;
+
+ GetColor(colormode, &p, s);
+ put_pixel_on_root(p);
}
-typedef struct _cnode {int i; struct _cnode *next;} Cnode, *Cptr;
+typedef struct _cnode {
+ int i;
+ struct _cnode *next;
+} Cnode, *Cptr;
static Cptr chead = NULL;
/**
@@ -989,17 +1030,23 @@ static Cptr chead = NULL;
void
do_var_savecolor(int key)
{
- Cptr cptrav, cpnew;
- if (!chead) {
- chead = malloc(sizeof(Cnode));
- chead->i = key; chead->next = NULL;
- }
- else {
- cptrav = chead;
- while (cptrav->next != NULL) { cptrav = cptrav->next; }
- cpnew = malloc(sizeof(Cnode));
- cpnew->i = key; cpnew->next = NULL; cptrav->next = cpnew;
- }
+ Cptr cptrav, cpnew;
+
+ if (!chead) {
+ chead = malloc(sizeof(Cnode));
+ chead->i = key;
+ chead->next = NULL;
+ }
+ else {
+ cptrav = chead;
+ while (cptrav->next != NULL) {
+ cptrav = cptrav->next;
+ }
+ cpnew = malloc(sizeof(Cnode));
+ cpnew->i = key;
+ cpnew->next = NULL;
+ cptrav->next = cpnew;
+ }
}
/**
@@ -1009,69 +1056,70 @@ do_var_savecolor(int key)
void
assign_var_savecolor(void)
{
- Cptr cp = chead;
- while (cp != NULL) {
- switch (cp->i) {
- case kwcl_BorderColor:
- put_pixel_on_root(Scr->BorderColor);
- break;
- case kwcl_IconManagerHighlight:
- put_pixel_on_root(Scr->IconManagerHighlight);
- break;
- case kwcl_BorderTileForeground:
- put_pixel_on_root(Scr->BorderTileC.fore);
- break;
- case kwcl_BorderTileBackground:
- put_pixel_on_root(Scr->BorderTileC.back);
- break;
- case kwcl_TitleForeground:
- put_pixel_on_root(Scr->TitleC.fore);
- break;
- case kwcl_TitleBackground:
- put_pixel_on_root(Scr->TitleC.back);
- break;
- case kwcl_IconForeground:
- put_pixel_on_root(Scr->IconC.fore);
- break;
- case kwcl_IconBackground:
- put_pixel_on_root(Scr->IconC.back);
- break;
- case kwcl_IconBorderColor:
- put_pixel_on_root(Scr->IconBorderColor);
- break;
- case kwcl_IconManagerForeground:
- put_pixel_on_root(Scr->IconManagerC.fore);
- break;
- case kwcl_IconManagerBackground:
- put_pixel_on_root(Scr->IconManagerC.back);
- break;
+ Cptr cp = chead;
+
+ while (cp != NULL) {
+ switch (cp->i) {
+ case kwcl_BorderColor:
+ put_pixel_on_root(Scr->BorderColor);
+ break;
+ case kwcl_IconManagerHighlight:
+ put_pixel_on_root(Scr->IconManagerHighlight);
+ break;
+ case kwcl_BorderTileForeground:
+ put_pixel_on_root(Scr->BorderTileC.fore);
+ break;
+ case kwcl_BorderTileBackground:
+ put_pixel_on_root(Scr->BorderTileC.back);
+ break;
+ case kwcl_TitleForeground:
+ put_pixel_on_root(Scr->TitleC.fore);
+ break;
+ case kwcl_TitleBackground:
+ put_pixel_on_root(Scr->TitleC.back);
+ break;
+ case kwcl_IconForeground:
+ put_pixel_on_root(Scr->IconC.fore);
+ break;
+ case kwcl_IconBackground:
+ put_pixel_on_root(Scr->IconC.back);
+ break;
+ case kwcl_IconBorderColor:
+ put_pixel_on_root(Scr->IconBorderColor);
+ break;
+ case kwcl_IconManagerForeground:
+ put_pixel_on_root(Scr->IconManagerC.fore);
+ break;
+ case kwcl_IconManagerBackground:
+ put_pixel_on_root(Scr->IconManagerC.back);
+ break;
+ }
+ cp = cp->next;
+ }
+ if (chead) {
+ free(chead);
+ chead = NULL;
}
- cp = cp->next;
- }
- if (chead) {
- free(chead);
- chead = NULL;
- }
}
static int
-ParseUsePPosition (char *s)
+ParseUsePPosition(char *s)
{
- XmuCopyISOLatin1Lowered (s, s);
-
- if (strcmp (s, "off") == 0) {
- return PPOS_OFF;
- } else if (strcmp (s, "on") == 0) {
- return PPOS_ON;
- } else if (strcmp (s, "non-zero") == 0 ||
- strcmp (s, "nonzero") == 0) {
- return PPOS_NON_ZERO;
+ XmuCopyISOLatin1Lowered(s, s);
+
+ if (strcmp(s, "off") == 0) {
+ return PPOS_OFF;
+ }
+ else if (strcmp(s, "on") == 0) {
+ return PPOS_ON;
+ }
+ else if (strcmp(s, "non-zero") == 0 || strcmp(s, "nonzero") == 0) {
+ return PPOS_NON_ZERO;
}
return -1;
}
-
/**
*
* \param list squeeze or dont-squeeze list
@@ -1081,42 +1129,43 @@ ParseUsePPosition (char *s)
* \param denom 0 or indicates fraction denom
*/
void
-do_squeeze_entry (name_list **list, char *name, int justify, int num, int denom)
+do_squeeze_entry(name_list ** list, char *name, int justify, int num, int denom)
{
int absnum = (num < 0 ? -num : num);
if (denom < 0) {
- twmrc_error_prefix();
- fprintf (stderr, "negative SqueezeTitle denominator %d\n", denom);
- return;
+ twmrc_error_prefix();
+ fprintf(stderr, "negative SqueezeTitle denominator %d\n", denom);
+ return;
}
if (absnum > denom && denom != 0) {
- twmrc_error_prefix();
- fprintf (stderr, "SqueezeTitle fraction %d/%d outside window\n",
- num, denom);
- return;
+ twmrc_error_prefix();
+ fprintf(stderr, "SqueezeTitle fraction %d/%d outside window\n",
+ num, denom);
+ return;
}
if (denom == 1) {
- twmrc_error_prefix();
- fprintf (stderr, "useless SqueezeTitle faction %d/%d, assuming 0/0\n",
- num, denom);
- num = 0;
- denom = 0;
+ twmrc_error_prefix();
+ fprintf(stderr, "useless SqueezeTitle faction %d/%d, assuming 0/0\n",
+ num, denom);
+ num = 0;
+ denom = 0;
}
if (HasShape) {
- SqueezeInfo *sinfo;
- sinfo = malloc (sizeof(SqueezeInfo));
-
- if (!sinfo) {
- twmrc_error_prefix();
- fprintf (stderr, "unable to allocate %ld bytes for squeeze info\n",
- (unsigned long)sizeof(SqueezeInfo));
- return;
- }
- sinfo->justify = justify;
- sinfo->num = num;
- sinfo->denom = denom;
- AddToList (list, name, (char *) sinfo);
+ SqueezeInfo *sinfo;
+
+ sinfo = malloc(sizeof(SqueezeInfo));
+
+ if (!sinfo) {
+ twmrc_error_prefix();
+ fprintf(stderr, "unable to allocate %ld bytes for squeeze info\n",
+ (unsigned long) sizeof(SqueezeInfo));
+ return;
+ }
+ sinfo->justify = justify;
+ sinfo->num = num;
+ sinfo->denom = denom;
+ AddToList(list, name, (char *) sinfo);
}
}