Devdocs reorganisation (#913)

* docs: split usage and dev docs

* # This is a combination of 2 commits.
# This is the 1st commit message:

docs: split usage and dev docs

# The commit message #2 will be skipped:

# fixup add docs

* docs: add runner documentation and move hooks documentation to devdocs

* docs: add stubs for modules technical description

* docs: add paragraph about event thread-safety

* docs: add 'Current modules' section header
This commit is contained in:
yuyoyuppe
2019-12-12 12:25:19 +03:00
committed by GitHub
parent c31262b97e
commit f385e46927
20 changed files with 432 additions and 348 deletions

View File

@@ -1,50 +0,0 @@
# PowerToys Runner
# Introduction
The PowerToys Runner contains the project for the PowerToys.exe executable.
It's responsible for:
- Loading the individual PowerToys modules.
- Passing registered events to the PowerToys.
- Showing a system tray icon to manage the PowerToys.
- Bridging between the PowerToys modules and the Settings editor.
![Image of the tray icon](/doc/images/runner/tray.png)
# Code organization
#### [`main.cpp`](./main.cpp)
Contains the executable starting point, initialization code and the list of known PowerToys.
#### [`powertoy_module.h`](./powertoy_module.h) and [`powertoy_module.cpp`](./powertoy_module.cpp)
Contains code for initializing and managing the PowerToy modules.
#### [`powertoys_events.cpp`](./powertoys_events.cpp)
Contains code that handles the various events listeners, and forwards those events to the PowerToys modules.
#### [`lowlevel_keyboard_event.cpp`](./lowlevel_keyboard_event.cpp)
Contains code for registering the low level keyboard event hook that listens for keyboard events.
#### [`win_hook_event.cpp`](./win_hook_event.cpp)
Contains code for registering a Windows event hook through `SetWinEventHook`, that listens for various events raised when a window is interacted with.
#### [`tray_icon.cpp`](./tray_icon.cpp)
Contains code for managing the PowerToys tray icon and its menu commands.
#### [`settings_window.cpp`](./settings_window.cpp)
Contains code for starting the PowerToys settings window and communicating with it.
#### [`general_settings.cpp`](./general_settings.cpp)
Contains code for loading, saving and applying the general setings.
#### [`auto_start_helper.cpp`](./auto_start_helper.cpp)
Contains helper code for registering and unregistering PowerToys to run when the user logs in.
#### [`unhandled_exception_handler.cpp`](./unhandled_exception_handler.cpp)
Contains helper code to get stack traces in builds. Can be used by adding a call to `init_global_error_handlers` in [`WinMain`](./main.cpp).
#### [`trace.cpp`](./trace.cpp)
Contains code for telemetry.
#### [`svgs`](./svgs/)
Contains the SVG assets used by the PowerToys modules.