界面库

编辑控件-选中背景色
This commit is contained in:
JianjunLiu 2023-03-31 15:32:51 +08:00
parent 2a0149d06f
commit a7dea9b2cd
3 changed files with 92 additions and 27 deletions

View File

@ -254,7 +254,7 @@ type tapplication=class(tcomponent)
begin
tslprocessmessages(false);
RunWorkerThreadLoop();
_wapi.WaitMessage();
sleep(1);//_wapi.WaitMessage();
end
if FTerminated then break;
@ -6282,7 +6282,7 @@ begin
begin
tslprocessmessages(false);
RunWorkerThreadLoop();
API.WaitMessage();
sleep(1);//API.WaitMessage();
end
end
return -1;
@ -6651,7 +6651,7 @@ begin
begin
tslprocessmessages(false);
RunWorkerThreadLoop();
WPI.WaitMessage();
sleep(1);//WPI.WaitMessage();
end
////////////////////////////////////////////////
if not handle then break;

View File

@ -4011,7 +4011,7 @@ type TSynCustomMemo = class(TCustomMemo)
if (selt and selt = lowercase(val))or(seltcj and seltcj=v.FMate) then
begin
cvs.Font.bkColor := 0xFFE2B0;
cvs.Font.bkColor := selectbkcolor;//0xFFE2B0;
cvs.Font.bkmode := OPAQUE;
end
DrawLongString(cvs,val,vallength,r,rnzf);

View File

