diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-09-04 14:49:53 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-09-04 14:49:53 +0000 |
commit | 561df3827e091c5646648a50b94278843a7554aa (patch) | |
tree | 997ea7525cf3140f47b5a05ce7669cbf4ffaa7b8 /utils/wpseditor/gui | |
parent | ebe3e032b9dcc4aec2aac7892a190477700bb6c9 (diff) | |
download | rockbox-561df3827e091c5646648a50b94278843a7554aa.tar.gz rockbox-561df3827e091c5646648a50b94278843a7554aa.zip |
WPS editor:
* Simplify Makefile
* Get rid of buildall.*
* Change library loading behaviour to work with MODEL_NAME
Screenshot:
* Simplify Makefile
config-*.h:
* Add MODEL_NAME
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18407 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/wpseditor/gui')
-rw-r--r-- | utils/wpseditor/gui/src/qwpsdrawer.cpp | 27 | ||||
-rw-r--r-- | utils/wpseditor/gui/src/qwpsdrawer.h | 8 |
2 files changed, 26 insertions, 9 deletions
diff --git a/utils/wpseditor/gui/src/qwpsdrawer.cpp b/utils/wpseditor/gui/src/qwpsdrawer.cpp index a506d5c03b..096d835491 100644 --- a/utils/wpseditor/gui/src/qwpsdrawer.cpp +++ b/utils/wpseditor/gui/src/qwpsdrawer.cpp | |||
@@ -17,14 +17,14 @@ QImage QWpsDrawer::backdrop; | |||
17 | proxy_api QWpsDrawer::api; | 17 | proxy_api QWpsDrawer::api; |
18 | 18 | ||
19 | QWpsDrawer::QWpsDrawer( QWpsState *ws,QTrackState *ms, QWidget *parent ) | 19 | QWpsDrawer::QWpsDrawer( QWpsState *ws,QTrackState *ms, QWidget *parent ) |
20 | : QWidget(parent),wpsState(ws),trackState(ms),showGrid(false),mCurTarget("h10_5gb") { | 20 | : QWidget(parent),wpsState(ws),trackState(ms),showGrid(false),mCurTarget(qApp->applicationDirPath()+"/libwps_IRIVER_H10_5GB") { |
21 | 21 | ||
22 | tryResolve(); | 22 | tryResolve(); |
23 | newTempWps(); | 23 | newTempWps(); |
24 | } | 24 | } |
25 | 25 | ||
26 | bool QWpsDrawer::tryResolve() { | 26 | bool QWpsDrawer::tryResolve() { |
27 | QLibrary lib(qApp->applicationDirPath()+"/libwps_"+mCurTarget); | 27 | QLibrary lib(mCurTarget); |
28 | lib_wps_init = (pfwps_init)lib.resolve("wps_init"); | 28 | lib_wps_init = (pfwps_init)lib.resolve("wps_init"); |
29 | lib_wps_display = (pfwps_display)lib.resolve("wps_display"); | 29 | lib_wps_display = (pfwps_display)lib.resolve("wps_display"); |
30 | lib_wps_refresh = (pfwps_refresh)lib.resolve("wps_refresh"); | 30 | lib_wps_refresh = (pfwps_refresh)lib.resolve("wps_refresh"); |
@@ -47,7 +47,7 @@ bool QWpsDrawer::tryResolve() { | |||
47 | api.load_wps_backdrop = &QWpsDrawer::load_wps_backdrop; | 47 | api.load_wps_backdrop = &QWpsDrawer::load_wps_backdrop; |
48 | api.read_bmp_file = &QWpsDrawer::read_bmp_file; | 48 | api.read_bmp_file = &QWpsDrawer::read_bmp_file; |
49 | api.debugf = &qlogger; | 49 | api.debugf = &qlogger; |
50 | qDebug()<<(qApp->applicationDirPath()+"/libwps_"+mCurTarget+" resolved"); | 50 | qDebug()<<(mCurTarget+" resolved"); |
51 | } | 51 | } |
52 | return mResolved; | 52 | return mResolved; |
53 | } | 53 | } |
@@ -222,7 +222,7 @@ QString QWpsDrawer::getModelName(QString libraryName) { | |||
222 | QList<QString> QWpsDrawer::getTargets() { | 222 | QList<QString> QWpsDrawer::getTargets() { |
223 | QList<QString> list ; | 223 | QList<QString> list ; |
224 | QDir d = QDir(qApp->applicationDirPath()); | 224 | QDir d = QDir(qApp->applicationDirPath()); |
225 | QFileInfoList libs = d.entryInfoList(QStringList("libwps*")); | 225 | QFileInfoList libs = d.entryInfoList(QStringList("libwps_*")); |
226 | qDebug() << libs.size()<<"libs found"; | 226 | qDebug() << libs.size()<<"libs found"; |
227 | for (int i = 0; i < libs.size(); i++) { | 227 | for (int i = 0; i < libs.size(); i++) { |
228 | QString modelName = getModelName(libs[i].absoluteFilePath()); | 228 | QString modelName = getModelName(libs[i].absoluteFilePath()); |
@@ -230,15 +230,24 @@ QList<QString> QWpsDrawer::getTargets() { | |||
230 | if (modelName == "unknown") | 230 | if (modelName == "unknown") |
231 | continue; | 231 | continue; |
232 | list.append(modelName); | 232 | list.append(modelName); |
233 | libs_array[i].target_name = modelName; | ||
234 | libs_array[i].lib = libs[i].absoluteFilePath(); | ||
233 | } | 235 | } |
234 | return list; | 236 | return list; |
235 | } | 237 | } |
236 | bool QWpsDrawer::setTarget(QString target) { | 238 | bool QWpsDrawer::setTarget(QString target) { |
237 | QLibrary lib(qApp->applicationDirPath()+"/libwps_"+mCurTarget); | 239 | foreach(lib_t cur_lib, libs_array) |
238 | //lib.unload(); | 240 | { |
239 | if (getModelName("libwps_"+target)!="unknown") { | 241 | if(cur_lib.target_name == target) |
240 | mCurTarget = target; | 242 | { |
241 | return tryResolve(); | 243 | QLibrary lib(cur_lib.lib); |
244 | //lib.unload(); | ||
245 | if (getModelName(cur_lib.lib) != "unknown") | ||
246 | { | ||
247 | mCurTarget = cur_lib.lib; | ||
248 | return tryResolve(); | ||
249 | } | ||
250 | } | ||
242 | } | 251 | } |
243 | return false; | 252 | return false; |
244 | } | 253 | } |
diff --git a/utils/wpseditor/gui/src/qwpsdrawer.h b/utils/wpseditor/gui/src/qwpsdrawer.h index 65e98723f5..eec4300286 100644 --- a/utils/wpseditor/gui/src/qwpsdrawer.h +++ b/utils/wpseditor/gui/src/qwpsdrawer.h | |||
@@ -5,6 +5,7 @@ | |||
5 | #include <QPixmap> | 5 | #include <QPixmap> |
6 | #include <QPointer> | 6 | #include <QPointer> |
7 | #include <QTemporaryFile> | 7 | #include <QTemporaryFile> |
8 | #include <QMap> | ||
8 | 9 | ||
9 | #include "wpsstate.h" | 10 | #include "wpsstate.h" |
10 | 11 | ||
@@ -37,6 +38,13 @@ class QWpsDrawer : public QWidget { | |||
37 | QString mWpsString; | 38 | QString mWpsString; |
38 | QString mCurTarget; | 39 | QString mCurTarget; |
39 | static QString mTmpWpsString; | 40 | static QString mTmpWpsString; |
41 | |||
42 | struct lib_t | ||
43 | { | ||
44 | QString target_name; | ||
45 | QString lib; | ||
46 | }; | ||
47 | QMap<int, lib_t> libs_array; | ||
40 | 48 | ||
41 | 49 | ||
42 | protected: | 50 | protected: |