navrocky / urtconnector

Automatically exported from code.google.com/p/urtconnector
0 stars 0 forks source link

Python script engine #100

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Python script engine development

Original issue reported on code.google.com by kinna...@gmail.com on 5 Feb 2012 at 2:10

GoogleCodeExporter commented 9 years ago
Позитрон! нужна твоя помощью
ознакомься комитом r621.

Поскольку я совсем не знаю питона, нужно 
что ты написал пару скриптов, чтоб я видел 
что надо дальше делать со скриптовым 
движком. возьми файл urtconnector/src/python/main.py - и 
зафигач в него что-нить эдакое :)

Сейчас в пайтон проброшенны следующие 
классы - server_id(полностью), server_boomark(полность), 
server_bookmark_list(все кроме функции list), а также 
класс QString с одной функцией toStdString() которая 
возвращает нормальную строку, и 
конструктор QString("строка") :)

Еще сделай мне пожалуйста на питоне поток с 
таймером, пару глобальных переменных, и 
вообще выскажи мысли что требуется от 
движка и как это надо реализовывать.

У меня пока идея такая, на стороне c++ будет 
engine который будет поставлять в пайтон те 
или иные события/функции/объекты(например 
список закладок). На стороне пайтона нажен 
еще како-то py_engine который будет, например, 
обслуживать подписчиков на события, всякие 
списки обсерверов... а также организованно 
действовать в обратном 
направлении(синхронизация потоков и т.д.)

Поскольку я слабо представляю что и как 
делать прошу ваших рассуждений.

PS. неплохо былобы это все интегрировать с 
PyQt :

Original comment by kinna...@gmail.com on 5 Feb 2012 at 2:11

GoogleCodeExporter commented 9 years ago
1. Ура! Спасибо большое! Теперь можно будет 
прикручивать доп. плюшки к коннектору! (а то 
я уже было подумывал о написании pyurtconnector :D)
2. Интегрировать с PyQt... А зачем? Просто 
пробросить классы/методы и все. Сущностей 
плодить не надо ИМХО. Да и хз как с PyQt вообще 
получится интегрировать, если честно %)
3. С коммитом ознакомился, сейчас что-нибудь 
накатаю этакого, что использовало бы API. 
Только вот если бы еще пробросить пару 
классов/методов, типа "добавления таба в 
табвиджет", показ QMessageBox'ов, добавление 
QLabel'ов... А вообще, в идеале, подгрузка 
UI-файла виджета и предоставления класса 
ui->tabName скрипту... Это первые мысли :)
4. Про engine - я только за. Если будут 
предоставляться закладки и текущий 
подсоединенный сервер (когда игрок на 
сервер заходит), можно будет, например, 
напейсать дополнение, которое превратит 
коннектор в некий синглинстансовый аналог 
стима :) Главное - вовремя передавать 
сигналы.

И еще - у тебя жабира нету для более быстрой 
связи?

Original comment by pztrn@pztrn.ru on 5 Feb 2012 at 2:28

GoogleCodeExporter commented 9 years ago
jabber: kinnalru@jabber.org

по поводу табов, QMessageBox'ов и др, для этого и 
хочу интегрировать с PyQt, потому как чтоб 
работать с GUI надо весб этот гуи пробросить 
внутрь, чтоб создать Qlabel, надо иметь Qlable.. :(

Original comment by kinna...@gmail.com on 5 Feb 2012 at 3:12

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r622.

Интеграция с PyQt4 работает!!!

Если вы хотите увидеть магию повторяйте:
1. запускаем конектор
2. в окошке интерпретатора питона вводим:
3. lb = QLabel("my label!!")
4. lb.setWindowTitle("my title!!!")
5. lb_ut = toUt(lb, Ut.QWidget)
6. engine.add_tab(lb_ut)

и унас новый таб!!
на этом пока все - я устал...

Original comment by kinna...@gmail.com on 6 Feb 2012 at 6:11

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r623.

bookmark_map_t is std::map now(instead QMap)

server_bookmark_list::list function exposed to python

Original comment by kinna...@gmail.com on 6 Feb 2012 at 9:32

GoogleCodeExporter commented 9 years ago
Осталось только разобраться - где это 
окошко интерпретатора питона находится? :D

Original comment by pztrn@pztrn.ru on 6 Feb 2012 at 2:14

GoogleCodeExporter commented 9 years ago
Как с прогрессом?

Original comment by pztrn@pztrn.ru on 21 May 2012 at 2:24

GoogleCodeExporter commented 9 years ago
Не очень - время нет совершенно.

Original comment by kinna...@gmail.com on 21 May 2012 at 4:18

GoogleCodeExporter commented 9 years ago

Original comment by navrocky.vlad on 26 Aug 2012 at 8:57