aboutsummaryrefslogtreecommitdiffstats
path: root/android/resource.c
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:30:32 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:30:32 -0800
commit8b23a6c7e1aee255004dd19098d4c2462b61b849 (patch)
tree7a4d682ba51f0ff0364c5ca2509f515bdaf96de9 /android/resource.c
parentf721e3ac031f892af46f255a47d7f54a91317b30 (diff)
downloadexternal_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.zip
external_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.tar.gz
external_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.tar.bz2
auto import from //depot/cupcake/@135843
Diffstat (limited to 'android/resource.c')
-rw-r--r--android/resource.c64
1 files changed, 64 insertions, 0 deletions
diff --git a/android/resource.c b/android/resource.c
new file mode 100644
index 0000000..1327ea0
--- /dev/null
+++ b/android/resource.c
@@ -0,0 +1,64 @@
+/* Copyright (C) 2007-2008 The Android Open Source Project
+**
+** This software is licensed under the terms of the GNU General Public
+** License version 2, as published by the Free Software Foundation, and
+** may be copied, distributed, and modified under those terms.
+**
+** This program is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+** GNU General Public License for more details.
+*/
+#include "android/resource.h"
+#include "config-host.h"
+#include <string.h>
+
+typedef struct {
+ const char* name;
+ const unsigned char* base;
+ size_t size;
+} FileEntry;
+
+const unsigned char*
+_resource_find( const char* name,
+ const FileEntry* entries,
+ size_t *psize )
+{
+ const FileEntry* e = entries;
+
+ for ( ; e->name != NULL; e++ ) {
+ //dprint("SCAN %s\n", e->name);
+ if ( strcmp(e->name, name) == 0 ) {
+ *psize = e->size;
+ return e->base;
+ }
+ }
+ return NULL;
+}
+
+#undef _file_entries
+#define _file_entries _skin_entries
+const unsigned char*
+android_resource_find( const char* name,
+ size_t *psize )
+{
+# include "android/skin/default.h"
+ return _resource_find( name, _file_entries, psize );
+}
+
+#undef _file_entries
+#define _file_entries _icon_entries
+
+const unsigned char*
+android_icon_find( const char* name,
+ size_t *psize )
+{
+#ifdef _WIN32
+ return NULL;
+#else
+# include "android/icons.h"
+ return _resource_find( name, _file_entries, psize );
+#endif
+}
+
+