static const struct
{
const char name; /* (l)eft, (u)p, (d)own, (r)ight */
- const unsigned char str[5]; /* str[0] = STRLEN (str+1) */
+ const unsigned char str[5]; /* str[0] = strlen (str+1) */
}
Arrows[NARROWS] = {
{ 'l', "\003\033[D" },
{
if (item->entry.type == MenuSubMenu)
{
- if (!STRCMP (name, (item->entry.submenu.menu)->name))
+ if (!strcmp (name, (item->entry.submenu.menu)->name))
break;
}
else if ((isSeparator (name) && isSeparator (item->name))
- || !STRCMP (name, item->name))
+ || !strcmp (name, item->name))
break;
}
return item;
unsigned int len;
#if defined (DEBUG_MENU) || defined (DEBUG_MENUARROWS)
- len = STRLEN (str);
+ len = strlen (str);
fprintf (stderr, " (len %d) = %s\n", len, str);
#else
len = rxvt_Str_escaped ((char *)str);
*cur,
parse[NARROWS];
- MEMSET (parse, 0, sizeof (parse));
+ memset (parse, 0, sizeof (parse));
/* fprintf (stderr, "add arrows = `%s'\n", string); */
for (p = string; p != NULL && *p; string = p)
if (cur == &end)
{
- p = STRCHR (string, '\0');
+ p = strchr (string, '\0');
}
else
{
while (1)
{
- p = STRCHR (next, '<');
+ p = strchr (next, '<');
if (p != NULL)
{
if (p[1] && p[2] == '>')
else
{
if (beg.str == NULL) /* no end needed */
- p = STRCHR (next, '\0');
+ p = strchr (next, '\0');
break;
}
next = (p + 1);
len = 0;
if (beg.len)
{
- STRNCPY (str + len, beg.str, beg.len);
+ strncpy (str + len, beg.str, beg.len);
len += beg.len;
}
- STRNCPY (str + len, parse[i].str, parse[i].len);
+ strncpy (str + len, parse[i].str, parse[i].len);
len += parse[i].len;
if (end.len)
{
- STRNCPY (str + len, end.str, end.len);
+ strncpy (str + len, end.str, end.len);
len += end.len;
}
str[len] = '\0';
item->len2 = 0;
item->name2 = NULL;
- len = STRLEN (name);
+ len = strlen (name);
item->name = (char *)rxvt_malloc (len + 1);
- STRCPY (item->name, name);
+ strcpy (item->name, name);
if (name[0] == '.' && name[1] != '.')
len = 0; /* hidden menu name */
item->len = len;
Item_Found:
if (name2 != NULL && item->name2 == NULL)
{
- len = STRLEN (name2);
+ len = strlen (name2);
if (len == 0)
item->name2 = NULL;
else
{
item->name2 = (char *)rxvt_malloc (len + 1);
- STRCPY (item->name2, name2);
+ strcpy (item->name2, name2);
}
item->len2 = len;
}
item->entry.type = MenuLabel;
- len = STRLEN (action);
+ len = strlen (action);
if (len == 0 && item->name2 != NULL)
{
{
unsigned char *str = (unsigned char *)rxvt_malloc (len + 1);
- STRCPY (str, action);
+ strcpy (str, action);
if (rxvt_action_type (& (item->entry.action), str) < 0)
free (str);
if (path[0] == '\0')
return path;
- if (STRCHR (path, '/') != NULL)
+ if (strchr (path, '/') != NULL)
{
char *p = path;
- while ((p = STRCHR (p, '/')) != NULL)
+ while ((p = strchr (p, '/')) != NULL)
{
p++;
if (*p == '/')
*menu = NULL;
}
- while ((p = STRCHR (path, '/')) != NULL)
+ while ((p = strchr (path, '/')) != NULL)
{
p[0] = '\0';
if (path[0] == '\0')
return NULL;
- if (!STRCMP (path, DOT))
+ if (!strcmp (path, DOT))
{
/* nothing to do */
}
- else if (!STRCMP (path, DOTS))
+ else if (!strcmp (path, DOTS))
{
if (*menu != NULL)
*menu = (*menu)->parent;
}
}
- if (!STRCMP (path, DOTS))
+ if (!strcmp (path, DOTS))
{
- path += STRLEN (DOTS);
+ path += strlen (DOTS);
if (*menu != NULL)
*menu = (*menu)->parent;
return path;
if (*menu == NULL)
{
for (m = CurrentBar->tail; m != NULL; m = m->prev)
- if (!STRCMP (path, m->name))
+ if (!strcmp (path, m->name))
break;
}
else
for (item = (*menu)->tail; item != NULL; item = item->prev)
{
if (item->entry.type == MenuSubMenu
- && !STRCMP (path, (item->entry.submenu.menu)->name))
+ && !strcmp (path, (item->entry.submenu.menu)->name))
{
m = (item->entry.submenu.menu);
break;
if (m != NULL)
{
*menu = m;
- path += STRLEN (path);
+ path += strlen (path);
}
return path;
assert (CurrentBar != NULL);
#endif
- if (STRCHR (path, '/') != NULL)
+ if (strchr (path, '/') != NULL)
{
char *p;
path++;
parent = NULL;
}
- while ((p = STRCHR (path, '/')) != NULL)
+ while ((p = strchr (path, '/')) != NULL)
{
p[0] = '\0';
if (path[0] == '\0')
path = (p + 1);
}
}
- if (!STRCMP (path, DOTS))
+ if (!strcmp (path, DOTS))
return (parent != NULL ? parent->parent : parent);
- if (!STRCMP (path, DOT) || path[0] == '\0')
+ if (!strcmp (path, DOT) || path[0] == '\0')
return parent;
/* allocate a new menu */
menu->width = 0;
menu->parent = parent;
- menu->len = STRLEN (path);
+ menu->len = strlen (path);
menu->name = (char *)rxvt_malloc ((menu->len + 1));
- STRCPY (menu->name, path);
+ strcpy (menu->name, path);
/* initialize head/tail */
menu->head = menu->tail = NULL;
menu->x = (x1 < 0 ? 0 : x1);
menu->y = (y1 < 0 ? 0 : y1);
}
- else if (item->name2 && !STRCMP (name, item->name2))
+ else if (item->name2 && !strcmp (name, item->name2))
name = NULL;
if (len && name)
if (bar == NULL || name == NULL)
return NULL;
- if (STRLEN (name) && STRCMP (name, "*"))
+ if (strlen (name) && strcmp (name, "*"))
{
do
{
- if (!STRCMP (bar->name, name))
+ if (!strcmp (bar->name, name))
{
#ifdef DEBUG_MENUBAR_STACKING
fprintf (stderr, " found!\n");
/* allocate first one */
bar = (bar_t *) rxvt_malloc (sizeof (bar_t));
- MEMSET (bar, 0, sizeof (bar_t));
+ memset (bar, 0, sizeof (bar_t));
/* circular linked-list */
bar->next = bar->prev = bar;
bar->head = bar->tail = NULL;
}
/* give menubar this name */
- STRNCPY (CurrentBar->name, name, MAXNAME);
+ strncpy (CurrentBar->name, name, MAXNAME);
CurrentBar->name[MAXNAME - 1] = '\0';
return ret;
CurrentBar = prev;
}
}
- while (CurrentBar && !STRCMP (name, "*"));
+ while (CurrentBar && !strcmp (name, "*"));
}
void
break;
case MenuLabel:
- fprintf (fp, "{%s}\n", (STRLEN (item->name) ? item->name : "-"));
+ fprintf (fp, "{%s}\n", (strlen (item->name) ? item->name : "-"));
break;
case MenuTerminalAction:
case MenuAction:
fprintf (fp, "{%s}", item->name);
- if (item->name2 != NULL && STRLEN (item->name2))
+ if (item->name2 != NULL && strlen (item->name2))
fprintf (fp, "{%s}", item->name2);
fprintf (fp, "\t");
rxvt_action_decode (fp, & (item->entry.action));
#if (MENUBAR_MAX > 1)
/* semi-colon delimited */
- if ((tag = STRCHR (filename, ';')) != NULL)
+ if ((tag = strchr (filename, ';')) != NULL)
{
tag++;
if (*tag == '\0')
do
{
next++;
- if ((next = STRCHR (next, ':')) == NULL)
+ if ((next = strchr (next, ':')) == NULL)
return; /* parse error */
}
while (next[1] != ']');
}
else
{
- if ((next = STRCHR (next, ']')) == NULL)
+ if ((next = strchr (next, ']')) == NULL)
return; /* parse error */
/* remove and skip ']' */
*next = '\0';
menu_readonly = saved;
}
/* these ones don't require menu stacking */
- else if (!STRCMP (str, "clear"))
+ else if (!strcmp (str, "clear"))
{
menubar_clear ();
}
- else if (!STRCMP (str, "done") || rxvt_Str_match (str, "done:"))
+ else if (!strcmp (str, "done") || rxvt_Str_match (str, "done:"))
{
menu_readonly = 1;
}
- else if (!STRCMP (str, "show"))
+ else if (!strcmp (str, "show"))
{
map_menuBar (1);
menu_readonly = 1;
}
- else if (!STRCMP (str, "hide"))
+ else if (!strcmp (str, "hide"))
{
map_menuBar (0);
menu_readonly = 1;
{
if (*str)
{
- name = (char *)rxvt_realloc (CurrentBar->title, STRLEN (str) + 1);
+ name = (char *)rxvt_realloc (CurrentBar->title, strlen (str) + 1);
if (name != NULL)
{
- STRCPY (name, str);
+ strcpy (name, str);
CurrentBar->title = name;
}
menubar_expose ();
if (CurrentBar != NULL)
menu_readonly = 0; /* allow menu build commands */
}
- else if (!STRCMP (str, "dump"))
+ else if (!strcmp (str, "dump"))
{
/* dump current menubars to a file */
FILE *fp;
fclose (fp);
}
}
- else if (!STRCMP (str, "next"))
+ else if (!strcmp (str, "next"))
{
if (CurrentBar)
{
menu_readonly = 1;
}
}
- else if (!STRCMP (str, "prev"))
+ else if (!strcmp (str, "prev"))
{
if (CurrentBar)
{
menu_readonly = 1;
}
}
- else if (!STRCMP (str, "swap"))
+ else if (!strcmp (str, "swap"))
{
/* swap the top 2 menus */
if (CurrentBar)
/* parse STR, allow spaces inside (name) */
if (path[0] != '\0')
{
- name = STRCHR (path, MENUITEM_BEG);
- str = STRCHR (path, MENUITEM_END);
+ name = strchr (path, MENUITEM_BEG);
+ str = strchr (path, MENUITEM_END);
if (name != NULL || str != NULL)
{
if (name == NULL || str == NULL || str <= (name + 1)
if (str[1] == MENUITEM_BEG)
{
name2 = (str + 2);
- str = STRCHR (name2, MENUITEM_END);
+ str = strchr (name2, MENUITEM_END);
if (str == NULL)
{
int len;
path = menu_find_base (& (BuildMenu), path);
- len = STRLEN (path);
+ len = strlen (path);
/* don't allow menus called `*' */
if (path[0] == '*')
menu_clear (BuildMenu);
break;
}
- else if (len >= 2 && !STRCMP ((path + len - 2), "/*"))
+ else if (len >= 2 && !strcmp ((path + len - 2), "/*"))
{
path[len - 2] = '\0';
}
}
if (name != NULL && name[0] != '\0')
rxvt_menuitem_add (BuildMenu,
- (STRCMP (name, SEPARATOR_NAME) ? name : ""),
+ (strcmp (name, SEPARATOR_NAME) ? name : ""),
name2, str);
break;
case '-': /* delete menu entry */
- if (!STRCMP (path, "/*") && (name == NULL || name[0] == '\0'))
+ if (!strcmp (path, "/*") && (name == NULL || name[0] == '\0'))
{
menubar_clear ();
BuildMenu = NULL;
menu_t *menu = BuildMenu;
path = menu_find_base (&menu, path);
- len = STRLEN (path);
+ len = strlen (path);
/* submenu called `*' clears all menu items */
if (path[0] == '*')
menu_clear (menu);
break; /* done */
}
- else if (len >= 2 && !STRCMP (&path[len - 2], "/*"))
+ else if (len >= 2 && !strcmp (&path[len - 2], "/*"))
{
/* done */
break;
menuitem_t *item;
menu_t *BuildMenu = BuildMenu;
- n1 = STRCMP (name, SEPARATOR_NAME) ? name : "";
+ n1 = strcmp (name, SEPARATOR_NAME) ? name : "";
item = rxvt_menuitem_find (BuildMenu, n1);
if (item != NULL && item->entry.type != MenuSubMenu)
{
#include "rxvt.h" /* NECESSARY */
#include "misc.intpro" /* PROTOS for internal routines */
-/* EXTPROTO */
+/* INTPROTO */
char *
rxvt_wcstombs (const wchar_t *str, int len)
{
return r;
}
-/* EXTPROTO */
+/* INTPROTO */
char *
rxvt_strdup (const char *str)
{
return str ? strdup (str) : 0;
}
-/* EXTPROTO */
+/* INTPROTO */
char *
rxvt_r_basename (const char *str)
{
- char *base = STRRCHR (str, '/');
+ char *base = strrchr (str, '/');
return (char *) (base ? base + 1 : str);
}
/*
* Print an error message
*/
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_vlog (const char *fmt, va_list arg_ptr)
{
write (STDOUT_FILENO, msg, strlen (msg));
}
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_log (const char *fmt,...)
{
/*
* Print an error message
*/
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_warn (const char *fmt,...)
{
va_end (arg_ptr);
}
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_fatal (const char *fmt,...)
{
class rxvt_failure_exception rxvt_failure_exception;
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_exit_failure ()
{
* No Match
* return: 0
* Match
- * return: STRLEN (S2)
+ * return: strlen (S2)
*/
-/* EXTPROTO */
+/* INTPROTO */
int
rxvt_Str_match (const char *s1, const char *s2)
{
- int n = STRLEN (s2);
+ int n = strlen (s2);
- return ((STRNCMP (s1, s2, n) == 0) ? n : 0);
+ return ((strncmp (s1, s2, n) == 0) ? n : 0);
}
-/* EXTPROTO */
+/* INTPROTO */
const char *
rxvt_Str_skip_space (const char *str)
{
* remove leading/trailing space and strip-off leading/trailing quotes.
* in place.
*/
-/* EXTPROTO */
+/* INTPROTO */
char *
rxvt_Str_trim (char *str)
{
*
* returns the converted string length
*/
-/* EXTPROTO */
+/* INTPROTO */
int
rxvt_Str_escaped (char *str)
{
* are properly returned
* Caller should free each entry and array when done
*/
-/* EXTPROTO */
+/* INTPROTO */
char **
rxvt_splitcommastring (const char *cs)
{
char name[256];
if (!access (file, R_OK)) /* found (plain name) in current directory */
- return STRDUP (file);
+ return strdup (file);
/* semi-colon delimited */
- if ((p = STRCHR (file, ';')))
+ if ((p = strchr (file, ';')))
len = (p - file);
else
- len = STRLEN (file);
+ len = strlen (file);
#ifdef DEBUG_SEARCH_PATH
getcwd (name, sizeof (name));
#endif
/* leave room for an extra '/' and trailing '\0' */
- maxpath = sizeof (name) - (len + (ext ? STRLEN (ext) : 0) + 2);
+ maxpath = sizeof (name) - (len + (ext ? strlen (ext) : 0) + 2);
if (maxpath <= 0)
return NULL;
/* check if we can find it now */
- STRNCPY (name, file, len);
+ strncpy (name, file, len);
name[len] = '\0';
if (!access (name, R_OK))
- return STRDUP (name);
+ return strdup (name);
if (ext)
{
- STRCAT (name, ext);
+ strcat (name, ext);
if (!access (name, R_OK))
- return STRDUP (name);
+ return strdup (name);
}
for (path = pathlist; path != NULL && *path != '\0'; path = p)
{
int n;
/* colon delimited */
- if ((p = STRCHR (path, ':')) == NULL)
- p = STRCHR (path, '\0');
+ if ((p = strchr (path, ':')) == NULL)
+ p = strchr (path, '\0');
n = (p - path);
if (*p != '\0')
if (n > 0 && n <= maxpath)
{
- STRNCPY (name, path, n);
+ strncpy (name, path, n);
if (name[n - 1] != '/')
name[n++] = '/';
name[n] = '\0';
- STRNCAT (name, file, len);
+ strncat (name, file, len);
if (!access (name, R_OK))
- return STRDUP (name);
+ return strdup (name);
if (ext)
{
- STRCAT (name, ext);
+ strcat (name, ext);
if (!access (name, R_OK))
- return STRDUP (name);
+ return strdup (name);
}
}
}
return NULL;
}
-/* EXTPROTO */
+/* INTPROTO */
char *
rxvt_File_find (const char *file, const char *ext, const char *path)
{
* Draw top/left and bottom/right border shadows around windows
*/
#if defined(RXVT_SCROLLBAR) || defined(MENUBAR)
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_Draw_Shadow (Display *display, Window win, GC topShadow, GC botShadow, int x, int y, int w, int h)
{
/* button shapes */
#ifdef MENUBAR
-/* EXTPROTO */
+/* INTPROTO */
void
rxvt_Draw_Triangle (Display *display, Window win, GC topShadow, GC botShadow, int x, int y, int w, int type)
{