From 1ec23952dd7c022e11afbb93d93be1bac5c94081 Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Fri, 20 May 2016 23:51:15 +0800 Subject: Scale GUI correctly on a high DPI device. Fix building for Windows. RC-bugs still exist. --- qmidiplayer-desktop/qmpplugin.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'qmidiplayer-desktop/qmpplugin.cpp') diff --git a/qmidiplayer-desktop/qmpplugin.cpp b/qmidiplayer-desktop/qmpplugin.cpp index 2117bcf..7dfb01f 100644 --- a/qmidiplayer-desktop/qmpplugin.cpp +++ b/qmidiplayer-desktop/qmpplugin.cpp @@ -18,23 +18,24 @@ void qmpPluginManager::scanPlugins() HANDLE dir; std::vector cpluginpaths; //FindFirstFile, FindNextFile, FindClose - LPWIN32_FIND_DATA file; - dir=FindFirstFileA(L".\\plugins\\*.dll",file); + LPWIN32_FIND_DATAA file; + dir=FindFirstFileA(".\\plugins\\*.dll",file); if(dir!=INVALID_HANDLE_VALUE) { cpluginpaths.push_back(std::string(file->cFileName)); - while(FindNextFile(dir,file)) + while(FindNextFileA(dir,file)) cpluginpaths.push_back(std::string(file->cFileName)); } FindClose(dir); for(unsigned i=0;ipluginGetVersion is called. Reason is still unknown. plugins.push_back(qmpPlugin(std::string(intf->pluginGetName()),std::string(intf->pluginGetVersion()),std::string(cpluginpaths[i]),intf)); } } @@ -82,8 +83,8 @@ qmpPluginManager::~qmpPluginManager() { for(unsigned i=0;ideinit(); - delete plugins[i].interface; + if(plugins[i].initialized)plugins[i].pinterface->deinit(); + delete plugins[i].pinterface; } qmw=NULL;qsw=NULL;delete pluginAPI; } @@ -97,14 +98,14 @@ void qmpPluginManager::initPlugins() { if(!plugins[i].enabled)continue; printf("Loaded plugin: %s\n",plugins[i].path.c_str()); - plugins[i].interface->init();plugins[i].initialized=true; + plugins[i].pinterface->init();plugins[i].initialized=true; } } void qmpPluginManager::deinitPlugins() { for(unsigned i=0;ideinit(); + if(plugins[i].initialized)plugins[i].pinterface->deinit(); plugins[i].enabled=plugins[i].initialized=false; } } -- cgit v1.2.3