-
Notifications
You must be signed in to change notification settings - Fork 79
docs(DockManager): add dockmanager documentation #2742
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It might be helpful to explain the undocking process, as it’s quite specific. Undocking a content pane creates a floating split pane containing the pane. This can confuse clients when docking it, as the OnDock event triggers with the new split pane's ID.
Probably we can mention this as a note somewhere in the events article.
===
Another detail to mention is that when a split/tab group pane is not configured with AllowEmpty=true
and has no child panes, it is disposed.
Other than that, IMO, the documentation looks great.🚀
components/dockmanager/overview.md
Outdated
|
||
The <a href="https://www.telerik.com/blazor-ui/dock-manager" target="_blank">Blazor DockManager component</a> is a versatile tool that enables users to manage and organize multiple panes within a single container. It supports features like docking, undocking, resizing, and repositioning, offering a flexible and customizable layout. | ||
|
||
>tip The DockManager is best suited for desktop-like interfaces and applications designed for larger screens, where users can take full advantage of its advanced layout management capabilities. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using a highlighted tip implies that we are defensive about something. Better append this sentence to the introduction simply to manage customer expectations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed.
* `<DockManagerContentPane>` for standalone panes. | ||
* `<DockManagerSplitPane>` to create sections with multiple resizable panes. | ||
* `<DockManagerTabGroupPane>` to enable tabbed panes. | ||
4. Define `HeaderTemplate` tag inside each pane to set the headers text. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
4. Define `HeaderTemplate` tag inside each pane to set the headers text. | |
4. Define a `HeaderTemplate` tag inside each pane to set the headers text. |
* `<DockManagerTabGroupPane>` to enable tabbed panes. | ||
4. Define `HeaderTemplate` tag inside each pane to set the headers text. | ||
5. Populate the `Content` tag section of each pane with the desired UI elements. | ||
6. Optionally, `<DockManagerFloatingPanes>` to create panes that can float outside the main dock layout. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An action seems to be missing here. Do what with DocManagerFloatingPanes? Use, add, something else?
|
||
* It can be a direct child of another `<DockManagerSplitPane>`. | ||
* It can contain `<DockManagerTabGroupPane>`, `<DockManagerContentPane>`, and other `<DockManagerSplitPane>` tags as children. | ||
* Only this pane type can be declared as a direct child of the `<DockManagerFloatingPanes>` tag. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The page needs a ## See Also
section.
|
||
This article describes: | ||
|
||
* [The properties of the `DockManagerState` object](#information-in-the-dockmanager-state). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When the entire bullet point is a link, it should also include the punctuation. Otherwise, when rendered, it looks odd.
|
||
If you want to make changes to the current DockManager state: | ||
|
||
1. First, get the current state with the `GetState` method. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're on the first step. Adding First
to the first step creates redundancy.
2. Apply the desired modifications to the obtained `DockManagerState` object. | ||
3. Set the modified state object via the `SetState` method. | ||
|
||
> Do not use `GetState()` in the [`OnStateInit`](#onstateinit) or [`OnStateChanged`](#onstatechanged) events. Do not use `SetState()` in `OnStateInit`. Instead, get or set the `DockManagerState` property of the event argument. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are too many callouts one after the other. These would probably work better as sub-sections or in some other form.
closes: https://github.com/telerik/blazor/issues/10644