Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];

Вниз

В преддверии версии 1.70   Найти похожие ветки 

 
Kladov   (2003-03-06 21:23) [0]

Хотелось бы уточнить, есть ли еще пожелания перед выпуском новой версии.
Пока что ожидаются вот какие изменения:

KOL and MCK news (v1.70):
[-]KOL: LabelEffect shadow color fixed. Thanks to Dimaxx.

[-]KOL: TMenu.ItemBitmap[ ] assignment fixed. Thanks to Andrzej Kubaszek.

[-]KOL/MCK: TGraphicTool.AssignHandle fixed - by Yury Sidorov. There were font resource leak if a handle was assigned to a control, which had not font assigned before.

[±]KOL: methods added: TCanvas.WTextOut, WExtTextOut, WDrawText, WTextRect which allow to draw Unicode text on canvas. Functions TCanvas.WTextHeight and WTextWidth fixed.

[***]MCK: all the event handlers are now assigned only after creating all the controls and objects on a form, in SetupLast method of mirror controls. This is not so only for menu, toolbar, and other similar OnClick-like events, which are called mostly by the user. This change prevents calling all the event handlers while creating a form, when some of controls and objects could be not created yet. But please note, that some necessary events also will not be called in result, such as OnResize. So, call it by your code just after form creating (e.g., in OnFormCreate event handler). By a suggestion of Alexander Pravdin.

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


 
SPeller   (2003-03-07 02:53) [1]

Владимир, я как-то писал вам на счёт inc-файлов проекта для ДЛЛ. Хотелось бы чтобы МСК для ДЛЛ-проекта не вставляла строки

{$IFDEF KOL_MCK} {$I TPI_0.inc} {$ELSE}


{$ENDIF}
Или другим способом, вы знаете о чём я.


 
SPeller   (2003-03-07 03:42) [2]

Пока что вместо ручного удаления директив извратился другим способом:
{$IFDEF F_MCK}
begin // PROGRAM START HERE -- Please do not remove this comment

{$IFDEF KOL_MCK} {$I SPlRegEdit_0.inc} {$ELSE}

{$ENDIF}

end.

{$ELSE}
begin

end.
{$ENDIF}

Но это, ИМХО, глюк. Лучше сделать по-человечески.


 
Bartov   (2003-03-07 09:10) [3]

И про dof-файлы не забудьте!


 
Yury Sidorov   (2003-03-07 10:30) [4]

Да, для DLL проектов нужно что-то сделать, а то сейчас каждый извращается как может :)

Я, например, перенес все это добро:

{$IFDEF F_MCK}
begin // PROGRAM START HERE -- Please do not remove this comment
//....

за последний end. (энд с точкой) программы. Правда компилятор предупреждает, что все что находится после end. будет игнорироваться.


 
SPeller   (2003-03-07 11:03) [5]


> Правда компилятор предупреждает, что все что находится после
> end. будет игнорироваться.
У меня тоже предупреждает, но ничего страшного в этом нет. Первый end с точкой блокируется директивами.


 
Yury Sidorov   (2003-03-07 12:26) [6]

Ничего страшного нет. Так и работаю - с постоянным предупрежднием, но все-таки лучше, чтобы поддержка DLL проектов была в MCK.
Например, если DPR файл начинается словом library, то не генерить код инициализации приложения. Можно приводить его в виде комментария где-то в начале DPR-файла, чтобы разработчик мог сам решать куда ему его вставить.


 
SPeller   (2003-03-07 14:02) [7]

Я так думаю что можно обойтись и меньшим количеством директив - просто перед begin поставить {$UNDEF KOL_MCK}. По идее должно помочь.


 
Kladov   (2003-03-07 22:32) [8]


> если DPR файл начинается словом library, то не генерить
> код инициализации приложения

Это легко, сделаю в 1.70. Если library, то будет вам счастье :)


 
Alexander   (2003-03-07 23:53) [9]

Вот такой глючок замечен:
сделал сортироку данных в ListView -

procedure TFormMain.lvReportColumnClick(Sender: PControl; Idx: Integer);
begin
if (Idx <> SortRCol) then
begin
SortRCol := Idx;
lvReport.LVOptions := lvReport.LVOptions + [lvoSortAscending] - [lvoSortDescending];
end
else
if (lvoSortAscending in lvReport.LVOptions) then
lvReport.LVOptions := lvReport.LVOptions - [lvoSortAscending] + [lvoSortDescending]
else
( Idx)
Вот такой глючок замечен:
сделал сортироку данных в ListView -

procedure TFormMain.lvReportColumnClick(Sender: PControl; Idx: Integer);
begin
if (Idx <> SortRCol) then
begin
SortRCol := Idx;
lvReport.LVOptions := lvReport.LVOptions + [lvoSortAscending] - [lvoSortDescending];
end
else
if (lvoSortAscending in lvReport.LVOptions) then
lvReport.LVOptions := lvReport.LVOptions - [lvoSortAscending] + [lvoSortDescending]
else
lvReport.LVOptions := lvReport.LVOptions + [lvoSortAscending] - [lvoSortDescending];
lvReport.LVSortColumn(Idx);
end;

