更新
This commit is contained in:
tslediter 2023-12-01 18:39:34 +08:00
parent b60fdfdc3e
commit 6dd3e015b9
3 changed files with 31 additions and 15 deletions

View File

@ -653,7 +653,8 @@ type TTslDebuga=class(TCustomControl)
begin begin
ExecuteCommand("dbgcreatechannel"); ExecuteCommand("dbgcreatechannel");
ExecuteCommand("showstr","µ÷ÊÔ³ÌÐò:"+FDebugExe); ExecuteCommand("showstr","µ÷ÊÔ³ÌÐò:"+FDebugExe);
ExecuteCommand("showstr","命令行参数:"+exestr); if ifarray(exestr) then exestr := array2str(exestr," ");
ExecuteCommand("showstr","调试命令行:"+exestr);
if FConnectchannel then if FConnectchannel then
begin begin
dbgattachwait(FConnectchannel); dbgattachwait(FConnectchannel);

View File

@ -239,7 +239,7 @@ type tapplication=class(tcomponent)
return r; return r;
{$endif} {$endif}
if not FMessageObj then FMessageObj := new TTagMSG(); if not FMessageObj then FMessageObj := new TTagMSG();
ptr := FMessageObj._getptr_; ptr := FMessageObj._getptr_();
while true do while true do
begin begin
{if (_wapi.PeekMessageA(ptr,0,0,0,0)) then {if (_wapi.PeekMessageA(ptr,0,0,0,0)) then

View File

@ -2341,8 +2341,10 @@ type tsgtkapi = class(tgtkapis)
begin begin
global g_image_list_caches ; global g_image_list_caches ;
if not ifarray(g_image_list_caches) then g_image_list_caches := array(); if not ifarray(g_image_list_caches) then g_image_list_caches := array();
ptr := new tcstring(8)._getptr_(); obj := new tcstring(8);
ptr := obj._getptr_();
sptr := inttostr(ptr); sptr := inttostr(ptr);
g_image_list_caches[sptr,"obj"] := obj;
g_image_list_caches[sptr,"width"] := cx; g_image_list_caches[sptr,"width"] := cx;
g_image_list_caches[sptr,"height"] := cy; g_image_list_caches[sptr,"height"] := cy;
g_image_list_caches[sptr,"flags"] := flags; g_image_list_caches[sptr,"flags"] := flags;
@ -7562,6 +7564,7 @@ type tgtk_ctl_object = class(_gtkeventtype)
//"day-selected":"tsl_gtk_day_select_event", //日历选择 //"day-selected":"tsl_gtk_day_select_event", //日历选择
"changed" :"tsl_gtk_changed_event", //改变 "changed" :"tsl_gtk_changed_event", //改变
"preedit-changed":"tsl_gtk_preedit_changed_event" , "preedit-changed":"tsl_gtk_preedit_changed_event" ,
"activate-default":"tsl_gtk_activate_default_event_cb"
); );
end end
function Connect(n,f); //连接消息 function Connect(n,f); //连接消息
@ -8610,7 +8613,7 @@ type tgtk_ctl_window_PoPup = class(tgtk_ctl_scroll_window)
end end
"activate-default": "activate-default":
begin begin
echo "activate-defalut\r\n"; echo "\r\n activate-defalut",datetimetostr(now());
end end
end; end;
return inherited; return inherited;
@ -8618,7 +8621,7 @@ type tgtk_ctl_window_PoPup = class(tgtk_ctl_scroll_window)
end end
function GtkBaseEventName();override; function GtkBaseEventName();override;
begin begin
return inherited union2 array("configure-event","delete-event","scroll-event"{,"activate-default"}); return inherited union2 array("configure-event","delete-event","scroll-event","activate-default");
end end
function CreateWnd(dwExStyle,lpClassName,lpWindowName,dwStyle,x,y,nwidth,nheight,hwndparent,hmenu,hinstance,lpParam);override; function CreateWnd(dwExStyle,lpClassName,lpWindowName,dwStyle,x,y,nwidth,nheight,hwndparent,hmenu,hinstance,lpParam);override;
begin begin
@ -8983,17 +8986,22 @@ begin
begin begin
ln := lowercase(n); ln := lowercase(n);
r := G_E_ID_Name_1[ln]; r := G_E_ID_Name_1[ln];
if not r then if ifnil(r) then
begin begin
r := new tcstring(64); mx := 18;
r.setv(n); for i ,v in G_E_ID_Name_1 do
r := r._getptr_(); begin
mx := max(mx,v);
end
r := mx+1;
G_E_ID_Name_1[ln] := r; G_E_ID_Name_1[ln] := r;
G_E_ID_Name_2[r] := ln; G_E_ID_Name_2[r] := ln;
end
return r; return r;
end else end else
if n>0 or n<0 then return G_E_ID_Name_2[n]; begin
return r;
end
end else if n>0 or n<0 then return G_E_ID_Name_2[n];
end end
function callpaintmessage(d); function callpaintmessage(d);
begin begin
@ -9310,6 +9318,7 @@ begin
"tsl_gtk_wmuser_event": return mgnr.get(thisfunction(tsl_gtk_wmuser_event)); "tsl_gtk_wmuser_event": return mgnr.get(thisfunction(tsl_gtk_wmuser_event));
"tsl_gtk_destroy_event": return mgnr.get(thisfunction(tsl_gtk_destroy_event)); "tsl_gtk_destroy_event": return mgnr.get(thisfunction(tsl_gtk_destroy_event));
"tsl_gtk_activate_event": return mgnr.get(thisfunction(tsl_gtk_activate_event)); "tsl_gtk_activate_event": return mgnr.get(thisfunction(tsl_gtk_activate_event));
"tsl_gtk_activate_default_event_cb": return mgnr.get(thisfunction(tsl_gtk_activate_default_event_cb));
"tsl_gtk_clicked_event": return mgnr.get(thisfunction(tsl_gtk_clicked_event)); "tsl_gtk_clicked_event": return mgnr.get(thisfunction(tsl_gtk_clicked_event));
"tsl_gtk_adj_value_changed_event": return mgnr.get(thisfunction(tsl_gtk_adj_value_changed_event)); "tsl_gtk_adj_value_changed_event": return mgnr.get(thisfunction(tsl_gtk_adj_value_changed_event));
"tsl_gtk_delete_event": return mgnr.get(thisfunction(tsl_gtk_delete_event)); "tsl_gtk_delete_event": return mgnr.get(thisfunction(tsl_gtk_delete_event));
@ -9349,6 +9358,12 @@ begin
return _gtkeventcall_(a,c,b); return _gtkeventcall_(a,c,b);
//获得消息处理函数的指针 //获得消息处理函数的指针
end end
function tsl_gtk_activate_default_event_cb(a:pointer;b:pointer):integer;
begin
//return _gtkeventcall_(a,c,b);
return dodeleteevents(a, "activate-default");
//activate-default;
end
function tsl_gtk_preedit_changed_event(a:pointer;b:pointer;c:pointer):integer; function tsl_gtk_preedit_changed_event(a:pointer;b:pointer;c:pointer):integer;
begin begin
return dotparamseevents(a, "preedit-changed", b, c); return dotparamseevents(a, "preedit-changed", b, c);