You can customize the application context menu and add custom entries to it.
To get started, create a folder called .tinkerwell
in the application directory where you want to customize the context menu.
Then you can create a new file called CustomTinkerwellDriver.php
.
This is how the default content could look like:
use Tinkerwell\ContextMenu\SetCode;
use Tinkerwell\ContextMenu\Separator;
class CustomTinkerwellDriver extends LaravelTinkerwellDriver
{
public function contextMenu()
{
return array_merge(parent::contextMenu(), [
Separator::create(),
SetCode::create('My custom entry', <<<'code'
// Hello from Tinkerwell!
// This code will be preselected when you choose this context menu entry
code),
]);
}
}
Depending on which framework/application your app is based on, you will need to extend the correct Tinkerwell driver. You can find a list of all available Tinkerwell drivers on GitHub.
A separator in the context menu.
Separator::create();
A simple label that displays textual information in the context menu:
Label::create('This is the label text');
The OpenURL
class can be used to open a specific URL in the browser, once the user clicks on it.
OpenURL::create('Documentation', 'https://tinkerwell.app');
The SetCode
class can be used to automatically pre-fill the Tinkerwell code area with specific code snippets. The code will not automatically be executed.
SetCode::create('Hello World', 'echo "Hello world";');
Last but not least you can group multiple context items into a Submenu
.
Submenu::create('This is a submenu', [
Label::create('Entry 1'),
Label::create('Entry 2'),
Label::create('Entry 3')
]);