так вот, всё работает, но если на заголовке для одного из столбцов 2 раза кликнуть (получаем сортировку по убыванию), то скроллеры пропадают! Возвращаются только после изменения размера формы!


 
Kladov   (2003-03-08 08:48) [10]

Добавляю:

[*]MCK: generating of creating Applet, call of Run procedure removed for DLL project (library). By a suggestion of Alexander Pravdin.
[*]MCK: setting toolbar button caption to "-" does not set Separator property to true. By suggestion of Alex Egorov.
[*]MCK: small change made to provide project options Conditionals=KOL_MCK and Aliases=Classes=;Controls=;StdCtrls=;ExtCtrls=;mirror= in case when files .cfg and .dof are deleted.By suggestion of Dmitry Zharov.


> если на заголовке для одного из столбцов 2 раза кликнуть
> (получаем сортировку по убыванию), то скроллеры пропадают

Это какой-то глюк самого listview. Видимо, изменение стилей так работает. Шлите сами WM_SIZE:

LV1.Perform( WM_SIZE, 0, 0 )
или
PostMessage( LV1.Handle, WM_SIZE, 0, 0 )


 
Bartov   (2003-03-08 13:11) [11]

[*]MCK: small change made to provide project options Conditionals=KOL_MCK and Aliases=Classes=;Controls=;StdCtrls=;ExtCtrls=;mirror= in case when files .cfg and .dof are deleted.By suggestion of Dmitry Zharov.

Т.е. KOL_MCK вообще не нужен будет?!


 
Kladov   (2003-03-08 13:47) [12]

Наоборот, он восстанавливается в опциях проекта, если есть TKOLProject. Но такие свойства, как путь к замене system, PAS_VERSION - не восстанавливаются сами, если удалены файлы dof и cfg.


 
Bartov   (2003-03-08 16:47) [13]

2Владимир

> Наоборот, он восстанавливается в опциях проекта, если есть TKOLProject.
Это хорошо.

> Но такие свойства, как путь к замене system, PAS_VERSION - не восстанавливаются сами, если удалены файлы dof и cfg.

А это и НЕ НАДО!!!


 
Kladov   (2003-03-08 17:06) [14]

Если бы и надо, откуда о них бы узнать можно было :)


 
Bartov   (2003-03-08 17:31) [15]

2Владимир

А когда новую версию выложите?
Ведь это должен быть полный архив.


 
Kladov   (2003-03-08 17:56) [16]

Ну так вот и собираю информацию. На данный момент добавил:

[-]KOL: a lot of fixes by Mike Gerasimov:

user resource leaks in listbox and combobox fixed. Changes made in TControl.Destroy and TControl.WndProc, WndFuncCombo, CreateComboboxWnd, WndFuncPreventDraw, DblBufCreateWndProc.

resource leak fixed in checkbox. Change made in TCanvas.TextExtent.

Change in LVOptions assignment to provide scrollers lost.
WndProc_RichEdTransp_Update function changed to fix region resource leak.


 
Bartov   (2003-03-09 12:08) [17]

1. В dpk подправте название.
2. При генирации српавки добавте ссылку в kol.pas (object) на Visual objects constructing functions.


 
Kladov   (2003-03-09 15:03) [18]


> добавте ссылку в kol.pas (object) на Visual objects constructing
> functions

А это куда? Сразу после таблицы ссылок на разделы по категориям?


 
Bartov   (2003-03-09 16:04) [19]

> А это куда? Сразу после таблицы ссылок на разделы по категориям?

Лучше будет так

|---------------------------------|
| objects | functions by category |
|---------|-----------------------|
| | Visual objects constructing functions
| ... | ...

А то частенько приходится пользоваться, и скрол мыши долго прокричивать надо ;-(

Владимир, вы делаете поддержку Unicode в KOL.
Может добавите функции конвертации из Unicode в Ansi и обратно!!!
Это нужные на сей день фунции.


 
Kladov   (2003-03-09 17:12) [20]


> добавите функции конвертации из Unicode в Ansi и обратно

Разве для этого нужны функции? Если S := WS, где S:string и WS:WideString, то все само конвертируется. И наоборот тоже. Для работы на еще более низком уровне есть API.


 
Kladov   (2003-03-09 18:40) [21]

WideCharToMultiByte, MultiByteToWideChar


 
centronix   (2003-03-10 02:12) [22]

И еще, ИМХО, неплохо было бы перенести MCKFakeClasses.inc из архива MCK в архив KOL, т.к. без него на чистой коле не компилятся MCK-шные проекты...


 
blackalex   (2003-03-10 10:04) [23]

2Bartov
> добавите функции конвертации из Unicode в Ansi и обратно

Ты смотрел мой код? Там есть пару штук


 
Bartov   (2003-03-10 10:44) [24]

2blackalex
Только сегодня с утра начал смотреть...



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

Форум: "KOL";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.011 c
3-78825
VP
2003-11-04 17:23
2003.11.24
Quick Report Pro


1-78910
kull
2003-11-10 12:17
2003.11.24
Как прочитать из stderr?


1-78962
Nikolas
2003-11-11 20:30
2003.11.24
Как воспроизвести видео файл.


4-79228
o2
2003-09-27 13:24
2003.11.24
Фокус окон и компонентов


3-78751
Disruptor
2003-11-04 13:23
2003.11.24
Добавление в одну БД информации из другой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский