diff options
Diffstat (limited to '')
-rw-r--r-- | ui/syntax/syntaxedit.go | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/ui/syntax/syntaxedit.go b/ui/syntax/syntaxedit.go index 5598d7a8..67e132c4 100644 --- a/ui/syntax/syntaxedit.go +++ b/ui/syntax/syntaxedit.go @@ -20,10 +20,17 @@ import "C" type SyntaxEdit struct { walk.WidgetBase - textChangedPublisher walk.EventPublisher - privateKeyPublisher walk.StringEventPublisher + textChangedPublisher walk.EventPublisher + privateKeyPublisher walk.StringEventPublisher + blockUntunneledTrafficPublisher walk.IntEventPublisher } +const ( + InevaluableBlockingUntunneledTraffic = C.InevaluableBlockingUntunneledTraffic + BlockingUntunneledTraffic = C.BlockingUntunneledTraffic + NotBlockingUntunneledTraffic = C.NotBlockingUntunneledTraffic +) + func (se *SyntaxEdit) LayoutFlags() walk.LayoutFlags { return walk.GrowableHorz | walk.GrowableVert | walk.GreedyHorz | walk.GreedyVert } @@ -63,6 +70,10 @@ func (se *SyntaxEdit) PrivateKeyChanged() *walk.StringEvent { return se.privateKeyPublisher.Event() } +func (se *SyntaxEdit) BlockUntunneledTrafficStateChanged() *walk.IntEvent { + return se.blockUntunneledTrafficPublisher.Event() +} + func (se *SyntaxEdit) WndProc(hwnd win.HWND, msg uint32, wParam, lParam uintptr) uintptr { switch msg { case win.WM_NOTIFY, win.WM_COMMAND: @@ -78,6 +89,8 @@ func (se *SyntaxEdit) WndProc(hwnd win.HWND, msg uint32, wParam, lParam uintptr) } else { se.privateKeyPublisher.Publish(C.GoString((*C.char)(unsafe.Pointer(lParam)))) } + case C.SE_TRAFFIC_BLOCK: + se.blockUntunneledTrafficPublisher.Publish(int(lParam)) } return se.WidgetBase.WndProc(hwnd, msg, wParam, lParam) } |