На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Реализация PanApi в своем проекте

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: Пред. 1 2
RSS
Реализация PanApi в своем проекте, Создание задач на PanApi для своей программы и Панорамы(Оператора)
 
Цитата
Максим Казаровец написал:
На сколько будет проще, если автономные приложения тоже будут поддерживать прикладные задачи, написанные для ГИС Панорама (я не имею ввиду Ваши прикладные задачи)? Разработчик пишет свою задачу - надо функционал, он ее грузит в ГИС Панораме, надо специфический функионал он её грузит в автономном ГИС приложении для этого специально разработанном.
вот теперь я честно говоря не понял что Вы пытаетесь сотворить
Изменено: KFF - 27.11.2017 20:30:52
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Цитата
KFF написал:
вот теперь я честно говоря не понял что Вы пытаетесь сотворить
Это так, отсупление, я пытаюсь реализовать у себя в приложении(автономном) поддержку задач написанных для Панарамы. У заказчика есть несколько лицензий Панорамы, Оператора - они необходимы для работы более продвинутых специалистов, есть более простое приложение разработанное мною на GTK- оно для работы менее продвинутых. Заказчику требуется написание специфичиских прикладных задач, которые смогут работать и там и там(задачи нужны и тем и тем). Вот и пытаюсь понять это вообще реально?
 
Цитата
Максим Казаровец написал:
Вот и пытаюсь понять это вообще реально?
так бы сразу сказали, а то я ломаю голову и не могу понять о чём идёт речь.

Из собственного опыта
Допустим, я создал какой то проект PanTask. Начинать нужно именно с этого "конца"
Я его отладил и запустил в ГИС Панораме . Теперь нужно всё тоже самое реализовать в виде приложения.
В задаче создаётся отдельная папка. В папке создаётся чистый проект. Из проекта поторшаться все "кишки" и в него закладывается (подключается) Вся Ваша начинка из задачи
Получается:
если вы запустите bpr файл из задачи - у вас будет компилится DLL под ГИС Панораму.
если вы  будете компилить проект из созданной папки, у вас будет компилится ЕХЕ файл.
Но! есть один нюанс. ЕХЕ-шник будет работать исключительно с библиотеками ядра ГИС Панорамы, и НЕ! будет работать с GTK
Посему, ЕХЕ файл нужно перекидывать в папку с ГИС ПАнорамой (Оператором) ИЛИ в папку с ЕХЕ-шником перекидывать все DLL которые тянет за собой Ваш ЕХЕ файл.

Сча сниму ролик и покажу как это выглядит наглядно  :)  
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Спасибо! У меня есть exe файл моей программы, он как оператор, только более простой. Тоже MDI интерфейс(отдельные окна с картами динамически создаются), панели  скнопками динамически создаются через ToolBar, обрабатываются все сообщения типа: AW_CREATEPANEL, AW_MOVEPANEL и AW_INSERTBUTTON, управления окнами, панелями, картой, команды. Есть свои библиотеки из которых вызываю диалоги, реализован вызов CallMapFunction и т.д. Но в своих MDIChild окнах с картой я никуда кроме своих классов не передовал события, проект разростается, классов становиться все больше, по-этому ищу способ это все упростить, самый простой способ создать библиотеку на подобии вашей maptask.dll в которой расписал пока три класса: 1 Сообщения от окна карты, 2 Класс задачи с функциями PanApi(связан с первым), 3 (пока пишу) создание TPanAction. Вот и хотел узнать как реализованы у Вас механизмы переключения между окнами(события OnActivate и OnDeactivate дочернего окна) и связи этих окон с загружаемыми задачами, может можно где посмотреть пример, только не интерфеса PanTask, а самих классов библиотеки maptask.dll???  
 
Вот ролик


а вот "месиво" с ЕХЕ и DLL под ГИС Панораму запускающую одну и ту же "акцию"
СКАЧАТЬ

п.с. Акцию и задачу не совсем обязательно создавать и запускать, достаточно запустить саму полезную функцию (вашу уникальную)
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Цитата
Максим Казаровец написал:
Вот и хотел узнать как реализованы у Вас механизмы переключения между окнами(события OnActivate и OnDeactivate дочернего окна) и связи этих окон с загружаемыми задачами, может можно где посмотреть пример, только не интерфеса PanTask, а самих классов библиотеки maptask.dll???  
в SDK11 есть исходный код ГИС Карты 2003  :)  на С++
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Разбираться в maptask.dll будет дольше, чем реализовать свою упрощенную логику. Например, посмотрите реализацию в GTK взаимодействие компонента MapView и событий других компонентов, особенно TGtkAction. С помощью этого класса создаются и регистрируются в MapView обработчики различных событий.
 
Цитата
Andrey Gheleznyakov написал:
Например, посмотрите реализацию в GTK взаимодействие компонента MapView и событий других компонентов, особенно TGtkAction.
Спасибо, уже реализовал работу maptask.dll, как PanTask уже работает тестовый пример cmptask. Осталось неменого подпилить)) Если кому надо - пишите, сброшу реализацию maptask. Не могу понять: почему-то подгрузка из библиотеки задачи функций CreateGisTask или CreatePanTask всегда возвращает 0, если добавить свою функцию такого же типа, то все нормальлно!
Изменено: Максим Казаровец - 15.12.2017 09:06:32
Страницы: Пред. 1 2
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности