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

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

Версия 2.40 [Delphi, KOL/MCK, Windows]


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

Vladimir Kladov ©   (2006-10-14 12:25:00) 

Новости от 14 октября 2006 г.

Новости KOL и MCK (v2.40):

[*]KOL:   добавлен   символ   NOT_USE_RICHEDIT,   применим,   если  не
используются  контролы rich edit. Отключает весь код, связанный с rich
edit,  и  ссылку  в  секции uses на модуль richedit, экономит около 60
байт кода.

[*]KOL:  добавлен  символ  USE_GRAPHCTLS, следует использовать, если в
проекте  используются графические контролы, иначе экономится более 100
байт в коде.

[*]KOL:  теперь  TControl.Caption представляется строкой (AnsiString в
обычном случае, WideString в случае UNICODE_CTRLS).

[*]KOL:  в  случае  SMALLEST_CODE  свойство  Icon более не назначается
автоматически из ресурса MAINICON для формы/апплета при создании окна,
если  не  было назначено своим кодом. В противоположном случае (символ
SMALLEST_CODE   не  используется)  теперь  можно  использовать  символ
CUSTOM_APPICON, чтобы использовать собственное имя ресурса для главной
пиктограммы.

[*]KOL:  комментарии  к  TTimer  исправлены (давно уже используется не
окно Applet, а отдельное собственное окно).

[+]KOL:  добавлена  константа  Infinity (бесконечное число, как 1/0, в
коде для Free Pascal появляться не будет).

[+]KOL: добавлена функция IsInfinity.

[-]KOL:   исправление  для  версий  Delphi  2,  3:  удалена  директива
{$EXTERNALSYM},   обеспечен  вызов  inherited  для  Init  в  TStrList,
TThread.

[*]KOL:  в  случае UNICODE_CTRLS функции MsgOK, MsgBox, ShowMsg так же
работают  со  строкой  Unicode  и  используют  соответствующие  версии
API-функций.

[*]KOL:  добавлен  символ  CRASH_DEBUG  для  интенсивного тестирования
обращения  к  неверной  памяти:  вся  память объекта после деструктора
забивается байтами с шестнадцатеричным кодом $DD.

[+++]KOL:  добавлен  символ  NOT_USE_AUTOFREE4CONTROL.  Теперь большую
часть действий по уничтожению подчиненных объектов в деструкторе берет
на  себя  список fAutoFree, с этой опцией все возвращается к исходному
состоянию. Новый код короче на пару сотен байт.

[*]KOL:  изменен  метод  TObj.Final:  объекты,  добавленные  в  список
fAutoFree, уничтожаются теперь в обратном порядке.

[+]KOL: добавлены методы TObj.RemoveFromAutoFree, RemoveFromAutoFreeEx.

[***]KOL:  изменен  порядок  обработки  сообщений  с целью аккуратного
уничтожения  отработавших  форм,  и корректного завершения приложения.
Изменения   в  WndFunc,  TerminateExecution  (asm-версия).  Исправлено
неотрабатывание деструкторов форм при завершении приложения.

[+]KOL:  добавлен  символ  BUTTON_DBLCLICK_AS_CLICK:  при  его наличии
двойной  клик  левой  клавишей мыши на всех кнопках превращается в два
клика в любом случае.

[+]KOL:  добавлен символ DEFAULT_CANCEL_BTN_EXCLUSIVE: при его наличии
DefaultBtn и CancelBtn взаимоисключают друг друга. По умолчанию теперь
можно назначать оба эти свойства для кнопки в true одновременно.

[+]KOL: добавлен символ NO_DEFAULT_BUTTON_BOLD: при его наличии кнопка
с  DefaultBtn  =  true  не  выделяется  своей  утолщенной границей (не
назначается стиль BS_DEFPUSHBUTTON, но функциональность сохраняется).

[+]KOL:  добавлен  символ  CLICK_DEFAULT_CANCEL_BTN_DIRECTLY:  при его
наличии  кнопка  по  умолчанию и кнопка отмены нажимаются не визуально
без передачи фокуса кнопке.

[-]KOL: asm-версии методов TControl.DoSetFocus, TControl.GetHasBorder,
TControl.SetVerticalAlign, TControl.DC2Canvas, TControl.SetTransparent
приведены в соответствие с Паскаль-версиями.

