On-line: Oskar_AAA, гостей 3. Всего: 4 [подробнее..]
АвторСообщение
gfilatov
модератор




Пост N: 699
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 29.01.08 13:59. Заголовок: Новая версия Расширенного релиза библиотеки MiniGUI (часть IV) (продолжение)


Начало темы находится здесь, а теперь

АНОНС * АНОНС * АНОНС * АНОНС * АНОНС

Готовится к опубликованию новая сборка №48, которая выйдет в конце недели.
Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне

Кратко, что нового:

- исправление обнаруженных ошибок и неточностей кода;
- новый класс HEADERIMAGE для Grid и Browse;
- свойство Address в Hyperlink может теперь открывать папку или файл на диске;
- добавлен NOTABSTOP класс для Browse;
- поддержка пользовательских компонентов (заимствована из оффициального релиза);
- расширения и исправления в библиотеках TsBrowse и PropGrid;
- обновлены сборки Харбор и HMGS-IDE;
- новые и обновленные старые примеры (как обычно ).




Спасибо: 2 
Профиль
Ответов - 301 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 All [только новые]


SergKis
постоянный участник




Пост N: 18
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 16.04.12 14:18. Заголовок: Для gfilatov2002. Пр..


Для gfilatov2002.
При работе с двумя и более browse на ChildMDI потребовалась доработка _BrowseUp, _BrowseDown в h_browse.prg
Скрытый текст


Нам показались полезными след. модификации
Скрытый текст




Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 369
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 17.04.12 12:35. Заголовок: SergKis Благодарю ..


SergKis

Благодарю за предложенные изменения!
Использовал только доработки в h_browse.prg

Замечания по другим модификациям:

h_hotkey.prg - лучше использовать собственную функцию nDetermineKey( nKey ) вида

FUNCTION nDetermineKey( nKey ) 
...
IF valtype(nKey) == "N" .and. nKey > 0 .and. nKey <= len(aKeyTables)
Return aKeyTables[nKey]
ENDIF
RETURN ""

h_windowsMDI.prg - имя родительского окна уже хранится в переменной _HMG_MainClientMDIName

h_windows.prg - снова лучше использовать собственную функцию ИМХО

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 19
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.04.12 00:11. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:
 цитата:

h_hotkey.prg - лучше использовать собственную функцию nDetermineKey( nKey ) ...
h_windows.prg - снова лучше использовать собственную функцию ИМХО


Да так и делал. Только размножается ... с похожими именами ... в разных местах ...
А с _HMG_MainClientMDIName у меня неувязочка была (наверно был где-то не прав) потому и перешел на функцию.

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 371
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 23.04.12 10:40. Заголовок: АНОНС * АНОНС * АНОН..


АНОНС * АНОНС * АНОНС * АНОНС * АНОНС

Завершена подготовка к опубликованию новой версии 2.1.0, которая выйдет послезавтра.

Кратко, что нового:
- исправление обнаруженных ошибок и неточностей кода (увы, увы );
- мелкие оптимизации ядра библиотеки с целью уменьшения числа используемых функций и ускорения работы;
- обновлена WINANSI-сборка Харбора версии 3.1.0dev, а также библиотека TsBrowse;
- пересобрана HMGS-IDE с текущей версией библиотеки;
- добавлены новые и обновлены старые примеры (как обычно).

Спасибо за внимание!

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 376
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 25.04.12 11:01. Заголовок: Новый релиз библиоте..


Новый релиз библиотеки для компилятора BCC выложил, как и обещал, по адресу:

http://minigui.mylivepage.ru/file/?fileid=8704

а также, как обычно, на сервере http://hmgextended.com по адресу:

http://hmgextended.com/files/CONTRIB/hmg-2.1.0-setup.zip

Также доступна расширенная сборка для компилятора MinGW по адресу:

http://hmgextended.com/files/CONTRIB/hmg210-mingw.zip

Спасибо за внимание!

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 21
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.12 13:31. Заголовок: Для gfilatov2002. Дл..


