qmlFrontend/hwengine.cpp
branchqmlfrontend
changeset 10436 084e046f6bd5
parent 10434 1614b13ad35e
child 10442 c58db813240b
equal deleted inserted replaced
10434:1614b13ad35e 10436:084e046f6bd5
     4 #include <QPainter>
     4 #include <QPainter>
     5 #include <QUuid>
     5 #include <QUuid>
     6 
     6 
     7 #include "hwengine.h"
     7 #include "hwengine.h"
     8 #include "previewimageprovider.h"
     8 #include "previewimageprovider.h"
       
     9 #include "themeiconprovider.h"
     9 
    10 
    10 extern "C" {
    11 extern "C" {
    11     RunEngine_t *flibRunEngine;
    12     RunEngine_t *flibRunEngine;
    12     registerGUIMessagesCallback_t *flibRegisterGUIMessagesCallback;
    13     registerGUIMessagesCallback_t *flibRegisterGUIMessagesCallback;
    13     setSeed_t *flibSetSeed;
    14     setSeed_t *flibSetSeed;
    16     runQuickGame_t *flibRunQuickGame;
    17     runQuickGame_t *flibRunQuickGame;
    17     flibInit_t *flibInit;
    18     flibInit_t *flibInit;
    18     flibFree_t *flibFree;
    19     flibFree_t *flibFree;
    19     getThemesList_t *flibGetThemesList;
    20     getThemesList_t *flibGetThemesList;
    20     freeThemesList_t *flibFreeThemesList;
    21     freeThemesList_t *flibFreeThemesList;
       
    22     getThemeIcon_t *flibGetThemeIcon;
    21 }
    23 }
    22 
    24 
    23 Q_DECLARE_METATYPE(MessageType);
    25 Q_DECLARE_METATYPE(MessageType);
    24 
    26 
    25 HWEngine::HWEngine(QQmlEngine *engine, QObject *parent) :
    27 HWEngine::HWEngine(QQmlEngine *engine, QObject *parent) :
    42     flibInit = (flibInit_t*) hwlib.resolve("flibInit");
    44     flibInit = (flibInit_t*) hwlib.resolve("flibInit");
    43     flibFree = (flibFree_t*) hwlib.resolve("flibFree");
    45     flibFree = (flibFree_t*) hwlib.resolve("flibFree");
    44 
    46 
    45     flibGetThemesList = (getThemesList_t*) hwlib.resolve("getThemesList");
    47     flibGetThemesList = (getThemesList_t*) hwlib.resolve("getThemesList");
    46     flibFreeThemesList = (freeThemesList_t*) hwlib.resolve("freeThemesList");
    48     flibFreeThemesList = (freeThemesList_t*) hwlib.resolve("freeThemesList");
       
    49     flibGetThemeIcon = (getThemeIcon_t*) hwlib.resolve("getThemeIcon");
    47 
    50 
    48     flibInit("/usr/home/unC0Rr/Sources/Hedgewars/Hedgewars-GC/share/hedgewars/Data", "/usr/home/unC0Rr/.hedgewars");
    51     flibInit("/usr/home/unC0Rr/Sources/Hedgewars/Hedgewars-GC/share/hedgewars/Data", "/usr/home/unC0Rr/.hedgewars");
    49     flibRegisterGUIMessagesCallback(this, &guiMessagesCallback);
    52     flibRegisterGUIMessagesCallback(this, &guiMessagesCallback);
       
    53 
       
    54     ThemeIconProvider * themeIcon = (ThemeIconProvider *)m_engine->imageProvider(QLatin1String("theme"));
       
    55     themeIcon->setFileContentsFunction(flibGetThemeIcon);
    50 
    56 
    51     fillModels();
    57     fillModels();
    52 }
    58 }
    53 
    59 
    54 HWEngine::~HWEngine()
    60 HWEngine::~HWEngine()