Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Xavie_
Cef
提交
8e7b8558
C
Cef
项目概览
Xavie_
/
Cef
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Cef
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
8e7b8558
编写于
12月 11, 2018
作者:
R
Richard Wilkes
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Allow delegates to be nil
上级
882a2e0b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
58 addition
and
12 deletion
+58
-12
cef/functions_gen.go
cef/functions_gen.go
+40
-8
internal/cefgen/funcdef.go
internal/cefgen/funcdef.go
+18
-4
未找到文件。
cef/functions_gen.go
浏览文件 @
8e7b8558
...
@@ -106,7 +106,11 @@ func BrowserViewCreate(client *Client, url string, settings *BrowserSettings, re
...
@@ -106,7 +106,11 @@ func BrowserViewCreate(client *Client, url string, settings *BrowserSettings, re
defer
func
()
{
defer
func
()
{
C
.
cef_string_userfree_free
(
url_
)
C
.
cef_string_userfree_free
(
url_
)
}()
}()
return
(
*
BrowserView
)(
C
.
cef_browser_view_create
(
client
.
toNative
(),
(
*
C
.
cef_string_t
)(
url_
),
settings
.
toNative
(
&
C
.
cef_browser_settings_t
{}),
request_context
.
toNative
(),
delegate
.
toNative
()))
var
delegate_
*
C
.
cef_browser_view_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
return
(
*
BrowserView
)(
C
.
cef_browser_view_create
(
client
.
toNative
(),
(
*
C
.
cef_string_t
)(
url_
),
settings
.
toNative
(
&
C
.
cef_browser_settings_t
{}),
request_context
.
toNative
(),
delegate_
))
}
}
// BrowserViewGetForBrowser (cef_browser_view_get_for_browser from include/capi/views/cef_browser_view_capi.h)
// BrowserViewGetForBrowser (cef_browser_view_get_for_browser from include/capi/views/cef_browser_view_capi.h)
...
@@ -338,12 +342,16 @@ func IsWebPluginUnstable(path string, callback *WebPluginUnstableCallback) {
...
@@ -338,12 +342,16 @@ func IsWebPluginUnstable(path string, callback *WebPluginUnstableCallback) {
// have a visible frame on hover/press, left alignment, less padding and no
// have a visible frame on hover/press, left alignment, less padding and no
// default minimum size.
// default minimum size.
func
LabelButtonCreate
(
delegate
*
ButtonDelegate
,
text
string
,
with_frame
int32
)
*
LabelButton
{
func
LabelButtonCreate
(
delegate
*
ButtonDelegate
,
text
string
,
with_frame
int32
)
*
LabelButton
{
var
delegate_
*
C
.
cef_button_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
text_
:=
C
.
cef_string_userfree_alloc
()
text_
:=
C
.
cef_string_userfree_alloc
()
setCEFStr
(
text
,
text_
)
setCEFStr
(
text
,
text_
)
defer
func
()
{
defer
func
()
{
C
.
cef_string_userfree_free
(
text_
)
C
.
cef_string_userfree_free
(
text_
)
}()
}()
return
(
*
LabelButton
)(
C
.
cef_label_button_create
(
delegate
.
toNative
()
,
(
*
C
.
cef_string_t
)(
text_
),
C
.
int
(
with_frame
)))
return
(
*
LabelButton
)(
C
.
cef_label_button_create
(
delegate
_
,
(
*
C
.
cef_string_t
)(
text_
),
C
.
int
(
with_frame
)))
}
}
// ListValueCreate (cef_list_value_create from include/capi/cef_values_capi.h)
// ListValueCreate (cef_list_value_create from include/capi/cef_values_capi.h)
...
@@ -362,24 +370,36 @@ func ListValueCreate() *ListValue {
...
@@ -362,24 +370,36 @@ func ListValueCreate() *ListValue {
// and no default minimum size. If |with_menu_marker| is true (1) a menu marker
// and no default minimum size. If |with_menu_marker| is true (1) a menu marker
// will be added to the button.
// will be added to the button.
func
MenuButtonCreate
(
delegate
*
MenuButtonDelegate
,
text
string
,
with_frame
,
with_menu_marker
int32
)
*
MenuButton
{
func
MenuButtonCreate
(
delegate
*
MenuButtonDelegate
,
text
string
,
with_frame
,
with_menu_marker
int32
)
*
MenuButton
{
var
delegate_
*
C
.
cef_menu_button_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
text_
:=
C
.
cef_string_userfree_alloc
()
text_
:=
C
.
cef_string_userfree_alloc
()
setCEFStr
(
text
,
text_
)
setCEFStr
(
text
,
text_
)
defer
func
()
{
defer
func
()
{
C
.
cef_string_userfree_free
(
text_
)
C
.
cef_string_userfree_free
(
text_
)
}()
}()
return
(
*
MenuButton
)(
C
.
cef_menu_button_create
(
delegate
.
toNative
()
,
(
*
C
.
cef_string_t
)(
text_
),
C
.
int
(
with_frame
),
C
.
int
(
with_menu_marker
)))
return
(
*
MenuButton
)(
C
.
cef_menu_button_create
(
delegate
_
,
(
*
C
.
cef_string_t
)(
text_
),
C
.
int
(
with_frame
),
C
.
int
(
with_menu_marker
)))
}
}
// MenuModelCreate (cef_menu_model_create from include/capi/cef_menu_model_capi.h)
// MenuModelCreate (cef_menu_model_create from include/capi/cef_menu_model_capi.h)
// Create a new MenuModel with the specified |delegate|.
// Create a new MenuModel with the specified |delegate|.
func
MenuModelCreate
(
delegate
*
MenuModelDelegate
)
*
MenuModel
{
func
MenuModelCreate
(
delegate
*
MenuModelDelegate
)
*
MenuModel
{
return
(
*
MenuModel
)(
C
.
cef_menu_model_create
(
delegate
.
toNative
()))
var
delegate_
*
C
.
cef_menu_model_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
return
(
*
MenuModel
)(
C
.
cef_menu_model_create
(
delegate_
))
}
}
// PanelCreate (cef_panel_create from include/capi/views/cef_panel_capi.h)
// PanelCreate (cef_panel_create from include/capi/views/cef_panel_capi.h)
// Create a new Panel.
// Create a new Panel.
func
PanelCreate
(
delegate
*
PanelDelegate
)
*
Panel
{
func
PanelCreate
(
delegate
*
PanelDelegate
)
*
Panel
{
return
(
*
Panel
)(
C
.
cef_panel_create
(
delegate
.
toNative
(
&
C
.
cef_panel_delegate_t
{})))
var
delegate_
*
C
.
cef_panel_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
(
&
C
.
cef_panel_delegate_t
{})
}
return
(
*
Panel
)(
C
.
cef_panel_create
(
delegate_
))
}
}
// PostDataCreate (cef_post_data_create from include/capi/cef_request_capi.h)
// PostDataCreate (cef_post_data_create from include/capi/cef_request_capi.h)
...
@@ -668,7 +688,11 @@ func RunMessageLoop() {
...
@@ -668,7 +688,11 @@ func RunMessageLoop() {
// ScrollViewCreate (cef_scroll_view_create from include/capi/views/cef_scroll_view_capi.h)
// ScrollViewCreate (cef_scroll_view_create from include/capi/views/cef_scroll_view_capi.h)
// Create a new ScrollView.
// Create a new ScrollView.
func
ScrollViewCreate
(
delegate
*
ViewDelegate
)
*
ScrollView
{
func
ScrollViewCreate
(
delegate
*
ViewDelegate
)
*
ScrollView
{
return
(
*
ScrollView
)(
C
.
cef_scroll_view_create
(
delegate
.
toNative
()))
var
delegate_
*
C
.
cef_view_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
return
(
*
ScrollView
)(
C
.
cef_scroll_view_create
(
delegate_
))
}
}
// ServerCreate (cef_server_create from include/capi/cef_server_capi.h)
// ServerCreate (cef_server_create from include/capi/cef_server_capi.h)
...
@@ -991,7 +1015,11 @@ func TaskRunnerGetForThread(threadId ThreadID) *TaskRunner {
...
@@ -991,7 +1015,11 @@ func TaskRunnerGetForThread(threadId ThreadID) *TaskRunner {
// TextfieldCreate (cef_textfield_create from include/capi/views/cef_textfield_capi.h)
// TextfieldCreate (cef_textfield_create from include/capi/views/cef_textfield_capi.h)
// Create a new Textfield.
// Create a new Textfield.
func
TextfieldCreate
(
delegate
*
TextfieldDelegate
)
*
Textfield
{
func
TextfieldCreate
(
delegate
*
TextfieldDelegate
)
*
Textfield
{
return
(
*
Textfield
)(
C
.
cef_textfield_create
(
delegate
.
toNative
()))
var
delegate_
*
C
.
cef_textfield_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
return
(
*
Textfield
)(
C
.
cef_textfield_create
(
delegate_
))
}
}
// TimeDelta (cef_time_delta from include/internal/cef_time.h)
// TimeDelta (cef_time_delta from include/internal/cef_time.h)
...
@@ -1220,5 +1248,9 @@ func WaitableEventCreate(automatic_reset, initially_signaled int32) *WaitableEve
...
@@ -1220,5 +1248,9 @@ func WaitableEventCreate(automatic_reset, initially_signaled int32) *WaitableEve
// WindowCreateTopLevel (cef_window_create_top_level from include/capi/views/cef_window_capi.h)
// WindowCreateTopLevel (cef_window_create_top_level from include/capi/views/cef_window_capi.h)
// Create a new Window.
// Create a new Window.
func
WindowCreateTopLevel
(
delegate
*
WindowDelegate
)
*
Window
{
func
WindowCreateTopLevel
(
delegate
*
WindowDelegate
)
*
Window
{
return
(
*
Window
)(
C
.
cef_window_create_top_level
(
delegate
.
toNative
()))
var
delegate_
*
C
.
cef_window_delegate_t
if
delegate
!=
nil
{
delegate_
=
delegate
.
toNative
()
}
return
(
*
Window
)(
C
.
cef_window_create_top_level
(
delegate_
))
}
}
internal/cefgen/funcdef.go
浏览文件 @
8e7b8558
...
@@ -95,6 +95,16 @@ for i, one := range %[1]s {
...
@@ -95,6 +95,16 @@ for i, one := range %[1]s {
if
_
,
exists
:=
edefsMap
[
p
.
BaseType
];
exists
{
if
_
,
exists
:=
edefsMap
[
p
.
BaseType
];
exists
{
names
[
i
]
=
p
.
Name
+
"_"
names
[
i
]
=
p
.
Name
+
"_"
fmt
.
Fprintf
(
&
buffer
,
"%[1]s_ := C.%[2]s(*%[1]s)
\n
"
,
p
.
Name
,
p
.
BaseType
)
fmt
.
Fprintf
(
&
buffer
,
"%[1]s_ := C.%[2]s(*%[1]s)
\n
"
,
p
.
Name
,
p
.
BaseType
)
}
else
if
p
.
Name
==
"delegate"
{
names
[
i
]
=
p
.
Name
+
"_"
fmt
.
Fprintf
(
&
buffer
,
"var delegate_ %sC.%s
\n
"
,
p
.
Ptrs
,
p
.
BaseType
)
buffer
.
WriteString
(
"if delegate != nil {
\n
"
)
buffer
.
WriteString
(
"delegate_ = delegate.toNative("
)
if
sdef
,
exists
:=
sdefsMap
[
p
.
BaseType
];
exists
&&
!
sdef
.
isClassEquivalent
()
{
fmt
.
Fprintf
(
&
buffer
,
"&C.%s{}"
,
p
.
BaseType
)
}
buffer
.
WriteString
(
")
\n
"
)
buffer
.
WriteString
(
"}
\n
"
)
}
}
}
}
}
}
...
@@ -156,11 +166,15 @@ func emitParamsForCCall(buffer *strings.Builder, vars []*variable, names []strin
...
@@ -156,11 +166,15 @@ func emitParamsForCCall(buffer *strings.Builder, vars []*variable, names []strin
if
len
(
p
.
Ptrs
)
>
1
{
if
len
(
p
.
Ptrs
)
>
1
{
fmt
.
Fprintf
(
buffer
,
"&%s"
,
names
[
i
])
fmt
.
Fprintf
(
buffer
,
"&%s"
,
names
[
i
])
}
else
{
}
else
{
fmt
.
Fprintf
(
buffer
,
"%s.toNative("
,
names
[
i
])
if
names
[
i
]
==
"delegate_"
{
if
!
sdef
.
isClassEquivalent
()
{
buffer
.
WriteString
(
"delegate_"
)
fmt
.
Fprintf
(
buffer
,
"&C.%s{}"
,
p
.
BaseType
)
}
else
{
fmt
.
Fprintf
(
buffer
,
"%s.toNative("
,
names
[
i
])
if
!
sdef
.
isClassEquivalent
()
{
fmt
.
Fprintf
(
buffer
,
"&C.%s{}"
,
p
.
BaseType
)
}
buffer
.
WriteString
(
")"
)
}
}
buffer
.
WriteString
(
")"
)
}
}
}
else
if
len
(
p
.
Ptrs
)
>
0
{
}
else
if
len
(
p
.
Ptrs
)
>
0
{
fmt
.
Fprintf
(
buffer
,
"(%sC.%s)(%s)"
,
p
.
Ptrs
,
p
.
BaseType
,
names
[
i
])
fmt
.
Fprintf
(
buffer
,
"(%sC.%s)(%s)"
,
p
.
Ptrs
,
p
.
BaseType
,
names
[
i
])
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录