99 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# qb-menu
 | 
						|
Menu System for the QBCore Framework
 | 
						|
 | 
						|
This is a modified version of **[NH Context](https://forum.cfx.re/t/no-longer-supported-standalone-nerohiro-s-context-menu-dynamic-event-firing-menu/2564083)** by **[NeroHiro](https://github.com/nerohiro)**
 | 
						|
 | 
						|
## Menu Item
 | 
						|
 | 
						|
| Param | Description | Type | Default value |
 | 
						|
| ----- | ----------- | ---- | ------- |
 | 
						|
| header| The item title | string | No default |
 | 
						|
| txt? | The item description | string | "" |
 | 
						|
| isMenuHeader? | Whether the item is the header of the menu | boolean | false |
 | 
						|
| disabled? | Whether the item is clickable | boolean | false |
 | 
						|
| params | The options of the menu | table | No default |
 | 
						|
| params.event | Event name, command or function | string \| function | "" |
 | 
						|
| params.isAction? | Whether the event is a function | boolean | false |
 | 
						|
| params.isServer? | Whether the event is the name of a server event | boolean | false |
 | 
						|
| params.isCommand? | Whether the event is the name of command | boolean | false |
 | 
						|
| params.isQBCommand? | Whether the event is the name of a qbcore command | boolean | false |
 | 
						|
| params.args? | Arguments for the events/commans/function | table | nil |
 | 
						|
 | 
						|
 | 
						|
# Examples
 | 
						|
 | 
						|
```LUA
 | 
						|
RegisterCommand("qbmenutest", function(source, args, raw)
 | 
						|
    exports["qb-menu"]:openMenu({
 | 
						|
        {
 | 
						|
            header = "Main Title",
 | 
						|
            isMenuHeader = true, -- Set to true to make a nonclickable title
 | 
						|
        },
 | 
						|
        {
 | 
						|
            header = "Sub Menu Button",
 | 
						|
            txt = "This goes to a sub menu",
 | 
						|
            params = {
 | 
						|
                event = "qb-menu:client:testMenu2",
 | 
						|
                args = {
 | 
						|
                    number = 1,
 | 
						|
                }
 | 
						|
            }
 | 
						|
        },
 | 
						|
        {
 | 
						|
            header = "Sub Menu Button",
 | 
						|
            txt = "This goes to a sub menu",
 | 
						|
            disabled = true,
 | 
						|
            -- hidden = true, -- doesnt create this at all if set to true
 | 
						|
            params = {
 | 
						|
                event = "qb-menu:client:testMenu2",
 | 
						|
                args = {
 | 
						|
                    number = 1,
 | 
						|
                }
 | 
						|
            }
 | 
						|
        },
 | 
						|
    })
 | 
						|
end)
 | 
						|
```
 | 
						|
```LUA
 | 
						|
RegisterNetEvent('qb-menu:client:testMenu2', function(data)
 | 
						|
    local number = data.number
 | 
						|
    exports["qb-menu"]:openMenu({
 | 
						|
        {
 | 
						|
            header = "< Go Back",
 | 
						|
        },
 | 
						|
        {
 | 
						|
            header = "Number: "..number,
 | 
						|
            txt = "Other",
 | 
						|
            params = {
 | 
						|
                event = "qb-menu:client:testButton",
 | 
						|
                args = {
 | 
						|
                    message = "This was called by clicking this button"
 | 
						|
                }
 | 
						|
            }
 | 
						|
        },
 | 
						|
    })
 | 
						|
end)
 | 
						|
```
 | 
						|
```LUA
 | 
						|
RegisterNetEvent('qb-menu:client:testButton', function(data)
 | 
						|
    TriggerEvent('QBCore:Notify', data.message)
 | 
						|
end)
 | 
						|
```
 | 
						|
 | 
						|
# License
 | 
						|
 | 
						|
    QBCore Framework
 | 
						|
    Copyright (C) 2021 Joshua Eger
 | 
						|
 | 
						|
    This program is free software: you can redistribute it and/or modify
 | 
						|
    it under the terms of the GNU General Public License as published by
 | 
						|
    the Free Software Foundation, either version 3 of the License, or
 | 
						|
    (at your option) any later version.
 | 
						|
 | 
						|
    This program is distributed in the hope that it will be useful,
 | 
						|
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
						|
    GNU General Public License for more details.
 | 
						|
 | 
						|
    You should have received a copy of the GNU General Public License
 | 
						|
    along with this program.  If not, see <https://www.gnu.org/licenses/>
 |