1,007
edits
Changes
→UI Extensibility
* Get a list of ''all'' commands that can apply to the selection.
:::''Implementation note: Look at <tt>CommandSource</tt>'s method to get all commands.''
* Sort a list of commands by criteria such as quality of text match or frequency of use, or by combinations of such criteria.
:::''Implementation note: Sorting is currently done entirely inside the parser, but we can pull it out and expose the scores directly so that a new plugin UI can make its own decisions about how to sort.''
Given a command, clients of the UI Manager should be able to:
* Figure out what objects arguments(nouns) the command takes. (Including: getting the names and types of all arguments, or of all arguments that have not been satisfied already by the selection)
:::''Implementation note: Once we [http://groups.google.com/group/ubiquity-core/browse_thread/thread/f7d8abf58724256 unify Verbs and Commands], this will be trivial.''
* Call the command(for a given assignment of argument values).:::''Implementation note: see above.'' * Retrieve the html of the command's preview (for a given assignment of argument values).
:::''Implementation note: see above.''
Given a command argument, clients of the UI Manager should be able to:
* Get default value(s) for the argument
:::''Implementation note: Should be able to easily get this by querying the verb for the nountype of its arguments and then querying the nountype for default value''
* Given an argument and a proposed value for that argument, find out whether the argument can accept the value or not; and if it can accept the value, get a list of possible completions for the value, including relative quality rankings of those completions.
:::''Implementation note: see above, with the caveat that relative quality rankings of noun suggestions barely exist yet and need a bunch of work independent of the UI extensibility work.''
== Security Extensibility ==