Для gfilatov2002.
Для работы с MDI сделаны изменения:
Скрытый текст

Пример.
Сборка hb 2.0 hmg 2.07 vc9. Для bcc сборки нет.
Не могу разрешить один момент: запущены все три Child окна (последним запустить вторую кнопку [Project])), то VK_TAB не всегда реагирует, переставить фокус на др.бровсе (кнопка F7 работает - клавиши назначены). Выполнив Alt+Tab, Alt+Tab VK_TAB или после F7 работает. Что я делаю не так ? Спасибо.


Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 377
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 25.04.12 16:15. Заголовок: SergKis пишет: Для ..


SergKis пишет:

 цитата:
Для работы с MDI сделаны изменения


Изменения в файлах h_hotkey.prg и h_windows.prg принимаются, а вот то, что предложено для h_events.prg, я отверг

SergKis пишет:

 цитата:
Что я делаю не так ?


Трудно сказать
Видимо, еще не все косяки при обработке горячих клавиш в MDI устранены...

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 22
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.04.12 09:48. Заголовок: Для gfilatov2002. Вр..


Для gfilatov2002.
Вроде проблему решило (на сколько правильно - вопрос):
Скрытый текст


Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 23
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.04.12 11:08. Заголовок: Для gfilatov2002 В р..


Для gfilatov2002
В родном h_events.prg Edit Inplace не работает ! В измененном работает:
Скрытый текст


Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 378
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 26.04.12 11:37. Заголовок: SergKis пишет: В из..


SergKis пишет:

 цитата:
В измененном работает:


Может, так будет сделать проще:

 цитата:
ююю 
For x := 1 To ControlCount
If _HMG_aControlType [x] == 'HOTKEY'
If _HMG_aControlParentHandles[x] == hWnd //.Or. ( _HMG_BeginWindowMDIActive .And. _HMG_InplaceParentHandle == GetActiveMdiHandle() )
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
EndIf
EndIf
Next x
...



Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 24
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.04.12 12:52. Заголовок: gfilatov2002 пишет:М..


gfilatov2002 пишет:
 цитата:
Может, так будет сделать проще:


У меня это место так и было. И по форме записи ReleaseHotKey(...) форма:
ReleaseHotKey ( 0 , _HMG_aControlIds [x] ) без учета hWnd, больше подходит (по моему пониманию hotkey).
По поводу ActivateMdiWindow в VO ClassMate это выглядит так:
Скрытый текст


Обрабатывается еще WM_NCACTIVATE .

Спасибо: 0 
Профиль
Петр
постоянный участник


Пост N: 1102
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 26.04.12 13:05. Заголовок: SergKis пишет: У ме..


SergKis пишет:

 цитата:
У меня это место так и было.


Где?
SergKis пишет:

 цитата:
case WM_SETFOCUS
...
For x := 1 To ControlCount
If _HMG_aControlType [x] == 'HOTKEY'
If _HMG_BeginWindowMDIActive // BK
IF _HMG_aControlParentHandles[x] == hWnd // BK
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
ENdif
Else
If _HMG_aControlParentHandles[x] == hWnd .Or. ( _HMG_BeginWindowMDIActive .And. _HMG_InplaceParentHandle == GetActiveMdiHandle() )
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
EndIf
EndIf
EndIf
Next x


жесть вообще


Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 25
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.04.12 19:49. Заголовок: Петр пишет: Где? ....


Петр пишет:

 цитата:
Где? ... жесть вообще

Думаю это не ко мне.
В посте от 25.04.2012 14:31 это было. Григорий написал:

 цитата:
Изменения в файлах h_hotkey.prg и h_windows.prg принимаются, а вот то, что предложено для h_events.prg, я отверг


Отрывок повторяю. Скрытый текст

Думаю с Григорием мы друг друга поняли. А текст от Сегодня 12:08

 цитата:
В родном h_events.prg ...


Специально оставил родной текст и минимальные изменения, чтобы обозначить ситуацию.


Спасибо: 0 
Профиль
Петр
постоянный участник


