diff options
Diffstat (limited to 'tools/validatekeymaps/Main.cpp')
-rw-r--r-- | tools/validatekeymaps/Main.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/tools/validatekeymaps/Main.cpp b/tools/validatekeymaps/Main.cpp index 097b109..8ab9b6a 100644 --- a/tools/validatekeymaps/Main.cpp +++ b/tools/validatekeymaps/Main.cpp @@ -17,6 +17,7 @@ #include <ui/KeyCharacterMap.h> #include <ui/KeyLayoutMap.h> #include <ui/VirtualKeyMap.h> +#include <utils/PropertyMap.h> #include <utils/String8.h> #include <stdio.h> @@ -32,6 +33,7 @@ enum FileType { FILETYPE_KEYLAYOUT, FILETYPE_KEYCHARACTERMAP, FILETYPE_VIRTUALKEYDEFINITION, + FILETYPE_INPUTDEVICECONFIGURATION, }; @@ -39,9 +41,9 @@ static void usage() { fprintf(stderr, "Keymap Validation Tool\n\n"); fprintf(stderr, "Usage:\n"); fprintf(stderr, - " %s [*.kl] [*.kcm] [virtualkeys.*] [...]\n" - " Validates the specified key layouts, key character maps \n" - " or virtual key definitions.\n\n", + " %s [*.kl] [*.kcm] [*.idc] [virtualkeys.*] [...]\n" + " Validates the specified key layouts, key character maps, \n" + " input device configurations, or virtual key definitions.\n\n", gProgName); } @@ -54,6 +56,9 @@ static FileType getFileType(const char* filename) { if (strcmp(extension, ".kcm") == 0) { return FILETYPE_KEYCHARACTERMAP; } + if (strcmp(extension, ".idc") == 0) { + return FILETYPE_INPUTDEVICECONFIGURATION; + } } if (strstr(filename, "virtualkeys.")) { @@ -92,6 +97,16 @@ static bool validateFile(const char* filename) { break; } + case FILETYPE_INPUTDEVICECONFIGURATION: { + PropertyMap* map; + status_t status = PropertyMap::load(String8(filename), &map); + if (status) { + fprintf(stderr, "Error %d parsing input device configuration file.\n\n", status); + return false; + } + break; + } + case FILETYPE_VIRTUALKEYDEFINITION: { VirtualKeyMap* map; status_t status = VirtualKeyMap::load(String8(filename), &map); |