github.com/daidehu6831/wails/v2@v2.2.0/pkg/menu/menuroles.go (about)

     1  // Package menu provides all the functions and structs related to menus in a Wails application.
     2  // Heavily inspired by Electron (c) 2013-2020 Github Inc.
     3  // Electron License: https://github.com/electron/electron/blob/master/LICENSE
     4  package menu
     5  
     6  // Role is a type to identify menu roles
     7  type Role int
     8  
     9  // These constants need to be kept in sync with `v2/internal/frontend/desktop/darwin/Role.h`
    10  const (
    11  	AppMenuRole  Role = 1
    12  	EditMenuRole      = 2
    13  	//AboutRole              Role = "about"
    14  	//UndoRole               Role = "undo"
    15  	//RedoRole               Role = "redo"
    16  	//CutRole                Role = "cut"
    17  	//CopyRole               Role = "copy"
    18  	//PasteRole              Role = "paste"
    19  	//PasteAndMatchStyleRole Role = "pasteAndMatchStyle"
    20  	//SelectAllRole          Role = "selectAll"
    21  	//DeleteRole             Role = "delete"
    22  	//MinimizeRole           Role = "minimize"
    23  	//QuitRole               Role = "quit"
    24  	//TogglefullscreenRole   Role = "togglefullscreen"
    25  	//FileMenuRole           Role = "fileMenu"
    26  	//ViewMenuRole           Role = "viewMenu"
    27  	//WindowMenuRole         Role = "windowMenu"
    28  	//HideRole               Role = "hide"
    29  	//HideOthersRole         Role = "hideOthers"
    30  	//UnhideRole             Role = "unhide"
    31  	//FrontRole              Role = "front"
    32  	//ZoomRole               Role = "zoom"
    33  	//WindowSubMenuRole      Role = "windowSubMenu"
    34  	//HelpSubMenuRole        Role = "helpSubMenu"
    35  	//SeparatorItemRole      Role = "separatorItem"
    36  )
    37  
    38  /*
    39  // About provides a MenuItem with the About role
    40  func About() *MenuItem {
    41  	return &MenuItem{
    42  		Role: AboutRole,
    43  	}
    44  }
    45  
    46  // Undo provides a MenuItem with the Undo role
    47  func Undo() *MenuItem {
    48  	return &MenuItem{
    49  		Role: UndoRole,
    50  	}
    51  }
    52  
    53  // Redo provides a MenuItem with the Redo role
    54  func Redo() *MenuItem {
    55  	return &MenuItem{
    56  		Role: RedoRole,
    57  	}
    58  }
    59  
    60  // Cut provides a MenuItem with the Cut role
    61  func Cut() *MenuItem {
    62  	return &MenuItem{
    63  		Role: CutRole,
    64  	}
    65  }
    66  
    67  // Copy provides a MenuItem with the Copy role
    68  func Copy() *MenuItem {
    69  	return &MenuItem{
    70  		Role: CopyRole,
    71  	}
    72  }
    73  
    74  // Paste provides a MenuItem with the Paste role
    75  func Paste() *MenuItem {
    76  	return &MenuItem{
    77  		Role: PasteRole,
    78  	}
    79  }
    80  
    81  // PasteAndMatchStyle provides a MenuItem with the PasteAndMatchStyle role
    82  func PasteAndMatchStyle() *MenuItem {
    83  	return &MenuItem{
    84  		Role: PasteAndMatchStyleRole,
    85  	}
    86  }
    87  
    88  // SelectAll provides a MenuItem with the SelectAll role
    89  func SelectAll() *MenuItem {
    90  	return &MenuItem{
    91  		Role: SelectAllRole,
    92  	}
    93  }
    94  
    95  // Delete provides a MenuItem with the Delete role
    96  func Delete() *MenuItem {
    97  	return &MenuItem{
    98  		Role: DeleteRole,
    99  	}
   100  }
   101  
   102  // Minimize provides a MenuItem with the Minimize role
   103  func Minimize() *MenuItem {
   104  	return &MenuItem{
   105  		Role: MinimizeRole,
   106  	}
   107  }
   108  
   109  // Quit provides a MenuItem with the Quit role
   110  func Quit() *MenuItem {
   111  	return &MenuItem{
   112  		Role: QuitRole,
   113  	}
   114  }
   115  
   116  // ToggleFullscreen provides a MenuItem with the ToggleFullscreen role
   117  func ToggleFullscreen() *MenuItem {
   118  	return &MenuItem{
   119  		Role: TogglefullscreenRole,
   120  	}
   121  }
   122  
   123  // FileMenu provides a MenuItem with the whole default "File" menu (Close / Quit)
   124  func FileMenu() *MenuItem {
   125  	return &MenuItem{
   126  		Role: FileMenuRole,
   127  	}
   128  }
   129  */
   130  
   131  // EditMenu provides a MenuItem with the whole default "Edit" menu (Undo, Copy, etc.).
   132  func EditMenu() *MenuItem {
   133  	return &MenuItem{
   134  		Role: EditMenuRole,
   135  	}
   136  }
   137  
   138  /*
   139  // ViewMenu provides a MenuItem with the whole default "View" menu (Reload, Toggle Developer Tools, etc.)
   140  func ViewMenu() *MenuItem {
   141  	return &MenuItem{
   142  		Role: ViewMenuRole,
   143  	}
   144  }
   145  
   146  // WindowMenu provides a MenuItem with the whole default "Window" menu (Minimize, Zoom, etc.).
   147  func WindowMenu() *MenuItem {
   148  	return &MenuItem{
   149  		Role: WindowMenuRole,
   150  	}
   151  }
   152  */
   153  // These roles are Mac only
   154  
   155  // AppMenu provides a MenuItem with the whole default "App" menu (About, Services, etc.)
   156  func AppMenu() *MenuItem {
   157  	return &MenuItem{
   158  		Role: AppMenuRole,
   159  	}
   160  }
   161  
   162  /*
   163  // Hide provides a MenuItem that maps to the hide action.
   164  func Hide() *MenuItem {
   165  	return &MenuItem{
   166  		Role: HideRole,
   167  	}
   168  }
   169  
   170  // HideOthers provides a MenuItem that maps to the hideOtherApplications action.
   171  func HideOthers() *MenuItem {
   172  	return &MenuItem{
   173  		Role: HideOthersRole,
   174  	}
   175  }
   176  
   177  // UnHide provides a MenuItem that maps to the unHideAllApplications action.
   178  func UnHide() *MenuItem {
   179  	return &MenuItem{
   180  		Role: UnhideRole,
   181  	}
   182  }
   183  
   184  // Front provides a MenuItem that maps to the arrangeInFront action.
   185  func Front() *MenuItem {
   186  	return &MenuItem{
   187  		Role: FrontRole,
   188  	}
   189  }
   190  
   191  // Zoom provides a MenuItem that maps to the performZoom action.
   192  func Zoom() *MenuItem {
   193  	return &MenuItem{
   194  		Role: ZoomRole,
   195  	}
   196  }
   197  
   198  // WindowSubMenu provides a MenuItem with the "Window" submenu.
   199  func WindowSubMenu() *MenuItem {
   200  	return &MenuItem{
   201  		Role: WindowSubMenuRole,
   202  	}
   203  }
   204  
   205  // HelpSubMenu provides a MenuItem with the "Help" submenu.
   206  func HelpSubMenu() *MenuItem {
   207  	return &MenuItem{
   208  		Role: HelpSubMenuRole,
   209  	}
   210  }
   211  */