[-]KOL: исправления в методе TControl.IsMainWindow.

[-]KOL:   прежняя  обработка  WM_ENDSESSION  в  процедуре  WndProcForm
отключена  (фактически  выполняла  немедленное  завершение  приложения
через  вызов Halt), теперь этот код можно специально включить символом
ENDSESSION_HALT.

[-]KOL: исправлена процедура JustOneNotify (asm-версия).

[*]   Минимальное  приложение  с  пустой  формой  (без  заголовка,  со
значениями  DefaultSize=true, DefaultPos=true - в случае MCK) занимает
при  компиляции  в Delphi5 (с заменой системных модулей, при включении
оптимизации   и   отключении   отладочной   информации,   с  символами
SMALLEST_CODE и NOT_USE_RICHEDIT) всего 10,5Кбайт.

[*]    В    MCK    поддержка   KOLCtrlWrapper   отключена   (перестала
функционировать), так что внешний вид формы на этапе разработки теперь
значительно  меньше  похож  на  то,  что  видно после запуска (то есть
теперь  NOT_USE_KOLCTRLWRAPPER  по умолчанию включен, обратно включать
не следует).

Прочие новости:

[*]написание  Книги  о KOL продвинулось еще немного - уже 170 страниц.
Новейшую версию пока брать на сайте kolnmck. Обновления - там же (сайт
bonanzas.rinet.ru пока что неисправен).


Vladimir Kladov   (2006-10-26 20:33:00) [1]

уже есть для GTK+: форма, кнопка, метка, заголовок, события мыши и клика. Пора заняться канвой.


Vladimir Kladov   (2006-10-25 16:28:00) [2]

мне удобнее отлаживаться в Delphi, а не под FPC, в Windows, а не под Linux'ом. GTK потому, что хотя он и объектно-ориентированный, но интерфейс к нему - это набор плоских функций чистого Си без ++. А значит, не надо никакого враппера, как сделал Borland для Kylix'а. Под виндой легко отлаживаться и из Delphi (только 2 дня ушло на поправке в синтаксисе заголовочных файлов для GTK+ от FPP 2.0.4). Просто установил GTK for Win32 (ссылку давал). Так же, работает и из cygwin (и его же использует FPC). run /tst/prog.exe и все, hello world на экране. Qt тоже можно сделать, у меня идет
{$IFDEF GDI}
... весь прежний код
{$ENDIF}
{$IFDEF _X_}
{$IFDEF GTK}
 код для GTK
{$ENDIF GTK}
{$ENDIF _X_}

Можно много разных вариантов добавить, чтобы был выбор. Но с GTK проще начать.

Потоки - какие? (Русский язык немного не видит разницы между stream и thread). Впрочем, я пока никакие потоки и не делал. Часть не оконная ос-зависимая доведена только до файлов, и не отлаживалась еще вовсе. Мне главное GUI сделать, остальное не вижу особых проблем, кроме очевидных отказов от того, что в линуксе по определению быть не может.


ANTPro   (2006-10-25 16:24:00) [3]

> [108] dmd   (25.10.06 07:06)
> его все труднее устанавливать на последних дистрибутивах,
> неопытному пользователю будет сложновато.

У меня Kylix3 без проблем поставился на Delphi7...


noname_   (2006-10-25 14:31:00) [4]

2 Vladimir Kladov [101]

Есть контейнер GtkFixed, но использовать его не рекомендуют


dmd   (2006-10-25 07:06:00) [5]

В конверте под Kylix от Gandalfа потоки не работали для тогдашней версии KOL, а как сейчас? Такой вопрос - почему выбрали Gtk, а не Qt? Просто на Qt базируется KDE, фаворитный desktop engine для Линукса. А про Kylix сейчас, по-видимому, уже можно забыть, его все труднее устанавливать на последних дистрибутивах, неопытному пользователю будет сложновато. Надо затачивать KOL/Linux под последнюю версию FPC, имхо конечно.


MTsv DN   (2006-10-24 21:05:00) [6]

Владимир,чтобы не "засорять" эту тему,откройте лучше новую...


Vladimir Kladov   (2006-10-24 20:38:00) [7]

заработало, наконец (gtk для win из Delphi). Ну вот, на сегодня форма запускается. Завтра буду пробовать добавить на нее что-нибудь типа label и button.


Ketmar   (2006-10-24 19:56:00) [8]

