Skip to content

Commit

Permalink
Trying table rather than sections
Browse files Browse the repository at this point in the history
  • Loading branch information
devleaks committed Jul 5, 2024
1 parent 6dbfb7a commit 82da1d6
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 36 deletions.
37 changes: 18 additions & 19 deletions docs/Button/Button Activation.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,15 @@ Any event can be handed over to the No Activation, since it will not be used.

## State Values

In spite of having no activation, the button maintain an internal state.

- `activation_count`
- `last_activated`
- `initial_value`
- `previous_value`
- `current_value`
- `guarded`
- `managed`
| State Variable | Value |
| ------------------ | ------------------------------------------------------------------------------------------------------------- |
| `activation_count` | Number of time button was activated |
| `last_activated` | Time stamp of last activation |
| `initial_value` | Initial value in configuration (if any) |
| `current_value` | Button current value |
| `previous_value` | Button previous value before change |
| `guarded` | Whether button has a guard on top of it |
| `managed` | Whether button has *managed* mode (specific to some cockpits, which means there are alternate display values) |

# Page

Expand All @@ -52,21 +52,20 @@ When the button is pressed, a deck will load a page of buttons.

## Attributes

`page`

Mandatory. Name of the page to load. The page must be in the Layout of the target deck.

`remote_deck`

Optional. If present, will load the page on the target deck.
| Attribute | Meaning |
| ------------- | --------------------------------------------------------------------------------------- |
| `page` | Mandatory. Name of the page to load. The page must be in the Layout of the target deck. |
| `remote_deck` | Optional. If present, will load the page on the target deck. |

## Events

PushEvent and PressEvent can trigger the Page activation.
`PushEvent` and `PressEvent` can trigger the Page activation.

## State Values

`page`: page that is currently displayed.
| Attribute | Meaning |
| --------- | -------------------------------- |
| `page` | page that is currently displayed |

# Push

Expand All @@ -87,7 +86,7 @@ Mandatory. X-Plane command that is executed each time the button is pressed.
## Events

PushEvent. Please note that PushEvent consists of 2 distinct events, a pressed event, and a release event, when the button is pressed or released respectively.
PushEvent. Please note that PushEvent consists of 2 distinct events, a pressed event (PushEvent with pressed = True), and a release event (PushEvent with pressed = False), when the button is pressed or released respectively.

## Options

Expand Down
10 changes: 5 additions & 5 deletions docs/Button/Button Value.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,17 +43,17 @@ All datarefs that starts with a special key word are *NOT* forwarded to X-Plane

When a button emit an internal dataref, it's definition mention it clearly so that it can be used by other buttons.

The current default prefix for internal datarefs is `data:`.

```yaml
set-dateref: Cockpitdecks/my-local-variable
set-dataref: data:my-local-variable

# in the same or another button, it can be used like so:

formula: ${Cockpitdecks/my-local-variable}
formula: ${data:my-local-variable}
```
In the above example, the prefix `Cockpitdecks/` denotes internal datarefs.

The current default prefix for internal datarefs is `data:`.
In the above example, the prefix `data:` denotes internal datarefs.

Internal datarefs can be used as inter-button communication, to set a value in one button, and use or read it in another one.

Expand Down
25 changes: 13 additions & 12 deletions docs/Extending/Internals/To do.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# General , Architecture

Isolate a framework that register and observe datarefs, make a better tool than NASA connector.

Evolve towards a XPPython UDP library.
Expand All @@ -6,14 +8,8 @@ When dataref(s) meet conditions, events are triggered.

Usable for observation, data collection, even « co-pilot » type of interaction: if this then that.

Make a350/a380 type tick marks on rotating knobs. LED around knob

Make a icon-builder app (electron?) very much like TouchPortal... So don't do it.

### Large displays

Gently pressing on a part of the display triggers FCU mode changes like Speed/Mach, Heading/Track, or even knobs push/pull (with long press). May be vertical swipes will increase/decrease values.

# Dashboard

Create a page with dashboard-like icons:
Expand Down Expand Up @@ -48,7 +44,7 @@ Idea: Make Streamdeck+ touchscreen either 4 x (200x100) buttons with icon, or 8

Suppress options: ?

Trigger push event on PRESS not on RELEASE (or add an option to force it)
Trigger push event on PRESS not on RELEASE (or add an option to force it) **DOCUMENT!**

This is because PRESS event have no release event.

Expand All @@ -58,13 +54,18 @@ Check aircraft changed event (based on acf_ICAO?)

Example ramp on side of LoupedeckLive or on touchscreen of sd+.

Tape like display (rose, speed, vertical, horizontal)

First make tape, the simple translate+clip.

# Redo, refactor
Simple gauges

Make a350/a380 type tick marks on rotating knobs. LED around knob

On startup, load & cache icons as found
# Documentation

DO NOT cache icon resized for deck
For activation/representation attributes, make table rather than subsections.

Same for activation statuses.

Make clever resize based on icon defs in deck_type, resize icon on the fly.
I.e. redo a generic pil_helper and get rid of deck-specific pil_helpers.
Add button/activation class attribute can be button status variables.

0 comments on commit 82da1d6

Please sign in to comment.