diff options
-rw-r--r-- | backends/fs/symbian/symbian-fs.cpp | 19 | ||||
-rw-r--r-- | backends/symbian/UIQ3/ScummVM_UIQ3.mmp.in | 2 | ||||
-rw-r--r-- | backends/symbian/src/SymbianActions.cpp | 4 |
3 files changed, 21 insertions, 4 deletions
diff --git a/backends/fs/symbian/symbian-fs.cpp b/backends/fs/symbian/symbian-fs.cpp index a236e10ca6..853388e251 100644 --- a/backends/fs/symbian/symbian-fs.cpp +++ b/backends/fs/symbian/symbian-fs.cpp @@ -29,6 +29,7 @@ #include <dirent.h> #include <eikenv.h> #include <f32file.h> +#include <bautils.h> /* * Implementation of the ScummVM file system API based on POSIX. @@ -200,7 +201,23 @@ AbstractFilesystemNode *SymbianFilesystemNode::parent() const { } AbstractFilesystemNode *SymbianFilesystemNode::child(const String &name) const { - TODO + assert(_isDirectory); + String newPath(_path); + + if (_path.lastChar() != '\\') + newPath += '\\'; + newPath += name; + + TPtrC8 ptr((const unsigned char*) newPath.c_str(), newPath.size()); + TFileName fname; + fname.Copy(ptr); + TBool isFolder = EFalse; + BaflUtils::IsFolder(CEikonEnv::Static()->FsSession(), fname, isFolder); + if(!isFolder) + return 0; + + SymbianFilesystemNode *p = new SymbianFilesystemNode(newPath); + return p; } #endif // defined(__SYMBIAN32__) diff --git a/backends/symbian/UIQ3/ScummVM_UIQ3.mmp.in b/backends/symbian/UIQ3/ScummVM_UIQ3.mmp.in index 792e42a568..331eb911f2 100644 --- a/backends/symbian/UIQ3/ScummVM_UIQ3.mmp.in +++ b/backends/symbian/UIQ3/ScummVM_UIQ3.mmp.in @@ -122,4 +122,4 @@ LIBRARY estlib.lib apgrfx.lib LIBRARY gdi.lib hal.lib bitgdi.lib LIBRARY mediaclientaudiostream.lib efsrv.lib ws32.lib LIBRARY qikctl.lib -library qikcore.lib bafl.lib
\ No newline at end of file +library qikcore.lib bafl.lib eikcoctl.lib
\ No newline at end of file diff --git a/backends/symbian/src/SymbianActions.cpp b/backends/symbian/src/SymbianActions.cpp index 1dc8dd41c4..70ef87eb44 100644 --- a/backends/symbian/src/SymbianActions.cpp +++ b/backends/symbian/src/SymbianActions.cpp @@ -52,13 +52,13 @@ const Common::String actionNames[] = { }; #ifdef UIQ -static const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, 0x11a, 0x11b, SDLK_MENU, SDLK_PAGEDOWN, 0, 0,SDLK_PAGEUP,0,0}; +static const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, SDLK_F1, SDLK_F2, SDLK_MENU, SDLK_PAGEDOWN, 0, 0,SDLK_PAGEUP,0,0}; #elif defined (S60) const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, 0, 0, '*', '#', '9',0,0,0,0,0}; #elif defined (S90) const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, 0, 0, SDLK_MENU, SDLK_ESCAPE, 0, 0,0,0,0,0}; #else -const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, 0x11a, 0x11b, SDLK_MENU, SDLK_ESCAPE, 0, 0,0,0,0,0}; +const int ACTIONS_DEFAULT[ACTION_LAST] = { 0, 0, 0, 0, SDLK_F1, SDLK_F2, SDLK_MENU, SDLK_ESCAPE, 0, 0,0,0,0,0}; #endif // creator function according to Factory Pattern |