Commit Graph

6465 Commits

Author SHA1 Message Date
Dave Pearson
2e37541d70 Correct the types in a copied docstring 2023-05-24 12:59:20 +01:00
Dave Pearson
64ed982fd4 Make it very clear when SelectedChanged is posted 2023-05-24 12:57:13 +01:00
Dave Pearson
b113663221 Add a note about SelctionToggled vs SelectedChanged 2023-05-24 12:55:31 +01:00
Dave Pearson
65375e88b6 Remove an outdated note 2023-05-24 12:39:33 +01:00
Dave Pearson
9459a4efd7 Merge pull request #2636 from davep/select-reactive-table-fix 2023-05-24 10:52:29 +01:00
Dave Pearson
ed0aa78f22 Merge pull request #2637 from davep/option-list-docs-typo-fix 2023-05-24 10:47:25 +01:00
Dave Pearson
7f3efcf6ed Fix a typo in the OptionList messages list 2023-05-24 10:41:55 +01:00
Dave Pearson
7d635915fa Fix Select reactives table layout
The escaped | wasn't being rendered correctly as it was inside back-ticks.
2023-05-24 10:31:34 +01:00
Dave Pearson
cb05cfff53 Test that the control of selection list events is always correct 2023-05-24 10:21:40 +01:00
Dave Pearson
0a63748573 Add a test for later addition of selected selections 2023-05-24 10:16:25 +01:00
Dave Pearson
7110b30b44 Make sure adding a selection later updates selected 2023-05-24 10:16:06 +01:00
Dave Pearson
d3fe23f0bc Allow passing a Selection into a SelctionList
Up until now I've only been allowing tuples; mostly a hangover from the
initial take on this. Things have drifted a bit now and I feel it makes
sense to allow Selection instances in too.
2023-05-24 10:09:53 +01:00
Dave Pearson
da1faf8fb9 Allow for storing the initial state of a selection 2023-05-24 10:09:21 +01:00
Dave Pearson
2e540548f8 Add a test that removed selected selections are removed from selected 2023-05-24 09:19:56 +01:00
Dave Pearson
9d6e977e0e Test messages when toggling a selection via user input 2023-05-24 09:15:43 +01:00
Dave Pearson
56103c52e7 Ensure we log any OptionList messages in the messages test
We don't actually want to see them, we don't expect to see them, so here I
make a point of logging them so we can be sure we *don't* see them.
2023-05-24 09:09:40 +01:00
Rodrigo Girão Serrão
2c03956049 Fix type hint. 2023-05-23 17:01:20 +01:00
Dave Pearson
50d77b231f Add tests for the wrong sized tuple
While type checking picks this up, not everyone uses type checking.
2023-05-23 16:45:53 +01:00
Dave Pearson
9f6d35b871 Start unit tests for the actual selected property 2023-05-23 16:26:28 +01:00
Dave Pearson
c448fa1ea0 Add unit tests for selection list messages 2023-05-23 15:48:34 +01:00
Rodrigo Girão Serrão
3308cdde1c Use FIFOCache.
Related comments: https://github.com/Textualize/textual/pull/2604#discussion_r1202431626
2023-05-23 15:32:53 +01:00
Rodrigo Girão Serrão
239e5eebc6 Use workers to get suggestions. 2023-05-23 15:16:24 +01:00
Dave Pearson
f9780d0346 Add basic selection list creation unit tests 2023-05-23 15:13:46 +01:00
Rodrigo Girão Serrão
e63ec577cd Address review feedback. 2023-05-23 11:46:05 +01:00
Dave Pearson
d38780ba97 Ensure we don't try and post messages before the widget is ready 2023-05-23 11:45:31 +01:00
Rodrigo Girão Serrão
bc92cf57e7 Add auto focus to app.
Related issues: #2594.
2023-05-23 11:32:40 +01:00
Dave Pearson
d5799377a2 Document _selected
It's not for public consumption, but it's useful for anyone reading the code.
2023-05-23 11:31:07 +01:00
Dave Pearson
bee438bc53 Get the selection value tracker in place before calling the superclass 2023-05-23 11:30:04 +01:00
Dave Pearson
fefb33a23b Add a docstring to the internal copy of the selection value 2023-05-23 11:07:45 +01:00
Rodrigo Girão Serrão
124e62e41b Changelog. 2023-05-23 10:50:00 +01:00
Rodrigo Girão Serrão
297549c7d8 V2 of input suggestions API. 2023-05-23 10:47:22 +01:00
Dave Pearson
81abac1c68 Tidy up some docstrings
Mainly adding missing return values, that sort of thing.
2023-05-23 10:46:00 +01:00
Dave Pearson
23d899935f Correct a docstring 2023-05-23 10:36:59 +01:00
Dave Pearson
ff404e2bbf Only refresh on deselect if something was deselected 2023-05-23 10:35:48 +01:00
Dave Pearson
d861cced97 Improve how the _all methods work
Deciding if there was a change when turning all on or off by looking at the
before an after counts was fine, but it's not a sensible way of seeing if
there was a change during a toggle. So this swaps things up a bit and has
the core selection changing methods return a flag to say if they actually
made a change or not.
2023-05-23 10:33:39 +01:00
Dave Pearson
db273ea9ff Add a method for toggling all options 2023-05-23 10:26:16 +01:00
Dave Pearson
a4148d028b Add a method for deselecting all options 2023-05-23 10:22:01 +01:00
Dave Pearson
3ce04c814a Add a method of selecting all selection options 2023-05-23 10:20:00 +01:00
Dave Pearson
a2fc3fad43 Add a method to apply a state change to all selection options 2023-05-23 10:19:20 +01:00
Dave Pearson
4c9afca8fd Add a docstring for the component classes. 2023-05-23 10:02:07 +01:00
Dave Pearson
195e9b4021 Add the docstring for the bindings 2023-05-23 09:50:44 +01:00
Dave Pearson
ca07d7a58d Fill in the blanks with docstrings
Adding back docstrings from overriding methods. Initially I was thinking it
made sense to keep them empty, allowing for any inheriting of the
docs (if/when our documentation generation system does that); but in most
cases there's a subtle difference in what's supported in terms of parameters
or return values so it makes sense to tweak the docs a wee bit.
2023-05-23 09:47:45 +01:00
Dave Pearson
607939e41d Merge pull request #2626 from davep/option-list-typo-fix
Fix a copy/pasteo in an option list docstring
2023-05-23 09:45:37 +01:00
Dave Pearson
10bccfd9ee Fix a copy/pasteo in an option list docstring 2023-05-23 09:27:40 +01:00
Dave Pearson
9e6bf085b8 Extend add_option so that it accepts selections and selection tuples 2023-05-23 09:24:29 +01:00
Will McGugan
be49aabefe remove markup, simplify repr (#2623)
* remove markup, simplify repr

* changelog

* remove rendundant repr (thanks Paul)

* changelog
2023-05-22 20:26:37 +01:00
Dave Pearson
f530efda2a Extend SelectionList.add_options to better support the selection list 2023-05-22 15:58:08 +01:00
Dave Pearson
55f887e66e Merge pull request #2610 from davep/directory-tree-alt-path
Let child classes of DirectoryTree override Path creation
2023-05-22 15:56:50 +01:00
Dave Pearson
68250e6ce3 Override _remove_option to update the selected values
The developer could remove an option that is selected, so we need to catch
that this has happened and update the collection of selected values.
2023-05-22 15:25:11 +01:00
Dave Pearson
189181ba33 Add support for sending a message when the selection list changes
The developer using this may wish to react to UI changes being made, but
they may also want to just know when the collection of selected values has
changed -- this could happen via code so won't get any UI/IO messages. So
this adds a message that is always sent when a change to the collection of
selected values happens.
2023-05-22 15:23:11 +01:00