-
KOL.PAS VERSION 3.00.H (2,164,976 bytes)
dcc32.exe -b Kol.pas -dUNICODE_CTRLS;
Borland Delphi Version 15.0
Copyright (c) 1983,2002 Borland Software Corporation
KOLDEF.INC(253)
KOLDEF.INC(253)
delphidef.inc(48)
delphicommctrl.inc(1569)
KOL_unicode.inc(1185)
KOL_unicode.inc(1185)
KOL.pas(21709) Error: Incompatible types: 'Char' and 'WideChar'
KOL_ASM.inc(15325)
KOL.pas(64705)
-
По поводу MDI. program MDI_test;
uses
Windows, Messages, KOL;
var
MDIClient, MDIChild, Panel: PControl;
MainMenu: PMenu;
procedure CreateMDIChild;
begin
MDIChild := NewMDIChild(MDIClient, 'MDI Client').SetClientSize(320, 200);
MDIClient.Add2AutoFree(MDIChild);
MDIChild.Border := 10;
Panel := NewPanel(MDIChild, esRaised).SetAlign(caClient);
Panel.Border := 2;
MDIClient.CreateWindow;
end;
procedure MenuItems(Dummy: Pointer; Sender: PMenu; Item: Integer);
begin
case Item of
1: CreateMDIChild;
3: MDIClient.Perform(WM_MDITILE, MDITILE_VERTICAL, 0);
4: MDIClient.Perform(WM_MDICASCADE, 0, 0);
end;
end;
begin
Applet := NewForm(nil, 'MDI test').SetPosition(240, 120).SetClientSize(380, 280);
Applet.Font.FontName := 'MS Sans Serif';
MainMenu := NewMenu(Applet, 0, ['New', '(', 'Create MDI Child', ')', 'Window', '(', 'Tile', 'Cascade', ')', ''], TOnMenuItem(MakeMethod(nil, @MenuItems)));
MDIClient := NewMDIClient(Applet, 0).SetAlign(caClient);
MDIClient.Add2AutoFree(MDIChild);
CreateMDIChild;
Run(Applet);
end. Вылетает при компиляции. Если оно не надо, то вопрос снимаю.
-
Confirmed:
program MDI_test;
uses KOL;
begin
Applet := NewForm(nil, 'MDI test');
NewMDIClient(Applet, 0); end.
-
Здравствуйте. Быть может, что-то путаю, но были испорчены: function TStrList.GetLineName(Idx: Integer): AnsiString; и function TStrList.GetLineValue(Idx: Integer): AnsiString;
кодом: Q := StrScan( PAnsiChar(s), '=' ); и Q := StrScan( Q, '=' );
Хотя рядом в файле лежат функции, где fNameDelim не игнорируется...
-
то с количеством директив? Я за их уменьшение :) Я тоже. Как версия зафиксируется, будем убирать хлам типа OLD_ALIGN (NEW_ALIGN вполне себе прижился), ADD_AUTOFREE4CONTROLS (уже давно прижился как основной) и т.п. Вообще, текущий набор опций таков, что никакие опции добавлять не нужно, кроме специальных случаев. Если надо очень много, есть EXTERNAL_DEFINES и это удобнее, чем в опциях проекта хранить.
-
По поводу MDI. program MDI_test; Это я поправлю сегодня. Но вы тоже молодец: в двух местах Add2AutoFree сделали, чтобы не забыло помереть. Не надо ни разу. При создании контрола дочерним он автоматом уже попадает в fAutoFree родителя, а более раза ему там нечего делать. В первый раз, добавляется в AutoFree вообще nil - контрол еще не создан.
-
рядом в файле лежат функции, где fNameDelim не игнорируется Я совсем забыл про fNameDelim, избавляясь от Parse. Поправлю сегодня.
-
KOL.zip with KOL 3.00.i is on kolmck site. All 4 issues are fixed: compilng with UNCODE_CTRLS (_AnsiCompareStr), running MDI_Test, Toolbar issue (elder behavior by default except special symbol defined), fNameDelim.
-
Thank you - can you recheck ActiveKOL as per [116] please.
-
Спасибо Большое [125].
-
Sorry, Jon. These were really different. May be file was locked when I updated it. I reuploaded it just now.
-
I mean ActiveKOL.zip, certainly.
-
Thank you very much for the speedy fixes. I'm afraid that I have to report another oddity. This used to work with KOL pre-v3:
program Test;
uses KOL;
begin
MsgOK(Int2Str(1)); end.
But with KOL 3 I have to assign an Applet:
program Test;
uses KOL;
begin
Applet := NewForm(nil, '');
MsgOK(Int2Str(1)); end.
Is this a bug?
-
This is something similar, using Int2Str works, but Int2Digs and Int2Ths create an error:
program Test;
uses KOL;
var
Memo: PControl;
Counter: Integer;
begin
Applet := NewForm(nil, '');
Memo := NewEditbox(Applet, [eoMultiline]).SetAlign(caClient);
Memo.Color := clWindow;
for Counter := 0 to 254 do
Memo.Add(Int2Digs(Counter, 3) + #$0D#$0A); Run(Applet);
end.
Very strange..
-
Just tested [133] with PAS_VERSION and it works correctly.
-
Подтверждаю. При UNICODE_CTRLS асм-версия Int2Digs не пашет. А может и еще что, предполагаю: Int2Ths, Num2Bytes, String2PascalStrExpr
-
Поскольку Int2Digs использую, то пока отключил асм-версию.
-
KOL.zip 3.00.j on site with fixes.
Если и дальше так пойдет, все переведем в KOLString, кроме StrList (его как раз не желательно, для скорости некоторых алгоритмов).
-
> KOL.zip 3.00.j on site with fixes.
Thank you very much, master. Excellent work!
-
Первая стабильная версия 3.00...смотрю со "своей колокольни".
Единственное в секцию инициализации так и добавляю InitCommonControls.
|