diff options
author | louis <louis.braun@gmx.de> | 2015-02-12 18:50:58 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-02-12 18:50:58 +0100 |
commit | 4d7700aecedf475038d57e10f45ab2dd4bcf806f (patch) | |
tree | 2fefc56fe77c8f4137187515a5f2b57d78425fea /displayplugin.c | |
parent | 00ac852820a09f676157a7b487acf51f4fe95ff4 (diff) | |
download | vdr-plugin-skindesigner-4d7700aecedf475038d57e10f45ab2dd4bcf806f.tar.gz vdr-plugin-skindesigner-4d7700aecedf475038d57e10f45ab2dd4bcf806f.tar.bz2 |
plugin interface
Diffstat (limited to 'displayplugin.c')
-rw-r--r-- | displayplugin.c | 94 |
1 files changed, 92 insertions, 2 deletions
diff --git a/displayplugin.c b/displayplugin.c index c8661b9..ad5965f 100644 --- a/displayplugin.c +++ b/displayplugin.c @@ -1,7 +1,97 @@ #include "displayplugin.h" -cDisplayPlugin::cDisplayPlugin(cTemplate *menuTemplate) { +cSkinDisplayPlugin::cSkinDisplayPlugin(cTemplate *pluginTemplate) { + if (!pluginTemplate) { + doOutput = false; + return; + } else { + doOutput = true; + } + initial = true; + pluginView = new cDisplayPluginView(pluginTemplate->GetRootView()); + if (!pluginView->createOsd()) { + doOutput = false; + return; + } } -cDisplayPlugin::~cDisplayPlugin() { +cSkinDisplayPlugin::~cSkinDisplayPlugin(void) { + if (pluginView) { + delete pluginView; + pluginView = NULL; + } +} + +void cSkinDisplayPlugin::SetViewElementIntTokens(map<string,int> *intTokens) { + if (pluginView) + pluginView->SetIntTokens(intTokens); +} + +void cSkinDisplayPlugin::SetViewElementStringTokens(map<string,string> *stringTokens) { + if (pluginView) + pluginView->SetStringTokens(stringTokens); +} + +void cSkinDisplayPlugin::SetViewElementLoopTokens(map<string,vector<map<string,string> > > *loopTokens) { + if (pluginView) + pluginView->SetLoopTokens(loopTokens); +} + +void cSkinDisplayPlugin::DisplayViewElement(int id) { + if (!doOutput) { + return; + } + pluginView->DisplayViewElement(id); +} + +void cSkinDisplayPlugin::InitGrids(int viewGridID) { + if (!doOutput) { + return; + } + pluginView->InitGrids(viewGridID); +} + +void cSkinDisplayPlugin::SetGrid(int viewGridID, long gridID, + double x, double y, double width, double height, + map<string,int> *intTokens, map<string,string> *stringTokens) { + if (!doOutput) { + return; + } + pluginView->SetGrid(viewGridID, gridID, x, y, width, height, intTokens, stringTokens); +} + +void cSkinDisplayPlugin::SetGridCurrent(int viewGridID, long gridID, bool current) { + if (!doOutput) { + return; + } + pluginView->SetGridCurrent(viewGridID, gridID, current); +} + +void cSkinDisplayPlugin::DeleteGrid(int viewGridID, long gridID) { + if (!doOutput) { + return; + } + pluginView->DeleteGrid(viewGridID, gridID); +} + +void cSkinDisplayPlugin::DisplayGrids(int viewGridID) { + if (!doOutput) { + return; + } + pluginView->DisplayGrids(viewGridID); +} + +void cSkinDisplayPlugin::ClearGrids(int viewGridID) { + if (!doOutput) { + return; + } + pluginView->ClearGrids(viewGridID); +} + +void cSkinDisplayPlugin::Flush(void) { + if (initial) { + pluginView->DoStart(); + initial = false; + } + pluginView->Flush(); }
\ No newline at end of file |