the control panel's widgets over JUCE: each one takes the value it edits and a listener, writes the device's desc back on a change and follows the desc when something else changes it - so a panel is composed of these, never of event handling of its own
More...
|
| class | box |
| | a drop down whose items are either ids or their text, depending on what the edited value is More...
|
| class | button |
| | a button, toggling where a listener is given More...
|
| class | changed |
| | a change without a promoted of its own, told to the refreshes keyed: an outline's edits More...
|
| class | checkbox |
| | a check box for one boolean of the desc More...
|
| struct | control |
| | one control of an outline row: what it shows and, where it may change something, how - a toolkit renders it, nothing else More...
|
| class | cpl |
| | the control panel application: one window holding the driver's device tree, every device a branch of it. The driver itself is a base of the tree view below, so a device arriving on the bus adds its line - marshalled onto the message thread More...
|
| class | describe |
| | the outline of a struct that names its members (dx_serialize.h: visit): a line per member, as its kind says - a power of two, a bitmap of named bits, a choice among the options its struct allows as it stands -, a nested struct a branch of its own or, where all its members are switches, one line of toggles; an array a branch whose count is chosen, its elements beneath it. Every edit commits and tells changed, so every control asks its value and its options anew: what one member allows follows another. extend() adds a caller's lines to an array's element. More...
|
| class | device |
| | dx::gui::device A device_t with its outline (dx::gui::model) as its own line of the tree, built by attach() as the driver adds it; its icon the image the tree paints behind it. More...
|
| class | exception_dialog |
| | dx::gui::exception_dialog wxWidgets counterpart of the juce interface's exception hierarchy dialog: shows a dx::exception and its chain of causes (frame, comment, what()+error code, file:line, function) as a navigable tree, instead of collapsing it into a single message string. More...
|
| class | file |
| | the given vendor/product-relative path, in the platform's standard app data location More...
|
| class | image |
| | an image from a file or a resource, scaled into its place More...
|
| class | item |
| | one line of the device tree: its widget is created when the line becomes visible and dropped with it More...
|
| class | label |
| | a text field, editable where a listener is given More...
|
| class | line |
| | a line of the outline in the tree: its row made while the line shows, the lines beneath it its sub items More...
|
| class | looknfeel |
| | dx::gui::looknfeel Approximates the juce interface's dark/light colour scheme on the containers wx lets us recolour (frame/panel/splitter backgrounds, the tree, and - via colour inheritance - future field labels) without fighting native control rendering. Buttons, combo boxes, checkboxes and text fields are deliberately left to render as the platform normally would: recolouring native controls fights macOS's own dark-mode appearance, whereas juce draws every control itself and so can commit to one look on every platform. More...
|
| class | model |
| | a device's outline: its line with icon and name, its identity, its desc (dx::gui::describe) - the clock's rate, source and sync reference and a stream's source among its lines -, its I/O size, its transport and its clients More...
|
| struct | node |
| | one line of the outline: its controls and the lines beneath it, those refilled as watch tells More...
|
| class | row |
| | a line of the outline's controls, left to right, each at the width its content needs; one watching its value refreshes on the message thread while it lives More...
|
| class | text |
| | dx::gui::text An editable single line text field, committing on Enter or on losing focus. More...
|
|
| control | caption (std::string text) |
| template<typename promoted_t> |
| control | of (enum control::kind kind, promoted_t &promoted, bool editable, std::function< stream::named()> &&items={}) |
| | a promoted's value as a number, a check box or a choice among items, changing it where editable
|
| stream::named | power2 (unsigned min, unsigned max) |
| | the powers of two from min to max and the half-way values between them, min and max among them
|
| wxWindow * | render (wxWindow *parent, const control &control, std::vector< std::function< void()> > &unwatch) |
| | a control of the outline as its window; one watching its value refreshes on the UI thread while the window lives, the watch's removal kept in unwatch
|
| item * | render (wxWindow *parent, const node &node, std::vector< std::function< void()> > &unwatch) |
| | a line of the outline as an item beneath parent, its lines beneath it
|
| wxWindow * | row (wxWindow *parent, std::vector< std::function< wxWindow *(wxWindow *)> > controls) |
| | dx::gui::row Lays a handful of controls out on one horizontal line - the wx counterpart of the juce interface's dx::gui::aggregate<component_t...>: a dense row such as "[audio][MIDI] resolution: [32] bit [float] in [4] byte ...", built from factories so every control gets the row panel as its wx parent.
|
| template<typename promoted_t> |
| watch_t | watch (promoted_t &promoted) |
| | a promoted's changes told to the refreshes keyed
|
| watch_t | watch (watch_t first, watch_t second) |
| | both watches told
|
the control panel's widgets over JUCE: each one takes the value it edits and a listener, writes the device's desc back on a change and follows the desc when something else changes it - so a panel is composed of these, never of event handling of its own
the control panel's widgets over wxWidgets - the same panel as the JUCE variant builds, widget for widget, so a product picks its toolkit and nothing else changes