>[103] Vladimir Kladov 24-Oct-2006, 18:49
>еще и угрожать непонятно чем
я, вообще-то, нигде не угрожал. если меня так поняли... я тогда извиняюсь, мне не сложно. %-) извиняюсь. вот. даже два раза. %-)

>помогли бы разобраться
где я ни на что не способен, там я молчу в тряпочку. %-)


Vladimir Kladov   (2006-10-24 19:49:00) [9]

нет вроде все-таки есть. Доки меня запугали. "В GTK+ вся работа по расположению и изменению размеров виджетов, выполняется за вас автоматически". Ну-ну. gtk_window_resize, gtk_window_move, и снова делаем что хотим (т.е. что надо).

Осталась проблемка: после компиляции из дельфи форма по крестику закрывается,  но приложение никак не удается закорчить. Тот же стартовый пример из fpc работает нормально. Хотя, похоже есть разница: дельфийский вариант использует dll. А насчет fpc-шного - не уверен. Может, там код gtk просто в экзешник встраивается.


Vladimir Kladov   (2006-10-24 18:49:00) [10]

а зачем автору подсказки было мне приводить весь текст. И так понятно, что нужна одна строчка в заголовке.

Чем ерунду обсуждать, еще и угрожать непонятно чем, помогли бы разобраться. Есть все-таки или нет в gtk+ абсолютное позиционирование контролов (ну хорошо, виджетов).


Ketmar   (2006-10-24 18:35:00) [11]

>[100] Vladimir Kladov 24-Oct-2006, 18:31
>я предлагал попробовать на сайте. Пустая страница?
а где я выдвигал какие-либо претензии к сайту??? кажется, в [94] чётко процитирован тот, кому я отвечал. в [97] я никаких упоминаний о сайте тоже не нашёл, хотя перечитывал раз 5. а с телепатией у меня большие проблемы -- не работает она.


Vladimir Kladov   (2006-10-24 18:34:00) [12]

С GTK облом, кажется. Что-то я не нахожу там средств абсолютного позиционирование дочерних окон в родительском. Т.е. их там вообще нет. Вместо это панели с принудительным размещением дочерних по вертикали, горизонтали и в ячейках сетки. Теперь буду смотреть Qt, тем более что путь уже был пройден 1,5 раза (Kylix + Gandalf).


Vladimir Kladov   (2006-10-24 18:31:00) [13]

я предлагал попробовать на сайте. Пустая страница?


Ketmar   (2006-10-24 17:35:00) [14]

>[97] Vladimir Kladov 24-Oct-2006, 15:47
>ketmar, сначала попробуйте, потом пишите. А то так самому
>как бы...
я, вообще-то, имею обыкновение именно сначала пробовать. я знаю, как ведёт себя подобный html-код в описаных мной условиях. но всё равно не поленился перед написанием поста скопировать его в файл и проверить. а вот Вы, Владимир, за столько лет так и не изменились, сорри... %-(


D[u]fa   (2006-10-24 16:56:00) [15]

а чего пробовать?

он лишь имел ввиду чтоб добавить ссылку на страницу с редиректом.. ну типа как всегда "если ваш браузер не держит редирект то жмите руками сюда" =)


Vladimir Kladov   (2006-10-24 15:47:00) [16]

ketmar, сначала попробуйте, потом пишите. А то так самому как бы...


Vedun   (2006-10-24 13:46:00) [17]

Владимиру Кладову: не забудте в вашей книге исправить ссылку на основной сайт KOL в главе "0.4. Работа в KOL. Поиск информации".


Thaddy   (2006-10-24 13:41:00) [18]

let me know if the KOL site performance is now ok, gentleman ;)


Ketmar   (2006-10-24 01:32:00) [19]

>[89] MTsv DN(c) 22-Oct-2006, 12:57
я извиняюсь, но за такой "редирект" надо расстреливать на месте. в body обязанабыть ссылка вида "идём сюда -- url". почему? отключаем в Opera automatic redirection, загружаем эту страничку... ага. пустой экран. злобно материмся, лезем смотреть html-код (попутно мечтая сделать его автора вечным евнухом %-).

зыж сорри, если обидел.


D[u]fa   (2006-10-22 23:26:00) [20]

у меня есть ацкий Ubuntu если смогу помогу =)


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

Наверх

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