Пост N: 1104
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 26.04.12 20:43. Заголовок: Я объясню, почему же..


Я объясню, почему жесть
 
If _HMG_BeginWindowMDIActive // --------- вот здесь _HMG_BeginWindowMDIActive == .T., правильно?
IF _HMG_aControlParentHandles[x] == hWnd // BK
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
ENdif
Else
// ------------------------------------------------------- здесь _HMG_BeginWindowMDIActive == .F.
If _HMG_aControlParentHandles[x] == hWnd .Or. ( _HMG_BeginWindowMDIActive .And. _HMG_InplaceParentHandle == GetActiveMdiHandle() )
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
EndIf
EndIf


Т.е. вся перечеркнутая конструкция имеет смысл, если ( _HMG_aControlParentHandles[x] == hWnd ) == .T.
а раз так, то все описанное выше можно воспроизвести как

IF _HMG_aControlParentHandles[x] == hWnd
InitHotKey ( hWnd , _HMG_aControlPageMap [x] , _HMG_aControlValue [x] , _HMG_aControlIds [x] )
ENDIF


Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 26
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.04.12 21:26. Заголовок: Петр пишет: ... вся ..


Петр пишет:

 цитата:
... вся перечеркнутая конструкция ...


Это родной текст MiniGui. Я для MDI ветку направил к себе, оставив без изменения родное, т.е. другие запуски пойдут к себе, как и было.


Спасибо: 0 
Профиль
Петр
постоянный участник


Пост N: 1105
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 26.04.12 21:49. Заголовок: Дело не в том, что в..


Дело не в том, что вы сделали, а как сделали, вот и Григорий несколько был озадачен.
Посмотрите, что он вас спросил - зачем так усложнять?

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 27
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 27.04.12 08:25. Заголовок: Петр пишет:зачем так..


Петр пишет:
 цитата:
зачем так усложнять?


Я не усложнял (и текст не был предложением для проекта), а показал, что с частично принятыми изменениями по MDI не все работает.
Код, написанный Григорием, исправляет ситуацию, т.е. мы поняли друг друга. А в каком виде он внесет предложения в проект
это решать только Григорию: взять как есть, подправить под концепцию MiniGUI, принять как идею или отбросить как бред.
Вас Петр понимаю, увидев такое ... не вынесла душа поэта ...


Спасибо: 0 
Профиль
Петр
постоянный участник


Пост N: 1110
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 27.04.12 16:03. Заголовок: Andrey пишет: Не ра..


Andrey пишет:

 цитата:
Не работает пример из MiniGUI\SAMPLES\Advanced\Downloader



Работает, и следующий раз, пожалуйста, пишите в правильной ветке, которую, к тому же, сами и создали - примеры, ошибки и т.д.

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 384
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 14.05.12 12:35. Заголовок: АНОНС * АНОНС * АНОН..


АНОНС * АНОНС * АНОНС * АНОНС * АНОНС

Завершена подготовка к опубликованию новой версии 2.1.1, которая выйдет послезавтра.

Кратко, что нового:
- исправление обнаруженных ошибок в реализации MDI - благодарю за содействие SergKis ;
- переработана внутренняя Си-функция loadolepicture() - благодарю за содействие Петра ;
- переработаны внутренние функции управления шрифтами - благодарю за содействие Петра ;
- добавлено автоматическое автоопределение и установка кодовой страницы пользователя при старте программы;
- добавлена возможность изменить шрифт в команде DRAW GRAPH по запросу пользователей;
- обновлена UNICODE-сборка Харбора до версии 3.2.0dev, а также библиотека HbPrinter;
- пересобрана HMGS-IDE с текущей версией библиотеки;
- добавлены новые и обновлены старые примеры.

Спасибо за внимание!

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 28
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 15.05.12 17:21. Заголовок: Для gfilatov2002. Ме..


Для gfilatov2002.
Мелочь, но в некоторых случаях удобно (перенести в MDI тестовый пример)
Скрытый текст


Спасибо: 0 
Профиль
Ответов - 301 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 249
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет