github.com/secoba/wails/v2@v2.6.4/internal/frontend/desktop/windows/winc/controller.go (about)

     1  //go:build windows
     2  
     3  /*
     4   * Copyright (C) 2019 The Winc Authors. All Rights Reserved.
     5   * Copyright (C) 2010-2013 Allen Dang. All Rights Reserved.
     6   */
     7  
     8  package winc
     9  
    10  import (
    11  	"github.com/secoba/wails/v2/internal/frontend/desktop/windows/winc/w32"
    12  )
    13  
    14  type Controller interface {
    15  	Text() string
    16  
    17  	Enabled() bool
    18  	SetFocus()
    19  
    20  	Handle() w32.HWND
    21  	Invalidate(erase bool)
    22  	Parent() Controller
    23  
    24  	Pos() (x, y int)
    25  	Size() (w, h int)
    26  	Height() int
    27  	Width() int
    28  	Visible() bool
    29  	Bounds() *Rect
    30  	ClientRect() *Rect
    31  
    32  	SetText(s string)
    33  	SetEnabled(b bool)
    34  	SetPos(x, y int)
    35  	SetSize(w, h int)
    36  	EnableDragAcceptFiles(b bool)
    37  	Show()
    38  	Hide()
    39  
    40  	ContextMenu() *MenuItem
    41  	SetContextMenu(menu *MenuItem)
    42  
    43  	Font() *Font
    44  	SetFont(font *Font)
    45  	InvokeRequired() bool
    46  	Invoke(func())
    47  	PreTranslateMessage(msg *w32.MSG) bool
    48  	WndProc(msg uint32, wparam, lparam uintptr) uintptr
    49  
    50  	//General events
    51  	OnCreate() *EventManager
    52  	OnClose() *EventManager
    53  
    54  	// Focus events
    55  	OnKillFocus() *EventManager
    56  	OnSetFocus() *EventManager
    57  
    58  	//Drag and drop events
    59  	OnDropFiles() *EventManager
    60  
    61  	//Mouse events
    62  	OnLBDown() *EventManager
    63  	OnLBUp() *EventManager
    64  	OnLBDbl() *EventManager
    65  	OnMBDown() *EventManager
    66  	OnMBUp() *EventManager
    67  	OnRBDown() *EventManager
    68  	OnRBUp() *EventManager
    69  	OnRBDbl() *EventManager
    70  	OnMouseMove() *EventManager
    71  
    72  	// OnMouseLeave and OnMouseHover does not fire unless control called internalTrackMouseEvent.
    73  	// Use MouseControl for a how to example.
    74  	OnMouseHover() *EventManager
    75  	OnMouseLeave() *EventManager
    76  
    77  	//Keyboard events
    78  	OnKeyUp() *EventManager
    79  
    80  	//Paint events
    81  	OnPaint() *EventManager
    82  	OnSize() *EventManager
    83  
    84  	invokeCallbacks()
    85  }