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




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


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

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

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

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

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




--
Улыбайся - завтра будет хуже!
Спасибо: 5 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


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




Пост N: 6006
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.08.18 12:23. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Подготовил первый релиз-кандидат для новой сборки библиотеки со следующим списком изменений



Что то не увидел свой пример CallDll2 ?
Старался его сделать для других, чтобы было понятно как загружать чужие и свои DLL-ки.

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




Пост N: 1342
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 18.08.18 17:23. Заголовок: Andrey пишет: не у..


Andrey пишет:

 цитата:
не увидел свой пример CallDll2


Верно.

Andrey пишет:

 цитата:
как загружать чужие и свои DLL-ки


В этом примере есть Харбор, Си, DLL, но очень мало собственно МиниГУИ.
Поэтому пример не вошел в следующую сборку.
Если будет интерес в использовании DLL у пользователей, то, конечно, добавлю Ваш пример

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




Пост N: 1343
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 18.08.18 17:27. Заголовок: SergKis пишет: Ввел..


SergKis пишет:

 цитата:
Ввел в TsColumns DATA bValue


Принято, конечно.
Благодарю за помощь

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



Пост N: 1966
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.08.18 18:15. Заголовок: SergKis пишет Испол..


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

Использование

oColum:cName := 'MET'
oColum:lChecBox := .T.
oColum:Cargo := oKeyData() // контейнер\список для recno отмеченных записей
oColum:bValue := {|xval,obrw,ncol,ocol| ;
xval := ocol:Cargo:Get((obrw:cAlias)->( RecNo() )), ;
ncol := ! empty(xval) } // .T. - при наличии в контейнере
...
oBrw:UserKeys( VK_SPACE, {|obr|
Local oCol := obr:aColumns[obr:nCell]
Local nRec
If oCol:cName == 'MET'
nRec := (obr:cAlias)->( RecNo() )
If empty(oCol:Cargo:Get(nRec)) // добавим в список
oCol:Cargo:Set(nRec, nRec)
Else
oCol:Cargo:Del(nRec) // уберем из списка
EndIf
EndIf
Return Nil
} )


все проще (по привычке смешал в кучу старое, новое)
:UserKeys не надо, достаточно :bValue
 
oCol:cAlias := "BASE"
oCol:lCheckBox := .T.
oCol:lEdit := .T.
oCol:Cargo := oKeyData()
oCol:bValue := {|xv,ob,nc,oc|
Local nRec := RecNo()
If xv == Nil
xv := ! empty(oc:Cargo:Get(nRec))
ElseIf xv
oc:Cargo:Set(nRec, nRec)
Else
oc:Cargo:Del(nRec)
EndIf
Return xv
}



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



Пост N: 1967
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.08.18 18:35. Заголовок: gfilatov2002 пишет П..


gfilatov2002 пишет
 цитата:
Принято


Для однотипного вызова, наверно. надо поправить
 
METHOD bDataEval( oCol, xVal, nCol ) CLASS TSBrowse
...
If lNoAls; xVal := Eval( oCol:bDecode, xVal, Self, nCol, oCol )
Else ; xVal := (cAlias)->( Eval( oCol:bDecode, xVal, Self, nCol, oCol ) )
EndIf
...
If lNoAls; xVal := Eval( oCol:bEncode, xVal, Self, nCol, oCol )
Else ; xVal := (cAlias)->( Eval( oCol:bEncode, xVal, Self, nCol, oCol ) )
EndIf
...


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



Пост N: 1968
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.08.18 14:07. Заголовок: Упс. Пропало, что вы..


Упс. Пропало, что выкладывал. Повторю.
gfilatov2002
У себя сделал изменения :Скрытый текст

Пример Tsb_Brw2Xml с исп. new методов (tsb4xml.prg) и hb_tsbrowse.prg тут https://my-files.ru/6fmntp


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



Пост N: 1972
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.08.18 16:06. Заголовок: PS Правка tsb4xml.pr..


PS
Правка tsb4xml.prg
 
METHOD StyleFooter() CLASS Tsb2Xml2Xls
...
// If empty( ::nClrHead )
If empty( ::nClrFoot )
nColor := :nColorGet( oCol:nClrFootBack, i )

// nColor := :nColorGet( oCol:nClrFootBack, i )
nColor := ::StyleColor( nColor )
Else
// nColor := ::nClrHead
nColor := ::nClrFoot

EndIf
...


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




Пост N: 1344
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 23.08.18 16:48. Заголовок: SergKis пишет: Проп..


SergKis пишет:

 цитата:
Пропало, что выкладывал. Повторю.


Благодарю за настойчивость
Изменения приняты

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




Пост N: 6009
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.08.18 19:16. Заголовок: Если будет интерес в..


Если будет интерес в использовании DLL у пользователей, то, конечно, добавлю Ваш пример

У меня есть интерес, да думаю и другим будет интересен пример:
Как собрать свои отдельные модули в отдельной dll-ке и вызов их из главной программы ?
Причём как туда в dll-ку можно передать параметры (массив и другие) ?
Попытался сам сделать это и не смог.
Хочу свой большой проект разделить на части.
Вынести готовые (которые не подвегаются правке) модули в отделные DLL-ки.

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



Пост N: 1973
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.08.18 20:19. Заголовок: Andrey Помнится, ты..


