Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
energye
energy
提交
fab1c6b6
energy
项目概览
energye
/
energy
通知
13
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
energy
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
fab1c6b6
编写于
2月 13, 2023
作者:
yanghye
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
优化动态链接库代码导入方式
上级
083a5e92
变更
33
展开全部
隐藏空白更改
内联
并排
Showing
33 changed file
with
830 addition
and
708 deletion
+830
-708
cef/cef-application-config.go
cef/cef-application-config.go
+25
-24
cef/cef-application-queue-async-call.go
cef/cef-application-queue-async-call.go
+4
-4
cef/cef-application.go
cef/cef-application.go
+33
-32
cef/cef-browser-view-component.go
cef/cef-browser-view-component.go
+12
-12
cef/cef-browser.go
cef/cef-browser.go
+66
-65
cef/cef-callback.go
cef/cef-callback.go
+3
-3
cef/cef-chromium-events.go
cef/cef-chromium-events.go
+46
-46
cef/cef-chromium-proc.go
cef/cef-chromium-proc.go
+116
-115
cef/cef-def.go
cef/cef-def.go
+5
-5
cef/cef-def_windows.go
cef/cef-def_windows.go
+17
-17
cef/cef-download.go
cef/cef-download.go
+2
-2
cef/cef-frame.go
cef/cef-frame.go
+16
-16
cef/cef-i-context-menu.go
cef/cef-i-context-menu.go
+56
-55
cef/cef-image.go
cef/cef-image.go
+7
-7
cef/cef-ipc-events.go
cef/cef-ipc-events.go
+12
-10
cef/cef-linked-window-parent.go
cef/cef-linked-window-parent.go
+48
-48
cef/cef-misc-functions.go
cef/cef-misc-functions.go
+4
-4
cef/cef-proc-def.go
cef/cef-proc-def.go
+5
-10
cef/cef-proc.go
cef/cef-proc.go
+4
-4
cef/cef-request.go
cef/cef-request.go
+13
-13
cef/cef-response.go
cef/cef-response.go
+11
-11
cef/cef-string-multi-map.go
cef/cef-string-multi-map.go
+9
-9
cef/cef-types-display.go
cef/cef-types-display.go
+6
-6
cef/cef-types-window.go
cef/cef-types-window.go
+44
-44
cef/cef-v8-i.go
cef/cef-v8-i.go
+5
-5
cef/cef-v8-js-bind-events.go
cef/cef-v8-js-bind-events.go
+4
-3
cef/cef-v8-js-bind-object.go
cef/cef-v8-js-bind-object.go
+14
-13
cef/cef-window-component.go
cef/cef-window-component.go
+63
-63
cef/cef-window-parent.go
cef/cef-window-parent.go
+47
-47
cmd/internal/ide/ide-component-anchor.go
cmd/internal/ide/ide-component-anchor.go
+2
-2
common/common.go
common/common.go
+7
-13
common/imports/imports.go
common/imports/imports.go
+37
-0
pkgs/ext/lcl-extend.go
pkgs/ext/lcl-extend.go
+87
-0
未找到文件。
cef/cef-application-config.go
浏览文件 @
fab1c6b6
...
...
@@ -10,6 +10,7 @@ package cef
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/golcl/energy/tools"
"github.com/energye/golcl/lcl/api"
...
...
@@ -87,113 +88,113 @@ func NewApplicationConfig() *tCefApplicationConfig {
return
m
}
//设置 Chromium Framework 编译好的二进制包根目录
//
设置 Chromium Framework 编译好的二进制包根目录
//
//默认当前目录
//
默认当前目录
func
(
m
*
tCefApplicationConfig
)
SetFrameworkDirPath
(
s
string
)
*
tCefApplicationConfig
{
m
.
frameworkDirPath
=
api
.
PascalStr
(
s
)
return
m
}
//设置资源目录,默认当前目录
//
设置资源目录,默认当前目录
func
(
m
*
tCefApplicationConfig
)
SetResourcesDirPath
(
s
string
)
*
tCefApplicationConfig
{
m
.
resourcesDirPath
=
api
.
PascalStr
(
s
)
return
m
}
//设置本地语言目录,默认当前目录
//
设置本地语言目录,默认当前目录
func
(
m
*
tCefApplicationConfig
)
SetLocalesDirPath
(
s
string
)
*
tCefApplicationConfig
{
m
.
localesDirPath
=
api
.
PascalStr
(
s
)
return
m
}
//设置缓存目录,默认当前目录
//
设置缓存目录,默认当前目录
func
(
m
*
tCefApplicationConfig
)
SetCache
(
s
string
)
*
tCefApplicationConfig
{
m
.
cache
=
api
.
PascalStr
(
s
)
return
m
}
//设置用户数据目录,默认当前目录
//
设置用户数据目录,默认当前目录
func
(
m
*
tCefApplicationConfig
)
SetUserDataPath
(
s
string
)
*
tCefApplicationConfig
{
m
.
userDataPath
=
api
.
PascalStr
(
s
)
return
m
}
//设置进程模型,作用于linux-默认禁用
//
设置进程模型,作用于linux-默认禁用
func
(
m
*
tCefApplicationConfig
)
SetDisableZygote
(
s
bool
)
*
tCefApplicationConfig
{
m
.
disableZygote
=
api
.
PascalBool
(
s
)
return
m
}
//设置关闭沙盒-默认关闭
//
设置关闭沙盒-默认关闭
func
(
m
*
tCefApplicationConfig
)
SetNoSandbox
(
s
bool
)
*
tCefApplicationConfig
{
m
.
noSandbox
=
api
.
PascalBool
(
s
)
return
m
}
//设置开启关闭GPU加速
//
设置开启关闭GPU加速
func
(
m
*
tCefApplicationConfig
)
SetEnableGPU
(
s
bool
)
*
tCefApplicationConfig
{
enableGPU
=
s
m
.
enableGPU
=
api
.
PascalBool
(
s
)
return
m
}
//设置进程模式,true:单进程模式
//
设置进程模式,true:单进程模式
func
(
m
*
tCefApplicationConfig
)
SetSingleProcess
(
s
bool
)
*
tCefApplicationConfig
{
SingleProcess
=
s
m
.
singleProcess
=
api
.
PascalBool
(
s
)
return
m
}
//设置使用模拟key chain
//
设置使用模拟key chain
func
(
m
*
tCefApplicationConfig
)
SetUseMockKeyChain
(
s
bool
)
*
tCefApplicationConfig
{
m
.
useMockKeyChain
=
api
.
PascalBool
(
s
)
return
m
}
//检测CEF文件默认不检测
//
检测CEF文件默认不检测
func
(
m
*
tCefApplicationConfig
)
SetCheckCEFFiles
(
s
bool
)
*
tCefApplicationConfig
{
m
.
checkCEFFiles
=
api
.
PascalBool
(
s
)
return
m
}
//设置语言
//
设置语言
func
(
m
*
tCefApplicationConfig
)
SetLanguage
(
s
LANGUAGE
)
*
tCefApplicationConfig
{
m
.
language
=
api
.
PascalStr
(
string
(
s
))
return
m
}
//设置必备的本地语言支持,逗号分隔的字符串 s="zh-CN,en-US" ,默认情况下 en-US 是必须的
//
设置必备的本地语言支持,逗号分隔的字符串 s="zh-CN,en-US" ,默认情况下 en-US 是必须的
func
(
m
*
tCefApplicationConfig
)
SetLocalesRequired
(
s
string
)
*
tCefApplicationConfig
{
m
.
localesRequired
=
api
.
PascalStr
(
s
)
return
m
}
//设置日志文件目录
//
设置日志文件目录
func
(
m
*
tCefApplicationConfig
)
SetLogFile
(
s
string
)
*
tCefApplicationConfig
{
m
.
logFile
=
api
.
PascalStr
(
s
)
return
m
}
//设置主程序绑定目录 作用于macos
//
设置主程序绑定目录 作用于macos
func
(
m
*
tCefApplicationConfig
)
SetMainBundlePath
(
s
string
)
*
tCefApplicationConfig
{
m
.
mainBundlePath
=
api
.
PascalStr
(
s
)
return
m
}
//设置子进程执行文件目录,一搬用于主进程过于复杂启动慢,需要独立出子进程
//
设置子进程执行文件目录,一搬用于主进程过于复杂启动慢,需要独立出子进程
func
(
m
*
tCefApplicationConfig
)
SetBrowseSubprocessPath
(
s
string
)
*
tCefApplicationConfig
{
m
.
browseSubprocessPath
=
api
.
PascalStr
(
s
)
return
m
}
//设置日志级别
//
设置日志级别
func
(
m
*
tCefApplicationConfig
)
SetLogSeverity
(
s
LOG
)
*
tCefApplicationConfig
{
m
.
logSeverity
=
uintptr
(
s
)
return
m
}
//设置远程调式端口 (1024 ~ 65535)
//
设置远程调式端口 (1024 ~ 65535)
func
(
m
*
tCefApplicationConfig
)
SetRemoteDebuggingPort
(
s
int32
)
*
tCefApplicationConfig
{
if
s
>
1024
&&
s
<
65535
{
m
.
remoteDebuggingPort
=
uintptr
(
s
)
...
...
@@ -218,29 +219,29 @@ func (m *tCefApplicationConfig) SetChromeRuntime(s bool) *tCefApplicationConfig
// GO绑定JS通用类型所属对象名定义
//
//默认值 gocobj
//
默认值 gocobj
func
(
m
*
tCefApplicationConfig
)
SetCommonRootName
(
name
string
)
{
if
name
==
""
{
name
=
commonRootName
}
else
{
commonRootName
=
name
}
common
.
Proc
(
internale_CEFV8ValueRef_SetCommonRootName
)
.
Call
(
api
.
PascalStr
(
commonRootName
))
imports
.
Proc
(
internale_CEFV8ValueRef_SetCommonRootName
)
.
Call
(
api
.
PascalStr
(
commonRootName
))
}
// GO绑定JS对象类型所属对象名定义
//
//默认值 goobj
//
默认值 goobj
func
(
m
*
tCefApplicationConfig
)
SetObjectRootName
(
name
string
)
{
if
name
==
""
{
name
=
objectRootName
}
else
{
objectRootName
=
name
}
common
.
Proc
(
internale_CEFV8ValueRef_SetObjectRootName
)
.
Call
(
api
.
PascalStr
(
objectRootName
))
imports
.
Proc
(
internale_CEFV8ValueRef_SetObjectRootName
)
.
Call
(
api
.
PascalStr
(
objectRootName
))
}
//energy framework env
//
energy framework env
func
(
m
*
tCefApplicationConfig
)
framework
()
{
var
path
string
if
m
.
frameworkDirPath
==
0
{
...
...
cef/cef-application-queue-async-call.go
浏览文件 @
fab1c6b6
...
...
@@ -10,7 +10,7 @@ package cef
//应用主线程异步回调
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common
/imports
"
"github.com/energye/golcl/lcl/api/dllimports"
"math"
"sync"
...
...
@@ -22,7 +22,7 @@ var (
)
func
applicationQueueAsyncCallInit
()
{
applicationQueueAsyncCallFunc
=
common
.
Proc
(
internale_SetApplicationQueueAsyncCallFunc
)
applicationQueueAsyncCallFunc
=
imports
.
Proc
(
internale_SetApplicationQueueAsyncCallFunc
)
applicationQueueAsyncCallFunc
.
Call
(
applicationQueueAsyncCallEvent
)
}
...
...
@@ -59,7 +59,7 @@ func QueueAsyncCall(fn qacFn) int {
IsSync
:
false
,
Fn
:
fn
,
})
common
.
Proc
(
internale_CEFApplication_QueueAsyncCall
)
.
Call
(
id
)
imports
.
Proc
(
internale_CEFApplication_QueueAsyncCall
)
.
Call
(
id
)
return
int
(
id
)
}
...
...
@@ -80,7 +80,7 @@ func QueueSyncCall(fn qacFn) int {
}
qc
.
Wg
.
Add
(
1
)
id
:=
qac
.
set
(
qc
)
common
.
Proc
(
internale_CEFApplication_QueueAsyncCall
)
.
Call
(
id
)
imports
.
Proc
(
internale_CEFApplication_QueueAsyncCall
)
.
Call
(
id
)
qc
.
Wg
.
Wait
()
qc
.
Fn
=
nil
qc
.
Wg
=
nil
...
...
cef/cef-application.go
浏览文件 @
fab1c6b6
...
...
@@ -10,7 +10,8 @@ package cef
import
(
"fmt"
.
"github.com/energye/energy/common"
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/ipc"
"github.com/energye/energy/logger"
...
...
@@ -38,7 +39,7 @@ func NewCEFApplication(cfg *tCefApplicationConfig) *TCEFApplication {
}
cfg
.
framework
()
application
=
new
(
TCEFApplication
)
r1
,
_
,
_
:=
Proc
(
internale_CEFApplication_Create
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
cfg
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFApplication_Create
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
cfg
)))
application
.
instance
=
unsafe
.
Pointer
(
r1
)
application
.
cfg
=
cfg
...
...
@@ -68,8 +69,8 @@ func (m *TCEFApplication) Instance() uintptr {
// 启动主进程
func
(
m
*
TCEFApplication
)
StartMainProcess
()
bool
{
if
m
.
instance
!=
nullptr
{
logger
.
Debug
(
"application single exe,"
,
Args
.
ProcessType
(),
"process start"
)
r1
,
_
,
_
:=
Proc
(
internale_CEFStartMainProcess
)
.
Call
(
m
.
Instance
())
logger
.
Debug
(
"application single exe,"
,
common
.
Args
.
ProcessType
(),
"process start"
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFStartMainProcess
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
r1
)
}
return
false
...
...
@@ -78,8 +79,8 @@ func (m *TCEFApplication) StartMainProcess() bool {
// 启动子进程, 如果指定了子进程执行程序, 将执行指定的子进程程序
func
(
m
*
TCEFApplication
)
StartSubProcess
()
(
result
bool
)
{
if
m
.
instance
!=
nullptr
{
logger
.
Debug
(
"application multiple exe,"
,
Args
.
ProcessType
(),
"process start"
)
r1
,
_
,
_
:=
Proc
(
internale_CEFStartSubProcess
)
.
Call
(
m
.
Instance
())
logger
.
Debug
(
"application multiple exe,"
,
common
.
Args
.
ProcessType
(),
"process start"
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFStartSubProcess
)
.
Call
(
m
.
Instance
())
result
=
api
.
GoBool
(
r1
)
}
return
false
...
...
@@ -91,31 +92,31 @@ func (m *TCEFApplication) RunMessageLoop() {
api
.
EnergyLibRelease
()
}()
logger
.
Debug
(
"application run message loop start"
)
Proc
(
internale_CEFApplication_RunMessageLoop
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_RunMessageLoop
)
.
Call
()
}
func
(
m
*
TCEFApplication
)
QuitMessageLoop
()
{
logger
.
Debug
(
"application quit message loop"
)
Proc
(
internale_CEFApplication_QuitMessageLoop
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_QuitMessageLoop
)
.
Call
()
}
func
(
m
*
TCEFApplication
)
StopScheduler
()
{
Proc
(
internale_CEFApplication_StopScheduler
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_StopScheduler
)
.
Call
()
}
func
(
m
*
TCEFApplication
)
Destroy
()
{
Proc
(
internale_CEFApplication_Destroy
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_Destroy
)
.
Call
()
}
func
(
m
*
TCEFApplication
)
Free
()
{
if
m
.
instance
!=
nullptr
{
Proc
(
internale_CEFApplication_Free
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_Free
)
.
Call
()
m
.
instance
=
nullptr
}
}
func
(
m
*
TCEFApplication
)
ExecuteJS
(
browserId
int32
,
code
string
)
{
Proc
(
internale_CEFApplication_ExecuteJS
)
.
Call
()
imports
.
Proc
(
internale_CEFApplication_ExecuteJS
)
.
Call
()
}
// 上下文件创建回调
...
...
@@ -124,7 +125,7 @@ func (m *TCEFApplication) ExecuteJS(browserId int32, code string) {
//
// 对于一些不想GO绑定变量的URL地址,实现该函数,通过 frame.Url
func
(
m
*
TCEFApplication
)
SetOnContextCreated
(
fn
GlobalCEFAppEventOnContextCreated
)
{
Proc
(
internale_CEFGlobalApp_SetOnContextCreated
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnContextCreated
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
defaultSetOnContextCreated
()
{
...
...
@@ -134,17 +135,17 @@ func (m *TCEFApplication) defaultSetOnContextCreated() {
}
func
(
m
*
TCEFApplication
)
SetOnContextInitialized
(
fn
GlobalCEFAppEventOnContextInitialized
)
{
Proc
(
internale_CEFGlobalApp_SetOnContextInitialized
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnContextInitialized
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
// 初始化设置全局回调
func
(
m
*
TCEFApplication
)
SetOnWebKitInitialized
(
fn
GlobalCEFAppEventOnWebKitInitialized
)
{
Proc
(
internale_CEFGlobalApp_SetOnWebKitInitialized
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnWebKitInitialized
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
// 进程间通信处理消息接收
func
(
m
*
TCEFApplication
)
SetOnProcessMessageReceived
(
fn
RenderProcessMessageReceived
)
{
Proc
(
internale_CEFGlobalApp_SetOnProcessMessageReceived
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnProcessMessageReceived
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
defaultSetOnProcessMessageReceived
()
{
m
.
SetOnProcessMessageReceived
(
func
(
browse
*
ICefBrowser
,
frame
*
ICefFrame
,
sourceProcess
CefProcessId
,
processMessage
*
ipc
.
ICefProcessMessage
)
bool
{
...
...
@@ -153,39 +154,39 @@ func (m *TCEFApplication) defaultSetOnProcessMessageReceived() {
}
func
(
m
*
TCEFApplication
)
AddCustomCommandLine
(
commandLine
,
value
string
)
{
Proc
(
internale_AddCustomCommandLine
)
.
Call
(
api
.
PascalStr
(
commandLine
),
api
.
PascalStr
(
value
))
imports
.
Proc
(
internale_AddCustomCommandLine
)
.
Call
(
api
.
PascalStr
(
commandLine
),
api
.
PascalStr
(
value
))
}
// 启动子进程之前自定义命令行参数设置
func
(
m
*
TCEFApplication
)
SetOnBeforeChildProcessLaunch
(
fn
GlobalCEFAppEventOnBeforeChildProcessLaunch
)
{
Proc
(
internale_CEFGlobalApp_SetOnBeforeChildProcessLaunch
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnBeforeChildProcessLaunch
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
defaultSetOnBeforeChildProcessLaunch
()
{
m
.
SetOnBeforeChildProcessLaunch
(
func
(
commandLine
*
TCefCommandLine
)
{})
}
func
(
m
*
TCEFApplication
)
SetOnBrowserDestroyed
(
fn
GlobalCEFAppEventOnBrowserDestroyed
)
{
Proc
(
internale_CEFGlobalApp_SetOnBrowserDestroyed
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnBrowserDestroyed
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
SetOnLoadStart
(
fn
GlobalCEFAppEventOnRenderLoadStart
)
{
Proc
(
internale_CEFGlobalApp_SetOnLoadStart
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnLoadStart
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
SetOnLoadEnd
(
fn
GlobalCEFAppEventOnRenderLoadEnd
)
{
Proc
(
internale_CEFGlobalApp_SetOnLoadEnd
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnLoadEnd
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
SetOnLoadError
(
fn
GlobalCEFAppEventOnRenderLoadError
)
{
Proc
(
internale_CEFGlobalApp_SetOnLoadError
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnLoadError
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
SetOnLoadingStateChange
(
fn
GlobalCEFAppEventOnRenderLoadingStateChange
)
{
Proc
(
internale_CEFGlobalApp_SetOnLoadingStateChange
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnLoadingStateChange
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFApplication
)
SetOnGetDefaultClient
(
fn
GlobalCEFAppEventOnGetDefaultClient
)
{
Proc
(
internale_CEFGlobalApp_SetOnGetDefaultClient
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFGlobalApp_SetOnGetDefaultClient
)
.
Call
(
api
.
MakeEventDataPtr
(
fn
))
}
func
init
()
{
...
...
@@ -203,7 +204,7 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
fn
.
(
GlobalCEFAppEventOnRenderLoadStart
)(
browser
,
frame
,
TCefTransitionType
(
getVal
(
2
)))
case
GlobalCEFAppEventOnRenderLoadEnd
:
...
...
@@ -213,7 +214,7 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
fn
.
(
GlobalCEFAppEventOnRenderLoadEnd
)(
browser
,
frame
,
int32
(
getVal
(
2
)))
case
GlobalCEFAppEventOnRenderLoadError
:
...
...
@@ -223,7 +224,7 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
fn
.
(
GlobalCEFAppEventOnRenderLoadError
)(
browser
,
frame
,
TCefErrorCode
(
getVal
(
2
)),
api
.
GoStr
(
getVal
(
3
)),
api
.
GoStr
(
getVal
(
4
)))
case
GlobalCEFAppEventOnRenderLoadingStateChange
:
...
...
@@ -233,7 +234,7 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
fn
.
(
GlobalCEFAppEventOnRenderLoadingStateChange
)(
browser
,
frame
,
api
.
GoBool
(
getVal
(
2
)),
api
.
GoBool
(
getVal
(
3
)),
api
.
GoBool
(
getVal
(
4
)))
case
RenderProcessMessageReceived
:
...
...
@@ -243,7 +244,7 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
cefProcMsg
:=
(
*
ipc
.
CefProcessMessagePtr
)(
getPtr
(
3
))
args
:=
ipc
.
NewArgumentList
()
...
...
@@ -267,13 +268,13 @@ func init() {
Browser
:
browser
,
Name
:
api
.
GoStr
(
tempFrame
.
Name
),
Url
:
api
.
GoStr
(
tempFrame
.
Url
),
Id
:
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
Id
:
common
.
StrToInt64
(
api
.
GoStr
(
tempFrame
.
Identifier
)),
}
if
strings
.
Index
(
frame
.
Url
,
"devtools://"
)
==
0
{
processName
=
PT_DEVTOOLS
processName
=
common
.
PT_DEVTOOLS
return
true
}
else
{
processName
=
Args
.
ProcessType
()
processName
=
common
.
Args
.
ProcessType
()
}
v8ctx
:=
(
*
iCefV8ContextPtr
)(
getPtr
(
2
))
ctx
:=
&
ICefV8Context
{
...
...
cef/cef-browser-view-component.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/consts"
"github.com/energye/energy/logger"
"github.com/energye/golcl/lcl"
...
...
@@ -23,7 +23,7 @@ type TCEFBrowserViewComponent struct {
}
func
NewBrowserViewComponent
(
AOwner
lcl
.
IComponent
)
*
TCEFBrowserViewComponent
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowserViewComponent_Create
)
.
Call
(
lcl
.
CheckPtr
(
AOwner
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowserViewComponent_Create
)
.
Call
(
lcl
.
CheckPtr
(
AOwner
))
return
&
TCEFBrowserViewComponent
{
instance
:
unsafe
.
Pointer
(
r1
),
}
...
...
@@ -50,7 +50,7 @@ func (m *TCEFBrowserViewComponent) CreateBrowserView(client *ICefClient, url str
}
else
{
dataBytesPtr
=
unsafe
.
Pointer
(
&
dataBytes
)
}
Proc
(
internale_CEFBrowserViewComponent_CreateBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
client
.
instance
),
api
.
PascalStr
(
url
),
uintptr
(
unsafe
.
Pointer
(
&
contextSettingsPtr
)),
uintptr
(
unsafe
.
Pointer
(
&
browserSettingsPtr
)),
uintptr
(
argsLen
),
uintptr
(
dataBytesPtr
),
uintptr
(
dataBytesLen
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_CreateBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
client
.
instance
),
api
.
PascalStr
(
url
),
uintptr
(
unsafe
.
Pointer
(
&
contextSettingsPtr
)),
uintptr
(
unsafe
.
Pointer
(
&
browserSettingsPtr
)),
uintptr
(
argsLen
),
uintptr
(
dataBytesPtr
),
uintptr
(
dataBytesLen
))
}
func
(
m
*
TCEFBrowserViewComponent
)
Instance
()
uintptr
{
...
...
@@ -58,19 +58,19 @@ func (m *TCEFBrowserViewComponent) Instance() uintptr {
}
func
(
m
*
TCEFBrowserViewComponent
)
GetForBrowser
(
browser
*
ICefBrowser
)
{
Proc
(
internale_CEFBrowserViewComponent_CreateBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
browser
.
Identifier
()))
imports
.
Proc
(
internale_CEFBrowserViewComponent_CreateBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
browser
.
Identifier
()))
}
func
(
m
*
TCEFBrowserViewComponent
)
SetPreferAccelerators
(
preferAccelerators
bool
)
{
Proc
(
internale_CEFBrowserViewComponent_SetPreferAccelerators
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
preferAccelerators
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetPreferAccelerators
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
preferAccelerators
))
}
func
(
m
*
TCEFBrowserViewComponent
)
RequestFocus
()
{
Proc
(
internale_CEFBrowserViewComponent_RequestFocus
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_RequestFocus
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFBrowserViewComponent
)
Browser
()
*
ICefBrowser
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowserViewComponent_Browser
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowserViewComponent_Browser
)
.
Call
(
uintptr
(
m
.
instance
))
browser
:=
&
ICefBrowser
{
browseId
:
int32
(
r1
),
}
...
...
@@ -82,23 +82,23 @@ func (m *TCEFBrowserViewComponent) Browser() *ICefBrowser {
//}
func
(
m
*
TCEFBrowserViewComponent
)
SetOnBrowserCreated
(
fn
BrowserViewComponentOnBrowserCreated
)
{
Proc
(
internale_CEFBrowserViewComponent_SetOnBrowserCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetOnBrowserCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFBrowserViewComponent
)
SetOnBrowserDestroyed
(
fn
BrowserViewComponentOnBrowserDestroyed
)
{
Proc
(
internale_CEFBrowserViewComponent_SetOnBrowserDestroyed
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetOnBrowserDestroyed
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFBrowserViewComponent
)
SetOnGetDelegateForPopupBrowserView
(
fn
BrowserViewComponentOnGetDelegateForPopupBrowserView
)
{
Proc
(
internale_CEFBrowserViewComponent_SetOnGetDelegateForPopupBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetOnGetDelegateForPopupBrowserView
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFBrowserViewComponent
)
SetOnPopupBrowserViewCreated
(
fn
BrowserViewComponentOnPopupBrowserViewCreated
)
{
Proc
(
internale_CEFBrowserViewComponent_SetOnPopupBrowserViewCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetOnPopupBrowserViewCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFBrowserViewComponent
)
SetOnGetChromeToolbarType
(
fn
BrowserViewComponentOnGetChromeToolbarType
)
{
Proc
(
internale_CEFBrowserViewComponent_SetOnGetChromeToolbarType
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFBrowserViewComponent_SetOnGetChromeToolbarType
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
init
()
{
...
...
cef/cef-browser.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,8 @@
package
cef
import
(
.
"github.com/energye/energy/common"
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/api"
...
...
@@ -17,7 +18,7 @@ import (
"unsafe"
)
//type ICefBrowser
//
type ICefBrowser
type
ICefBrowser
struct
{
chromium
unsafe
.
Pointer
browseId
int32
...
...
@@ -44,71 +45,71 @@ func (m *ICefBrowser) GetFrameId() int64 {
return
0
}
//浏览器ID号
//
浏览器ID号
func
(
m
*
ICefBrowser
)
Identifier
()
int32
{
return
m
.
browseId
}
//HostWindowHandle
//
HostWindowHandle
func
(
m
*
ICefBrowser
)
HostWindowHandle
()
types
.
HWND
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_GetHostWindowHandle
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_GetHostWindowHandle
)
.
Call
(
uintptr
(
m
.
browseId
))
return
r1
}
//CloseBrowser
//
CloseBrowser
func
(
m
*
ICefBrowser
)
CloseBrowser
(
forceClose
bool
)
{
Proc
(
internale_CEFBrowser_CloseBrowser
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
forceClose
))
imports
.
Proc
(
internale_CEFBrowser_CloseBrowser
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
forceClose
))
}
//TryCloseBrowser
//
TryCloseBrowser
func
(
m
*
ICefBrowser
)
TryCloseBrowser
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_TryCloseBrowser
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_TryCloseBrowser
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
//SetFocus
//
SetFocus
func
(
m
*
ICefBrowser
)
SetFocus
(
focus
bool
)
{
Proc
(
internale_CEFBrowser_SetFocus
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
focus
))
imports
.
Proc
(
internale_CEFBrowser_SetFocus
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
focus
))
}
//GetZoomLevel
//
GetZoomLevel
func
(
m
*
ICefBrowser
)
GetZoomLevel
()
(
result
float64
)
{
Proc
(
internale_CEFBrowser_GetZoomLevel
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFBrowser_GetZoomLevel
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
result
}
//SetZoomLevel
//
SetZoomLevel
func
(
m
*
ICefBrowser
)
SetZoomLevel
(
zoomLevel
float64
)
{
Proc
(
internale_CEFBrowser_SetZoomLevel
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
zoomLevel
)))
imports
.
Proc
(
internale_CEFBrowser_SetZoomLevel
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
zoomLevel
)))
}
//RunFileDialog
//
RunFileDialog
func
(
m
*
ICefBrowser
)
RunFileDialog
(
mode
int32
,
title
,
defaultFilePath
string
,
acceptFilters
*
lcl
.
TStrings
)
{
Proc
(
internale_CEFBrowser_RunFileDialog
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
mode
),
api
.
PascalStr
(
title
),
api
.
PascalStr
(
defaultFilePath
),
acceptFilters
.
Instance
())
imports
.
Proc
(
internale_CEFBrowser_RunFileDialog
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
mode
),
api
.
PascalStr
(
title
),
api
.
PascalStr
(
defaultFilePath
),
acceptFilters
.
Instance
())
}
//StartDownload
//
StartDownload
func
(
m
*
ICefBrowser
)
StartDownload
(
url
string
)
{
Proc
(
internale_CEFBrowser_StartDownload
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
url
))
imports
.
Proc
(
internale_CEFBrowser_StartDownload
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
url
))
}
//DownloadImage
//
DownloadImage
func
(
m
*
ICefBrowser
)
DownloadImage
(
imageUrl
string
,
isFavicon
bool
,
maxImageSize
int32
,
bypassCache
bool
)
{
Proc
(
internale_CEFBrowser_DownloadImage
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
imageUrl
),
api
.
PascalBool
(
isFavicon
),
uintptr
(
maxImageSize
),
api
.
PascalBool
(
bypassCache
))
imports
.
Proc
(
internale_CEFBrowser_DownloadImage
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
imageUrl
),
api
.
PascalBool
(
isFavicon
),
uintptr
(
maxImageSize
),
api
.
PascalBool
(
bypassCache
))
}
//Print
//
Print
func
(
m
*
ICefBrowser
)
Print
()
{
Proc
(
internale_CEFBrowser_Print
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_Print
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
GetFocusedFrame
()
*
ICefFrame
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_GetFocusedFrame
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_GetFocusedFrame
)
.
Call
(
uintptr
(
m
.
browseId
))
cf
:=
(
*
cefFrame
)(
unsafe
.
Pointer
(
r1
))
if
cf
!=
nil
{
ret
:=
&
ICefFrame
{}
ret
.
Browser
=
m
ret
.
Id
=
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Id
=
common
.
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Name
=
api
.
GoStr
(
cf
.
Name
)
ret
.
Url
=
api
.
GoStr
(
cf
.
Url
)
return
ret
...
...
@@ -116,12 +117,12 @@ func (m *ICefBrowser) GetFocusedFrame() *ICefFrame {
return
nil
}
func
(
m
*
ICefBrowser
)
MainFrame
()
*
ICefFrame
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_GetMainFrame
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_GetMainFrame
)
.
Call
(
uintptr
(
m
.
browseId
))
cf
:=
(
*
cefFrame
)(
unsafe
.
Pointer
(
r1
))
if
cf
!=
nil
{
ret
:=
&
ICefFrame
{}
ret
.
Browser
=
m
ret
.
Id
=
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Id
=
common
.
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Name
=
api
.
GoStr
(
cf
.
Name
)
ret
.
Url
=
api
.
GoStr
(
cf
.
Url
)
return
ret
...
...
@@ -130,12 +131,12 @@ func (m *ICefBrowser) MainFrame() *ICefFrame {
}
func
(
m
*
ICefBrowser
)
GetFrameById
(
frameId
int64
)
*
ICefFrame
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_GetFrameById
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_GetFrameById
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
cf
:=
(
*
cefFrame
)(
unsafe
.
Pointer
(
r1
))
if
cf
!=
nil
{
ret
:=
&
ICefFrame
{}
ret
.
Browser
=
m
ret
.
Id
=
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Id
=
common
.
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Name
=
api
.
GoStr
(
cf
.
Name
)
ret
.
Url
=
api
.
GoStr
(
cf
.
Url
)
cf
=
nil
...
...
@@ -145,12 +146,12 @@ func (m *ICefBrowser) GetFrameById(frameId int64) *ICefFrame {
}
func
(
m
*
ICefBrowser
)
GetFrameByName
(
frameName
string
)
*
ICefFrame
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_GetFrameByName
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
frameName
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_GetFrameByName
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
frameName
))
cf
:=
(
*
cefFrame
)(
unsafe
.
Pointer
(
r1
))
if
cf
!=
nil
{
ret
:=
&
ICefFrame
{}
ret
.
Browser
=
m
ret
.
Id
=
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Id
=
common
.
StrToInt64
(
api
.
GoStr
(
cf
.
Identifier
))
ret
.
Name
=
api
.
GoStr
(
cf
.
Name
)
ret
.
Url
=
api
.
GoStr
(
cf
.
Url
)
cf
=
nil
...
...
@@ -161,10 +162,10 @@ func (m *ICefBrowser) GetFrameByName(frameName string) *ICefFrame {
//PrintToPdf
//func (m *ICefBrowser) PrintToPdf(path string) {
// Proc(internale_CEFBrowser_PrintToPdf).Call(uintptr(m.browseId), api.PascalStr(path))
//
imports.
Proc(internale_CEFBrowser_PrintToPdf).Call(uintptr(m.browseId), api.PascalStr(path))
//}
//ExecuteDevToolsMethod
//
ExecuteDevToolsMethod
func
(
m
*
ICefBrowser
)
ExecuteDevToolsMethod
(
messageId
int32
,
method
string
,
dictionaryValue
*
ICefDictionaryValue
)
{
var
data
=
[]
byte
{}
var
dataPtr
unsafe
.
Pointer
...
...
@@ -184,131 +185,131 @@ func (m *ICefBrowser) ExecuteDevToolsMethod(messageId int32, method string, dict
}
else
{
dataPtr
=
unsafe
.
Pointer
(
&
data
)
}
Proc
(
internale_CEFBrowser_ExecuteDevToolsMethod
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
messageId
),
api
.
PascalStr
(
method
),
uintptr
(
argsLen
),
uintptr
(
dataPtr
),
uintptr
(
dataLen
))
imports
.
Proc
(
internale_CEFBrowser_ExecuteDevToolsMethod
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
messageId
),
api
.
PascalStr
(
method
),
uintptr
(
argsLen
),
uintptr
(
dataPtr
),
uintptr
(
dataLen
))
}
//SendKeyEvent
//
SendKeyEvent
func
(
m
*
ICefBrowser
)
SendKeyEvent
(
event
*
TCefKeyEvent
)
{
Proc
(
internale_CEFBrowser_SendKeyEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)))
imports
.
Proc
(
internale_CEFBrowser_SendKeyEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)))
}
func
(
m
*
ICefBrowser
)
SetAudioMuted
(
mute
bool
)
{
Proc
(
internale_CEFBrowser_SetAudioMuted
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
mute
))
imports
.
Proc
(
internale_CEFBrowser_SetAudioMuted
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
mute
))
}
func
(
m
*
ICefBrowser
)
IsAudioMuted
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_IsAudioMuted
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_IsAudioMuted
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefBrowser
)
SetAutoResizeEnabled
(
enabled
bool
,
minSize
,
maxSize
*
TCefSize
)
{
Proc
(
internale_CEFBrowser_SetAutoResizeEnabled
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
enabled
),
uintptr
(
unsafe
.
Pointer
(
minSize
)),
uintptr
(
unsafe
.
Pointer
(
maxSize
)))
imports
.
Proc
(
internale_CEFBrowser_SetAutoResizeEnabled
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
enabled
),
uintptr
(
unsafe
.
Pointer
(
minSize
)),
uintptr
(
unsafe
.
Pointer
(
maxSize
)))
}
func
(
m
*
ICefBrowser
)
SetAccessibilityState
(
accessibilityState
TCefState
)
{
Proc
(
internale_CEFBrowser_SetAccessibilityState
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
accessibilityState
))
imports
.
Proc
(
internale_CEFBrowser_SetAccessibilityState
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
accessibilityState
))
}
func
(
m
*
ICefBrowser
)
NotifyMoveOrResizeStarted
()
{
Proc
(
internale_CEFBrowser_NotifyMoveOrResizeStarted
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_NotifyMoveOrResizeStarted
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
NotifyScreenInfoChanged
()
{
Proc
(
internale_CEFBrowser_NotifyScreenInfoChanged
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_NotifyScreenInfoChanged
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
SendCaptureLostEvent
()
{
Proc
(
internale_CEFBrowser_SendCaptureLostEvent
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_SendCaptureLostEvent
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
SendTouchEvent
(
event
*
TCefTouchEvent
)
{
Proc
(
internale_CEFBrowser_SendTouchEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)))
imports
.
Proc
(
internale_CEFBrowser_SendTouchEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)))
}
func
(
m
*
ICefBrowser
)
SendMouseWheelEvent
(
event
*
TCefMouseEvent
,
deltaX
,
deltaY
int32
)
{
Proc
(
internale_CEFBrowser_SendMouseWheelEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
uintptr
(
deltaX
),
uintptr
(
deltaY
))
imports
.
Proc
(
internale_CEFBrowser_SendMouseWheelEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
uintptr
(
deltaX
),
uintptr
(
deltaY
))
}
func
(
m
*
ICefBrowser
)
SendMouseMoveEvent
(
event
*
TCefMouseEvent
,
mouseLeave
bool
)
{
Proc
(
internale_CEFBrowser_SendMouseMoveEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
api
.
PascalBool
(
mouseLeave
))
imports
.
Proc
(
internale_CEFBrowser_SendMouseMoveEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
api
.
PascalBool
(
mouseLeave
))
}
func
(
m
*
ICefBrowser
)
SendMouseClickEvent
(
event
*
TCefMouseEvent
,
type_
TCefMouseButtonType
,
mouseUp
bool
,
clickCount
int32
)
{
Proc
(
internale_CEFBrowser_SendMouseClickEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
uintptr
(
type_
),
api
.
PascalBool
(
mouseUp
),
uintptr
(
clickCount
))
imports
.
Proc
(
internale_CEFBrowser_SendMouseClickEvent
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
event
)),
uintptr
(
type_
),
api
.
PascalBool
(
mouseUp
),
uintptr
(
clickCount
))
}
func
(
m
*
ICefBrowser
)
ViewSource
(
frame
*
ICefFrame
)
{
m
.
createBrowserViewSource
(
frame
)
}
//显示开发者工具
//
显示开发者工具
func
(
m
*
ICefBrowser
)
ShowDevTools
()
{
if
browserWinInfo
:=
BrowserWindow
.
GetWindowInfo
(
m
.
Identifier
());
browserWinInfo
!=
nil
{
m
.
createBrowserDevTools
(
browserWinInfo
)
}
}
//关闭开发者工具
//
关闭开发者工具
func
(
m
*
ICefBrowser
)
CloseDevTools
()
{
Proc
(
internale_CEFBrowser_CloseDevTools
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_CloseDevTools
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
HasDevTools
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_HasDevTools
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_HasDevTools
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefBrowser
)
CanGoBack
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_CanGoBack
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_CanGoBack
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefBrowser
)
GoBack
()
{
if
m
.
CanGoBack
()
{
Proc
(
internale_CEFBrowser_GoBack
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_GoBack
)
.
Call
(
uintptr
(
m
.
browseId
))
}
}
func
(
m
*
ICefBrowser
)
CanGoForward
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_CanGoForward
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_CanGoForward
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefBrowser
)
GoForward
()
{
if
m
.
CanGoForward
()
{
Proc
(
internale_CEFBrowser_GoForward
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_GoForward
)
.
Call
(
uintptr
(
m
.
browseId
))
}
}
func
(
m
*
ICefBrowser
)
IsLoading
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_IsLoading
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_IsLoading
)
.
Call
(
uintptr
(
m
.
browseId
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefBrowser
)
Reload
()
{
Proc
(
internale_CEFBrowser_Reload
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_Reload
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
ReloadIgnoreCache
()
{
Proc
(
internale_CEFBrowser_ReloadIgnoreCache
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_ReloadIgnoreCache
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
StopLoad
()
{
Proc
(
internale_CEFBrowser_StopLoad
)
.
Call
(
uintptr
(
m
.
browseId
))
imports
.
Proc
(
internale_CEFBrowser_StopLoad
)
.
Call
(
uintptr
(
m
.
browseId
))
}
func
(
m
*
ICefBrowser
)
FrameCount
()
int
{
r1
,
_
,
_
:=
Proc
(
internale_CEFBrowser_FrameCount
)
.
Call
(
uintptr
(
m
.
browseId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFBrowser_FrameCount
)
.
Call
(
uintptr
(
m
.
browseId
))
return
int
(
r1
)
}
func
(
m
*
ICefBrowser
)
GetFrameNames
()
[]
*
FrameNames
{
var
result
uintptr
var
resultSize
int32
Proc
(
internale_CEFBrowser_GetFrameNames
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
result
)),
uintptr
(
unsafe
.
Pointer
(
&
resultSize
)))
imports
.
Proc
(
internale_CEFBrowser_GetFrameNames
)
.
Call
(
uintptr
(
m
.
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
result
)),
uintptr
(
unsafe
.
Pointer
(
&
resultSize
)))
frameNames
:=
make
([]
*
FrameNames
,
resultSize
,
resultSize
)
for
i
:=
0
;
i
<
int
(
resultSize
);
i
++
{
fnsPtr
:=
(
*
frameNamesPtr
)(
unsafe
.
Pointer
(
GetParamOf
(
i
,
result
)))
fnsPtr
:=
(
*
frameNamesPtr
)(
unsafe
.
Pointer
(
common
.
GetParamOf
(
i
,
result
)))
frameNames
[
i
]
=
&
FrameNames
{
Name
:
api
.
GoStr
(
fnsPtr
.
Name
),
Value
:
api
.
GoStr
(
fnsPtr
.
Value
),
...
...
@@ -320,14 +321,14 @@ func (m *ICefBrowser) GetFrameNames() []*FrameNames {
}
func
(
m
*
ICefBrowser
)
Find
(
searchText
string
,
forward
,
matchCase
,
findNext
bool
)
{
Proc
(
internale_CEFBrowser_Find
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
searchText
),
api
.
PascalBool
(
forward
),
api
.
PascalBool
(
matchCase
),
api
.
PascalBool
(
findNext
))
imports
.
Proc
(
internale_CEFBrowser_Find
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalStr
(
searchText
),
api
.
PascalBool
(
forward
),
api
.
PascalBool
(
matchCase
),
api
.
PascalBool
(
findNext
))
}
func
(
m
*
ICefBrowser
)
StopFinding
(
clearSelection
bool
)
{
Proc
(
internale_CEFBrowser_StopFinding
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
clearSelection
))
imports
.
Proc
(
internale_CEFBrowser_StopFinding
)
.
Call
(
uintptr
(
m
.
browseId
),
api
.
PascalBool
(
clearSelection
))
}
// ICefBrowser _CEFBrowser_ShowDevTools
func
_CEFBrowser_ShowDevTools
(
chromium
,
browser
,
windowParent
,
name
uintptr
)
{
Proc
(
internale_CEFBrowser_ShowDevTools
)
.
Call
(
chromium
,
browser
,
windowParent
,
name
)
imports
.
Proc
(
internale_CEFBrowser_ShowDevTools
)
.
Call
(
chromium
,
browser
,
windowParent
,
name
)
}
cef/cef-callback.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"unsafe"
)
...
...
@@ -18,9 +18,9 @@ type ICefCallback struct {
}
func
(
m
*
ICefCallback
)
Cont
()
{
Proc
(
internale_cefCallback_Cont
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_cefCallback_Cont
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefCallback
)
Cancel
()
{
Proc
(
internale_cefCallback_Cancel
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_cefCallback_Cancel
)
.
Call
(
uintptr
(
m
.
instance
))
}
cef/cef-chromium-events.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/api"
)
...
...
@@ -264,227 +264,227 @@ func (m *TCEFChromium) SetOnDraggableRegionsChanged(fn ChromiumEventOnDraggableR
// --------TCEFChromium Event proc begin--------
func
_CEFChromium_SetOnAfterCreated
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnAfterCreated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnAfterCreated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforeClose
func
_CEFChromium_SetOnBeforeClose
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforeClose
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforeClose
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnClose
func
_CEFChromium_SetOnClose
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnClose
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnClose
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnPdfPrintFinished
func
_CEFChromium_SetOnPdfPrintFinished
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnPdfPrintFinished
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnPdfPrintFinished
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnZoomPctAvailable
func
_CEFChromium_SetOnZoomPctAvailable
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnZoomPctAvailable
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnZoomPctAvailable
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnLoadStart
func
_CEFChromium_SetOnLoadStart
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnLoadStart
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnLoadStart
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnLoadingStateChange
func
_CEFChromium_SetOnLoadingStateChange
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnLoadingStateChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnLoadingStateChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnLoadingProgressChange
func
_CEFChromium_SetOnLoadingProgressChange
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnLoadingProgressChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnLoadingProgressChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnLoadError
func
_CEFChromium_SetOnLoadError
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnLoadError
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnLoadError
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnLoadEnd
func
_CEFChromium_SetOnLoadEnd
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnLoadEnd
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnLoadEnd
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforeDownload
func
_CEFChromium_SetOnBeforeDownload
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforeDownload
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforeDownload
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnDownloadUpdated
func
_CEFChromium_SetOnDownloadUpdated
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnDownloadUpdated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnDownloadUpdated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnFullScreenModeChange
func
_CEFChromium_SetOnFullScreenModeChange
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnFullScreenModeChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnFullScreenModeChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforeBrowser
func
_CEFChromium_SetOnBeforeBrowser
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforeBrowse
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforeBrowse
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnAddressChange
func
_CEFChromium_SetOnAddressChange
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnAddressChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnAddressChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnKeyEvent
func
_CEFChromium_SetOnKeyEvent
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnKeyEvent
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnKeyEvent
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnTitleChange
func
_CEFChromium_SetOnTitleChange
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnTitleChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnTitleChange
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnRenderCompMsg
func
_CEFChromium_SetOnRenderCompMsg
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnRenderCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnRenderCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnWidgetCompMsg
func
_CEFChromium_SetOnWidgetCompMsg
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnWidgetCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnWidgetCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBrowserCompMsg
func
_CEFChromium_SetOnBrowserCompMsg
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBrowserCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBrowserCompMsg
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnRenderProcessTerminated
func
_CEFChromium_SetOnRenderProcessTerminated
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnRenderProcessTerminated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnRenderProcessTerminated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnRenderViewReady
func
_CEFChromium_SetOnRenderViewReady
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnRenderViewReady
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnRenderViewReady
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnScrollOffsetChanged
func
_CEFChromium_SetOnScrollOffsetChanged
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnScrollOffsetChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnScrollOffsetChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnProcessMessageReceived
func
_CEFChromium_SetOnProcessMessageReceived
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnProcessMessageReceived
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnProcessMessageReceived
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnFindResult
func
_CEFChromium_SetOnFindResult
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnFindResult
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnFindResult
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnCookieSet
func
_CEFChromium_SetOnCookieSet
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnCookieSet
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnCookieSet
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnCookiesDeleted
func
_CEFChromium_SetOnCookiesDeleted
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnCookiesDeleted
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnCookiesDeleted
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnCookiesFlushed
func
_CEFChromium_SetOnCookiesFlushed
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnCookiesFlushed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnCookiesFlushed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnCookiesVisited
func
_CEFChromium_SetOnCookiesVisited
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnCookiesVisited
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnCookiesVisited
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnCookieVisitorDestroyed
func
_CEFChromium_SetOnCookieVisitorDestroyed
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnCookieVisitorDestroyed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnCookieVisitorDestroyed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforeContextMenu
func
_CEFChromium_SetOnBeforeContextMenu
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforeContextMenu
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforeContextMenu
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnContextMenuCommand
func
_CEFChromium_SetOnContextMenuCommand
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnContextMenuCommand
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnContextMenuCommand
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnContextMenuDismissed
func
_CEFChromium_SetOnContextMenuDismissed
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnContextMenuDismissed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnContextMenuDismissed
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforeResourceLoad
func
_CEFChromium_SetOnBeforeResourceLoad
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforeResourceLoad
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforeResourceLoad
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnResourceResponse
func
_CEFChromium_SetOnResourceResponse
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnResourceResponse
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnResourceResponse
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnResourceRedirect
func
_CEFChromium_SetOnResourceRedirect
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnResourceRedirect
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnResourceRedirect
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnResourceLoadComplete
func
_CEFChromium_SetOnResourceLoadComplete
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnResourceLoadComplete
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnResourceLoadComplete
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnFrameAttached
func
_CEFChromium_SetOnFrameAttached
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnFrameAttached
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnFrameAttached
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnFrameCreated
func
_CEFChromium_SetOnFrameCreated
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnFrameCreated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnFrameCreated
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnFrameDetached
func
_CEFChromium_SetOnFrameDetached
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnFrameDetached
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnFrameDetached
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnMainFrameChanged
func
_CEFChromium_SetOnMainFrameChanged
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnMainFrameChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnMainFrameChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnBeforePopup
func
_CEFChromium_SetOnBeforePopup
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnBeforePopup
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnBeforePopup
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnOpenUrlFromTab
func
_CEFChromium_SetOnOpenUrlFromTab
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnOpenUrlFromTab
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnOpenUrlFromTab
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnDragEnter
func
_CEFChromium_SetOnDragEnter
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnDragEnter
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnDragEnter
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
// TCEFChromium _CEFChromium_SetOnDraggableRegionsChanged
func
_CEFChromium_SetOnDraggableRegionsChanged
(
instance
uintptr
,
fn
interface
{})
{
Proc
(
internale_CEFChromium_SetOnDraggableRegionsChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFChromium_SetOnDraggableRegionsChanged
)
.
Call
(
instance
,
api
.
MakeEventDataPtr
(
fn
))
}
//--------TCEFChromium Event proc end--------
cef/cef-chromium-proc.go
浏览文件 @
fab1c6b6
此差异已折叠。
点击以展开。
cef/cef-def.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common
/imports
"
"github.com/energye/golcl/lcl/api"
)
...
...
@@ -18,19 +18,19 @@ var (
lib_build_version
string
)
//cef version
//
cef version
func
CEFVersion
()
string
{
if
cef_version
==
""
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEFVersion
)
.
Call
()
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFVersion
)
.
Call
()
cef_version
=
api
.
GoStr
(
r1
)
}
return
cef_version
}
//lib build version
//
lib build version
func
LibBuildVersion
()
string
{
if
lib_build_version
==
""
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_LibBuildVersion
)
.
Call
()
r1
,
_
,
_
:=
imports
.
Proc
(
internale_LibBuildVersion
)
.
Call
()
lib_build_version
=
api
.
GoStr
(
r1
)
}
return
lib_build_version
...
...
cef/cef-def_windows.go
浏览文件 @
fab1c6b6
...
...
@@ -12,7 +12,7 @@
package
cef
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common
/imports
"
"github.com/energye/energy/consts"
t
"github.com/energye/energy/types"
"github.com/energye/golcl/lcl/api"
...
...
@@ -36,7 +36,7 @@ const (
E_PENDING
=
0x8000000A
)
//Win32 Predefined cursor constants
//
Win32 Predefined cursor constants
const
(
IDC_ARROW
=
32512
IDC_IBEAM
=
32513
...
...
@@ -89,80 +89,80 @@ func (m *HCursor) Free() {
}
func
WinCreateRectRgn
(
X1
,
Y1
,
X2
,
Y2
int32
)
*
HRGN
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_CreateRectRgn
)
.
Call
(
uintptr
(
X1
),
uintptr
(
Y1
),
uintptr
(
X2
),
uintptr
(
Y2
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_CreateRectRgn
)
.
Call
(
uintptr
(
X1
),
uintptr
(
Y1
),
uintptr
(
X2
),
uintptr
(
Y2
))
return
&
HRGN
{
instance
:
unsafe
.
Pointer
(
r1
),
}
}
func
WinSetRectRgn
(
aRGN
*
HRGN
,
X1
,
Y1
,
X2
,
Y2
int32
)
bool
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_SetRectRgn
)
.
Call
(
uintptr
(
aRGN
.
instance
),
uintptr
(
X1
),
uintptr
(
Y1
),
uintptr
(
X2
),
uintptr
(
Y2
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_SetRectRgn
)
.
Call
(
uintptr
(
aRGN
.
instance
),
uintptr
(
X1
),
uintptr
(
Y1
),
uintptr
(
X2
),
uintptr
(
Y2
))
return
api
.
GoBool
(
r1
)
}
func
WinDeleteObject
(
aRGN
*
HRGN
)
bool
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_DeleteObject
)
.
Call
(
uintptr
(
aRGN
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_DeleteObject
)
.
Call
(
uintptr
(
aRGN
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
WinCombineRgn
(
dest
,
src1
,
src2
*
HRGN
,
fnCombineMode
consts
.
RNGFnCombineMode
)
int32
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_CombineRgn
)
.
Call
(
uintptr
(
dest
.
instance
),
uintptr
(
src1
.
instance
),
uintptr
(
src2
.
instance
),
uintptr
(
fnCombineMode
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_CombineRgn
)
.
Call
(
uintptr
(
dest
.
instance
),
uintptr
(
src1
.
instance
),
uintptr
(
src2
.
instance
),
uintptr
(
fnCombineMode
))
return
int32
(
r1
)
}
func
WinPtInRegion
(
RGN
*
HRGN
,
X
,
Y
int32
)
bool
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_PtInRegion
)
.
Call
(
uintptr
(
RGN
.
instance
),
uintptr
(
X
),
uintptr
(
Y
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_PtInRegion
)
.
Call
(
uintptr
(
RGN
.
instance
),
uintptr
(
X
),
uintptr
(
Y
))
return
api
.
GoBool
(
r1
)
}
func
WinScreenToClient
(
handle
types
.
HWND
,
p
*
types
.
TPoint
)
int32
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_ScreenToClient
)
.
Call
(
handle
,
uintptr
(
unsafe
.
Pointer
(
p
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_ScreenToClient
)
.
Call
(
handle
,
uintptr
(
unsafe
.
Pointer
(
p
)))
return
int32
(
r1
)
}
func
WinClientToScreen
(
handle
types
.
HWND
,
p
*
types
.
TPoint
)
bool
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_ClientToScreen
)
.
Call
(
handle
,
uintptr
(
unsafe
.
Pointer
(
p
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_ClientToScreen
)
.
Call
(
handle
,
uintptr
(
unsafe
.
Pointer
(
p
)))
return
api
.
GoBool
(
r1
)
}
func
WinDefWindowProc
(
handle
types
.
HWND
,
msg
types
.
UINT
,
wParam
types
.
WPARAM
,
lParam
types
.
LPARAM
)
types
.
LRESULT
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_DefWindowProc
)
.
Call
(
handle
,
uintptr
(
msg
),
wParam
,
lParam
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_DefWindowProc
)
.
Call
(
handle
,
uintptr
(
msg
),
wParam
,
lParam
)
return
types
.
LRESULT
(
r1
)
}
func
WinDefSubclassProc
(
handle
types
.
HWND
,
msg
types
.
UINT
,
wParam
types
.
WPARAM
,
lParam
types
.
LPARAM
)
types
.
LRESULT
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_DefSubclassProc
)
.
Call
(
handle
,
uintptr
(
msg
),
wParam
,
lParam
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_DefSubclassProc
)
.
Call
(
handle
,
uintptr
(
msg
),
wParam
,
lParam
)
return
types
.
LRESULT
(
r1
)
}
func
WinCreateRoundRectRgn
(
_para1
,
_para2
,
_para3
,
_para4
,
_para5
,
_para6
t
.
LongInt
)
*
HRGN
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_CreateRoundRectRgn
)
.
Call
(
_para1
.
ToPtr
(),
_para2
.
ToPtr
(),
_para3
.
ToPtr
(),
_para4
.
ToPtr
(),
_para5
.
ToPtr
(),
_para6
.
ToPtr
())
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_CreateRoundRectRgn
)
.
Call
(
_para1
.
ToPtr
(),
_para2
.
ToPtr
(),
_para3
.
ToPtr
(),
_para4
.
ToPtr
(),
_para5
.
ToPtr
(),
_para6
.
ToPtr
())
return
&
HRGN
{
instance
:
unsafe
.
Pointer
(
r1
),
}
}
func
WinSetWindowRgn
(
handle
types
.
HWND
,
hRgn
*
HRGN
,
bRedraw
bool
)
t
.
LongInt
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_SetWindowRgn
)
.
Call
(
handle
,
uintptr
(
hRgn
.
instance
),
api
.
PascalBool
(
bRedraw
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_SetWindowRgn
)
.
Call
(
handle
,
uintptr
(
hRgn
.
instance
),
api
.
PascalBool
(
bRedraw
))
return
t
.
LongInt
(
r1
)
}
func
WinSetCursor
(
hCursor
*
HCursor
)
*
HCursor
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_SetCursor
)
.
Call
(
uintptr
(
hCursor
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_SetCursor
)
.
Call
(
uintptr
(
hCursor
.
instance
))
return
&
HCursor
{
instance
:
unsafe
.
Pointer
(
r1
),
}
}
func
WinLoadCursor
(
handle
types
.
HWND
,
lpCursorName
int32
)
*
HCursor
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_CEF_Win_LoadCursor
)
.
Call
(
handle
,
uintptr
(
lpCursorName
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEF_Win_LoadCursor
)
.
Call
(
handle
,
uintptr
(
lpCursorName
))
return
&
HCursor
{
instance
:
unsafe
.
Pointer
(
r1
),
}
}
func
WinOnPaint
(
handle
types
.
HWND
)
{
common
.
Proc
(
internale_CEF_Win_OnPaint
)
.
Call
(
handle
)
imports
.
Proc
(
internale_CEF_Win_OnPaint
)
.
Call
(
handle
)
}
func
WinSetDraggableRegions
(
aRGN
*
HRGN
,
regions
[]
TCefDraggableRegion
)
{
...
...
@@ -182,7 +182,7 @@ func WinSetDraggableRegions(aRGN *HRGN, regions []TCefDraggableRegion) {
}
fmt.Println("Check PtInRegion:", WinPtInRegion(draggableRegion, 50, 50))
*/
common
.
Proc
(
internale_CEF_Win_SetDraggableRegions
)
.
Call
(
uintptr
(
aRGN
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
imports
.
Proc
(
internale_CEF_Win_SetDraggableRegions
)
.
Call
(
uintptr
(
aRGN
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
}
type
(
...
...
cef/cef-download.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/golcl/lcl/api"
"time"
"unsafe"
...
...
@@ -110,5 +110,5 @@ func (m *ICefDownloadItemCallback) DownloadResume(browseId, downloadId int32) {
//
// showDialog 显示保存窗口
func
(
m
*
ICefBeforeDownloadCallback
)
Cont
(
downloadPath
string
,
showDialog
bool
)
{
Proc
(
internale_CEFChromium_SetDownloadPath
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
downloadPath
),
api
.
PascalBool
(
showDialog
))
imports
.
Proc
(
internale_CEFChromium_SetDownloadPath
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
downloadPath
),
api
.
PascalBool
(
showDialog
))
}
cef/cef-frame.go
浏览文件 @
fab1c6b6
...
...
@@ -9,14 +9,14 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/ipc"
"github.com/energye/golcl/lcl/api"
"unsafe"
)
//type ICefFrame
//
type ICefFrame
type
ICefFrame
struct
{
Browser
*
ICefBrowser
Name
string
...
...
@@ -43,69 +43,69 @@ func (m TCEFFrame) GetByFrameId(frameId int64) *ICefFrame {
func
(
m
*
ICefFrame
)
Undo
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Undo
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Undo
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
Redo
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Redo
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Redo
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
Cut
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Cut
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Cut
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
Copy
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Copy
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Copy
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
Paste
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Paste
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Paste
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
Del
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_Del
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_Del
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
SelectAll
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_SelectAll
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_SelectAll
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
ViewSource
()
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_ViewSource
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
imports
.
Proc
(
internale_CEFFrame_ViewSource
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
}
func
(
m
*
ICefFrame
)
LoadUrl
(
url
string
)
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_LoadUrl
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
url
))
imports
.
Proc
(
internale_CEFFrame_LoadUrl
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
url
))
}
func
(
m
*
ICefFrame
)
ExecuteJavaScript
(
code
,
scriptUrl
string
,
startLine
int32
)
{
var
frameId
=
m
.
Id
Proc
(
internale_CEFFrame_ExecuteJavaScript
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
code
),
api
.
PascalStr
(
scriptUrl
),
uintptr
(
startLine
))
imports
.
Proc
(
internale_CEFFrame_ExecuteJavaScript
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
code
),
api
.
PascalStr
(
scriptUrl
),
uintptr
(
startLine
))
}
func
(
m
*
ICefFrame
)
IsValid
()
bool
{
var
frameId
=
m
.
Id
r1
,
_
,
_
:=
Proc
(
internale_CEFFrame_IsValid
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFFrame_IsValid
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefFrame
)
IsMain
()
bool
{
var
frameId
=
m
.
Id
r1
,
_
,
_
:=
Proc
(
internale_CEFFrame_IsMain
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFFrame_IsMain
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefFrame
)
IsFocused
()
bool
{
var
frameId
=
m
.
Id
r1
,
_
,
_
:=
Proc
(
internale_CEFFrame_IsFocused
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFFrame_IsFocused
)
.
Call
(
uintptr
(
m
.
Browser
.
Identifier
()),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)))
return
api
.
GoBool
(
r1
)
}
...
...
@@ -121,6 +121,6 @@ func (m *ICefFrame) SendProcessMessage(targetProcess CefProcessId, processMessag
}
func
_CEFFrame_SendProcessMessage
(
browseId
int32
,
frameId
int64
,
name
string
,
targetProcess
CefProcessId
,
itemLength
int32
,
data
,
dataLen
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_CEFFrame_SendProcessMessage
)
.
Call
(
uintptr
(
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
name
),
uintptr
(
targetProcess
),
uintptr
(
itemLength
),
data
,
dataLen
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFFrame_SendProcessMessage
)
.
Call
(
uintptr
(
browseId
),
uintptr
(
unsafe
.
Pointer
(
&
frameId
)),
api
.
PascalStr
(
name
),
uintptr
(
targetProcess
),
uintptr
(
itemLength
),
data
,
dataLen
)
return
r1
}
cef/cef-i-context-menu.go
浏览文件 @
fab1c6b6
...
...
@@ -10,13 +10,14 @@ package cef
import
(
.
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl/api"
"strings"
"unsafe"
)
//快捷键
//
快捷键
var
KeyAccelerator
=
&
keyEventAccelerator
{
menuId
:
MENU_ID_USER_FIRST
,
//menuId的启始位置
commandItems
:
make
(
map
[
MenuId
]
*
MenuItem
),
//右键菜单命令ID快捷键
...
...
@@ -84,7 +85,7 @@ type MenuItem struct {
Callback
FuncCallback
//点击 或 快捷键触发的回调
}
//添加自定义快捷键
//
添加自定义快捷键
func
(
m
*
keyEventAccelerator
)
AddAcceleratorCustom
(
accelerator
*
AcceleratorCustom
)
{
if
accelerator
==
nil
{
return
...
...
@@ -111,13 +112,13 @@ func (m *keyEventAccelerator) acceleratorCustomCallback(accelerator string, brow
return
false
}
//生成并返回下一个快捷键ID
//
生成并返回下一个快捷键ID
func
(
m
*
keyEventAccelerator
)
NextCommandId
()
MenuId
{
m
.
menuId
++
return
m
.
menuId
}
//当前快捷键ID
//
当前快捷键ID
func
(
m
*
keyEventAccelerator
)
CommandId
()
MenuId
{
return
m
.
menuId
}
...
...
@@ -177,7 +178,7 @@ func (m *keyEventAccelerator) clear() {
m
.
acceleratorItems
=
make
(
map
[
string
]
*
MenuItem
)
}
//添加一个菜单项, 选项类型, 名称, commandId, 快捷键和触发函数
//
添加一个菜单项, 选项类型, 名称, commandId, 快捷键和触发函数
func
(
m
*
ICefMenuModel
)
AddMenuItem
(
item
*
MenuItem
)
bool
{
if
item
==
nil
{
return
false
...
...
@@ -255,9 +256,9 @@ func (m *ICefMenuModel) SetColor(commandId MenuId, colorType TCefMenuColorType,
return
cefMenuModel_SetColor
(
uintptr
(
m
.
instance
),
commandId
,
colorType
,
color
)
}
//func (m *ICefMenuModel) SetFontList(commandId MenuId, fontList string) bool {
// return cefMenuModel_SetFontList(uintptr(m.instance), commandId, fontList)
//}
//
func (m *ICefMenuModel) SetFontList(commandId MenuId, fontList string) bool {
//
return cefMenuModel_SetFontList(uintptr(m.instance), commandId, fontList)
//
}
func
(
m
*
ICefMenuModel
)
HasAccelerator
(
commandId
MenuId
)
bool
{
return
cefMenuModel_HasAccelerator
(
uintptr
(
m
.
instance
),
commandId
)
}
...
...
@@ -286,145 +287,145 @@ func (m *ICefMenuModel) GetIndexOf(commandId MenuId) int32 {
return
cefMenuModel_GetIndexOf
(
uintptr
(
m
.
instance
),
commandId
)
}
//------------------------------------ PROC
//ICefMenuModel cefMenuModel_AddSeparator
//
------------------------------------ PROC
//
ICefMenuModel cefMenuModel_AddSeparator
func
cefMenuModel_AddSeparator
(
instance
uintptr
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_AddSeparator
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_AddSeparator
)
.
Call
(
instance
)
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_Clear
//
ICefMenuModel cefMenuModel_Clear
func
cefMenuModel_Clear
(
instance
uintptr
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_Clear
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_Clear
)
.
Call
(
instance
)
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_IsSubMenu
//
ICefMenuModel cefMenuModel_IsSubMenu
func
cefMenuModel_IsSubMenu
(
instance
uintptr
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_IsSubMenu
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_IsSubMenu
)
.
Call
(
instance
)
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_GetCount
//
ICefMenuModel cefMenuModel_GetCount
func
cefMenuModel_GetCount
(
instance
uintptr
)
int32
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_GetCount
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_GetCount
)
.
Call
(
instance
)
return
int32
(
r1
)
}
//ICefMenuModel cefMenuModel_AddItem
//
ICefMenuModel cefMenuModel_AddItem
func
cefMenuModel_AddItem
(
instance
uintptr
,
commandId
MenuId
,
text
string
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_AddItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_AddItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_AddCheckItem
//
ICefMenuModel cefMenuModel_AddCheckItem
func
cefMenuModel_AddCheckItem
(
instance
uintptr
,
commandId
MenuId
,
text
string
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_AddCheckItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_AddCheckItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_AddRadioItem
//
ICefMenuModel cefMenuModel_AddRadioItem
func
cefMenuModel_AddRadioItem
(
instance
uintptr
,
commandId
MenuId
,
text
string
,
groupId
int32
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_AddRadioItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
),
uintptr
(
groupId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_AddRadioItem
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
),
uintptr
(
groupId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_AddSubMenu
//
ICefMenuModel cefMenuModel_AddSubMenu
func
cefMenuModel_AddSubMenu
(
instance
uintptr
,
commandId
MenuId
,
text
string
)
*
ICefMenuModel
{
var
ret
uintptr
Proc
(
internale_cefMenuModel_AddSubMenu
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_cefMenuModel_AddSubMenu
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefMenuModel
{
instance
:
unsafe
.
Pointer
(
ret
),
}
}
//ICefMenuModel cefMenuModel_Remove
//
ICefMenuModel cefMenuModel_Remove
func
cefMenuModel_Remove
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_Remove
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_Remove
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_Remove
//
ICefMenuModel cefMenuModel_Remove
func
cefMenuModel_RemoveAt
(
instance
uintptr
,
index
int32
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_RemoveAt
)
.
Call
(
instance
,
uintptr
(
index
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_RemoveAt
)
.
Call
(
instance
,
uintptr
(
index
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetChecked
//
ICefMenuModel cefMenuModel_SetChecked
func
cefMenuModel_SetChecked
(
instance
uintptr
,
commandId
MenuId
,
check
bool
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetChecked
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
check
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetChecked
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
check
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_IsChecked
//
ICefMenuModel cefMenuModel_IsChecked
func
cefMenuModel_IsChecked
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_IsChecked
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_IsChecked
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetColor
//
ICefMenuModel cefMenuModel_SetColor
func
cefMenuModel_SetColor
(
instance
uintptr
,
commandId
MenuId
,
colorType
TCefMenuColorType
,
color
*
TCefARGB
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetColor
)
.
Call
(
instance
,
uintptr
(
commandId
),
uintptr
(
colorType
),
uintptr
(
color
.
ARGB
()))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetColor
)
.
Call
(
instance
,
uintptr
(
commandId
),
uintptr
(
colorType
),
uintptr
(
color
.
ARGB
()))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetFontList
//
ICefMenuModel cefMenuModel_SetFontList
func
cefMenuModel_SetFontList
(
instance
uintptr
,
commandId
MenuId
,
fontList
string
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetFontList
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
fontList
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetFontList
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
fontList
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_HasAccelerator
//
ICefMenuModel cefMenuModel_HasAccelerator
func
cefMenuModel_HasAccelerator
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_HasAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_HasAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetAccelerator
//
ICefMenuModel cefMenuModel_SetAccelerator
func
cefMenuModel_SetAccelerator
(
instance
uintptr
,
commandId
MenuId
,
keyCode
int32
,
shiftPressed
,
ctrlPressed
,
altPressed
bool
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
),
uintptr
(
keyCode
),
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
),
uintptr
(
keyCode
),
api
.
PascalBool
(
shiftPressed
),
api
.
PascalBool
(
ctrlPressed
),
api
.
PascalBool
(
altPressed
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_RemoveAccelerator
//
ICefMenuModel cefMenuModel_RemoveAccelerator
func
cefMenuModel_RemoveAccelerator
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_RemoveAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_RemoveAccelerator
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_IsVisible
//
ICefMenuModel cefMenuModel_IsVisible
func
cefMenuModel_IsVisible
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_IsVisible
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_IsVisible
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetVisible
//
ICefMenuModel cefMenuModel_SetVisible
func
cefMenuModel_SetVisible
(
instance
uintptr
,
commandId
MenuId
,
visible
bool
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetVisible
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
visible
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetVisible
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
visible
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_IsEnabled
//
ICefMenuModel cefMenuModel_IsEnabled
func
cefMenuModel_IsEnabled
(
instance
uintptr
,
commandId
MenuId
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_IsEnabled
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_IsEnabled
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetEnabled
//
ICefMenuModel cefMenuModel_SetEnabled
func
cefMenuModel_SetEnabled
(
instance
uintptr
,
commandId
MenuId
,
enabled
bool
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetEnabled
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
enabled
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetEnabled
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalBool
(
enabled
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_SetLabel
//
ICefMenuModel cefMenuModel_SetLabel
func
cefMenuModel_SetLabel
(
instance
uintptr
,
commandId
MenuId
,
text
string
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_SetLabel
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_SetLabel
)
.
Call
(
instance
,
uintptr
(
commandId
),
api
.
PascalStr
(
text
))
return
api
.
GoBool
(
r1
)
}
//ICefMenuModel cefMenuModel_GetIndexOf
//
ICefMenuModel cefMenuModel_GetIndexOf
func
cefMenuModel_GetIndexOf
(
instance
uintptr
,
commandId
MenuId
)
int32
{
r1
,
_
,
_
:=
Proc
(
internale_cefMenuModel_GetIndexOf
)
.
Call
(
instance
,
uintptr
(
commandId
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefMenuModel_GetIndexOf
)
.
Call
(
instance
,
uintptr
(
commandId
))
return
int32
(
r1
)
}
cef/cef-image.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/golcl/energy/emfs"
"github.com/energye/golcl/lcl/api"
"unsafe"
...
...
@@ -20,7 +20,7 @@ type ICefImage struct {
}
//func NewImage() *ICefImage {
// r1, _, _ := Proc(internale_CEFImage_New).Call()
// r1, _, _ :=
imports.
Proc(internale_CEFImage_New).Call()
// return &ICefImage{
// instance: unsafe.Pointer(r1),
// }
...
...
@@ -35,26 +35,26 @@ func (m *ICefImage) AddPngFS(scaleFactor float32, filename string) bool {
if
err
!=
nil
{
return
false
}
r1
,
_
,
_
:=
Proc
(
internale_CEFImage_AddPng
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
uint32
(
len
(
bytes
))))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFImage_AddPng
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
uint32
(
len
(
bytes
))))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefImage
)
AddPng
(
scaleFactor
float32
,
png
[]
byte
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFImage_AddPng
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
png
[
0
])),
uintptr
(
int32
(
len
(
png
))))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFImage_AddPng
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
png
[
0
])),
uintptr
(
int32
(
len
(
png
))))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefImage
)
AddJpeg
(
scaleFactor
float32
,
jpeg
[]
byte
)
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFImage_AddJpeg
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
jpeg
[
0
])),
uintptr
(
int32
(
len
(
jpeg
))))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFImage_AddJpeg
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
jpeg
[
0
])),
uintptr
(
int32
(
len
(
jpeg
))))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefImage
)
GetWidth
()
int32
{
r1
,
_
,
_
:=
Proc
(
internale_CEFImage_GetWidth
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFImage_GetWidth
)
.
Call
(
uintptr
(
m
.
instance
))
return
int32
(
r1
)
}
func
(
m
*
ICefImage
)
GetHeight
()
int32
{
r1
,
_
,
_
:=
Proc
(
internale_CEFImage_GetHeight
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFImage_GetHeight
)
.
Call
(
uintptr
(
m
.
instance
))
return
int32
(
r1
)
}
cef/cef-ipc-events.go
浏览文件 @
fab1c6b6
...
...
@@ -12,6 +12,7 @@ import (
"bytes"
"encoding/binary"
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/ipc"
"github.com/energye/energy/logger"
...
...
@@ -59,7 +60,7 @@ type rIPCEventParam struct {
}
func
cefIPCInit
()
{
setCefIPCCallbackFunc
=
common
.
Proc
(
internale_SetCEFIPCCallbackFunc
)
setCefIPCCallbackFunc
=
imports
.
Proc
(
internale_SetCEFIPCCallbackFunc
)
setCefIPCCallbackFunc
.
Call
(
cefIPCCallbackFuncEvent
)
}
...
...
@@ -93,7 +94,7 @@ func cefIPCEventProc(fnType uintptr, args uintptr, argsLen int) uintptr {
return
0
}
//ipc - go emit js on event
//
ipc - go emit js on event
func
ipcGoEmitJS
(
ipcId
int32
,
triggerMode
TriggerMode
,
result
*
rGoResult
,
args
uintptr
)
{
inArgument
:=
ipc
.
NewArgumentList
()
inArgument
.
SetBool
(
1
,
true
)
...
...
@@ -133,7 +134,7 @@ func ipcGoEmitJS(ipcId int32, triggerMode TriggerMode, result *rGoResult, args u
}
}
//ipc - js emit go on event
//
ipc - js emit go on event
func
ipcJSEmitGo
(
eventParam
*
rIPCEventParam
,
result
*
rGoResult
,
args
uintptr
)
{
getVal
:=
func
(
i
int
)
uintptr
{
return
common
.
GetParamOf
(
i
,
args
)
...
...
@@ -279,13 +280,14 @@ func ipcJSEmitGo(eventParam *rIPCEventParam, result *rGoResult, args uintptr) {
}
}
//检索绑定的JsValue
//返回值
// bindType 绑定类型 0通用类型,1对象类型
// fullName 绑定全名称
// vType js绑定值类型
// eventID 事件ID
// exception 错误码
// 检索绑定的JsValue
// 返回值
//
// bindType 绑定类型 0通用类型,1对象类型
// fullName 绑定全名称
// vType js绑定值类型
// eventID 事件ID
// exception 错误码
func
searchBindV8Value
(
fullName
string
)
(
IS_CO
,
string
,
V8_JS_VALUE_TYPE
,
int32
,
CEF_V8_EXCEPTION
)
{
if
fullName
==
""
{
return
0
,
""
,
0
,
0
,
CVE_ERROR_NOT_FOUND_FIELD
...
...
cef/cef-linked-window-parent.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/api"
...
...
@@ -23,18 +23,18 @@ type TCEFLinkedWindowParent struct {
func
NewCEFLinkedWindowParent
(
owner
lcl
.
IComponent
)
*
TCEFLinkedWindowParent
{
m
:=
new
(
TCEFLinkedWindowParent
)
r1
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_Create
)
.
Call
(
lcl
.
CheckPtr
(
owner
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_Create
)
.
Call
(
lcl
.
CheckPtr
(
owner
))
m
.
instance
=
unsafe
.
Pointer
(
r1
)
return
m
}
func
(
m
*
TCEFLinkedWindowParent
)
Handle
()
types
.
HWND
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetHandle
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetHandle
)
.
Call
(
m
.
Instance
())
return
types
.
HWND
(
ret
)
}
func
(
m
*
TCEFLinkedWindowParent
)
UpdateSize
()
{
Proc
(
internale_CEFLinkedWindow_UpdateSize
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFLinkedWindow_UpdateSize
)
.
Call
(
m
.
Instance
())
}
func
(
m
*
TCEFLinkedWindowParent
)
Type
()
consts
.
TCefWindowHandleType
{
...
...
@@ -42,147 +42,147 @@ func (m *TCEFLinkedWindowParent) Type() consts.TCefWindowHandleType {
}
func
(
m
*
TCEFLinkedWindowParent
)
SetChromium
(
chromium
IChromium
,
tag
int32
)
{
Proc
(
internale_CEFLinkedWindow_SetChromium
)
.
Call
(
uintptr
(
m
.
instance
),
chromium
.
Instance
(),
uintptr
(
tag
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetChromium
)
.
Call
(
uintptr
(
m
.
instance
),
chromium
.
Instance
(),
uintptr
(
tag
))
}
func
(
m
*
TCEFLinkedWindowParent
)
HandleAllocated
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_HandleAllocated
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_HandleAllocated
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
func
(
m
*
TCEFLinkedWindowParent
)
CreateHandle
()
{
Proc
(
internale_CEFLinkedWindow_CreateHandle
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFLinkedWindow_CreateHandle
)
.
Call
(
m
.
Instance
())
}
func
(
m
*
TCEFLinkedWindowParent
)
DestroyChildWindow
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_DestroyChildWindow
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_DestroyChildWindow
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
func
(
m
*
TCEFLinkedWindowParent
)
SetOnEnter
(
fn
lcl
.
TNotifyEvent
)
{
Proc
(
internale_CEFLinkedWindow_OnEnter
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFLinkedWindow_OnEnter
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFLinkedWindowParent
)
SetOnExit
(
fn
lcl
.
TNotifyEvent
)
{
Proc
(
internale_CEFLinkedWindow_OnExit
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFLinkedWindow_OnExit
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFLinkedWindowParent
)
Free
()
{
if
m
.
IsValid
()
{
Proc
(
internale_CEFLinkedWindow_Free
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFLinkedWindow_Free
)
.
Call
(
m
.
Instance
())
m
.
instance
=
nullptr
}
}
// 获取组件名称。
func
(
m
*
TCEFLinkedWindowParent
)
Name
()
string
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetName
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetName
)
.
Call
(
m
.
Instance
())
return
api
.
GoStr
(
ret
)
}
// 设置组件名称。
func
(
m
*
TCEFLinkedWindowParent
)
SetName
(
value
string
)
{
Proc
(
internale_CEFLinkedWindow_SetName
)
.
Call
(
m
.
Instance
(),
api
.
PascalStr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetName
)
.
Call
(
m
.
Instance
(),
api
.
PascalStr
(
value
))
}
// 设置控件父容器。
func
(
m
*
TCEFLinkedWindowParent
)
SetParent
(
value
lcl
.
IWinControl
)
{
Proc
(
internale_CEFLinkedWindow_SetParent
)
.
Call
(
m
.
Instance
(),
lcl
.
CheckPtr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetParent
)
.
Call
(
m
.
Instance
(),
lcl
.
CheckPtr
(
value
))
}
//Align 获取控件自动调整。
//
Align 获取控件自动调整。
func
(
m
*
TCEFLinkedWindowParent
)
Align
()
types
.
TAlign
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetAlign
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetAlign
)
.
Call
(
m
.
Instance
())
return
types
.
TAlign
(
ret
)
}
//SetAlign 设置控件自动调整。
//
SetAlign 设置控件自动调整。
func
(
m
*
TCEFLinkedWindowParent
)
SetAlign
(
value
types
.
TAlign
)
{
Proc
(
internale_CEFLinkedWindow_SetAlign
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetAlign
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Anchors 获取四个角位置的锚点。
//
Anchors 获取四个角位置的锚点。
func
(
m
*
TCEFLinkedWindowParent
)
Anchors
()
types
.
TAnchors
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetAnchors
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetAnchors
)
.
Call
(
m
.
Instance
())
return
types
.
TAnchors
(
ret
)
}
//SetAnchors 设置四个角位置的锚点。
//
SetAnchors 设置四个角位置的锚点。
func
(
m
*
TCEFLinkedWindowParent
)
SetAnchors
(
value
types
.
TAnchors
)
{
Proc
(
internale_CEFLinkedWindow_SetAnchors
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetAnchors
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Visible 获取控件可视。
//
Visible 获取控件可视。
func
(
m
*
TCEFLinkedWindowParent
)
Visible
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetVisible
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetVisible
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
//SetVisible 设置控件可视。
//
SetVisible 设置控件可视。
func
(
m
*
TCEFLinkedWindowParent
)
SetVisible
(
value
bool
)
{
Proc
(
internale_CEFLinkedWindow_SetVisible
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetVisible
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
}
//Enabled 获取是否启用
//
Enabled 获取是否启用
func
(
m
*
TCEFLinkedWindowParent
)
Enabled
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetEnabled
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetEnabled
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
//SetEnabled 设置是否启用
//
SetEnabled 设置是否启用
func
(
m
*
TCEFLinkedWindowParent
)
SetEnabled
(
value
bool
)
{
Proc
(
internale_CEFLinkedWindow_SetEnabled
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetEnabled
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
}
//Left 获取左边距
//
Left 获取左边距
func
(
m
*
TCEFLinkedWindowParent
)
Left
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetLeft
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetLeft
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetLeft 设置左边距
//
SetLeft 设置左边距
func
(
m
*
TCEFLinkedWindowParent
)
SetLeft
(
value
int32
)
{
Proc
(
internale_CEFLinkedWindow_SetLeft
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetLeft
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Top 获取上边距
//
Top 获取上边距
func
(
m
*
TCEFLinkedWindowParent
)
Top
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetTop
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetTop
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetTop 设置上边距
//
SetTop 设置上边距
func
(
m
*
TCEFLinkedWindowParent
)
SetTop
(
value
int32
)
{
Proc
(
internale_CEFLinkedWindow_SetTop
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetTop
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Width 获取宽度
//
Width 获取宽度
func
(
m
*
TCEFLinkedWindowParent
)
Width
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetWidth
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetWidth
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetWidth 设置宽度
//
SetWidth 设置宽度
func
(
m
*
TCEFLinkedWindowParent
)
SetWidth
(
value
int32
)
{
Proc
(
internale_CEFLinkedWindow_SetWidth
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetWidth
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Height 获取高度
//
Height 获取高度
func
(
m
*
TCEFLinkedWindowParent
)
Height
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFLinkedWindow_GetHeight
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFLinkedWindow_GetHeight
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetHeight 设置高度
//
SetHeight 设置高度
func
(
m
*
TCEFLinkedWindowParent
)
SetHeight
(
value
int32
)
{
Proc
(
internale_CEFLinkedWindow_SetHeight
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFLinkedWindow_SetHeight
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
func
(
m
*
TCEFLinkedWindowParent
)
BoundsRect
()
(
result
types
.
TRect
)
{
Proc
(
internale_CEFLinkedWindow_GetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFLinkedWindow_GetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
result
}
func
(
m
*
TCEFLinkedWindowParent
)
SetBoundsRect
(
value
types
.
TRect
)
{
Proc
(
internale_CEFLinkedWindow_SetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
value
)))
imports
.
Proc
(
internale_CEFLinkedWindow_SetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
value
)))
}
cef/cef-misc-functions.go
浏览文件 @
fab1c6b6
...
...
@@ -9,18 +9,18 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/golcl/lcl/api"
)
func
WindowInfoAsChild
(
windowInfo
,
windowHandle
uintptr
,
windowName
string
)
{
Proc
(
internale_CEFWindowInfoAsChild
)
.
Call
(
windowInfo
,
windowHandle
,
api
.
PascalStr
(
windowName
))
imports
.
Proc
(
internale_CEFWindowInfoAsChild
)
.
Call
(
windowInfo
,
windowHandle
,
api
.
PascalStr
(
windowName
))
}
func
WindowInfoAsPopUp
(
windowInfo
,
windowParent
uintptr
,
windowName
string
)
{
Proc
(
internale_CEFWindowInfoAsPopUp
)
.
Call
(
windowInfo
,
windowParent
,
api
.
PascalStr
(
windowName
))
imports
.
Proc
(
internale_CEFWindowInfoAsPopUp
)
.
Call
(
windowInfo
,
windowParent
,
api
.
PascalStr
(
windowName
))
}
func
WindowInfoAsWindowless
(
windowInfo
,
windowParent
uintptr
,
windowName
string
)
{
Proc
(
internale_CEFWindowInfoAsWindowless
)
.
Call
(
windowInfo
,
windowParent
,
api
.
PascalStr
(
windowName
))
imports
.
Proc
(
internale_CEFWindowInfoAsWindowless
)
.
Call
(
windowInfo
,
windowParent
,
api
.
PascalStr
(
windowName
))
}
cef/cef-proc-def.go
浏览文件 @
fab1c6b6
...
...
@@ -8,16 +8,15 @@
package
cef
import
"github.com/energye/golcl/lcl/api/dllimports"
import
(
"github.com/energye/energy/common/imports"
"github.com/energye/golcl/lcl/api/dllimports"
)
func
init
()
{
var
energyImportDefs
=
[]
*
dllimports
.
ImportTable
{
//null nil
dllimports
.
NewEnergyImport
(
""
,
0
),
//LCL Energy Extend
dllimports
.
NewEnergyImport
(
"Ext_Panel_GetBevelColor"
,
0
),
dllimports
.
NewEnergyImport
(
"Ext_Panel_SetBevelColor"
,
0
),
dllimports
.
NewEnergyImport
(
"Ext_ReadStringProperty"
,
0
),
//CEF
dllimports
.
NewEnergyImport
(
"CEFVersion"
,
0
),
dllimports
.
NewEnergyImport
(
"LibBuildVersion"
,
0
),
...
...
@@ -561,16 +560,12 @@ func init() {
dllimports
.
NewEnergyImport
(
"ICEFWindow_RemoveAccelerator"
,
0
),
dllimports
.
NewEnergyImport
(
"ICEFWindow_RemoveAllAccelerators"
,
0
),
}
dll
imports
.
SetEnergyImportDefs
(
energyImportDefs
)
imports
.
SetEnergyImportDefs
(
energyImportDefs
)
}
const
(
//null nil
internale_null_nil
=
iota
//LCL Energy Extend
internale_Ext_Panel_GetBevelColor
internale_Ext_Panel_SetBevelColor
internale_Ext_ReadStringProperty
//CEF
internale_CEFVersion
internale_LibBuildVersion
...
...
cef/cef-proc.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
)
//--------TCEFWindowParent proc end--------
...
...
@@ -18,13 +18,13 @@ import (
//
// 没找到什么好的方式,只能这样设置
func
setMacOSXCommandLine
(
commandLine
uintptr
)
{
Proc
(
internale_SetMacOSXCommandLine
)
.
Call
(
commandLine
)
imports
.
Proc
(
internale_SetMacOSXCommandLine
)
.
Call
(
commandLine
)
}
func
AddGoForm
(
windowId
int32
,
instance
uintptr
)
{
Proc
(
internale_CEF_AddGoForm
)
.
Call
(
uintptr
(
windowId
),
instance
)
imports
.
Proc
(
internale_CEF_AddGoForm
)
.
Call
(
uintptr
(
windowId
),
instance
)
}
func
RemoveGoForm
(
windowId
int32
)
{
Proc
(
internale_CEF_RemoveGoForm
)
.
Call
(
uintptr
(
windowId
))
imports
.
Proc
(
internale_CEF_RemoveGoForm
)
.
Call
(
uintptr
(
windowId
))
}
cef/cef-request.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
.
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl/api"
"unsafe"
...
...
@@ -41,7 +41,7 @@ type rICefRequest struct {
Identifier
uintptr
//uint64
}
//request
//
request
func
(
m
*
ICefRequest
)
IsReadOnly
()
bool
{
return
api
.
GoBool
(
cefRequest_IsReadOnly
(
uintptr
(
m
.
instance
)))
}
...
...
@@ -85,47 +85,47 @@ func (m *ICefRequest) SetHeaderMap(headerMap *ICefStringMultiMap) {
cefRequest_SetHeaderMap
(
uintptr
(
m
.
instance
),
headerMap
.
instance
)
}
//request
//
request
func
cefRequest_IsReadOnly
(
instance
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefRequest_IsReadOnly
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefRequest_IsReadOnly
)
.
Call
(
instance
)
return
r1
}
func
cefRequest_SetUrl
(
instance
uintptr
,
url
string
)
{
Proc
(
internale_cefRequest_SetUrl
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
imports
.
Proc
(
internale_cefRequest_SetUrl
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
}
func
cefRequest_SetMethod
(
instance
uintptr
,
method
string
)
{
Proc
(
internale_cefRequest_SetMethod
)
.
Call
(
instance
,
api
.
PascalStr
(
method
))
imports
.
Proc
(
internale_cefRequest_SetMethod
)
.
Call
(
instance
,
api
.
PascalStr
(
method
))
}
func
cefRequest_SetReferrer
(
instance
uintptr
,
referrerUrl
string
,
policy
TCefReferrerPolicy
)
{
Proc
(
internale_cefRequest_SetReferrer
)
.
Call
(
instance
,
api
.
PascalStr
(
referrerUrl
),
uintptr
(
policy
))
imports
.
Proc
(
internale_cefRequest_SetReferrer
)
.
Call
(
instance
,
api
.
PascalStr
(
referrerUrl
),
uintptr
(
policy
))
}
func
cefRequest_SetFlags
(
instance
uintptr
,
flags
TCefUrlRequestFlags
)
{
Proc
(
internale_cefRequest_SetFlags
)
.
Call
(
instance
,
uintptr
(
flags
))
imports
.
Proc
(
internale_cefRequest_SetFlags
)
.
Call
(
instance
,
uintptr
(
flags
))
}
func
cefRequest_SetFirstPartyForCookies
(
instance
uintptr
,
url
string
)
{
Proc
(
internale_cefRequest_SetFirstPartyForCookies
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
imports
.
Proc
(
internale_cefRequest_SetFirstPartyForCookies
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
}
func
cefRequest_GetHeaderByName
(
instance
uintptr
,
name
string
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefRequest_GetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefRequest_GetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
))
return
r1
}
func
cefRequest_SetHeaderByName
(
instance
uintptr
,
url
,
value
string
,
overwrite
bool
)
{
Proc
(
internale_cefRequest_SetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
url
),
api
.
PascalStr
(
value
),
api
.
PascalBool
(
overwrite
))
imports
.
Proc
(
internale_cefRequest_SetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
url
),
api
.
PascalStr
(
value
),
api
.
PascalBool
(
overwrite
))
}
func
cefRequest_GetHeaderMap
(
instance
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefRequest_GetHeaderMap
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefRequest_GetHeaderMap
)
.
Call
(
instance
)
return
r1
}
func
cefRequest_SetHeaderMap
(
instance
,
headerMap
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefRequest_SetHeaderMap
)
.
Call
(
instance
,
headerMap
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefRequest_SetHeaderMap
)
.
Call
(
instance
,
headerMap
)
return
r1
}
cef/cef-response.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
.
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl/api"
"unsafe"
...
...
@@ -75,44 +75,44 @@ func (m *ICefResponse) GetHeaderMap() *ICefStringMultiMap {
}
func
cefResponse_IsReadOnly
(
instance
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefResponse_IsReadOnly
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefResponse_IsReadOnly
)
.
Call
(
instance
)
return
r1
}
func
cefResponse_SetError
(
instance
uintptr
,
error
TCefErrorCode
)
{
Proc
(
internale_cefResponse_SetError
)
.
Call
(
instance
,
error
.
ToPtr
())
imports
.
Proc
(
internale_cefResponse_SetError
)
.
Call
(
instance
,
error
.
ToPtr
())
}
func
cefResponse_SetStatus
(
instance
uintptr
,
error
int32
)
{
Proc
(
internale_cefResponse_SetStatus
)
.
Call
(
instance
,
uintptr
(
error
))
imports
.
Proc
(
internale_cefResponse_SetStatus
)
.
Call
(
instance
,
uintptr
(
error
))
}
func
cefResponse_SetStatusText
(
instance
uintptr
,
statusText
string
)
{
Proc
(
internale_cefResponse_SetStatusText
)
.
Call
(
instance
,
api
.
PascalStr
(
statusText
))
imports
.
Proc
(
internale_cefResponse_SetStatusText
)
.
Call
(
instance
,
api
.
PascalStr
(
statusText
))
}
func
cefResponse_SetMimeType
(
instance
uintptr
,
mimetype
string
)
{
Proc
(
internale_cefResponse_SetMimeType
)
.
Call
(
instance
,
api
.
PascalStr
(
mimetype
))
imports
.
Proc
(
internale_cefResponse_SetMimeType
)
.
Call
(
instance
,
api
.
PascalStr
(
mimetype
))
}
func
cefResponse_SetCharset
(
instance
uintptr
,
charset
string
)
{
Proc
(
internale_cefResponse_SetCharset
)
.
Call
(
instance
,
api
.
PascalStr
(
charset
))
imports
.
Proc
(
internale_cefResponse_SetCharset
)
.
Call
(
instance
,
api
.
PascalStr
(
charset
))
}
func
cefResponse_GetHeaderByName
(
instance
uintptr
,
name
string
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefResponse_GetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefResponse_GetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
))
return
r1
}
func
cefResponse_SetHeaderByName
(
instance
uintptr
,
name
,
value
string
,
overwrite
bool
)
{
Proc
(
internale_cefResponse_SetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
),
api
.
PascalStr
(
value
),
api
.
PascalBool
(
overwrite
))
imports
.
Proc
(
internale_cefResponse_SetHeaderByName
)
.
Call
(
instance
,
api
.
PascalStr
(
name
),
api
.
PascalStr
(
value
),
api
.
PascalBool
(
overwrite
))
}
func
cefResponse_SetURL
(
instance
uintptr
,
url
string
)
{
Proc
(
internale_cefResponse_SetURL
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
imports
.
Proc
(
internale_cefResponse_SetURL
)
.
Call
(
instance
,
api
.
PascalStr
(
url
))
}
func
cefResponse_GetHeaderMap
(
instance
uintptr
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefResponse_GetHeaderMap
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefResponse_GetHeaderMap
)
.
Call
(
instance
)
return
r1
}
cef/cef-string-multi-map.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/golcl/lcl/api"
"unsafe"
)
...
...
@@ -19,7 +19,7 @@ type ICefStringMultiMap struct {
ptr
unsafe
.
Pointer
}
//header map
//
header map
func
(
m
*
ICefStringMultiMap
)
GetSize
()
int
{
return
cefHeaderMap_GetSize
(
m
.
instance
)
}
...
...
@@ -43,29 +43,29 @@ func (m *ICefStringMultiMap) Clear() {
}
func
cefHeaderMap_GetSize
(
instance
uintptr
)
int
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_GetSize
)
.
Call
(
instance
)
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_GetSize
)
.
Call
(
instance
)
return
int
(
r1
)
}
func
cefHeaderMap_FindCount
(
instance
uintptr
,
key
string
)
int
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_FindCount
)
.
Call
(
instance
,
api
.
PascalStr
(
key
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_FindCount
)
.
Call
(
instance
,
api
.
PascalStr
(
key
))
return
int
(
r1
)
}
func
cefHeaderMap_GetEnumerate
(
instance
uintptr
,
key
string
,
valueIndex
int
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_GetEnumerate
)
.
Call
(
instance
,
api
.
PascalStr
(
key
),
uintptr
(
valueIndex
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_GetEnumerate
)
.
Call
(
instance
,
api
.
PascalStr
(
key
),
uintptr
(
valueIndex
))
return
r1
}
func
cefHeaderMap_GetKey
(
instance
uintptr
,
index
int
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_GetKey
)
.
Call
(
instance
,
uintptr
(
index
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_GetKey
)
.
Call
(
instance
,
uintptr
(
index
))
return
r1
}
func
cefHeaderMap_GetValue
(
instance
uintptr
,
index
int
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_GetValue
)
.
Call
(
instance
,
uintptr
(
index
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_GetValue
)
.
Call
(
instance
,
uintptr
(
index
))
return
r1
}
func
cefHeaderMap_Append
(
instance
uintptr
,
key
,
value
string
)
uintptr
{
r1
,
_
,
_
:=
Proc
(
internale_cefHeaderMap_Append
)
.
Call
(
instance
,
api
.
PascalStr
(
key
),
api
.
PascalStr
(
value
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_cefHeaderMap_Append
)
.
Call
(
instance
,
api
.
PascalStr
(
key
),
api
.
PascalStr
(
value
))
return
r1
}
func
cefHeaderMap_Clear
(
instance
uintptr
)
{
Proc
(
internale_cefHeaderMap_Clear
)
.
Call
(
instance
)
imports
.
Proc
(
internale_cefHeaderMap_Clear
)
.
Call
(
instance
)
}
cef/cef-types-display.go
浏览文件 @
fab1c6b6
...
...
@@ -9,32 +9,32 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/types"
"unsafe"
)
func
(
m
*
ICefDisplay
)
ID
()
(
result
int64
)
{
Proc
(
internale_CEFDisplay_ID
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFDisplay_ID
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
func
(
m
*
ICefDisplay
)
DeviceScaleFactor
()
(
result
types
.
Single
)
{
Proc
(
internale_CEFDisplay_DeviceScaleFactor
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFDisplay_DeviceScaleFactor
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
func
(
m
*
ICefDisplay
)
Rotation
()
int32
{
r1
,
_
,
_
:=
Proc
(
internale_CEFDisplay_Rotation
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFDisplay_Rotation
)
.
Call
(
uintptr
(
m
.
instance
))
return
int32
(
r1
)
}
func
(
m
*
ICefDisplay
)
Bounds
()
(
result
TCefRect
)
{
Proc
(
internale_CEFDisplay_Bounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFDisplay_Bounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
func
(
m
*
ICefDisplay
)
WorkArea
()
(
result
TCefRect
)
{
Proc
(
internale_CEFDisplay_WorkArea
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFDisplay_WorkArea
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
cef/cef-types-window.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/consts"
"github.com/energye/energy/types"
"github.com/energye/golcl/energy/emfs"
...
...
@@ -19,105 +19,105 @@ import (
)
func
(
m
*
ICefWindow
)
Show
()
{
Proc
(
internale_ICEFWindow_Show
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Show
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
Hide
()
{
Proc
(
internale_ICEFWindow_Hide
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Hide
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
CenterWindow
(
size
*
TCefSize
)
{
Proc
(
internale_ICEFWindow_CenterWindow
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
imports
.
Proc
(
internale_ICEFWindow_CenterWindow
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
}
func
(
m
*
ICefWindow
)
Close
()
{
Proc
(
internale_ICEFWindow_Close
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Close
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
IsClosed
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsClosed
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsClosed
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
Activate
()
{
Proc
(
internale_ICEFWindow_Activate
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Activate
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
Deactivate
()
{
Proc
(
internale_ICEFWindow_Deactivate
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Deactivate
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
IsActive
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsActive
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsActive
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
BringToTop
()
{
Proc
(
internale_ICEFWindow_BringToTop
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_BringToTop
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
SetAlwaysOnTop
(
onTop
bool
)
{
Proc
(
internale_ICEFWindow_SetAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
onTop
))
imports
.
Proc
(
internale_ICEFWindow_SetAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
onTop
))
}
func
(
m
*
ICefWindow
)
IsAlwaysOnTop
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
Maximize
()
{
Proc
(
internale_ICEFWindow_Maximize
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Maximize
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
Minimize
()
{
Proc
(
internale_ICEFWindow_Minimize
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Minimize
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
Restore
()
{
Proc
(
internale_ICEFWindow_Restore
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_Restore
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
SetFullscreen
(
fullscreen
bool
)
{
Proc
(
internale_ICEFWindow_SetFullscreen
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
fullscreen
))
imports
.
Proc
(
internale_ICEFWindow_SetFullscreen
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
fullscreen
))
}
func
(
m
*
ICefWindow
)
SetBackgroundColor
(
rect
*
types
.
TCefColor
)
{
Proc
(
internale_ICEFWindow_SetBackgroundColor
)
.
Call
(
uintptr
(
m
.
instance
),
rect
.
ToPtr
())
imports
.
Proc
(
internale_ICEFWindow_SetBackgroundColor
)
.
Call
(
uintptr
(
m
.
instance
),
rect
.
ToPtr
())
}
func
(
m
*
ICefWindow
)
SetBounds
(
rect
*
TCefRect
)
{
Proc
(
internale_ICEFWindow_SetBounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
rect
)))
imports
.
Proc
(
internale_ICEFWindow_SetBounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
rect
)))
}
func
(
m
*
ICefWindow
)
SetSize
(
size
*
TCefSize
)
{
Proc
(
internale_ICEFWindow_SetSize
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
imports
.
Proc
(
internale_ICEFWindow_SetSize
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
}
func
(
m
*
ICefWindow
)
SetPosition
(
point
*
TCefPoint
)
{
Proc
(
internale_ICEFWindow_SetPosition
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
point
)))
imports
.
Proc
(
internale_ICEFWindow_SetPosition
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
point
)))
}
func
(
m
*
ICefWindow
)
IsMaximized
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsMaximized
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsMaximized
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
IsMinimized
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsMinimized
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsMinimized
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
IsFullscreen
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_IsFullscreen
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_IsFullscreen
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
ICefWindow
)
SetTitle
(
title
string
)
{
Proc
(
internale_ICEFWindow_SetTitle
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
title
))
imports
.
Proc
(
internale_ICEFWindow_SetTitle
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
title
))
}
func
(
m
*
ICefWindow
)
GetTitle
()
string
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_GetTitle
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_GetTitle
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoStr
(
r1
)
}
...
...
@@ -126,7 +126,7 @@ func (m *ICefWindow) SetWindowIcon(scaleFactor float32, filename string) error {
if
err
!=
nil
{
return
err
}
Proc
(
internale_ICEFWindow_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_ICEFWindow_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
...
...
@@ -135,13 +135,13 @@ func (m *ICefWindow) SetWindowIconFS(scaleFactor float32, filename string) error
if
err
!=
nil
{
return
err
}
Proc
(
internale_ICEFWindow_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_ICEFWindow_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
func
(
m
*
ICefWindow
)
GetWindowIcon
()
*
ICefImage
{
var
ret
uintptr
Proc
(
internale_ICEFWindow_GetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_ICEFWindow_GetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefImage
{
instance
:
unsafe
.
Pointer
(
ret
),
}
...
...
@@ -152,7 +152,7 @@ func (m *ICefWindow) SetWindowAppIcon(scaleFactor float32, filename string) erro
if
err
!=
nil
{
return
err
}
Proc
(
internale_ICEFWindow_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_ICEFWindow_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
...
...
@@ -161,13 +161,13 @@ func (m *ICefWindow) SetWindowAppIconFS(scaleFactor float32, filename string) er
if
err
!=
nil
{
return
err
}
Proc
(
internale_ICEFWindow_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_ICEFWindow_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
func
(
m
*
ICefWindow
)
GetWindowAppIcon
()
*
ICefImage
{
var
ret
uintptr
Proc
(
internale_ICEFWindow_GetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_ICEFWindow_GetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefImage
{
instance
:
unsafe
.
Pointer
(
ret
),
}
...
...
@@ -175,59 +175,59 @@ func (m *ICefWindow) GetWindowAppIcon() *ICefImage {
func
(
m
*
ICefWindow
)
AddOverlayView
()
{
//do not implement
//Proc(internale_ICEFWindow_AddOverlayView).Call(uintptr(m.instance))
//
imports.
Proc(internale_ICEFWindow_AddOverlayView).Call(uintptr(m.instance))
}
func
(
m
*
ICefWindow
)
ShowMenu
(
menuModel
*
ICefMenuModel
,
point
TCefPoint
,
anchorPosition
consts
.
TCefMenuAnchorPosition
)
{
Proc
(
internale_ICEFWindow_ShowMenu
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
menuModel
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
point
)),
uintptr
(
anchorPosition
))
imports
.
Proc
(
internale_ICEFWindow_ShowMenu
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
menuModel
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
point
)),
uintptr
(
anchorPosition
))
}
func
(
m
*
ICefWindow
)
CancelMenu
()
{
Proc
(
internale_ICEFWindow_CancelMenu
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_CancelMenu
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
ICefWindow
)
GetDisplay
()
*
ICefDisplay
{
var
ret
uintptr
Proc
(
internale_ICEFWindow_GetDisplay
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_ICEFWindow_GetDisplay
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefDisplay
{
instance
:
unsafe
.
Pointer
(
ret
),
}
}
func
(
m
*
ICefWindow
)
GetClientAreaBoundsInScreen
()
(
result
TCefRect
)
{
Proc
(
internale_ICEFWindow_GetClientAreaBoundsInScreen
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_ICEFWindow_GetClientAreaBoundsInScreen
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
func
(
m
*
ICefWindow
)
SetDraggableRegions
(
regions
[]
TCefDraggableRegion
)
{
Proc
(
internale_ICEFWindow_SetDraggableRegions
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
imports
.
Proc
(
internale_ICEFWindow_SetDraggableRegions
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
}
func
(
m
*
ICefWindow
)
GetWindowHandle
()
consts
.
TCefWindowHandle
{
r1
,
_
,
_
:=
Proc
(
internale_ICEFWindow_GetWindowHandle
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_ICEFWindow_GetWindowHandle
)
.
Call
(
uintptr
(
m
.
instance
))
return
consts
.
TCefWindowHandle
(
r1
)
}
func
(
m
*
ICefWindow
)
SendKeyPress
(
keyCode
int32
,
eventFlags
uint32
)
{
Proc
(
internale_ICEFWindow_SendKeyPress
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
keyCode
),
uintptr
(
eventFlags
))
imports
.
Proc
(
internale_ICEFWindow_SendKeyPress
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
keyCode
),
uintptr
(
eventFlags
))
}
func
(
m
*
ICefWindow
)
SendMouseMove
(
screenX
,
screenY
int32
)
{
Proc
(
internale_ICEFWindow_SendMouseMove
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
screenX
),
uintptr
(
screenY
))
imports
.
Proc
(
internale_ICEFWindow_SendMouseMove
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
screenX
),
uintptr
(
screenY
))
}
func
(
m
*
ICefWindow
)
SendMouseEvents
(
button
consts
.
TCefMouseButtonType
,
mouseDown
,
mouseUp
bool
)
{
Proc
(
internale_ICEFWindow_SendMouseEvents
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
button
),
api
.
PascalBool
(
mouseDown
),
api
.
PascalBool
(
mouseUp
))
imports
.
Proc
(
internale_ICEFWindow_SendMouseEvents
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
button
),
api
.
PascalBool
(
mouseDown
),
api
.
PascalBool
(
mouseUp
))
}
func
(
m
*
ICefWindow
)
SetAccelerator
(
commandId
,
keyCode
int32
,
shiftPressed
,
ctrlPressed
,
altPressed
bool
)
{
Proc
(
internale_ICEFWindow_SetAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
),
uintptr
(
keyCode
),
api
.
PascalBool
(
shiftPressed
),
api
.
PascalBool
(
ctrlPressed
),
api
.
PascalBool
(
altPressed
))
imports
.
Proc
(
internale_ICEFWindow_SetAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
),
uintptr
(
keyCode
),
api
.
PascalBool
(
shiftPressed
),
api
.
PascalBool
(
ctrlPressed
),
api
.
PascalBool
(
altPressed
))
}
func
(
m
*
ICefWindow
)
RemoveAccelerator
(
commandId
int32
)
{
Proc
(
internale_ICEFWindow_RemoveAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
))
imports
.
Proc
(
internale_ICEFWindow_RemoveAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
))
}
func
(
m
*
ICefWindow
)
RemoveAllAccelerators
()
{
Proc
(
internale_ICEFWindow_RemoveAllAccelerators
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_ICEFWindow_RemoveAllAccelerators
)
.
Call
(
uintptr
(
m
.
instance
))
}
cef/cef-v8-i.go
浏览文件 @
fab1c6b6
...
...
@@ -10,7 +10,7 @@ package cef
import
(
"bytes"
"github.com/energye/energy/common"
"github.com/energye/energy/common
/imports
"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/logger"
"github.com/energye/golcl/lcl/api"
...
...
@@ -62,11 +62,11 @@ type JSValue interface {
UnLock
()
}
//ICefV8Context bindGoToJS
//
ICefV8Context bindGoToJS
//
//主进程创建完之后和渲染进程每次创建之后调用
//
主进程创建完之后和渲染进程每次创建之后调用
//
//潜在问题,如果函数名包含数字可能会引起函数冲突,入参或出参类型不正确,导致调用失败
//
潜在问题,如果函数名包含数字可能会引起函数冲突,入参或出参类型不正确,导致调用失败
func
bindGoToJS
(
browser
*
ICefBrowser
,
frame
*
ICefFrame
)
{
//变量绑定回调函数
VariableBind
.
callVariableBind
(
browser
,
frame
)
...
...
@@ -110,7 +110,7 @@ func bindGoToJS(browser *ICefBrowser, frame *ICefFrame) {
}
if
len
(
valueBindInfos
)
>
0
{
for
i
:=
0
;
i
<
len
(
valueBindInfos
);
i
++
{
common
.
Proc
(
internale_CEFV8ValueRef_CommonValueBindInfo
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
valueBindInfos
[
i
])))
imports
.
Proc
(
internale_CEFV8ValueRef_CommonValueBindInfo
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
valueBindInfos
[
i
])))
}
}
}
cef/cef-v8-js-bind-events.go
浏览文件 @
fab1c6b6
...
...
@@ -10,6 +10,7 @@ package cef
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/ipc"
"github.com/energye/energy/logger"
...
...
@@ -25,7 +26,7 @@ var (
func
cefV8WindowBindFuncEventsInit
()
{
// 初始设置回调函数指针
setCefWindowBindCallbackFunc
=
common
.
Proc
(
internale_SetCEFWindowBindCallbackFunc
)
setCefWindowBindCallbackFunc
=
imports
.
Proc
(
internale_SetCEFWindowBindCallbackFunc
)
setCefWindowBindCallbackFunc
.
Call
(
cefWindowBindEvent
)
}
...
...
@@ -42,7 +43,7 @@ func cefWindowBindCallbackEventProc(f uintptr, args uintptr, argcout int) uintpt
return
0
}
//字段处理
//
字段处理
func
_cefV8BindFieldCallbackHandler
(
eventType
BIND_EVENT
,
fullNamePtr
uintptr
,
args
uintptr
,
argsLen
int
)
{
var
(
exceptionPrt
*
uintptr
...
...
@@ -210,7 +211,7 @@ func getPtrValue(valueType V8_JS_VALUE_TYPE, newValue interface{}, stringValuePr
return
""
}
//函数处理
//
函数处理
func
_cefV8BindFuncCallbackHandler
(
eventType
BIND_EVENT
,
fullNamePtr
uintptr
,
args
uintptr
,
argsLen
int
)
{
var
(
exceptionPrt
*
uintptr
...
...
cef/cef-v8-js-bind-object.go
浏览文件 @
fab1c6b6
...
...
@@ -12,6 +12,7 @@ import (
"bytes"
"fmt"
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/logger"
"github.com/energye/golcl/lcl/api"
...
...
@@ -22,7 +23,7 @@ import (
var
objectSti
=
new
(
structTypeInfo
)
//函数详情 1.参数个数 2.每个参数类型 3.返回参数类型
//
函数详情 1.参数个数 2.每个参数类型 3.返回参数类型
type
funcInfo
struct
{
InNum
int32
`json:"inNum"`
InParam
[]
*
vt
`json:"inParam"`
...
...
@@ -38,13 +39,13 @@ type vt struct {
Gov
GO_VALUE_TYPE
`json:"gov"`
}
//结构类型信息,结构的字段信息和方法函数信息
//
结构类型信息,结构的字段信息和方法函数信息
type
structTypeInfo
struct
{
StructsObject
map
[
string
]
*
structObjectInfo
//分析后的 有关系的结构信息
//v8Value *ICEFv8Value
}
//分析后的 结构信息
//
分析后的 结构信息
type
structObjectInfo
struct
{
Instance
uintptr
`json:"instance"`
ParentInstance
uintptr
`json:"parentInstance"`
...
...
@@ -57,7 +58,7 @@ type structObjectInfo struct {
SubStructObjectInfo
map
[
string
]
*
structObjectInfo
`json:"subStructObjectInfo"`
//子对象信息
}
//结构的字段信息
//
结构的字段信息
type
structFieldInfo
struct
{
EventId
uintptr
`json:"event_id"`
ValueType
*
vt
`json:"valueType"`
//字段类型,go 和 js
...
...
@@ -103,8 +104,8 @@ func (m *vt) IsGoFloatAuto() bool {
return
false
}
//ICefV8Context BindObject
//对应Golang,不支持字段的类型修改(包括对象类型),不支持删除和增加字段变更,支持字段值修改。和获取。
//
ICefV8Context BindObject
//
对应Golang,不支持字段的类型修改(包括对象类型),不支持删除和增加字段变更,支持字段值修改。和获取。
func
bindObject
(
objects
...
interface
{})
{
objectSti
.
StructsObject
=
make
(
map
[
string
]
*
structObjectInfo
,
len
(
objects
))
for
i
:=
0
;
i
<
len
(
objects
);
i
++
{
...
...
@@ -124,7 +125,7 @@ func bindObject(objects ...interface{}) {
//对象字段和函数统计
//对象转换 go to cef
//
对象转换 go to cef
func
(
m
*
structTypeInfo
)
_objectToCefObject
()
{
for
_
,
info
:=
range
m
.
StructsObject
{
m
.
_subInfoToCefObject
(
info
)
...
...
@@ -206,20 +207,20 @@ func (m *structTypeInfo) _infoTo(info *structObjectInfo) {
FuncLen
:
uintptr
(
funcLen
),
Funcs
:
funcPtr
,
}
common
.
Proc
(
internale_CEFV8ValueRef_ObjectValueBindInfo
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
co
)))
imports
.
Proc
(
internale_CEFV8ValueRef_ObjectValueBindInfo
)
.
Call
(
uintptr
(
unsafe
.
Pointer
(
co
)))
}
//创建 结构对象的字段变量
//
创建 结构对象的字段变量
func
(
m
*
structTypeInfo
)
createObjectFieldVariable
(
fullParentName
,
fieldName
string
,
sfi
*
structFieldInfo
)
{
newICEFv8Value
(
sfi
.
EventId
,
fullParentName
,
fieldName
,
sfi
.
FieldValue
,
nil
,
sfi
.
ValueType
.
Jsv
,
IS_OBJECT
)
}
//创建 结构对象的函数变量
//
创建 结构对象的函数变量
func
(
m
*
structTypeInfo
)
createObjectFuncVariable
(
fullParentName
,
funcName
string
,
sfi
*
structFuncInfo
)
{
newICEFv8Value
(
sfi
.
EventId
,
fullParentName
,
funcName
,
nil
,
sfi
,
V8_VALUE_FUNCTION
,
IS_OBJECT
)
}
//分析对象的字段
//
分析对象的字段
func
(
m
*
structObjectInfo
)
analysisObjectField
(
typ
reflect
.
Type
,
typPtr
reflect
.
Type
,
value
reflect
.
Value
)
{
if
m
.
Parent
==
nil
{
m
.
ObjName
=
typ
.
Name
()
...
...
@@ -278,8 +279,8 @@ func (m *structObjectInfo) analysisObjectField(typ reflect.Type, typPtr reflect.
m
.
analysisObjectMethod
(
typPtr
,
value
)
}
//分析对象的函数方法
//不符合js类型的函数的参数,不会被解析成js函数
//
分析对象的函数方法
//
不符合js类型的函数的参数,不会被解析成js函数
func
(
m
*
structObjectInfo
)
analysisObjectMethod
(
typPtr
reflect
.
Type
,
value
reflect
.
Value
)
{
m
.
FuncsInfo
=
make
(
map
[
string
]
*
structFuncInfo
)
for
idx
:=
0
;
idx
<
typPtr
.
NumMethod
();
idx
++
{
...
...
cef/cef-window-component.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/consts"
"github.com/energye/energy/types"
"github.com/energye/golcl/energy/emfs"
...
...
@@ -25,147 +25,147 @@ type TCEFWindowComponent struct {
}
func
NewWindowComponent
(
AOwner
lcl
.
IComponent
)
*
TCEFWindowComponent
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_Create
)
.
Call
(
lcl
.
CheckPtr
(
AOwner
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_Create
)
.
Call
(
lcl
.
CheckPtr
(
AOwner
))
return
&
TCEFWindowComponent
{
instance
:
unsafe
.
Pointer
(
r1
),
}
}
func
(
m
*
TCEFWindowComponent
)
CreateTopLevelWindow
()
{
Proc
(
internale_CEFWindowComponent_CreateTopLevelWindow
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_CreateTopLevelWindow
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Show
()
{
Proc
(
internale_CEFWindowComponent_Show
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Show
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Hide
()
{
Proc
(
internale_CEFWindowComponent_Hide
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Hide
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
CenterWindow
(
size
*
TCefSize
)
{
Proc
(
internale_CEFWindowComponent_CenterWindow
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
imports
.
Proc
(
internale_CEFWindowComponent_CenterWindow
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
}
func
(
m
*
TCEFWindowComponent
)
Close
()
{
Proc
(
internale_CEFWindowComponent_Close
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Close
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Activate
()
{
Proc
(
internale_CEFWindowComponent_Activate
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Activate
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Deactivate
()
{
Proc
(
internale_CEFWindowComponent_Deactivate
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Deactivate
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
BringToTop
()
{
Proc
(
internale_CEFWindowComponent_BringToTop
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_BringToTop
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Maximize
()
{
Proc
(
internale_CEFWindowComponent_Maximize
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Maximize
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Minimize
()
{
Proc
(
internale_CEFWindowComponent_Minimize
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Minimize
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
Restore
()
{
Proc
(
internale_CEFWindowComponent_Restore
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_Restore
)
.
Call
(
uintptr
(
m
.
instance
))
}
//func (m *TCEFWindowComponent) AddOverlayView() {
//Proc(internale_CEFWindowComponent_AddOverlayView).Call(uintptr(m.instance))
//
imports.
Proc(internale_CEFWindowComponent_AddOverlayView).Call(uintptr(m.instance))
//}
func
(
m
*
TCEFWindowComponent
)
ShowMenu
(
menuModel
*
ICefMenuModel
,
point
TCefPoint
,
anchorPosition
consts
.
TCefMenuAnchorPosition
)
{
Proc
(
internale_CEFWindowComponent_ShowMenu
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
menuModel
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
point
)),
uintptr
(
anchorPosition
))
imports
.
Proc
(
internale_CEFWindowComponent_ShowMenu
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
menuModel
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
point
)),
uintptr
(
anchorPosition
))
}
func
(
m
*
TCEFWindowComponent
)
CancelMenu
()
{
Proc
(
internale_CEFWindowComponent_CancelMenu
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_CancelMenu
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
SetDraggableRegions
(
regions
[]
TCefDraggableRegion
)
{
Proc
(
internale_CEFWindowComponent_SetDraggableRegions
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
imports
.
Proc
(
internale_CEFWindowComponent_SetDraggableRegions
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
int32
(
len
(
regions
))),
uintptr
(
unsafe
.
Pointer
(
&
regions
[
0
])),
uintptr
(
int32
(
len
(
regions
))))
}
func
(
m
*
TCEFWindowComponent
)
SendKeyPress
(
keyCode
int32
,
eventFlags
uint32
)
{
Proc
(
internale_CEFWindowComponent_SendKeyPress
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
keyCode
),
uintptr
(
eventFlags
))
imports
.
Proc
(
internale_CEFWindowComponent_SendKeyPress
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
keyCode
),
uintptr
(
eventFlags
))
}
func
(
m
*
TCEFWindowComponent
)
SendMouseMove
(
screenX
,
screenY
int32
)
{
Proc
(
internale_CEFWindowComponent_SendMouseMove
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
screenX
),
uintptr
(
screenY
))
imports
.
Proc
(
internale_CEFWindowComponent_SendMouseMove
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
screenX
),
uintptr
(
screenY
))
}
func
(
m
*
TCEFWindowComponent
)
SendMouseEvents
(
button
consts
.
TCefMouseButtonType
,
mouseDown
,
mouseUp
bool
)
{
Proc
(
internale_CEFWindowComponent_SendMouseEvents
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
button
),
api
.
PascalBool
(
mouseDown
),
api
.
PascalBool
(
mouseUp
))
imports
.
Proc
(
internale_CEFWindowComponent_SendMouseEvents
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
button
),
api
.
PascalBool
(
mouseDown
),
api
.
PascalBool
(
mouseUp
))
}
func
(
m
*
TCEFWindowComponent
)
SetAccelerator
(
commandId
,
keyCode
int32
,
shiftPressed
,
ctrlPressed
,
altPressed
bool
)
{
Proc
(
internale_CEFWindowComponent_SetAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
),
uintptr
(
keyCode
),
api
.
PascalBool
(
shiftPressed
),
api
.
PascalBool
(
ctrlPressed
),
api
.
PascalBool
(
altPressed
))
imports
.
Proc
(
internale_CEFWindowComponent_SetAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
),
uintptr
(
keyCode
),
api
.
PascalBool
(
shiftPressed
),
api
.
PascalBool
(
ctrlPressed
),
api
.
PascalBool
(
altPressed
))
}
func
(
m
*
TCEFWindowComponent
)
RemoveAccelerator
(
commandId
int32
)
{
Proc
(
internale_CEFWindowComponent_RemoveAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
))
imports
.
Proc
(
internale_CEFWindowComponent_RemoveAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
commandId
))
}
func
(
m
*
TCEFWindowComponent
)
RemoveAllAccelerators
()
{
Proc
(
internale_CEFWindowComponent_RemoveAllAccelerators
)
.
Call
(
uintptr
(
m
.
instance
))
imports
.
Proc
(
internale_CEFWindowComponent_RemoveAllAccelerators
)
.
Call
(
uintptr
(
m
.
instance
))
}
func
(
m
*
TCEFWindowComponent
)
SetAlwaysOnTop
(
onTop
bool
)
{
Proc
(
internale_CEFWindowComponent_SetAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
onTop
))
imports
.
Proc
(
internale_CEFWindowComponent_SetAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
onTop
))
}
func
(
m
*
TCEFWindowComponent
)
SetFullscreen
(
fullscreen
bool
)
{
Proc
(
internale_CEFWindowComponent_SetFullscreen
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
fullscreen
))
imports
.
Proc
(
internale_CEFWindowComponent_SetFullscreen
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalBool
(
fullscreen
))
}
func
(
m
*
TCEFWindowComponent
)
SetBackgroundColor
(
rect
*
types
.
TCefColor
)
{
Proc
(
internale_CEFWindowComponent_SetBackgroundColor
)
.
Call
(
uintptr
(
m
.
instance
),
rect
.
ToPtr
())
imports
.
Proc
(
internale_CEFWindowComponent_SetBackgroundColor
)
.
Call
(
uintptr
(
m
.
instance
),
rect
.
ToPtr
())
}
func
(
m
*
TCEFWindowComponent
)
Bounds
()
(
result
*
TCefRect
)
{
Proc
(
internale_CEFWindowComponent_Bounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
imports
.
Proc
(
internale_CEFWindowComponent_Bounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
return
}
func
(
m
*
TCEFWindowComponent
)
Size
()
(
result
*
TCefSize
)
{
Proc
(
internale_CEFWindowComponent_Size
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
imports
.
Proc
(
internale_CEFWindowComponent_Size
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
return
}
func
(
m
*
TCEFWindowComponent
)
Position
()
(
result
*
TCefPoint
)
{
Proc
(
internale_CEFWindowComponent_Position
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
imports
.
Proc
(
internale_CEFWindowComponent_Position
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
result
)))
return
}
func
(
m
*
TCEFWindowComponent
)
SetBounds
(
rect
*
TCefRect
)
{
Proc
(
internale_CEFWindowComponent_SetBounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
rect
)))
imports
.
Proc
(
internale_CEFWindowComponent_SetBounds
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
rect
)))
}
func
(
m
*
TCEFWindowComponent
)
SetSize
(
size
*
TCefSize
)
{
Proc
(
internale_CEFWindowComponent_SetSize
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
imports
.
Proc
(
internale_CEFWindowComponent_SetSize
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
size
)))
}
func
(
m
*
TCEFWindowComponent
)
SetPosition
(
point
*
TCefPoint
)
{
Proc
(
internale_CEFWindowComponent_SetPosition
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
point
)))
imports
.
Proc
(
internale_CEFWindowComponent_SetPosition
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
point
)))
}
func
(
m
*
TCEFWindowComponent
)
SetTitle
(
title
string
)
{
Proc
(
internale_CEFWindowComponent_SetTitle
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
title
))
imports
.
Proc
(
internale_CEFWindowComponent_SetTitle
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
PascalStr
(
title
))
}
func
(
m
*
TCEFWindowComponent
)
Title
()
string
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_Title
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_Title
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoStr
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
WindowIcon
()
*
ICefImage
{
var
ret
uintptr
Proc
(
internale_CEFWindowComponent_WindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_CEFWindowComponent_WindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefImage
{
instance
:
unsafe
.
Pointer
(
ret
),
}
...
...
@@ -176,7 +176,7 @@ func (m *TCEFWindowComponent) SetWindowIcon(scaleFactor float32, filename string
if
err
!=
nil
{
return
err
}
Proc
(
internale_CEFWindowComponent_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_CEFWindowComponent_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
...
...
@@ -185,13 +185,13 @@ func (m *TCEFWindowComponent) SetWindowIconFS(scaleFactor float32, filename stri
if
err
!=
nil
{
return
err
}
Proc
(
internale_CEFWindowComponent_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_CEFWindowComponent_SetWindowIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
func
(
m
*
TCEFWindowComponent
)
WindowAppIcon
()
*
ICefImage
{
var
ret
uintptr
Proc
(
internale_CEFWindowComponent_WindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_CEFWindowComponent_WindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefImage
{
instance
:
unsafe
.
Pointer
(
ret
),
}
...
...
@@ -202,7 +202,7 @@ func (m *TCEFWindowComponent) SetWindowAppIcon(scaleFactor float32, filename str
if
err
!=
nil
{
return
err
}
Proc
(
internale_CEFWindowComponent_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_CEFWindowComponent_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
...
...
@@ -211,112 +211,112 @@ func (m *TCEFWindowComponent) SetWindowAppIconFS(scaleFactor float32, filename s
if
err
!=
nil
{
return
err
}
Proc
(
internale_CEFWindowComponent_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
imports
.
Proc
(
internale_CEFWindowComponent_SetWindowAppIcon
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
scaleFactor
)),
uintptr
(
unsafe
.
Pointer
(
&
bytes
[
0
])),
uintptr
(
int32
(
len
(
bytes
))))
return
nil
}
func
(
m
*
TCEFWindowComponent
)
Display
()
*
ICefDisplay
{
var
ret
uintptr
Proc
(
internale_CEFWindowComponent_Display
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
imports
.
Proc
(
internale_CEFWindowComponent_Display
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
ret
)))
return
&
ICefDisplay
{
instance
:
unsafe
.
Pointer
(
ret
),
}
}
func
(
m
*
TCEFWindowComponent
)
ClientAreaBoundsInScreen
()
(
result
TCefRect
)
{
Proc
(
internale_CEFWindowComponent_ClientAreaBoundsInScreen
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFWindowComponent_ClientAreaBoundsInScreen
)
.
Call
(
uintptr
(
m
.
instance
),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
}
func
(
m
*
TCEFWindowComponent
)
WindowHandle
()
consts
.
TCefWindowHandle
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_WindowHandle
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_WindowHandle
)
.
Call
(
uintptr
(
m
.
instance
))
return
consts
.
TCefWindowHandle
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsClosed
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsClosed
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsClosed
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsActive
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsActive
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsActive
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsAlwaysOnTop
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsAlwaysOnTop
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsFullscreen
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsFullscreen
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsFullscreen
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsMaximized
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsMaximized
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsMaximized
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
IsMinimized
()
bool
{
r1
,
_
,
_
:=
Proc
(
internale_CEFWindowComponent_IsMinimized
)
.
Call
(
uintptr
(
m
.
instance
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindowComponent_IsMinimized
)
.
Call
(
uintptr
(
m
.
instance
))
return
api
.
GoBool
(
r1
)
}
func
(
m
*
TCEFWindowComponent
)
AddChildView
(
browserViewComponent
*
TCEFBrowserViewComponent
)
{
Proc
(
internale_CEFWindowComponent_AddChildView
)
.
Call
(
uintptr
(
m
.
instance
),
browserViewComponent
.
Instance
())
imports
.
Proc
(
internale_CEFWindowComponent_AddChildView
)
.
Call
(
uintptr
(
m
.
instance
),
browserViewComponent
.
Instance
())
}
func
(
m
*
TCEFWindowComponent
)
SetOnWindowCreated
(
fn
WindowComponentOnWindowCreated
)
{
Proc
(
internale_CEFWindowComponent_SetOnWindowCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnWindowCreated
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnWindowDestroyed
(
fn
WindowComponentOnWindowDestroyed
)
{
Proc
(
internale_CEFWindowComponent_SetOnWindowDestroyed
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnWindowDestroyed
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnWindowActivationChanged
(
fn
WindowComponentOnWindowActivationChanged
)
{
Proc
(
internale_CEFWindowComponent_SetOnWindowActivationChanged
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnWindowActivationChanged
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnGetParentWindow
(
fn
WindowComponentOnGetParentWindow
)
{
Proc
(
internale_CEFWindowComponent_SetOnGetParentWindow
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnGetParentWindow
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnGetInitialBounds
(
fn
WindowComponentOnGetInitialBounds
)
{
Proc
(
internale_CEFWindowComponent_SetOnGetInitialBounds
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnGetInitialBounds
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnGetInitialShowState
(
fn
WindowComponentOnGetInitialShowState
)
{
Proc
(
internale_CEFWindowComponent_SetOnGetInitialShowState
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnGetInitialShowState
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnIsFrameless
(
fn
WindowComponentOnIsFrameless
)
{
Proc
(
internale_CEFWindowComponent_SetOnIsFrameless
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnIsFrameless
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnCanResize
(
fn
WindowComponentOnCanResize
)
{
Proc
(
internale_CEFWindowComponent_SetOnCanResize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnCanResize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnCanMaximize
(
fn
WindowComponentOnCanMaximize
)
{
Proc
(
internale_CEFWindowComponent_SetOnCanMaximize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnCanMaximize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnCanMinimize
(
fn
WindowComponentOnCanMinimize
)
{
Proc
(
internale_CEFWindowComponent_SetOnCanMinimize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnCanMinimize
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnCanClose
(
fn
WindowComponentOnCanClose
)
{
Proc
(
internale_CEFWindowComponent_SetOnCanClose
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnCanClose
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnAccelerator
(
fn
WindowComponentOnAccelerator
)
{
Proc
(
internale_CEFWindowComponent_SetOnAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnAccelerator
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowComponent
)
SetOnKeyEvent
(
fn
WindowComponentOnKeyEvent
)
{
Proc
(
internale_CEFWindowComponent_SetOnKeyEvent
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindowComponent_SetOnKeyEvent
)
.
Call
(
uintptr
(
m
.
instance
),
api
.
MakeEventDataPtr
(
fn
))
}
func
init
()
{
...
...
cef/cef-window-parent.go
浏览文件 @
fab1c6b6
...
...
@@ -9,7 +9,7 @@
package
cef
import
(
.
"github.com/energye/energy/common
"
"github.com/energye/energy/common/imports
"
"github.com/energye/energy/consts"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/api"
...
...
@@ -23,18 +23,18 @@ type TCEFWindowParent struct {
func
NewCEFWindowParent
(
owner
lcl
.
IComponent
)
*
TCEFWindowParent
{
m
:=
new
(
TCEFWindowParent
)
r1
,
_
,
_
:=
Proc
(
internale_CEFWindow_Create
)
.
Call
(
lcl
.
CheckPtr
(
owner
))
r1
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_Create
)
.
Call
(
lcl
.
CheckPtr
(
owner
))
m
.
instance
=
unsafe
.
Pointer
(
r1
)
return
m
}
func
(
m
*
TCEFWindowParent
)
Handle
()
types
.
HWND
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetHandle
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetHandle
)
.
Call
(
m
.
Instance
())
return
types
.
HWND
(
ret
)
}
func
(
m
*
TCEFWindowParent
)
UpdateSize
()
{
Proc
(
internale_CEFWindow_UpdateSize
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFWindow_UpdateSize
)
.
Call
(
m
.
Instance
())
}
func
(
m
*
TCEFWindowParent
)
Type
()
consts
.
TCefWindowHandleType
{
...
...
@@ -45,143 +45,143 @@ func (m *TCEFWindowParent) SetChromium(chromium IChromium, tag int32) {
}
func
(
m
*
TCEFWindowParent
)
HandleAllocated
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_HandleAllocated
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_HandleAllocated
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
func
(
m
*
TCEFWindowParent
)
CreateHandle
()
{
Proc
(
internale_CEFWindow_CreateHandle
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFWindow_CreateHandle
)
.
Call
(
m
.
Instance
())
}
func
(
m
*
TCEFWindowParent
)
DestroyChildWindow
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_DestroyChildWindow
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_DestroyChildWindow
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
func
(
m
*
TCEFWindowParent
)
SetOnEnter
(
fn
lcl
.
TNotifyEvent
)
{
Proc
(
internale_CEFWindow_OnEnter
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindow_OnEnter
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowParent
)
SetOnExit
(
fn
lcl
.
TNotifyEvent
)
{
Proc
(
internale_CEFWindow_OnExit
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
imports
.
Proc
(
internale_CEFWindow_OnExit
)
.
Call
(
m
.
Instance
(),
api
.
MakeEventDataPtr
(
fn
))
}
func
(
m
*
TCEFWindowParent
)
Free
()
{
if
m
.
IsValid
()
{
Proc
(
internale_CEFWindow_Free
)
.
Call
(
m
.
Instance
())
imports
.
Proc
(
internale_CEFWindow_Free
)
.
Call
(
m
.
Instance
())
m
.
instance
=
nullptr
}
}
// 获取组件名称。
func
(
m
*
TCEFWindowParent
)
Name
()
string
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetName
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetName
)
.
Call
(
m
.
Instance
())
return
api
.
GoStr
(
ret
)
}
// 设置组件名称。
func
(
m
*
TCEFWindowParent
)
SetName
(
value
string
)
{
Proc
(
internale_CEFWindow_SetName
)
.
Call
(
m
.
Instance
(),
api
.
PascalStr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetName
)
.
Call
(
m
.
Instance
(),
api
.
PascalStr
(
value
))
}
// 设置控件父容器。
func
(
m
*
TCEFWindowParent
)
SetParent
(
value
lcl
.
IWinControl
)
{
Proc
(
internale_CEFWindow_SetParent
)
.
Call
(
m
.
Instance
(),
lcl
.
CheckPtr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetParent
)
.
Call
(
m
.
Instance
(),
lcl
.
CheckPtr
(
value
))
}
//Align 获取控件自动调整。
//
Align 获取控件自动调整。
func
(
m
*
TCEFWindowParent
)
Align
()
types
.
TAlign
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetAlign
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetAlign
)
.
Call
(
m
.
Instance
())
return
types
.
TAlign
(
ret
)
}
//SetAlign 设置控件自动调整。
//
SetAlign 设置控件自动调整。
func
(
m
*
TCEFWindowParent
)
SetAlign
(
value
types
.
TAlign
)
{
Proc
(
internale_CEFWindow_SetAlign
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetAlign
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Anchors 获取四个角位置的锚点。
//
Anchors 获取四个角位置的锚点。
func
(
m
*
TCEFWindowParent
)
Anchors
()
types
.
TAnchors
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetAnchors
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetAnchors
)
.
Call
(
m
.
Instance
())
return
types
.
TAnchors
(
ret
)
}
//SetAnchors 设置四个角位置的锚点。
//
SetAnchors 设置四个角位置的锚点。
func
(
m
*
TCEFWindowParent
)
SetAnchors
(
value
types
.
TAnchors
)
{
Proc
(
internale_CEFWindow_SetAnchors
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetAnchors
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Visible 获取控件可视。
//
Visible 获取控件可视。
func
(
m
*
TCEFWindowParent
)
Visible
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetVisible
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetVisible
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
//SetVisible 设置控件可视。
//
SetVisible 设置控件可视。
func
(
m
*
TCEFWindowParent
)
SetVisible
(
value
bool
)
{
Proc
(
internale_CEFWindow_SetVisible
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetVisible
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
}
//Enabled 获取是否启用
//
Enabled 获取是否启用
func
(
m
*
TCEFWindowParent
)
Enabled
()
bool
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetEnabled
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetEnabled
)
.
Call
(
m
.
Instance
())
return
api
.
GoBool
(
ret
)
}
//SetEnabled 设置是否启用
//
SetEnabled 设置是否启用
func
(
m
*
TCEFWindowParent
)
SetEnabled
(
value
bool
)
{
Proc
(
internale_CEFWindow_SetEnabled
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetEnabled
)
.
Call
(
m
.
Instance
(),
api
.
PascalBool
(
value
))
}
//Left 获取左边距
//
Left 获取左边距
func
(
m
*
TCEFWindowParent
)
Left
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetLeft
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetLeft
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetLeft 设置左边距
//
SetLeft 设置左边距
func
(
m
*
TCEFWindowParent
)
SetLeft
(
value
int32
)
{
Proc
(
internale_CEFWindow_SetLeft
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetLeft
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Top 获取上边距
//
Top 获取上边距
func
(
m
*
TCEFWindowParent
)
Top
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetTop
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetTop
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetTop 设置上边距
//
SetTop 设置上边距
func
(
m
*
TCEFWindowParent
)
SetTop
(
value
int32
)
{
Proc
(
internale_CEFWindow_SetTop
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetTop
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Width 获取宽度
//
Width 获取宽度
func
(
m
*
TCEFWindowParent
)
Width
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetWidth
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetWidth
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetWidth 设置宽度
//
SetWidth 设置宽度
func
(
m
*
TCEFWindowParent
)
SetWidth
(
value
int32
)
{
Proc
(
internale_CEFWindow_SetWidth
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetWidth
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
//Height 获取高度
//
Height 获取高度
func
(
m
*
TCEFWindowParent
)
Height
()
int32
{
ret
,
_
,
_
:=
Proc
(
internale_CEFWindow_GetHeight
)
.
Call
(
m
.
Instance
())
ret
,
_
,
_
:=
imports
.
Proc
(
internale_CEFWindow_GetHeight
)
.
Call
(
m
.
Instance
())
return
int32
(
ret
)
}
//SetHeight 设置高度
//
SetHeight 设置高度
func
(
m
*
TCEFWindowParent
)
SetHeight
(
value
int32
)
{
Proc
(
internale_CEFWindow_SetHeight
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
imports
.
Proc
(
internale_CEFWindow_SetHeight
)
.
Call
(
m
.
Instance
(),
uintptr
(
value
))
}
func
(
m
*
TCEFWindowParent
)
BoundsRect
()
(
result
types
.
TRect
)
{
Proc
(
internale_CEFWindow_GetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
imports
.
Proc
(
internale_CEFWindow_GetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
result
)))
return
result
}
func
(
m
*
TCEFWindowParent
)
SetBoundsRect
(
value
types
.
TRect
)
{
Proc
(
internale_CEFWindow_SetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
value
)))
imports
.
Proc
(
internale_CEFWindow_SetBoundsRect
)
.
Call
(
m
.
Instance
(),
uintptr
(
unsafe
.
Pointer
(
&
value
)))
}
cmd/internal/ide/ide-component-anchor.go
浏览文件 @
fab1c6b6
package
ide
import
(
"github.com/energye/energy/
cef
"
"github.com/energye/energy/
pkgs/ext
"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/types"
"github.com/energye/golcl/lcl/types/colors"
...
...
@@ -87,7 +87,7 @@ func (m *anchor) newAnchorPoint(owner lcl.IWinControl, ht int32) *lcl.TPanel {
point
.
SetParent
(
owner
)
point
.
SetBevelInner
(
types
.
BvSpace
)
point
.
SetBevelOuter
(
types
.
BvNone
)
cef
.
SetPanelBevelColor
(
point
,
colors
.
ClBlack
)
ext
.
SetPanelBevelColor
(
point
,
colors
.
ClBlack
)
point
.
SetColor
(
colors
.
ClTeal
)
point
.
SetOnMouseMove
(
func
(
sender
lcl
.
IObject
,
shift
types
.
TShiftState
,
x
,
y
int32
)
{
m
.
component
.
borderHT
=
ht
...
...
common/common.go
浏览文件 @
fab1c6b6
...
...
@@ -15,8 +15,6 @@ import (
"fmt"
.
"github.com/energye/energy/consts"
"github.com/energye/energy/decimal"
"github.com/energye/golcl/lcl/api"
"github.com/energye/golcl/lcl/api/dllimports"
"math"
"reflect"
"runtime"
...
...
@@ -49,10 +47,6 @@ const (
isZos
=
runtime
.
GOOS
==
"zos"
//not support
)
func
Proc
(
index
int
)
dllimports
.
ProcAddr
{
return
api
.
EnergyDefSyscallN
(
index
)
}
func
IsWindows
()
bool
{
return
isWindows
}
...
...
@@ -650,7 +644,7 @@ func BytesToString(data []byte) string {
// return *(*[]byte)(unsafe.Pointer(&data))
//}
//String转换Bytes数组,isDStr转换DString 默认GoString
//
String转换Bytes数组,isDStr转换DString 默认GoString
func
StringToBytes
(
s
string
,
isDStr
...
bool
)
[]
byte
{
if
len
(
isDStr
)
>
0
&&
isDStr
[
0
]
{
temp
:=
[]
byte
(
s
)
...
...
@@ -662,7 +656,7 @@ func StringToBytes(s string, isDStr ...bool) []byte {
}
}
//Float64ToBytes Float64转byte
//
Float64ToBytes Float64转byte
func
Float64ToBytes
(
float
float64
)
[]
byte
{
bits
:=
math
.
Float64bits
(
float
)
bytes
:=
make
([]
byte
,
8
)
...
...
@@ -670,13 +664,13 @@ func Float64ToBytes(float float64) []byte {
return
bytes
}
//BytesToFloat64 byte转Float64
//
BytesToFloat64 byte转Float64
func
BytesToFloat64
(
bytes
[]
byte
)
float64
{
bits
:=
binary
.
LittleEndian
.
Uint64
(
bytes
)
return
math
.
Float64frombits
(
bits
)
}
//Float32ToBytes Float64转byte
//
Float32ToBytes Float64转byte
func
Float32ToBytes
(
float
float32
)
[]
byte
{
bits
:=
math
.
Float32bits
(
float
)
bytes
:=
make
([]
byte
,
4
)
...
...
@@ -684,7 +678,7 @@ func Float32ToBytes(float float32) []byte {
return
bytes
}
//BytesToFloat32 byte转Float64
//
BytesToFloat32 byte转Float64
func
BytesToFloat32
(
bytes
[]
byte
)
float32
{
bits
:=
binary
.
LittleEndian
.
Uint32
(
bytes
)
return
math
.
Float32frombits
(
bits
)
...
...
@@ -750,13 +744,13 @@ func ArrayIndexOf[T any](array []T, a interface{}) int {
return
-
1
}
//获取指针的指针的地址
//
获取指针的指针的地址
func
GetInstancePtr
(
ptr
uintptr
)
unsafe
.
Pointer
{
ptr
=
*
(
*
uintptr
)(
unsafe
.
Pointer
(
ptr
))
return
unsafe
.
Pointer
(
ptr
)
}
//GoroutineID 获取当前携程ID
//
GoroutineID 获取当前携程ID
func
GoroutineID
()
(
id
uint64
)
{
var
buf
[
30
]
byte
runtime
.
Stack
(
buf
[
:
],
false
)
...
...
c
ef/cef-proc-def_test
.go
→
c
ommon/imports/imports
.go
浏览文件 @
fab1c6b6
...
...
@@ -6,16 +6,32 @@
//
//----------------------------------------
package
cef
package
imports
import
(
"github.com/energye/golcl/lcl/api"
"github.com/energye/golcl/lcl/api/dllimports"
"testing"
)
func
TestProcDef
(
t
*
testing
.
T
)
{
for
i
,
impTab
:=
range
dllimports
.
GetEnergyImports
()
{
println
(
i
,
impTab
.
Name
())
}
var
(
//energy CEF 导入
energyImportDefs
[]
*
dllimports
.
ImportTable
//energy 扩展 LCL 导入
lclExtImportDefs
[]
*
dllimports
.
ImportTable
)
func
SetEnergyImportDefs
(
importDefs
[]
*
dllimports
.
ImportTable
)
{
energyImportDefs
=
importDefs
}
func
SetLClExtImportDefs
(
importDefs
[]
*
dllimports
.
ImportTable
)
{
lclExtImportDefs
=
importDefs
}
func
Proc
(
index
int
)
dllimports
.
ProcAddr
{
return
api
.
ImportDefFunc
(
energyImportDefs
,
index
)
}
func
ExtProc
(
index
int
)
dllimports
.
ProcAddr
{
return
api
.
ImportDefFunc
(
lclExtImportDefs
,
index
)
}
cef/lcl-energy
-extend.go
→
pkgs/ext/lcl
-extend.go
浏览文件 @
fab1c6b6
package
cef
//----------------------------------------
//
// Copyright © yanghy. All Rights Reserved.
//
// Licensed under GNU General Public License v3.0
//
//----------------------------------------
package
ext
import
(
"github.com/energye/energy/common"
"github.com/energye/energy/common/imports"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/api"
"github.com/energye/golcl/lcl/api/dllimports"
"github.com/energye/golcl/lcl/types"
"strings"
)
...
...
@@ -11,11 +21,11 @@ import (
type
ObjectPropertyType
int8
const
(
O
pt
Class
ObjectPropertyType
=
iota
O
pt
Method
O
pt
Set
O
pt
Enum
O
pt
Field
O
bjPropType
Class
ObjectPropertyType
=
iota
O
bjPropType
Method
O
bjPropType
Set
O
bjPropType
Enum
O
bjPropType
Field
)
type
ObjectProperty
struct
{
...
...
@@ -25,17 +35,36 @@ type ObjectProperty struct {
PropertyValue
string
}
func
init
()
{
var
lclExtImportDefs
=
[]
*
dllimports
.
ImportTable
{
//LCL Extend
dllimports
.
NewEnergyImport
(
"Ext_Panel_GetBevelColor"
,
0
),
dllimports
.
NewEnergyImport
(
"Ext_Panel_SetBevelColor"
,
0
),
dllimports
.
NewEnergyImport
(
"Ext_ReadStringProperty"
,
0
),
}
imports
.
SetLClExtImportDefs
(
lclExtImportDefs
)
}
const
(
//null nil
internale_null_nil
=
iota
//LCL Extend
internale_Ext_Panel_GetBevelColor
internale_Ext_Panel_SetBevelColor
internale_Ext_ReadStringProperty
)
func
PanelBevelColor
(
panel
*
lcl
.
TPanel
)
types
.
TColor
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_Ext_Panel_GetBevelColor
)
.
Call
(
panel
.
Instance
())
r1
,
_
,
_
:=
imports
.
Ext
Proc
(
internale_Ext_Panel_GetBevelColor
)
.
Call
(
panel
.
Instance
())
return
types
.
TColor
(
r1
)
}
func
SetPanelBevelColor
(
panel
*
lcl
.
TPanel
,
colors
types
.
TColor
)
{
common
.
Proc
(
internale_Ext_Panel_SetBevelColor
)
.
Call
(
panel
.
Instance
(),
uintptr
(
colors
))
imports
.
Ext
Proc
(
internale_Ext_Panel_SetBevelColor
)
.
Call
(
panel
.
Instance
(),
uintptr
(
colors
))
}
func
readObjectStringProperty
(
sender
lcl
.
IObject
)
string
{
r1
,
_
,
_
:=
common
.
Proc
(
internale_Ext_ReadStringProperty
)
.
Call
(
lcl
.
CheckPtr
(
sender
))
r1
,
_
,
_
:=
imports
.
Ext
Proc
(
internale_Ext_ReadStringProperty
)
.
Call
(
lcl
.
CheckPtr
(
sender
))
return
api
.
GoStr
(
r1
)
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录