https://github.com/janmalch/quickli
A small Kotlin program to create a custom tray program.
https://github.com/janmalch/quickli
Last synced: about 1 month ago
JSON representation
A small Kotlin program to create a custom tray program.
- Host: GitHub
- URL: https://github.com/janmalch/quickli
- Owner: JanMalch
- Created: 2018-10-30T07:21:58.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-05-20T20:54:11.000Z (about 3 years ago)
- Last Synced: 2023-03-02T04:32:28.374Z (over 2 years ago)
- Language: Kotlin
- Size: 28.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Quickli
A small Java (Kotlin) program to create a custom tray program.
Use at your own risk. Other people with access to your computer could change the commands to execute harmful actions.
This tool is still in development. It's easy to break if you want it to. Please only write valid JSON.## Install
Download latest `Quickli.jar` file from [releases](https://github.com/JanMalch/Quickli/releases), put it in your autostart (Win+R: `shell:startup`) and run it.
A new tray icon will appear, that helps you getting started.## Usage
All tray programs are configured via json files in `AppData\Roaming\Quickli`.
To create a tray icon you have to add a json file there. The schema looks like this:```
{
"label": "My first tray program",
"showDefaults": true, // adds "About" and "Edit Entries" buttons, defaults to true
"image": "my-icon.png", // has to be in `AppData\Roaming\Quickli\images`
"content": [], // the contents of your tray icon
"leftClick": , // optional, if not specified the content menu will open
}
```
##### Menu
```
{
"title": "My first menu entry",
"children": [], // optional
"command": "explorer.exe /n,C:\\Temp\\my_favorite_file.txt", // optional
"directory": "", // optional
"separator": false // optional, entry acts as a separator in the tray menu
}
```##### Command
```json
{
"command": "path/to/my.exe",
"directory": "path/to",
"envp": ["path optional env parameters"]
}
```## Examples
Example with nested menus and separators
```json
{
"label":"Quickli",
"content":[
{
"title":"Android Studio",
"command":"C:/Program Files/Android/Android Studio/bin/studio64.exe",
"directory":"C:/Program Files/Android/Android Studio/bin"
},
{
"title":"Shutdown in 1 hour",
"command":"shutdown -s -f -t 3600"
},
{
"separator":true
},
{
"title":"VMs",
"children":[
{
"title":"dataiku",
"command":"C:/Program Files/Oracle/VirtualBox/VBoxManage.exe startvm dataiku-dss-5.0.2",
"directory":"C:/Program Files/Oracle/VirtualBox"
},
{
"title": "This is disabled"
}
]
}
]
}
```---
Open a program with left click, but show the menu on right click.
```json
{
"label": "Android Studio",
"image": "Android_Studio_icon.png",
"showDefaults": false,
"leftClick": {
"command": "C:/Program Files/Android/Android Studio/bin/studio64.exe",
"directory": "C:/Program Files/Android/Android Studio/bin"
},
"content": [
{
"title": "Android Studio",
"command": "C:/Program Files/Android/Android Studio/bin/studio64.exe",
"directory": "C:/Program Files/Android/Android Studio/bin"
}
]
}
```---
You can create trays for programs that you wish had one:
```json
{
"label": "VirtualBox VMs",
"showDefaults": false,
"image": "VirtualBox-icon.png",
"content": [
{
"title": "VirtualBox",
"command": "C:/Program Files/Oracle/VirtualBox/VirtualBox.exe",
"directory": "C:/Program Files/Oracle/VirtualBox"
},
{
"separator": true
},
{
"title": "Kali Linux",
"command": "C:/Program Files/Oracle/VirtualBox/VBoxManage.exe startvm Kali-Linux-2018.4-vbox-amd64",
"directory": "C:/Program Files/Oracle/VirtualBox"
},
{
"title": "dataiku",
"command": "C:/Program Files/Oracle/VirtualBox/VBoxManage.exe startvm dataiku-dss-5.0.2",
"directory": "C:/Program Files/Oracle/VirtualBox"
}
]
}
```
