Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Версия 2.23+Collapse [Delphi, Windows]


Страницы:   1 2 3 4 5

Vladimir Kladov ©   (2005-12-19 20:42:00) 

Новости от 19 декабря 2005 г.

Новости KOL и MCK (v2.23):
[+]KOLadd: добавлен объект TOpenDirDialogEx (альтернатива объекту TOpenDirDialog, не использует SHBrowseForFolder, работает намного быстрее).  MCK: добавлено свойство TKOLOpenDirDialog.AltDialog, позволяет переключиться на использование альтернативного диалога установкой значения в true.
[*]KOL: событие TControl.OnTVExpanding должно теперь возвращать TRUE (для обоих asm- и pas- версии) для того, чтобы предотвратить распахивание, и FALSE для того, чтобы позволить (ранее это различалось для asm- и pas- версии).
[+]KOL: добавлен метод TControl.RE_WSearchText.
[+]KOL: добавлена функция DirIconSysIndexOffline.
[+]KOL: добавлено свойство TMenu.ItemHelpContext.
[-]KOL: доступ к свойству TThread.PriorityBoost изменен на использование динамической линковки (исправление для Win9x).
[-]KOL: исправлено создание и разрушение объекта TImageList.
[*]KOL: изменен метод TBitmap.Convert2Mask.
[*]KOL: изменена работа метода TControl.AutoSize несколько (MinWidth и MinHeight берутся во внимание при автоматическом изменении размеров).
[*]MCK: генерация П-кода обеспечена для всех зеркал всех контролов и объектов всего стандартного множества объектов KOL. С этой версии KOL/MCK 2.23, выходит в жизнь система Collapse , которая позволяет компилировать П-код в байт-код и добавляет эмулятор этого байт-кода в приложение. См. Collapse в секции Инструменты.


Vedun   (2006-01-10 23:16:00) [21]

2 Vladimir Kladov

> а насчет той константы в Delphi7. До конца я все-таки не
> понял. Просто заменил IntToStr на IntToHex, та же самая
> константа FF000005 работает совершенно верно, если вставлена
> как шестнадцатиричная, а не десятичная. И 80000005 тоже
> работает.


$FF000005 не работает. Зато работает $80000005. И обратите внимание на [76].


Vedun   (2006-01-10 22:42:00) [22]


> В новой версии нет ведь минусов, там 16-ричные числа используются.
>  Может надо просто добиться чтобы MCK перегенрировал код
> (сдвинуть форму хотя бы).

А в байт-коде остались все те же отрицательные константы

DD (-16777211)

Кажется, это в PCompiler-е надо исправить.


SPeller   (2006-01-09 15:49:00) [23]

иосиф   (09.01.06 11:04) [74]
Можно будет VCL в п-код перегнать для уменьшения размера :))


иосиф   (2006-01-09 11:04:00) [24]

Владимир, а что именно даст компилятор Паскаль->П-код?


Vladimir Kladov   (2006-01-09 10:41:00) [25]

я нашел первую версию такого компилятора, но она не подойдет. Надо не для масм, а для басм, с выборочной компиляцией отдельно указанных паскаль-процедур, компиляция нужна на месте, а не в отдельный выходного файл своего формата. В общем я приступил, может и получится. В самом Collapse придется поправочку сделать: EBP использовать как указатель стека на момент вызова П-процедуры, и адресовать через него локальные переменные и параметры, а SELF хранить в кадре возврата П-стека (интересно, что на код это вообще не влияет, П-компилятор переделывать не надо, генерацию П-кода в МСК тоже).


френк   (2006-01-09 08:52:00) [26]

Vladimir Kladov   (07.01.06 17:54) [66]
или уже сразу приступать к компилятору Паскаль->П-код

имхо, енто было бы круто ) ждемс ;)


Vladimir Kladov   (2006-01-09 08:00:00) [27]

В новой версии нет ведь минусов, там 16-ричные числа используются. Может надо просто добиться чтобы MCK перегенрировал код (сдвинуть форму хотя бы).


SPeller   (2006-01-09 04:11:00) [28]

Vedun   (08.01.06 22:33) [69]
почему цвет должен задаваться отрицательными константами

Отрицательное число, т.е. число с 1 в 32 бите говорит о том, что использоваться должен системный цвет.


Vedun   (2006-01-08 22:33:00) [29]


>  Вызов SetCtlColor исправлен в Delphi7 (возможные проблемы
> с отрицательными числами во встроенном ассемблере).

Не знаю, может у меня битый компилятор, но он упорно не хочет понимать отрицательные числа. Ни один системный цвет (clWindow, clBtnFace и т.д.) не работает. Положение исправляет удаление минуса.

Может мне кто-нибудь объяснит, почему цвет должен задаваться отрицательными константами?


SPeller   (2006-01-07 23:09:00) [30]

