Видел эту функцию в sitapi.h, спасибо, но подключить к проекту sitapi не получилось, начинает конфликтовать с maptype, может что не так делаю? Буду смотреть.
[QUOTE]Денис Вицко написал: Про какие диалоги идет речь?[/QUOTE] Диалоги типа: "Список загруженных карт" кнопка добавить, диалог создания нового слоя с указанием места и т.д. И как отличить карту открытую с mode = 0 и у которой выставлено mapSetEditFlag(HMAP, HSITE, 0) - снят флаг возможности редактирования и карту открытую в режиме GENERIC_READ?
В общем не понятно: в функциях открытия и добавления данных есть параметр mode: открыть на чтение/запись или только чтение, как определить по hsite в каком режиме открыты данные? И в диалогах открытия/добавления данных есть галка "только чтение" на что она вообще влияет? Точнее, если ее выставляешь то данные не открываются в режиме GENERIC_READ, а просто добавляются к карте в режиме mode = 0.
[QUOTE]Andrey Gheleznyakov написал: Вы можете заменить MapScreen на MapView?[/QUOTE] Раньше был MapView, но из-за частых морганий и большого количества перерисовываемых объектов было принято решение перехода на MapScreen, перейти достаточно сложно. Почему не использовать стандартное перерисовывание через ::SendMessage(hWnd, MT_MAPWINPORT, MWP_INVALIDATE, 0); а не через WM_PAINT?
[QUOTE]Andrey Gheleznyakov написал: действия для MapScreen полностью идентичны[/QUOTE] Извиняюсь, был в отпуске) Все что Вы написали замечательно работает с MapView(кинул рядом на форму с MapScreen), но, увы, с MapScreen не работает!
С каким handle и где. Handle главного окна или MapScreen? В какой структуре? И почему не сделать перерисовку на изменеие TrackBar-ов как у Вас реализованно в Операторе?
Никак не работает перерисовка. Пробывал передавать и MapScreen->Handle в TASKPARM->Handle и в PALETTECNTPARM->Handle, и Handle основного окна, замапив сообщения типа MT_MAPWINPORT, ставлю точки останова, ничего не приходит. Из других диалогов, типа отмена транзакций, все нормально приходит. Библиотеки от 09.06.2016, GTK free 11.12.0.
На моей форме лежит MapScreen: объявляю PALETTECNTPARM paletteparm, handle выставляю в MapSreen->Handle и ничего не перерисовывается. Только что написал форму с одним TrackBar-ом и на нем выстовляю контраст и вызываю ::SendMessage(hWnd, MT_MAPWINPORT, MWP_INVALIDATE, 0); hWnd передаю через TASKPARAMEX->DocHandle, DocHandle тотже MapSreen->Handle и все перерисовывется без дополнительных функций. В чем может быть проблема? MapScreen же сам обрабатывает MT_MAPWINPORT, MWP_INVALIDATE?
Здравствуйте, хочу воспользоваться Вашим диалогом по настройке цвета карты LoadPaletteControlEx, но не получается перерисовать карту при изменении яркости, контраста, прозрачности. TASKPARAM вроде задал все параметры, передаю handle карты в taskparam.handle. Какое сообщение посылается окну карты для перерисовки, и почему не по MT_MAPWINPORT сообщение типа MWP_IVALIDATE? Или я не разобрался, в sdk не смог найти этот диалог? Спасибо.