Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: CL | DM;

Вниз

Версия 2.03   Найти похожие ветки 

 
Владимир Кладов   (2004-12-19 20:38) [0]

Новости от 19 декабря 2004

Новости KOL и MCK (v2.03):
[-]KOL: в вызове обработчика OnTVExpanding (asm-версия) исправлена проблема с интерпретацией возвращаемого обработчиком результата. За репортаж и исправление спасибо: Viman.
[+]KOL: Добавлены методы TControl.TBMoveBtn, TBConvertIdxArray2ID, TBButtonSeparator - дл тулбара (автор TR"]F). MCK: Добавлено свойство TKOLToolbar.generateVariables. Если true, создаются не константы, а переменные, и для них автоматически вызывается новый метод TBConvertIdxArray2ID для присваивания ID этим переменным, вместо индексов кнопок.
[+]KOL: Добавлены свойство TObj.Name и функция FindObj, используются в коде ТОЛЬКО если в свойства проекта добавлен символ условной компиляции USE_NAMES. MCK: для ового свойства Name, добавлена генерация кода.
[*]KOL: функция Abs удалена из KOL. По совету Сергея Шишминцева.
[-]KOL: Когда свойству TOpenDirDialog.InitialPath устанавливается путь на корневую директорию диска, завершающий символ "\" обеспечивается, в то время как для прочих случаев, как и раньше, он устраняется. Исправлние от Сергея Шишминцива.
Прочие новости:
[-]PC-Asm обновлен (работает еще быстрее, особенно при повторной компиляции).


 
Андрей ©   (2004-12-21 08:50) [1]

Предлагаю еще одно исправление.
Проблема: Неверно работают SetPosition, SetSize и т.д. для MDIchild. Child-форма перемещается не туда, куда надо.

Решение: Собака порылась в TControl.GetBoundsRect. Там не учитывается, что Child-форма - дочерний контрол, и ему надо пересчитать координаты из экранных в клиентские.

Правки:
В паскалевской версии TControl.GetBoundsRect
Поправить
if fIsControl then
на
if fIsControl or fIsMDIChild then

в ассемблерной версии TControl.GetBoundsRect
поправить

CALL GetWindowRect
CMP [ESI].fIsControl,0
JZ @@storeBounds

на

CALL GetWindowRect

MOV AL,[ESI].fIsControl
OR AL,[ESI].fIsMDIChild
JZ @@storeBounds


 
Владимир Кладов   (2004-12-21 19:27) [2]

ОК, вошло:

Новости 21 декабря 2004

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

[-]KOL: исправлено чтение свойства TControl.BoundsRect для MDIChild. Спасибо Андрею за замечение и исправление.

[-]KOL: присваивание свойства TBitmapl.Handle исправлено для случая, когда присваивается дескриптор очень большого растрового изображения (ранее, это могло приводить к потере DIB-данных в результате промежуточных преобразований, и присваиванию большого черного прямоугольника).

[-]KOL: начиная с версии 2.02, модуль KOL.pas стал большим настолько, что отладчик Delphi оказался не в состоянии нормально работать с результирующим KOL.dcu (пропала возможность устанавливать точки останова, попытка войти в код модуля KOL.pas командой "Trace into" приводило к неустранимому "internal error", и оставалось только терминировать Delphi IDE из системного Менеджера Задач...). Так что, для устранения этих непрятностей, объект TBits перемещен в KOLadd.pas (и недавно добавленный объект TFastStrList так же слит с ним в этом модуле). В будущем, при любых предложениях по изменению кода, (даже при добавлении опционального кода, заключенного в скобки {$IFDEF} {$ENDIF} и аналогичные), просьба проверять, что лимит снова не достигнут, и предлагайте в таком случае, что еще может быть вынесено безболезненно из основного модуля KOL.pas.


 
miek ©   (2004-12-22 22:13) [3]

Предлагаю вынести из KOL объект TCabFile.


 
Gandalf ©   (2004-12-22 22:19) [4]

Нашел баг

procedure TObj.SetName(const NewName: String);
begin
 if FName <> "" then
 begin
   NamedObjectsList.Remove( @ Self );
   FName := "";
 end;
 if FindObj( NewName ) <> nil then Exit; // prevent duplications!
 FName := NewName;
 if FName<>"" then // <- Вот баг, вернее уже фикс.
   NamedObjectsList.Add( @ Self );
end;

Пример.

Создаем object без имени - таких до черта.

Он добавляеться.

Долее уничтожаем их - один за другим.
Поскольку Fname="" (он как был без имени так и остался) - то он не
выводиться из системы. Но уничтожаеться. Теперь при FindObj натыкаемся
на пустышку :(

Можно либо вообще запретить имена такого вида. Либо при уничтоженни
применять не пустое имя - а скажем "!" - признак вывода из системы -
т.е.

procedure TObj.SetName(const NewName: String);
begin
 if FName <> "!" then
 begin
   NamedObjectsList.Remove( @ Self );
   FName := "!";
   exit;
 end;
 if FindObj( NewName ) <> nil then Exit; // prevent duplications!
 FName := NewName;
 NamedObjectsList.Add( @ Self );
end;

Только тогда в Destroy надо не Name:="" а Name:="";


 
Владимир Кладов   (2004-12-26 09:53) [5]

[+]KOLIndy - adaptation of some stuff from Indy networking components library for KOL by non added, see in Adds/Networking.
[+]dragnDrop - component by non added for drag something from KOL form to another application, see in Adds/Utilities.
[+]KolDirMon - component by non added to show directory content and update view when something is changed on disk, see in Adds/Controls.
[+]UMLI - component by non (without MCK mirror) to implement multi-language interface, see in Adds/Utilities.


 
Владимир Кладов   (2004-12-26 10:45) [6]

Новости от 26 декабря 2004 года

Новости KOL и MCK (v2.05):
[-]KOL: исправлено присваивание свойству TControl.LVColImage значения -1. Спасибо: non за исправление.
[-]KOL: для случая когда определен символ USE_NAMES: объекты с пустыми именами не добавляются в список NamedObjectsList. Спасибо за сообщение об ошибке Дмитрию Жарову a.k.a. Gandalf.
Прочие новости:
[+]добавлен KOLIndy - частичная адаптация сетевых компонентов Indy для KOL, автор non, см. в Дополнениях/Сеть.
[+]добавлен компонент dragnDrop - для перетаскивания мышью чего-либо из формы KOL в другие приложения, автор non, см. в Дополнениях/Утилитах.
[+]добавлен компонент KolDirMon - для показа содержимого директории и контроля изменений на диске, автор non, см. в Дополнениях/Контролах.
[+]добавлен компонент UMLI (без MCK-зеркала) для организации много-языкового интерфейса, автор non, см. в Дополнениях/Утилитах.


 
SPeller ©   (2004-12-27 02:22) [7]

Delphi 6.02, KOL/MCK 2.05 - Не изменяется KOLForm.Caption - всегда Form1. Остальные свойства вроде нормально изменяются.


 
RA ©   (2004-12-27 09:08) [8]

2SPeller

Надо менять св-во Caption не у KOLForm, а у самой формы.


 
SPeller ©   (2004-12-28 11:54) [9]

Всегда менял у KOLForm. Наверное я что-то пропустил пока меня небыло.



Страницы: 1 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.051 c
14-1120986439
NewWonder
2005-07-10 13:07
2005.07.31
Как сделать счётчик скачиваний файла?


4-1117796672
webpauk
2005-06-03 15:04
2005.07.31
Указатели и DirectDraw


14-1120565551
desam
2005-07-05 16:12
2005.07.31
Что дает сертификат?


1-1121240017
Viktop
2005-07-13 11:33
2005.07.31
Создание формы по hot key


1-1121347666
Zak3D[@Tm]
2005-07-14 17:27
2005.07.31
Взаимосвязь модулей приложения.