Andrey
Помнится, ты даже одну собственную либу не хотел делать, боясь запутаться в версиях.
А тут несколько dll да еще разных версий hb, hmg, свои, ... ?

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




Пост N: 6010
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.08.18 23:53. Заголовок: А тут несколько dll ..


А тут несколько dll да еще разных версий hb, hmg, свои, ... ?

Чуток разобрался с МиниГуи. Понравились отдельные dll-ки.
Вот и хочу свои dll-ки пока на МиниГуи попробовать.
Другие языки пока не нужны.
Хотелось бы в МиниГуи иметь отдельную папку с таким примером, типа CallDll3 !

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



Пост N: 1974
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.08.18 06:13. Заголовок: Andrey пишет Другие ..


Andrey пишет
 цитата:
Другие языки пока не нужны.


Иди по пути hrb, т.е. собери exe, включив все нужные компоненты (lib + request).
Окна и алгоритмы получай в hrb. Hrb можешь включать в ресурсные dll, иметь как файлы или как в foxpro, prg и hrb с одним именем, меняем prg, запускается получение hrb и потом он выполняется.

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



Пост N: 1975
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.08.18 06:23. Заголовок: PS hrb можешь держат..


PS
hrb можешь держать в zip с паролем или без.
Собранный, полный exe можно будет менять достаточно редко.

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


Пост N: 1296
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 25.08.18 10:59. Заголовок: SergKis пишет: полн..


SergKis пишет:

 цитата:
полный exe можно будет менять достаточно редко.


Я не вижу принципиальной разницы что менять, exe dll hbr prg.
Все кроме prg будет лочиться системой на момент выполнения, а prg требует дополнительной компиляции.
То есть все кроме prg требует либо автоматом рубить всех пользователей либо с матами индивидуально.
Я в итоге пришёл к решению следующему. Компилируется два exe. Первый просто лончер, который запускает второй.
Первый exe имеет настройки, с каким именем запускать второй. У второго от версии к версии инкрементируется расширение.
mod.000 mod.001 и так далее. После сборки основного мода его надо закинуть в папку программы и изменить конфигурацию лончер. Всё юзеря могут работать по прежнему, могут получить уведомление о доступности нового. Для обновления потребуется перезапуск лончер и он запустит новый мод. В качестве мода можно подсунуть сервисную программу. Которая к примеру поменяет структуру баз, пересчитатает историю и много чего., а потом пропишет новый мод.
Да, лончер запустив мод, сам заканчивает работу

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



Пост N: 1976
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.08.18 13:32. Заголовок: Haz пишет Я не вижу ..


Haz пишет
 цитата:
Я не вижу принципиальной разницы что менять, exe dll hbr prg.


Я не имел ввиду замену версии. В технике с hrb меняются в основном ресурсные dll общие или частные для конкр. клиента.
Exe один, не надо следить где какая версия dll hb, hmg и т.д. следить (лежат в тек. каталоге, у exe, в windows,...).
Кто и по какой причине (из "добрых" побуждений) подменил\ записал старую версию, перекрыв нужную ...
"Добрых" людей много как оказалось. Этого наелся с VO. В итоге оставил минимум dll один exe и все остальное в VO script и ресурсная dll, правда причина такой работы и плохая работа репозитария VO, даже в VO 2.7 такое случалось, т.е. пересобиря exe нельзя быть уверенным (не проверив), что все режимы работают.

 цитата:
Первый просто лончер, который запускает второй. Первый exe имеет настройки, с каким именем запускать второй.


Инсталяторы тоже так делают, устанавливают и запускают, что укажешь для доинсталяции.

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




Пост N: 6011
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 25.08.18 14:21. Заголовок: В итоге оставил мини..


В итоге оставил минимум dll один exe
Вот я и не смог сделать свою dll-ку на МиниГуи вообще .... Не получается...
Хотелось бы в МиниГуи иметь отдельную папку с таким примером, типа CallDll3 !

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



Пост N: 1977
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.08.18 15:03. Заголовок: Andrey пишет Вот я и..


Andrey пишет
 цитата:
Вот я и не смог сделать свою dll-ку на МиниГуи вообще


В VO dll в поставке, а ты хочешь выделить принудительно, а оно надо ?
По мне - не надо. Лучше на технологию hrb потрать время - это будет аналог dll

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



Пост N: 1978
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.08.18 10:28. Заголовок: gfilatov2002 Делал ..


gfilatov2002
Делал для себя константы цветов.
Цветовая гамма на сайта https://colorscheme.ru/html-colors.html
Может пригодятся Скрытый текст


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


Пост N: 338
Зарегистрирован: 29.05.10
ссылка на сообщение  Отправлено: 26.08.18 11:40. Заголовок: Andrey пишет: Вот я..


Andrey пишет:

 цитата:
Вот я и не смог сделать свою dll-ку на МиниГуи вообще .... Не получается...



А зачем? Что это дает?

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




Пост N: 6012
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.08.18 13:13. Заголовок: А зачем? Что это дае..


А зачем? Что это дает?
1) Чтобы уметь так же делать.
2) Разбить свой проект на части и неизменяемые программы держать в dll-ке.
У некоторых юзеров слабый инет, качать приходиться много, ехе-ник весит 18 мб.

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