10000 Multi-Criteria - GUI · Issue #7 · accessolutions/WebAccessForNVDA · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Multi-Criteria - GUI #7

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
JulienCochuyt opened this issue Jun 19, 2019 · 1 comment
Closed

Multi-Criteria - GUI #7

JulienCochuyt opened this issue Jun 19, 2019 · 1 comment
Assignees
Milestone

Comments

@JulienCochuyt
Copy link
Member

Abstract

We are finally implementing the long awaited support of multi-criteria rules.

As of this sprint:

  • Rule names will be unique again.
  • Rules will accept multiple sets of criteria.
  • Criteria sets within a rule will be evaluated in sequence order, overwhelming
    the need for a notion of priority.
  • All criteria sets within a rule will share the same bound actions and
    properties.
  • Some of the rule's properties will support to be overridden for a specific
    criteria set. For now, these will be:
    • Custom name
    • Custom value
      In a future sprint, actions parameters will probably be added to this list.

While implementing this sprint, care must be taken to facilitate the upcoming
support for range and composite zones.

There are two facets to this sprint, namely the GUI and the core engine.
Both will be implemented in parallel.
@Agesse will take care of the GUI while @JulienCochuyt will update the core
engine.

New Rule Editor design

The GUI facet of this sprint exclusively focuses on re-designing the
Rule Editor dialog.

The new dialog will be based on the NVDA Settings Dialog as of NVDA 2019.1
Care must be taken nevertheless to maintain back-compatibility with earlier
versions.

Unlike its model, the new Rule Editor dialog should support being maximized at
user's will.

General panel

The "General" panel will include the following fields:

  • "Type"
  • "Name"
  • "User documentation", previously labeled "Comments"
  • "Summary", a read-only multi-line textual representation of this rule

Criteria Sets panel

The "Criteria Sets" panel will present a list of the names of all the criteria
sets sorted by Sequence Number.
If no name has been assigned to a criteria set, it will be replaced by the
values of its context-related attributes, separated by slashes ("/").

Beside the list, a read-only text field will present a summary of the criteria
set details, including only the valued attributes, grouped by "Context",
"Criteria", "Overriddes".

Beneath the list, the following buttons:

  • "New"
  • "Edit"
  • "Delete"

The "New" and "Edit" buttons will bring up the "Criteria Set" dialog.

Criteria Set dialog

This dialog is also modeled after the NVDA Settings Dialog.

General panel

This panel will offer the following fields:

  • "Name", optional.
  • "Sequence Order", as a selection list.
  • "Technical notes", a general-purpose multiline text field.

Context panel

This panel will offer the same fields as its counterpart in the current
implementation, exception made of "Priority", being superseded by the new
"Sequence Order" in the previous panel.

Criteria panel

This panel will offer the exact same fields as its counterpart in the current
implementation.

Overrides panel

This panel will present a two-columns list for the attributes overridden by this
criteria set along with their new value.

Underneath, the buttons "New", "Edit" and "Remove".

The "New" and "Edit" buttons will bring up the "Override" dialog.

Override dialog

This modal dialog will present three fields:

  • The attribute to override, as a drop-down select list.
  • The default value for this attribute in the current rule, read-only.
  • The overridden value, to be applied only when this criteria set matches.

Actions panel

This panel will offer the same features as the "Actions" group in the current
implementation.

Properties panel

This panel will offer the exact same fields as its counterpart in the current
implementation.

Note: The availability of some properties depends on the chosen rule type.

CC @frederic-brugnot

@JulienCochuyt
Copy link
Member Author

I guess we can close this as it has been merged for quite a while into dev.
Looking forward to a stable release, though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants
0