diff options
author | Jean-Francois Mauguit <jfmauguit@mac.com> | 2024-09-24 09:03:25 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-24 09:03:25 -0400 |
commit | bab614c421ed7ae329d26bf028c4a3b1d2450f5a (patch) | |
tree | 12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp | |
parent | 4bde6044fddf053f31795b9eaccdd2a5a527d21f (diff) | |
parent | 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (diff) | |
download | winamp-bab614c421ed7ae329d26bf028c4a3b1d2450f5a.tar.gz |
Merge pull request #5 from WinampDesktop/community
Merge to main
Diffstat (limited to 'Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp')
-rw-r--r-- | Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp b/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp new file mode 100644 index 00000000..d541f7f4 --- /dev/null +++ b/Src/Plugins/SDK/plLoadEx/SimpleHandler.cpp @@ -0,0 +1,45 @@ +#include "SimpleHandler.h" +#include "SimpleLoader.h" +const wchar_t *Cef_Handler::EnumerateExtensions(size_t n) +{ + if (n == 0) + return L"simple"; + else + return 0; +} + +const wchar_t *Cef_Handler::GetName() +{ + return L"Simple Playlist Loader"; +} + +int Cef_Handler::SupportedFilename(const wchar_t *filename) +{ + size_t filenameLength = wcslen(filename); + size_t extensionLength = wcslen(L".simple"); + if (filenameLength < extensionLength) return SVC_PLAYLISTHANDLER_FAILED; // too short + if (!wcsicmp(filename + filenameLength - extensionLength, L".simple")) + return SVC_PLAYLISTHANDLER_SUCCESS; + else + return SVC_PLAYLISTHANDLER_FAILED; +} + +ifc_playlistloader *Cef_Handler::CreateLoader(const wchar_t *filename) +{ + return new SimpleLoader(); +} + +void Cef_Handler::ReleaseLoader(ifc_playlistloader *loader) +{ + delete (SimpleLoader *)loader; +} + +// Define the dispatch table +#define CBCLASS Cef_Handler +START_DISPATCH; +CB(SVC_PLAYLISTHANDLER_ENUMEXTENSIONS, EnumerateExtensions) +CB(SVC_PLAYLISTHANDLER_SUPPORTFILENAME, SupportedFilename) +CB(SVC_PLAYLISTHANDLER_CREATELOADER, CreateLoader) +VCB(SVC_PLAYLISTHANDLER_RELEASELOADER, ReleaseLoader) +CB(SVC_PLAYLISTHANDLER_GETNAME, GetName) +END_DISPATCH;
\ No newline at end of file |