@ -649,7 +649,7 @@ type cef_contain_base = class(tslcstructureobj)
begin
return FTSLCallbacks[idx];
end
function setcallpropertybyindex(idx,c);
function setcallpropertybyindex(idx,c);virtual;
begin
n := idx+"_i";
if not ifobj(c) then
@ -747,7 +747,25 @@ type cef_contain_base = class(tslcstructureobj)
return r;
end
end
type cef_focus_handler_t = class(cef_contain_base)
type cef_handler_base = class(cef_contain_base)
function create(ptr)
begin
inherited ;
end
property client read fclient write fclient;
protected
function setcallpropertybyindex(idx,c);override;
begin
inherited;
if fclient then
begin
echo "\r\n:call length():",length(FTSLCallbacks );
end
end
private
[weakref]fclient;
end
type cef_focus_handler_t = class(cef_handler_base)
private
function structdescribe();override;
begin
@ -895,7 +913,7 @@ type cef_context_menu_params_t=class(cef_contain_base)
end
type cef_context_menu_handler_t=class(cef_contain_base)
type cef_context_menu_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -942,7 +960,7 @@ type cef_context_menu_handler_t=class(cef_contain_base)
return 0;
end
end
type cef_download_handler_t=class(cef_contain_base)
type cef_download_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1245,7 +1263,7 @@ type cef_download_item_t=class(cef_contain_base)
return s.str;
end
end
type cef_display_handler_t=class(cef_contain_base)
type cef_display_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1456,7 +1474,7 @@ type cef_display_handler_t=class(cef_contain_base)
end
end
end
type cef_frame_handler_t=class(cef_contain_base)
type cef_frame_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1524,7 +1542,7 @@ type cef_frame_handler_t=class(cef_contain_base)
end
end
end
type cef_find_handler_t=class(cef_contain_base)
type cef_find_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1568,7 +1586,7 @@ type cef_find_handler_t=class(cef_contain_base)
end
end
end
type cef_jsdialog_handler_t=class(cef_contain_base)
type cef_jsdialog_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1612,7 +1630,7 @@ type cef_jsdialog_handler_t=class(cef_contain_base)
end
end
end
type cef_audio_handler_t=class(cef_contain_base)
type cef_audio_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1750,7 +1768,7 @@ type cef_media_access_callback_t=class(cef_contain_base)
return ##f(_getptr_());
end
end
type cef_permission_handler_t=class(cef_contain_base)
type cef_permission_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -1862,7 +1880,7 @@ type cef_permission_handler_t=class(cef_contain_base)
end
end
type cef_drag_handler_t=class(cef_contain_base)
type cef_drag_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -2211,7 +2229,7 @@ type cef_drag_data_t=class(cef_contain_base)
end
type cef_command_handler_t=class(cef_contain_base)
type cef_command_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -2252,7 +2270,7 @@ type cef_command_handler_t=class(cef_contain_base)
end
end
end
type cef_keyboard_handler_t=class(cef_contain_base)
type cef_keyboard_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -2349,7 +2367,7 @@ type cef_key_event_t=class(tslcstructureobj)
property focus_on_editable_field index "focus_on_editable_field" read _getvalue_ write _setvalue_;
end
type cef_life_span_handler_t=class(cef_contain_base)
type cef_life_span_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -2454,12 +2472,9 @@ type cef_life_span_handler_t=class(cef_contain_base)
///
//void(CEF_CALLBACK* on_after_created)(struct _cef_life_span_handler_t* self,struct _cef_browser_t* browser);
property on_after_created index "on_after_created" read getcallpropertybyindex write setcallpropertybyindex;
helloabc;
procedure on_after_created_i(sf:pointer;browser:pointer);stdcall;
begin
c := getcallback(functionname());
helloabc := 200;
echo ">>in hello abc ";
if c then
call(c,self(true),
cef_object_get(browser,class(cef_browser_t))
@ -2662,7 +2677,7 @@ type cef_file_dialog_callback_t=class(cef_contain_base)
end
end
type cef_load_handler_t=class(cef_contain_base)
type cef_load_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -3006,7 +3021,7 @@ type cef_request_t=class(cef_contain_base)
//property get_identifier index "get_identifier" read _getvalue_ write _setvalue_;
end
type cef_request_handler_t=class(cef_contain_base)
type cef_request_handler_t=class(cef_handler_base)
private
function structdescribe();override;
begin
@ -3511,13 +3526,25 @@ type cef_client_t=class(cef_contain_base)
co := findclass("cef_"+nidx+"_t");
if o is co then
begin
p := o.client;
if p<>self(true) then
begin
if p then
begin
invoke(p,idx,1,nil);
end
end
fclienthanders[idx] := o;
f := findfunction(idx);
_setvalue_(idx,getinstance(f));
end else
o.client := self(true);
end else //ÒÆ³ý
begin
o := fclienthanders[idx];
reindex(fclienthanders,array(idx:nil));
_setvalue_(idx,0);
if o then o.client := nil;
end
end
function gethandlerptr(n,c);
@ -3645,8 +3672,9 @@ type cef_client_t=class(cef_contain_base)
return call(c,self(true),
cef_object_get(browser,class(cef_browser_t)),
cef_object_get(frame,class(cef_frame_t)),
source_process,
message
source_process,
cef_object_get(message,class(cef_process_message_t))
);
end
end
@ -4537,7 +4565,6 @@ type cef_process_message_t=class(cef_contain_base)
("copy","intptr",0),
("get_name","intptr",0),
("get_argument_list","intptr",0),
("get_shared_memory_region","intptr",0),
("get_shared_memory_region","intptr",0)
);
end
@ -5335,6 +5362,44 @@ type cef_browser_host_t=class(cef_contain_base)
end
implementation
type cef_log_severity_t = class
///
/// Default logging (currently INFO logging).
///
//LOGSEVERITY_DEFAULT, 0
///
/// Verbose logging.
///
//LOGSEVERITY_VERBOSE, 1
///
/// DEBUG logging.
///
//LOGSEVERITY_DEBUG = LOGSEVERITY_VERBOSE, 1
///
/// INFO logging.
///
//LOGSEVERITY_INFO,
///
/// WARNING logging.
///
//LOGSEVERITY_WARNING,
///
/// ERROR logging.
///
//LOGSEVERITY_ERROR,
///
/// FATAL logging.
///
//LOGSEVERITY_FATAL,
///
/// Disable logging to file for all messages, and to stderr for messages with
/// severity less than FATAL.
///
//LOGSEVERITY_DISABLE = 99
end
function IsBadReadPtr(ptr:pointer;ucb:pointer):integer;stdcall;external "Kernel32.dll" name "IsBadReadPtr";
function IsBadWritePtr(ptr:pointer;ucb:pointer):integer;stdcall;external "Kernel32.dll" name "IsBadWritePtr";
function LoadLibraryA(txt:string):POINTER;stdcall;external "Kernel32.dll" name "LoadLibraryA";