X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmisc.c;h=0e113727536ae9468a7c83c479be9936cfbff9f4;hb=240269d614d12d0612cc0764589e6798378e2b8c;hp=39d1fdc45864f5c8022f6891efdb08ca9a49b51e;hpb=3d97e3d9c20a984e70dae5e63e7c5069fb136c91;p=rocksndiamonds.git diff --git a/src/misc.c b/src/misc.c index 39d1fdc4..0e113727 100644 --- a/src/misc.c +++ b/src/misc.c @@ -241,6 +241,16 @@ char *getLoginName() return pwd->pw_name; } +char *getRealName() +{ + struct passwd *pwd; + + if (!(pwd = getpwuid(getuid()))) + return "ANONYMOUS"; + else + return pwd->pw_gecos; +} + char *getHomeDir() { #ifndef MSDOS @@ -315,6 +325,25 @@ void MarkTileDirty(int x, int y) redraw_mask |= REDRAW_TILES; } +void SetBorderElement() +{ + int x, y; + + BorderElement = EL_LEERRAUM; + + for(y=0; y" }, + { XK_question, "XK_question", "?" }, + { XK_at, "XK_at", "@" }, + + /* more ASCII keys */ + { XK_bracketleft, "XK_bracketleft", "[" }, { XK_backslash, "XK_backslash", "backslash" }, + { XK_bracketright, "XK_bracketright", "]" }, + { XK_asciicircum, "XK_asciicircum", "circumflex" }, + { XK_underscore, "XK_underscore", "_" }, + { XK_grave, "XK_grave", "grave" }, + { XK_quoteleft, "XK_quoteleft", "quote left" }, { XK_braceleft, "XK_braceleft", "brace left" }, + { XK_bar, "XK_bar", "bar" }, { XK_braceright, "XK_braceright", "brace right" }, - { XK_less, "XK_less", "less" }, - { XK_greater, "XK_greater", "greater" }, - { XK_asciicircum, "XK_asciicircum", "circumflex" }, + { XK_asciitilde, "XK_asciitilde", "ascii tilde" }, + + /* special (non-ASCII) keys */ + { XK_Adiaeresis, "XK_Adiaeresis", "Ä" }, + { XK_Odiaeresis, "XK_Odiaeresis", "Ö" }, + { XK_Udiaeresis, "XK_Udiaeresis", "Ü" }, + { XK_adiaeresis, "XK_adiaeresis", "ä" }, + { XK_odiaeresis, "XK_odiaeresis", "ö" }, + { XK_udiaeresis, "XK_udiaeresis", "ü" }, { XK_ssharp, "XK_ssharp", "sharp s" }, /* end-of-array identifier */ @@ -793,6 +848,21 @@ KeySym getKeySymFromX11KeyName(char *x11name) return keysym; } +char getCharFromKeySym(KeySym keysym) +{ + char *keyname = getKeyNameFromKeySym(keysym); + char letter = 0; + + if (strlen(keyname) == 1) + letter = keyname[0]; + else if (strcmp(keyname, "space") == 0) + letter = ' '; + else if (strcmp(keyname, "circumflex") == 0) + letter = '^'; + + return letter; +} + #define TRANSLATE_JOYSYMBOL_TO_JOYNAME 0 #define TRANSLATE_JOYNAME_TO_JOYSYMBOL 1