Vector metro (subway) map for search routes and getting information. About 200 maps of subways are available. Maps have an open format and can be edited or created. And you can download maps from within the app.
Its GPL project for creating analog of pMetro (Muradov Boris) and its use PMZ format.
Available for: Windows, Linux, Mac, OS/2, Maemo, MeeGo, Symbian
- view maps - search stations - search routes and fit in view - description route - multilanguage - information for station - settings - interface, perfomance... - mobile UI for mobile devices
Компилятор ругается. Версия svn110.
I: Program returns random data in a function
E: qmetro no-return-in-nonvoid-function src/mapview/mapview.cpp:2529
g++ -c -pipe -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -O2 -Wall -W -D_REENTRANT -DVERSION=\"0.6.6\" -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include -Isrc/zlib -I. -I. -o completer.o src/completer.cpp
src/mapview/mapview.cpp: In member function 'void TMapView::defaultConfig()':
src/mapview/mapview.cpp:2172:23: warning: comparison between 'enum QLocale::Country' and 'enum QLocale::Language' [-Wenum-compare]
if(country==QLocale::Czech) city="Praha"; else
^
src/mapview/mapview.cpp:2173:23: warning: comparison between 'enum QLocale::Country' and 'enum QLocale::Language' [-Wenum-compare]
if(country==QLocale::Spanish) city="Madrid"; else
^
src/mapview/mapview.cpp: In member function 'virtual bool TMapView::viewportEvent(QEvent*)':
src/mapview/mapview.cpp:2529:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
Что нужно добавить?
Наверно компилятор хочет явного результата функции, на что и указывает в 2529 строке. Мой косяк, извиняйте.
+++ mapview.cpp
@@ -2522,10 +2522,8 @@
}
break;
-
- default:
- return QGraphicsView::viewportEvent(event);
}
+ return QGraphicsView::viewportEvent(event);
}
p.s.> svn110 это 0.6.7 но местами сыроват.
Наверно компилятор хочет явного результата функции, на что и указывает в 2529 строке. Мой косяк, извиняйте.
+++ mapview.cpp
@@ -2522,10 +2522,8 @@
}
break;
-
- default:
- return QGraphicsView::viewportEvent(event);
}
+ return QGraphicsView::viewportEvent(event);
}
p.s.> svn110 это 0.6.7 но местами сыроват.
Спасибо. Теперь без ошибок собралось.
> p.s.> svn110 это 0.6.7 но местами сыроват.
Ну, я не дождался тарбола с исходниками. Решил собрать последнюю версию для openSUSE из SVN.
Диалог "О программе", однако, показывает 0.6.6.
Пока обозначил версию пакета 0.6.6+svn.110.
I like your app :) Trying to build on Kubuntu 13.04(dev) 64bit
cd /<path-to-qmake-src>/
qmake
make
i get this error:
----------------
src/alarm/audiooutput.cpp:4:24: fatal error: QAudioOutput: No such file or directory
compilation terminated.
make: *** [audiooutput.o] Error 1
any suggestions?
Thanks :)
It's because now QtMultimediaKit (QtMobility) outside of Qt.
I just fix it: https://sourceforge.net/p/qmetro/code/108/
1. Install qtmobility-dev
2. Use fixed alarm.pri:
https://sourceforge.net/p/qmetro/code/108/tree/rc/alarm.pri
Or just compile without alarm, it's now little used.
1. Remove line 12: "include(rc/alarm.pri)" from qmetro.pro
Thanks :)
It's because now QtMultimediaKit (QtMobility) outside of Qt.
I just fix it: https://sourceforge.net/p/qmetro/code/108/
1. Install qtmobility-dev
2. Use fixed alarm.pri:
https://sourceforge.net/p/qmetro/code/108/tree/rc/alarm.pri
Or just compile without alarm, it's now little used.
1. Remove line 12: "include(rc/alarm.pri)" from qmetro.pro
Компилятор выдаёт warning:
src/completer.cpp: In member function 'QList<QPair<QString, QColor> > TCompleter::filterList(QList<QPair<QString, QColor> >, QString)':
src/completer.cpp:199:1: warning: control reaches end of non-void function [-Wreturn-type]
У меня из-за этого не собирается пакет в OBS. Вот здесь полный лог:
https://build.opensuse.org/package/rawlog?arch=x86_64&package=qmetro&project=home%3ALazy_Kent&repository=openSUSE_Factory
Дайте, пожалуйста, патч.
Действительно есть косяк :)
Но все остальные платформы схавали это! :D
Я так понял, ему не хватает "return filtred;" в предпоследней строке completer.cpp (199)
Quote:
Очень некрасиво сделано - качать карты руками и класть их в каталог, доступный только руту. Если скачивание карт вручную еще куда ни шло, то запихивание их в /usr/share/qmetro/map никуда не годится. Нужно сделать в настройках выбор каталога с картами, чтоб можно было складывать их в место, доступное текущему юзеру, и оттуда их использовать.
P.S. А возможно ли реализовать автоматическое скачивание нужных карт средствами самой программы?
Согласен - не красиво, но не обязательно класть их туда. Можно сохранить в любое для Вас удобное место и открывать их оттуда :)
А на счёт этого расположения... люди разбирающиеся в иерархии Linux подсказали, что это правильное место для карт и локалей, но мне если честно тоже не нравится.
Можете предложить решение? Может просто права выставить?...
С иерархиев все совершенно правильно при системной установке из пакета/etc. А вот если пользователь хочет подкинуть карт, но не имеет прав админа - я бы сделал по аналогии, как в Qmmp сделан поиск скинов - сначала программа ищет их в /usr/share/qmmp/skins, а затем смотрит в ~/.qmmp/skins и пользователь видит все найденные скины. Было бы неплохо сделать примерно так же.
Когда-нибудь может так и будет. А пока вот так. И по-моему так тоже не плохо.
Предустановленные карты - для угадывания твоего города и ознакомления с программой, а скачаешь дополнительные - можешь положить их куда угодно, программа запомнит этот путь, если используется карта оттуда.
Отличная программа! Сильно тормозит на Нью-йорке, но хорошо работает на Москве и Энске. Простое средство для ознакомления со станциями. / Good program!
... и благодарю за отзыв, отвечал с телефона - вышло весьма сухо - не хорошо. Весьма приятно, что приложение оказалось полезным.
... and thanks for comment - very pleasure.
Ratings & Comments
21 Comments
Компилятор ругается. Версия svn110. I: Program returns random data in a function E: qmetro no-return-in-nonvoid-function src/mapview/mapview.cpp:2529 g++ -c -pipe -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -O2 -Wall -W -D_REENTRANT -DVERSION=\"0.6.6\" -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/default -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include -Isrc/zlib -I. -I. -o completer.o src/completer.cpp src/mapview/mapview.cpp: In member function 'void TMapView::defaultConfig()': src/mapview/mapview.cpp:2172:23: warning: comparison between 'enum QLocale::Country' and 'enum QLocale::Language' [-Wenum-compare] if(country==QLocale::Czech) city="Praha"; else ^ src/mapview/mapview.cpp:2173:23: warning: comparison between 'enum QLocale::Country' and 'enum QLocale::Language' [-Wenum-compare] if(country==QLocale::Spanish) city="Madrid"; else ^ src/mapview/mapview.cpp: In member function 'virtual bool TMapView::viewportEvent(QEvent*)': src/mapview/mapview.cpp:2529:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ Что нужно добавить?
Наверно компилятор хочет явного результата функции, на что и указывает в 2529 строке. Мой косяк, извиняйте. +++ mapview.cpp @@ -2522,10 +2522,8 @@ } break; - - default: - return QGraphicsView::viewportEvent(event); } + return QGraphicsView::viewportEvent(event); } p.s.> svn110 это 0.6.7 но местами сыроват.
Наверно компилятор хочет явного результата функции, на что и указывает в 2529 строке. Мой косяк, извиняйте. +++ mapview.cpp @@ -2522,10 +2522,8 @@ } break; - - default: - return QGraphicsView::viewportEvent(event); } + return QGraphicsView::viewportEvent(event); } p.s.> svn110 это 0.6.7 но местами сыроват.
Спасибо. Теперь без ошибок собралось. > p.s.> svn110 это 0.6.7 но местами сыроват. Ну, я не дождался тарбола с исходниками. Решил собрать последнюю версию для openSUSE из SVN. Диалог "О программе", однако, показывает 0.6.6. Пока обозначил версию пакета 0.6.6+svn.110.
I like your app :) Trying to build on Kubuntu 13.04(dev) 64bit cd /<path-to-qmake-src>/ qmake make i get this error: ---------------- src/alarm/audiooutput.cpp:4:24: fatal error: QAudioOutput: No such file or directory compilation terminated. make: *** [audiooutput.o] Error 1 any suggestions?
Thanks :) It's because now QtMultimediaKit (QtMobility) outside of Qt. I just fix it: https://sourceforge.net/p/qmetro/code/108/ 1. Install qtmobility-dev 2. Use fixed alarm.pri: https://sourceforge.net/p/qmetro/code/108/tree/rc/alarm.pri Or just compile without alarm, it's now little used. 1. Remove line 12: "include(rc/alarm.pri)" from qmetro.pro
Thanks :) It's because now QtMultimediaKit (QtMobility) outside of Qt. I just fix it: https://sourceforge.net/p/qmetro/code/108/ 1. Install qtmobility-dev 2. Use fixed alarm.pri: https://sourceforge.net/p/qmetro/code/108/tree/rc/alarm.pri Or just compile without alarm, it's now little used. 1. Remove line 12: "include(rc/alarm.pri)" from qmetro.pro
Yeah i guess i don't need that feature. Built ok now, thanks!
Компилятор выдаёт warning: src/completer.cpp: In member function 'QList<QPair<QString, QColor> > TCompleter::filterList(QList<QPair<QString, QColor> >, QString)': src/completer.cpp:199:1: warning: control reaches end of non-void function [-Wreturn-type] У меня из-за этого не собирается пакет в OBS. Вот здесь полный лог: https://build.opensuse.org/package/rawlog?arch=x86_64&package=qmetro&project=home%3ALazy_Kent&repository=openSUSE_Factory Дайте, пожалуйста, патч.
Действительно есть косяк :) Но все остальные платформы схавали это! :D Я так понял, ему не хватает "return filtred;" в предпоследней строке completer.cpp (199) Quote:no-return-in-nonvoid-function src/completer.cpp:199
Спасибо! Всё получилось. Добавьте, пожалуйста, в описание ссылку на пакеты для openSUSE. http://software.opensuse.org/search?q=qmetro
Браво! :D
Очень некрасиво сделано - качать карты руками и класть их в каталог, доступный только руту. Если скачивание карт вручную еще куда ни шло, то запихивание их в /usr/share/qmetro/map никуда не годится. Нужно сделать в настройках выбор каталога с картами, чтоб можно было складывать их в место, доступное текущему юзеру, и оттуда их использовать. P.S. А возможно ли реализовать автоматическое скачивание нужных карт средствами самой программы?
Согласен - не красиво, но не обязательно класть их туда. Можно сохранить в любое для Вас удобное место и открывать их оттуда :) А на счёт этого расположения... люди разбирающиеся в иерархии Linux подсказали, что это правильное место для карт и локалей, но мне если честно тоже не нравится. Можете предложить решение? Может просто права выставить?...
Вполне правильное место для централизованной установки. Права нельзя трогать. Я вообще собираю отдельный пакет с картами и регулярно обновляю.
С иерархиев все совершенно правильно при системной установке из пакета/etc. А вот если пользователь хочет подкинуть карт, но не имеет прав админа - я бы сделал по аналогии, как в Qmmp сделан поиск скинов - сначала программа ищет их в /usr/share/qmmp/skins, а затем смотрит в ~/.qmmp/skins и пользователь видит все найденные скины. Было бы неплохо сделать примерно так же.
Когда-нибудь может так и будет. А пока вот так. И по-моему так тоже не плохо. Предустановленные карты - для угадывания твоего города и ознакомления с программой, а скачаешь дополнительные - можешь положить их куда угодно, программа запомнит этот путь, если используется карта оттуда.
Отличная программа! Сильно тормозит на Нью-йорке, но хорошо работает на Москве и Энске. Простое средство для ознакомления со станциями. / Good program!
Можно настроить производительность. You can change setting for perfomance.
... и благодарю за отзыв, отвечал с телефона - вышло весьма сухо - не хорошо. Весьма приятно, что приложение оказалось полезным. ... and thanks for comment - very pleasure.
Да не за что, вам спасибо