Vladimir Kladov   (07.01.06 17:54) [66]
или уже сразу приступать к компилятору Паскаль->П-код

Это, я думаю, людям будет очень полезно. Учитывая, что вы уже как-то делали такой компилятор, но чем всё закончилось - неизвестно.


Vladimir Kladov   (2006-01-07 17:57:00) [31]

а насчет той константы в Delphi7. До конца я все-таки не понял. Просто заменил IntToStr на IntToHex, та же самая константа FF000005 работает совершенно верно, если вставлена как шестнадцатиричная, а не десятичная. И 80000005 тоже работает.


Vladimir Kladov   (2006-01-07 17:54:00) [32]

Новости от 7 января 2006 г.

Новости KOL и MCK (v2.31):
[-]KOL: исправлена прозрачная отрисовка графических контролов и отрисовка обычных контролов (панели) в качестве родителя графических контролов.
[-]MCK: Исправлена генерация П-кода для TKOLRichEdit.Font , TKOLBitBtn , TKOLToolbar.generateVariables (так же исправлена генерация обычного кода для этого случая), TKOLFrame. Вызов SetCtlColor исправлен в Delphi7 (возможные проблемы с отрицательными числами во встроенном ассемблере).
Прочие новости:
[*]пакет Collapse обновлен (добавлена опция /A для Pcompiler для полной перекомпиляции всех модулей, содержащих П-код).

уменьшил на 100К свой проект. Теперь вот думаю, руками переписывать участки кода, которые не генерит MCK (в OnFormCreate, в OnShow, у меня там километры), или уже сразу приступать к компилятору Паскаль->П-код...


homm86   (2006-01-07 14:39:00) [33]


> яяя   (07.01.06 11:26) [63]
А инмтрукцию читать пробывал?


Vedun   (2006-01-07 12:08:00) [34]


> Как я понял, строчке
>
>
> Result.EditBox1.Color := clWindow;
>
>
> соответствует конструкция
>
>
> L(-16777211)
> C1 TControl_.SetCtlColor<2>
>
>
> Так вот, константа -16777211 неправильно понимается (не
> знаю правда кем) и вместо белого фона компонента имеем черный.
>  Удаление минуса исправляет положение.

Во время выполнения константа clWindow имеет значение -2147483643. Заменяю в откомпилированном П-коде все -16777211 на -2147483643 и все нормально работает.
Смотрю в KOL. Там:

clWindow = TColor(COLOR_WINDOW or $80000000);

Смотрю в System.pas моего Д7:

clWindow = TColor(clSystemColor or COLOR_WINDOW);

где

clSystemColor = $FF000000;

Вот из-за отличия этих констант и получается глюк.


яяя   (2006-01-07 11:26:00) [35]

Всем привет. у меня проблемы с коллапсом. поставил кол и мск 2.30 и последний коллапс. Перекомпилил пдебаг и пкомпилер как написан в риадми. Пробую компилить демо 1 или демо 2 и нечиге не пашет, что делать?


SPeller   (2006-01-07 10:29:00) [36]

Видимо, где-то Color2RGB не выполняется.


Vedun   (2006-01-06 18:50:00) [37]

Как я понял, строчке


Result.EditBox1.Color := clWindow;


соответствует конструкция


L(-16777211)
C1 TControl_.SetCtlColor<2>


Так вот, константа -16777211 неправильно понимается (не знаю правда кем) и вместо белого фона компонента имеем черный. Удаление минуса исправляет положение.


homm   (2006-01-06 13:09:00) [38]

Сори... Еще не видел Vladimir Kladov (06.01.06 12:50) [58] когда писал.


homm   (2006-01-06 13:07:00) [39]

2 Владимир Кладов
Опять же AddLongTextField( SL, 'LoadAnsiStr ', fCaption, ' #0', '' ); выдает вот такой вот результат:
LoadAnsiStr ''
'Wake up. Grab a brush and put a little make-up. Hide the sca'
'rs to fade away the shakeup. Why''d you leave the keys upon t'
'he table? Here you go, create another fable.'
#0

А BASM похоже ''воспринимает как байт ноль. В результате исполняется буквально 'Wake up...., а не следуюший за строкой код.

Сделайте разбиение в компиляторе! Плиз. Ну ведь проблем реально меньше будет ИМХО.


Vladimir Kladov   (2006-01-06 12:50:00) [40]

Новости от 6 января 2006 г.

Новости KOL и MCK (v2.30):
[ ]KOL: не изменился.
[-]MCK: исправлена генерация П-кода для TKOLEdit.Text , TRichEdit.Text , TControl.SetCtlColor, TKOLCustomControl.EraseBkgnd. Решена проблема слишком длинных (truncated) строк.
Прочие новости:
[+]обновлен пакет Collapse (PCompiler: проблема слишком длинных строк в asm-коде).


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо