@itwin/appui-react 4.0.0-dev.16 → 4.0.0-dev.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -18
- package/lib/cjs/appui-react/UiFramework.d.ts +10 -20
- package/lib/cjs/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/cjs/appui-react/UiFramework.js +12 -24
- package/lib/cjs/appui-react/UiFramework.js.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js +4 -4
- package/lib/cjs/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialogManager.d.ts +0 -39
- package/lib/cjs/appui-react/dialog/ContentDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/ContentDialogManager.js +1 -61
- package/lib/cjs/appui-react/dialog/ContentDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModalDialogManager.d.ts +0 -30
- package/lib/cjs/appui-react/dialog/ModalDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/ModalDialogManager.js +1 -44
- package/lib/cjs/appui-react/dialog/ModalDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts +0 -39
- package/lib/cjs/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/dialog/ModelessDialogManager.js +1 -60
- package/lib/cjs/appui-react/dialog/ModelessDialogManager.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkChildWindows.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkChildWindows.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkContent.d.ts +2 -2
- package/lib/cjs/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkControls.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkControls.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkDialogs.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts +7 -3
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/cjs/appui-react/framework/FrameworkVisibility.d.ts +1 -1
- package/lib/cjs/appui-react/framework/FrameworkVisibility.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +12 -3
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts +6 -2
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js +5 -1
- package/lib/cjs/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts +0 -32
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js +1 -55
- package/lib/cjs/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/cjs/appui-react/messages/MessageManager.js +2 -3
- package/lib/cjs/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +13 -197
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +32 -4
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +34 -0
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js +500 -0
- package/lib/cjs/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -0
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts +6 -4
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js +33 -6
- package/lib/cjs/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +0 -7
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +0 -7
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/UiFramework.d.ts +10 -20
- package/lib/esm/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/esm/appui-react/UiFramework.js +12 -24
- package/lib/esm/appui-react/UiFramework.js.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.d.ts.map +1 -1
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js +4 -4
- package/lib/esm/appui-react/childwindow/InternalChildWindowManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialogManager.d.ts +0 -39
- package/lib/esm/appui-react/dialog/ContentDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/ContentDialogManager.js +0 -59
- package/lib/esm/appui-react/dialog/ContentDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModalDialogManager.d.ts +0 -30
- package/lib/esm/appui-react/dialog/ModalDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/ModalDialogManager.js +0 -42
- package/lib/esm/appui-react/dialog/ModalDialogManager.js.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts +0 -39
- package/lib/esm/appui-react/dialog/ModelessDialogManager.d.ts.map +1 -1
- package/lib/esm/appui-react/dialog/ModelessDialogManager.js +0 -58
- package/lib/esm/appui-react/dialog/ModelessDialogManager.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkChildWindows.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkChildWindows.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkContent.d.ts +2 -2
- package/lib/esm/appui-react/framework/FrameworkContent.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkControls.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkControls.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkDialogs.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkDialogs.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts +7 -3
- package/lib/esm/appui-react/framework/FrameworkFrontstages.d.ts.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkFrontstages.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkKeyboardShortcuts.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkToolSettings.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkToolSettings.js.map +1 -1
- package/lib/esm/appui-react/framework/FrameworkVisibility.d.ts +1 -1
- package/lib/esm/appui-react/framework/FrameworkVisibility.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +12 -3
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts +6 -2
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js +5 -1
- package/lib/esm/appui-react/frontstage/InternalFrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts +0 -32
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.d.ts.map +1 -1
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js +0 -53
- package/lib/esm/appui-react/keyboardshortcut/KeyboardShortcut.js.map +1 -1
- package/lib/esm/appui-react/messages/MessageManager.js +2 -3
- package/lib/esm/appui-react/messages/MessageManager.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +13 -197
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +31 -3
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +34 -0
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js +496 -0
- package/lib/esm/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -0
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts +6 -4
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js +33 -6
- package/lib/esm/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-react.d.ts +0 -7
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +0 -7
- package/lib/esm/appui-react.js.map +1 -1
- package/lib/public/locales/en/UiFramework.json +0 -45
- package/package.json +21 -13
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts +0 -74
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js +0 -107
- package/lib/cjs/appui-react/childwindow/ChildWindowManager.js.map +0 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.d.ts +0 -66
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js +0 -93
- package/lib/cjs/appui-react/configurableui/ConfigurableUiManager.js.map +0 -1
- package/lib/cjs/appui-react/content/ContentLayoutManager.d.ts +0 -48
- package/lib/cjs/appui-react/content/ContentLayoutManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/content/ContentLayoutManager.js +0 -69
- package/lib/cjs/appui-react/content/ContentLayoutManager.js.map +0 -1
- package/lib/cjs/appui-react/content/ContentViewManager.d.ts +0 -63
- package/lib/cjs/appui-react/content/ContentViewManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/content/ContentViewManager.js +0 -96
- package/lib/cjs/appui-react/content/ContentViewManager.js.map +0 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +0 -202
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +0 -269
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +0 -1
- package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.d.ts +0 -44
- package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.js +0 -64
- package/lib/cjs/appui-react/toolsettings/ToolSettingsManager.js.map +0 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts +0 -54
- package/lib/cjs/appui-react/utils/UiShowHideManager.d.ts.map +0 -1
- package/lib/cjs/appui-react/utils/UiShowHideManager.js +0 -108
- package/lib/cjs/appui-react/utils/UiShowHideManager.js.map +0 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts +0 -74
- package/lib/esm/appui-react/childwindow/ChildWindowManager.d.ts.map +0 -1
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js +0 -103
- package/lib/esm/appui-react/childwindow/ChildWindowManager.js.map +0 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.d.ts +0 -66
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.d.ts.map +0 -1
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js +0 -89
- package/lib/esm/appui-react/configurableui/ConfigurableUiManager.js.map +0 -1
- package/lib/esm/appui-react/content/ContentLayoutManager.d.ts +0 -48
- package/lib/esm/appui-react/content/ContentLayoutManager.d.ts.map +0 -1
- package/lib/esm/appui-react/content/ContentLayoutManager.js +0 -65
- package/lib/esm/appui-react/content/ContentLayoutManager.js.map +0 -1
- package/lib/esm/appui-react/content/ContentViewManager.d.ts +0 -63
- package/lib/esm/appui-react/content/ContentViewManager.d.ts.map +0 -1
- package/lib/esm/appui-react/content/ContentViewManager.js +0 -92
- package/lib/esm/appui-react/content/ContentViewManager.js.map +0 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +0 -202
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +0 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +0 -265
- package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +0 -1
- package/lib/esm/appui-react/toolsettings/ToolSettingsManager.d.ts +0 -44
- package/lib/esm/appui-react/toolsettings/ToolSettingsManager.d.ts.map +0 -1
- package/lib/esm/appui-react/toolsettings/ToolSettingsManager.js +0 -60
- package/lib/esm/appui-react/toolsettings/ToolSettingsManager.js.map +0 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts +0 -54
- package/lib/esm/appui-react/utils/UiShowHideManager.d.ts.map +0 -1
- package/lib/esm/appui-react/utils/UiShowHideManager.js +0 -105
- package/lib/esm/appui-react/utils/UiShowHideManager.js.map +0 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Frontstage
|
|
3
3
|
*/
|
|
4
|
-
/// <reference types="react" />
|
|
5
4
|
import { UiEvent } from "@itwin/appui-abstract";
|
|
6
5
|
import { NineZoneState, PanelSide } from "@itwin/appui-layout-react";
|
|
7
6
|
import { WidgetDef } from "../widgets/WidgetDef";
|
|
@@ -18,14 +17,14 @@ export declare enum StagePanelState {
|
|
|
18
17
|
Open = 2,
|
|
19
18
|
Popup = 3
|
|
20
19
|
}
|
|
21
|
-
/** Panel
|
|
20
|
+
/** Panel state changed event args interface.
|
|
22
21
|
* @public
|
|
23
22
|
*/
|
|
24
23
|
export interface PanelStateChangedEventArgs {
|
|
25
24
|
panelDef: StagePanelDef;
|
|
26
25
|
panelState: StagePanelState;
|
|
27
26
|
}
|
|
28
|
-
/** Panel
|
|
27
|
+
/** Panel state changed event class.
|
|
29
28
|
* @beta
|
|
30
29
|
*/
|
|
31
30
|
export declare class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> {
|
|
@@ -38,6 +37,13 @@ export interface PanelSizeChangedEventArgs {
|
|
|
38
37
|
/** @internal */
|
|
39
38
|
export declare class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> {
|
|
40
39
|
}
|
|
40
|
+
/** Panel pinned changed event args interface.
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
export interface PanelPinnedChangedEventArgs {
|
|
44
|
+
panelDef: StagePanelDef;
|
|
45
|
+
pinned: boolean;
|
|
46
|
+
}
|
|
41
47
|
/**
|
|
42
48
|
* A StagePanelDef represents each Stage Panel within a Frontstage.
|
|
43
49
|
* @public
|
|
@@ -68,6 +74,7 @@ export declare class StagePanelDef extends WidgetHost {
|
|
|
68
74
|
get resizable(): boolean;
|
|
69
75
|
/** Indicates whether the panel is pinned. */
|
|
70
76
|
get pinned(): boolean;
|
|
77
|
+
set pinned(pinned: boolean);
|
|
71
78
|
/** Location of panel. */
|
|
72
79
|
get location(): StagePanelLocation;
|
|
73
80
|
/** Panel state. Defaults to PanelState.Open. */
|
|
@@ -96,198 +103,7 @@ export declare class StagePanelSectionDef extends WidgetHost {
|
|
|
96
103
|
/** @internal */
|
|
97
104
|
export declare function toPanelSide(location: StagePanelLocation): PanelSide;
|
|
98
105
|
/** @internal */
|
|
99
|
-
export declare const setPanelSize: (
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
readonly position: {
|
|
103
|
-
readonly x: number;
|
|
104
|
-
readonly y: number;
|
|
105
|
-
};
|
|
106
|
-
readonly home: {
|
|
107
|
-
readonly widgetIndex: number;
|
|
108
|
-
readonly widgetId: string | undefined;
|
|
109
|
-
readonly side: PanelSide;
|
|
110
|
-
};
|
|
111
|
-
} | undefined;
|
|
112
|
-
readonly floatingWidgets: {
|
|
113
|
-
readonly byId: {
|
|
114
|
-
readonly [x: string]: {
|
|
115
|
-
readonly bounds: {
|
|
116
|
-
readonly left: number;
|
|
117
|
-
readonly top: number;
|
|
118
|
-
readonly right: number;
|
|
119
|
-
readonly bottom: number;
|
|
120
|
-
};
|
|
121
|
-
readonly id: string;
|
|
122
|
-
readonly home: {
|
|
123
|
-
readonly widgetIndex: number;
|
|
124
|
-
readonly widgetId: string | undefined;
|
|
125
|
-
readonly side: PanelSide;
|
|
126
|
-
};
|
|
127
|
-
readonly userSized?: boolean | undefined;
|
|
128
|
-
readonly hidden?: boolean | undefined;
|
|
129
|
-
};
|
|
130
|
-
};
|
|
131
|
-
readonly allIds: readonly string[];
|
|
132
|
-
};
|
|
133
|
-
readonly popoutWidgets: {
|
|
134
|
-
readonly byId: {
|
|
135
|
-
readonly [x: string]: {
|
|
136
|
-
readonly bounds: {
|
|
137
|
-
readonly left: number;
|
|
138
|
-
readonly top: number;
|
|
139
|
-
readonly right: number;
|
|
140
|
-
readonly bottom: number;
|
|
141
|
-
};
|
|
142
|
-
readonly id: string;
|
|
143
|
-
readonly home: {
|
|
144
|
-
readonly widgetIndex: number;
|
|
145
|
-
readonly widgetId: string | undefined;
|
|
146
|
-
readonly side: PanelSide;
|
|
147
|
-
};
|
|
148
|
-
};
|
|
149
|
-
};
|
|
150
|
-
readonly allIds: readonly string[];
|
|
151
|
-
};
|
|
152
|
-
readonly panels: {
|
|
153
|
-
readonly bottom: {
|
|
154
|
-
readonly span: boolean;
|
|
155
|
-
readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
|
|
156
|
-
readonly collapseOffset: number;
|
|
157
|
-
readonly collapsed: boolean;
|
|
158
|
-
readonly maxSize: number;
|
|
159
|
-
readonly minSize: number;
|
|
160
|
-
readonly pinned: boolean;
|
|
161
|
-
readonly resizable: boolean;
|
|
162
|
-
readonly size: number | undefined;
|
|
163
|
-
readonly widgets: readonly string[];
|
|
164
|
-
readonly maxWidgetCount: number;
|
|
165
|
-
readonly splitterPercent: number | undefined;
|
|
166
|
-
};
|
|
167
|
-
readonly left: {
|
|
168
|
-
readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
|
|
169
|
-
readonly collapseOffset: number;
|
|
170
|
-
readonly collapsed: boolean;
|
|
171
|
-
readonly maxSize: number;
|
|
172
|
-
readonly minSize: number;
|
|
173
|
-
readonly pinned: boolean;
|
|
174
|
-
readonly resizable: boolean;
|
|
175
|
-
readonly size: number | undefined;
|
|
176
|
-
readonly widgets: readonly string[];
|
|
177
|
-
readonly maxWidgetCount: number;
|
|
178
|
-
readonly splitterPercent: number | undefined;
|
|
179
|
-
};
|
|
180
|
-
readonly right: {
|
|
181
|
-
readonly side: import("@itwin/appui-layout-react").VerticalPanelSide;
|
|
182
|
-
readonly collapseOffset: number;
|
|
183
|
-
readonly collapsed: boolean;
|
|
184
|
-
readonly maxSize: number;
|
|
185
|
-
readonly minSize: number;
|
|
186
|
-
readonly pinned: boolean;
|
|
187
|
-
readonly resizable: boolean;
|
|
188
|
-
readonly size: number | undefined;
|
|
189
|
-
readonly widgets: readonly string[];
|
|
190
|
-
readonly maxWidgetCount: number;
|
|
191
|
-
readonly splitterPercent: number | undefined;
|
|
192
|
-
};
|
|
193
|
-
readonly top: {
|
|
194
|
-
readonly span: boolean;
|
|
195
|
-
readonly side: import("@itwin/appui-layout-react").HorizontalPanelSide;
|
|
196
|
-
readonly collapseOffset: number;
|
|
197
|
-
readonly collapsed: boolean;
|
|
198
|
-
readonly maxSize: number;
|
|
199
|
-
readonly minSize: number;
|
|
200
|
-
readonly pinned: boolean;
|
|
201
|
-
readonly resizable: boolean;
|
|
202
|
-
readonly size: number | undefined;
|
|
203
|
-
readonly widgets: readonly string[];
|
|
204
|
-
readonly maxWidgetCount: number;
|
|
205
|
-
readonly splitterPercent: number | undefined;
|
|
206
|
-
};
|
|
207
|
-
};
|
|
208
|
-
readonly tabs: {
|
|
209
|
-
readonly [x: string]: {
|
|
210
|
-
readonly id: string;
|
|
211
|
-
readonly label: string;
|
|
212
|
-
readonly iconSpec?: boolean | import("react").ReactText | {
|
|
213
|
-
readonly stringGetter: () => string;
|
|
214
|
-
readonly syncEventIds: readonly string[];
|
|
215
|
-
readonly value: string;
|
|
216
|
-
readonly refresh: () => boolean;
|
|
217
|
-
} | {
|
|
218
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
219
|
-
readonly props: any;
|
|
220
|
-
readonly key: import("react").Key | null;
|
|
221
|
-
} | {} | {
|
|
222
|
-
readonly [Symbol.iterator]: () => Iterator<import("react").ReactNode, any, undefined>;
|
|
223
|
-
} | {
|
|
224
|
-
readonly key: import("react").Key | null;
|
|
225
|
-
readonly children: boolean | import("react").ReactText | {
|
|
226
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
227
|
-
readonly props: any;
|
|
228
|
-
readonly key: import("react").Key | null;
|
|
229
|
-
} | {} | {
|
|
230
|
-
readonly [Symbol.iterator]: () => Iterator<import("react").ReactNode, any, undefined>;
|
|
231
|
-
} | any | null | undefined;
|
|
232
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
233
|
-
readonly props: any;
|
|
234
|
-
} | {
|
|
235
|
-
readonly iconGetter: () => import("@itwin/core-react").IconSpec;
|
|
236
|
-
readonly syncEventIds: readonly string[];
|
|
237
|
-
readonly value: boolean | import("react").ReactText | {
|
|
238
|
-
readonly stringGetter: () => string;
|
|
239
|
-
readonly syncEventIds: readonly string[];
|
|
240
|
-
readonly value: string;
|
|
241
|
-
readonly refresh: () => boolean;
|
|
242
|
-
} | {
|
|
243
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
244
|
-
readonly props: any;
|
|
245
|
-
readonly key: import("react").Key | null;
|
|
246
|
-
} | {} | {
|
|
247
|
-
readonly [Symbol.iterator]: () => Iterator<import("react").ReactNode, any, undefined>;
|
|
248
|
-
} | {
|
|
249
|
-
readonly key: import("react").Key | null;
|
|
250
|
-
readonly children: boolean | import("react").ReactText | {
|
|
251
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
252
|
-
readonly props: any;
|
|
253
|
-
readonly key: import("react").Key | null;
|
|
254
|
-
} | {} | {
|
|
255
|
-
readonly [Symbol.iterator]: () => Iterator<import("react").ReactNode, any, undefined>;
|
|
256
|
-
} | any | null | undefined;
|
|
257
|
-
readonly type: string | import("react").JSXElementConstructor<any>;
|
|
258
|
-
readonly props: any;
|
|
259
|
-
} | any | null | undefined;
|
|
260
|
-
readonly refresh: () => boolean;
|
|
261
|
-
} | null | undefined;
|
|
262
|
-
readonly preferredFloatingWidgetSize?: {
|
|
263
|
-
readonly width: number;
|
|
264
|
-
readonly height: number;
|
|
265
|
-
} | undefined;
|
|
266
|
-
readonly preferredPanelWidgetSize?: "fit-content" | undefined;
|
|
267
|
-
readonly allowedPanelTargets?: readonly PanelSide[] | undefined;
|
|
268
|
-
readonly canPopout?: boolean | undefined;
|
|
269
|
-
readonly userSized?: boolean | undefined;
|
|
270
|
-
readonly isFloatingStateWindowResizable?: boolean | undefined;
|
|
271
|
-
readonly hideWithUiWhenFloating?: boolean | undefined;
|
|
272
|
-
};
|
|
273
|
-
};
|
|
274
|
-
readonly toolSettings: {
|
|
275
|
-
readonly type: "docked";
|
|
276
|
-
} | {
|
|
277
|
-
readonly type: "widget";
|
|
278
|
-
};
|
|
279
|
-
readonly widgets: {
|
|
280
|
-
readonly [x: string]: {
|
|
281
|
-
readonly activeTabId: string;
|
|
282
|
-
readonly id: string;
|
|
283
|
-
readonly minimized: boolean;
|
|
284
|
-
readonly tabs: readonly string[];
|
|
285
|
-
readonly isFloatingStateWindowResizable?: boolean | undefined;
|
|
286
|
-
};
|
|
287
|
-
};
|
|
288
|
-
readonly size: {
|
|
289
|
-
readonly width: number;
|
|
290
|
-
readonly height: number;
|
|
291
|
-
};
|
|
292
|
-
}, side: PanelSide, size: number | undefined) => import("immer/dist/internal").WritableDraft<NineZoneState>;
|
|
106
|
+
export declare const setPanelSize: (nineZone: NineZoneState, side: PanelSide, size: number | undefined) => NineZoneState;
|
|
107
|
+
/** @internal */
|
|
108
|
+
export declare const setPanelPinned: (nineZone: NineZoneState, side: PanelSide, pinned: boolean) => NineZoneState;
|
|
293
109
|
//# sourceMappingURL=StagePanelDef.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagePanelDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"AAIA;;GAEG
|
|
1
|
+
{"version":3,"file":"StagePanelDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ export var StagePanelState;
|
|
|
23
23
|
StagePanelState[StagePanelState["Open"] = 2] = "Open";
|
|
24
24
|
StagePanelState[StagePanelState["Popup"] = 3] = "Popup";
|
|
25
25
|
})(StagePanelState || (StagePanelState = {}));
|
|
26
|
-
/** Panel
|
|
26
|
+
/** Panel state changed event class.
|
|
27
27
|
* @beta
|
|
28
28
|
*/
|
|
29
29
|
export class PanelStateChangedEvent extends UiEvent {
|
|
@@ -86,7 +86,30 @@ export class StagePanelDef extends WidgetHost {
|
|
|
86
86
|
// istanbul ignore next
|
|
87
87
|
get resizable() { return this._resizable; }
|
|
88
88
|
/** Indicates whether the panel is pinned. */
|
|
89
|
-
get pinned() {
|
|
89
|
+
get pinned() {
|
|
90
|
+
if (UiFramework.frontstages.activeFrontstageDef) {
|
|
91
|
+
const state = UiFramework.frontstages.activeFrontstageDef.getPanelCurrentState(this);
|
|
92
|
+
return state[2];
|
|
93
|
+
}
|
|
94
|
+
// istanbul ignore next
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
set pinned(pinned) {
|
|
98
|
+
if (this._pinned === pinned)
|
|
99
|
+
return;
|
|
100
|
+
// istanbul ignore else
|
|
101
|
+
const frontstageDef = UiFramework.frontstages.activeFrontstageDef;
|
|
102
|
+
// istanbul ignore else
|
|
103
|
+
if (frontstageDef && frontstageDef.nineZoneState) {
|
|
104
|
+
const side = toPanelSide(this.location);
|
|
105
|
+
frontstageDef.nineZoneState = setPanelPinned(frontstageDef.nineZoneState, side, pinned);
|
|
106
|
+
}
|
|
107
|
+
this._pinned = pinned;
|
|
108
|
+
UiFramework.frontstages.onPanelPinnedChangedEvent.emit({
|
|
109
|
+
panelDef: this,
|
|
110
|
+
pinned,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
90
113
|
/** Location of panel. */
|
|
91
114
|
get location() { return this._location; }
|
|
92
115
|
/** Panel state. Defaults to PanelState.Open. */
|
|
@@ -149,8 +172,8 @@ export class StagePanelDef extends WidgetHost {
|
|
|
149
172
|
this._maxSizeSpec = config.maxSize;
|
|
150
173
|
this._minSize = config.minSize;
|
|
151
174
|
if (config.defaultState !== undefined) {
|
|
152
|
-
this._panelState = config.defaultState;
|
|
153
175
|
this._defaultState = config.defaultState;
|
|
176
|
+
this._panelState = config.defaultState;
|
|
154
177
|
}
|
|
155
178
|
this._resizable = config.resizable ?? true;
|
|
156
179
|
if (config.pinned !== undefined)
|
|
@@ -208,4 +231,9 @@ export const setPanelSize = produce((nineZone, side, size) => {
|
|
|
208
231
|
const panel = nineZone.panels[side];
|
|
209
232
|
panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);
|
|
210
233
|
});
|
|
234
|
+
/** @internal */
|
|
235
|
+
export const setPanelPinned = produce((nineZone, side, pinned) => {
|
|
236
|
+
const panel = nineZone.panels[side];
|
|
237
|
+
panel.pinned = pinned;
|
|
238
|
+
});
|
|
211
239
|
//# sourceMappingURL=StagePanelDef.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { UiEvent } from \"@itwin/appui-abstract\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelConfig, StagePanelMaxSizeSpec, StagePanelSectionConfig } from \"./StagePanelConfig\";\r\nimport { StagePanelLocation } from \"./StagePanelLocation\";\r\nimport { StagePanelSection } from \"./StagePanelSection\";\r\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Panel State Changed Event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _start = new StagePanelSectionDef();\r\n private _end = new StagePanelSectionDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() {\r\n // istanbul ignore else\r\n if (UiFramework.frontstages.activeFrontstageDef) {\r\n const [_, size] = UiFramework.frontstages.activeFrontstageDef.getPanelCurrentState(this);\r\n return size;\r\n }\r\n // istanbul ignore next\r\n return this._defaultSize;\r\n }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n this._size = size;\r\n InternalFrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean { return this._pinned; }\r\n\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n // istanbul ignore else\r\n if (UiFramework.frontstages.activeFrontstageDef) {\r\n const [state] = UiFramework.frontstages.activeFrontstageDef?.getPanelCurrentState(this);\r\n return state;\r\n }\r\n // istanbul ignore next\r\n return this.defaultState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n UiFramework.frontstages.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** @internal */\r\n public static create(config: StagePanelConfig, location: StagePanelLocation) {\r\n const def = new StagePanelDef();\r\n def.initializeFromConfig(config, location);\r\n return def;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromConfig(config: StagePanelConfig | undefined, location: StagePanelLocation): void {\r\n this._location = location;\r\n\r\n if (!config)\r\n return;\r\n this._size = config.size;\r\n this._defaultSize = config.size;\r\n this._maxSizeSpec = config.maxSize;\r\n this._minSize = config.minSize;\r\n if (config.defaultState !== undefined) {\r\n this._panelState = config.defaultState;\r\n this._defaultState = config.defaultState;\r\n }\r\n this._resizable = config.resizable ?? true;\r\n if (config.pinned !== undefined)\r\n this._pinned = config.pinned;\r\n\r\n const sections = config.sections;\r\n this._start.initializeFromConfig(sections?.start);\r\n this._end.initializeFromConfig(sections?.end);\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n return [...super.widgetDefs, ...this._start.widgetDefs, ...this._end.widgetDefs];\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: StagePanelLocation, _section: StagePanelSection | undefined,\r\n allStageWidgetDefs: WidgetDef[]) {\r\n this._start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, allStageWidgetDefs);\r\n this._end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, allStageWidgetDefs);\r\n }\r\n\r\n /** @internal */\r\n public getPanelSectionDef(section: StagePanelSection) {\r\n switch (section) {\r\n case StagePanelSection.Start: {\r\n return this._start;\r\n }\r\n case StagePanelSection.End: {\r\n return this._end;\r\n }\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelSectionDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromConfig(config: StagePanelSectionConfig | undefined) {\r\n config?.forEach((widgetConfig) => {\r\n const widgetDef = WidgetDef.create(widgetConfig);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n"]}
|
|
1
|
+
{"version":3,"file":"StagePanelDef.js","sourceRoot":"","sources":["../../../../src/appui-react/stagepanels/StagePanelDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Frontstage\r\n */\r\n\r\nimport produce, { Draft } from \"immer\";\r\nimport { UiEvent } from \"@itwin/appui-abstract\";\r\nimport { NineZoneState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { WidgetDef } from \"../widgets/WidgetDef\";\r\nimport { WidgetHost } from \"../widgets/WidgetHost\";\r\nimport { StagePanelConfig, StagePanelMaxSizeSpec, StagePanelSectionConfig } from \"./StagePanelConfig\";\r\nimport { StagePanelLocation } from \"./StagePanelLocation\";\r\nimport { StagePanelSection } from \"./StagePanelSection\";\r\nimport { InternalFrontstageManager } from \"../frontstage/InternalFrontstageManager\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Enum for StagePanel state.\r\n * @public\r\n */\r\nexport enum StagePanelState {\r\n Off,\r\n Minimized,\r\n Open,\r\n Popup,\r\n}\r\n\r\n/** Panel state changed event args interface.\r\n * @public\r\n */\r\nexport interface PanelStateChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n panelState: StagePanelState;\r\n}\r\n\r\n/** Panel state changed event class.\r\n * @beta\r\n */\r\nexport class PanelStateChangedEvent extends UiEvent<PanelStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface PanelSizeChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n size: number | undefined;\r\n}\r\n\r\n/** @internal */\r\nexport class PanelSizeChangedEvent extends UiEvent<PanelSizeChangedEventArgs> { }\r\n\r\n/** Panel pinned changed event args interface.\r\n * @public\r\n */\r\nexport interface PanelPinnedChangedEventArgs {\r\n panelDef: StagePanelDef;\r\n pinned: boolean;\r\n}\r\n\r\n/**\r\n * A StagePanelDef represents each Stage Panel within a Frontstage.\r\n * @public\r\n */\r\nexport class StagePanelDef extends WidgetHost {\r\n private _panelState = StagePanelState.Open;\r\n private _defaultState = StagePanelState.Open;\r\n private _maxSizeSpec: StagePanelMaxSizeSpec | undefined;\r\n private _minSize: number | undefined;\r\n private _size: number | undefined;\r\n private _defaultSize: number | undefined;\r\n private _resizable = true;\r\n private _pinned = true;\r\n private _location: StagePanelLocation = StagePanelLocation.Left;\r\n private _start = new StagePanelSectionDef();\r\n private _end = new StagePanelSectionDef();\r\n\r\n /** Constructor for PanelDef.\r\n */\r\n constructor() {\r\n super();\r\n }\r\n\r\n /** @internal */\r\n public get maxSizeSpec() { return this._maxSizeSpec; }\r\n\r\n /** @internal */\r\n public get minSize() { return this._minSize; }\r\n\r\n /** Default size of the panel */\r\n public get size() {\r\n // istanbul ignore else\r\n if (UiFramework.frontstages.activeFrontstageDef) {\r\n const [_, size] = UiFramework.frontstages.activeFrontstageDef.getPanelCurrentState(this);\r\n return size;\r\n }\r\n // istanbul ignore next\r\n return this._defaultSize;\r\n }\r\n\r\n public set size(size) {\r\n if (this._size === size)\r\n return;\r\n\r\n // istanbul ignore else\r\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelSize(frontstageDef.nineZoneState, side, size);\r\n const panel = frontstageDef.nineZoneState.panels[side];\r\n if (panel.size === this._size)\r\n return;\r\n size = panel.size;\r\n }\r\n this._size = size;\r\n InternalFrontstageManager.onPanelSizeChangedEvent.emit({\r\n panelDef: this,\r\n size,\r\n });\r\n }\r\n\r\n /** Indicates whether the panel is resizable. */\r\n // istanbul ignore next\r\n public get resizable(): boolean { return this._resizable; }\r\n\r\n /** Indicates whether the panel is pinned. */\r\n public get pinned(): boolean {\r\n if (UiFramework.frontstages.activeFrontstageDef) {\r\n const state = UiFramework.frontstages.activeFrontstageDef.getPanelCurrentState(this);\r\n return state[2];\r\n }\r\n // istanbul ignore next\r\n return false;\r\n }\r\n\r\n public set pinned(pinned: boolean) {\r\n if (this._pinned === pinned)\r\n return;\r\n\r\n // istanbul ignore else\r\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\r\n // istanbul ignore else\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = setPanelPinned(frontstageDef.nineZoneState, side, pinned);\r\n }\r\n this._pinned = pinned;\r\n UiFramework.frontstages.onPanelPinnedChangedEvent.emit({\r\n panelDef: this,\r\n pinned,\r\n });\r\n }\r\n\r\n /** Location of panel. */\r\n public get location(): StagePanelLocation { return this._location; }\r\n\r\n /** Panel state. Defaults to PanelState.Open. */\r\n public get panelState() {\r\n // istanbul ignore else\r\n if (UiFramework.frontstages.activeFrontstageDef) {\r\n const [state] = UiFramework.frontstages.activeFrontstageDef?.getPanelCurrentState(this);\r\n return state;\r\n }\r\n // istanbul ignore next\r\n return this.defaultState;\r\n }\r\n\r\n public set panelState(panelState: StagePanelState) {\r\n if (panelState === this._panelState)\r\n return;\r\n const frontstageDef = UiFramework.frontstages.activeFrontstageDef;\r\n if (frontstageDef && frontstageDef.nineZoneState) {\r\n const side = toPanelSide(this.location);\r\n frontstageDef.nineZoneState = produce(frontstageDef.nineZoneState, (nineZone) => {\r\n const panel = nineZone.panels[side];\r\n switch (panelState) {\r\n case StagePanelState.Minimized: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n case StagePanelState.Open: {\r\n panel.collapsed = false;\r\n break;\r\n }\r\n case StagePanelState.Off: {\r\n panel.collapsed = true;\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n this._panelState = panelState;\r\n UiFramework.frontstages.onPanelStateChangedEvent.emit({\r\n panelDef: this,\r\n panelState,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get defaultSize() { return this._defaultSize; }\r\n\r\n /** @internal */\r\n public static create(config: StagePanelConfig, location: StagePanelLocation) {\r\n const def = new StagePanelDef();\r\n def.initializeFromConfig(config, location);\r\n return def;\r\n }\r\n\r\n /** @internal */\r\n public initializeFromConfig(config: StagePanelConfig | undefined, location: StagePanelLocation): void {\r\n this._location = location;\r\n\r\n if (!config)\r\n return;\r\n this._size = config.size;\r\n this._defaultSize = config.size;\r\n this._maxSizeSpec = config.maxSize;\r\n this._minSize = config.minSize;\r\n if (config.defaultState !== undefined) {\r\n this._defaultState = config.defaultState;\r\n this._panelState = config.defaultState;\r\n }\r\n this._resizable = config.resizable ?? true;\r\n if (config.pinned !== undefined)\r\n this._pinned = config.pinned;\r\n\r\n const sections = config.sections;\r\n this._start.initializeFromConfig(sections?.start);\r\n this._end.initializeFromConfig(sections?.end);\r\n }\r\n\r\n /** Gets the list of Widgets. */\r\n public override get widgetDefs(): ReadonlyArray<WidgetDef> {\r\n return [...super.widgetDefs, ...this._start.widgetDefs, ...this._end.widgetDefs];\r\n }\r\n\r\n /** @internal */\r\n public override updateDynamicWidgetDefs(stageId: string, stageUsage: string, location: StagePanelLocation, _section: StagePanelSection | undefined,\r\n allStageWidgetDefs: WidgetDef[]) {\r\n this._start.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.Start, allStageWidgetDefs);\r\n this._end.updateDynamicWidgetDefs(stageId, stageUsage, location, StagePanelSection.End, allStageWidgetDefs);\r\n }\r\n\r\n /** @internal */\r\n public getPanelSectionDef(section: StagePanelSection) {\r\n switch (section) {\r\n case StagePanelSection.Start: {\r\n return this._start;\r\n }\r\n case StagePanelSection.End: {\r\n return this._end;\r\n }\r\n }\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class StagePanelSectionDef extends WidgetHost {\r\n /** @internal */\r\n public initializeFromConfig(config: StagePanelSectionConfig | undefined) {\r\n config?.forEach((widgetConfig) => {\r\n const widgetDef = WidgetDef.create(widgetConfig);\r\n this.addWidgetDef(widgetDef);\r\n });\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport function toPanelSide(location: StagePanelLocation): PanelSide {\r\n switch (location) {\r\n case StagePanelLocation.Bottom:\r\n return \"bottom\";\r\n case StagePanelLocation.Left:\r\n return \"left\";\r\n case StagePanelLocation.Right:\r\n return \"right\";\r\n case StagePanelLocation.Top:\r\n return \"top\";\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport const setPanelSize: (nineZone: NineZoneState, side: PanelSide, size: number | undefined) => NineZoneState = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n size: number | undefined,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.size = size === undefined ? size : Math.min(Math.max(size, panel.minSize), panel.maxSize);\r\n});\r\n\r\n/** @internal */\r\nexport const setPanelPinned: (nineZone: NineZoneState, side: PanelSide, pinned: boolean) => NineZoneState = produce((\r\n nineZone: Draft<NineZoneState>,\r\n side: PanelSide,\r\n pinned: boolean,\r\n) => {\r\n const panel = nineZone.panels[side];\r\n panel.pinned = pinned;\r\n});\r\n"]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module UiProvider
|
|
3
|
+
*/
|
|
4
|
+
import { BeUiEvent } from "@itwin/core-bentley";
|
|
5
|
+
import type { UiItemsManager as AbstractUiItemsManagerType } from "@itwin/appui-abstract";
|
|
6
|
+
import type { UiItemsManager, UiItemsProviderOverrides, UiItemsProviderRegisteredEventArgs } from "./UiItemsManager";
|
|
7
|
+
import { StagePanelLocation } from "../stagepanels/StagePanelLocation";
|
|
8
|
+
import { StagePanelSection } from "../stagepanels/StagePanelSection";
|
|
9
|
+
import { Widget } from "../widgets/Widget";
|
|
10
|
+
import { ProviderItem } from "./ProviderItem";
|
|
11
|
+
import { UiItemsProvider } from "./UiItemsProvider";
|
|
12
|
+
import { ToolbarItem, ToolbarOrientation, ToolbarUsage } from "../toolbar/ToolbarItem";
|
|
13
|
+
import { BackstageItem } from "../backstage/BackstageItem";
|
|
14
|
+
import { StatusBarItem } from "../statusbar/StatusBarItem";
|
|
15
|
+
/** @internal */
|
|
16
|
+
export declare function createAbstractUiItemsManagerAdapter(): AbstractUiItemsManagerAdapter | undefined;
|
|
17
|
+
type Target = Pick<typeof UiItemsManager, "getWidgets" | "getToolbarButtonItems" | "getStatusBarItems" | "getBackstageItems" | "register" | "getUiItemsProvider" | "registeredProviderIds" | "hasRegisteredProviders" | "unregister" | "onUiProviderRegisteredEvent" | "clearAllProviders">;
|
|
18
|
+
declare class AbstractUiItemsManagerAdapter implements Target {
|
|
19
|
+
private readonly _adaptee;
|
|
20
|
+
constructor(_adaptee: typeof AbstractUiItemsManagerType);
|
|
21
|
+
clearAllProviders(): void;
|
|
22
|
+
get onUiProviderRegisteredEvent(): BeUiEvent<UiItemsProviderRegisteredEventArgs>;
|
|
23
|
+
unregister(providerId: string): void;
|
|
24
|
+
get hasRegisteredProviders(): boolean;
|
|
25
|
+
get registeredProviderIds(): string[];
|
|
26
|
+
register(provider: UiItemsProvider, overrides?: UiItemsProviderOverrides | undefined): void;
|
|
27
|
+
getUiItemsProvider(providerId: string): UiItemsProvider | undefined;
|
|
28
|
+
getBackstageItems(): readonly ProviderItem<BackstageItem>[];
|
|
29
|
+
getStatusBarItems(stageId: string, stageUsage: string): readonly ProviderItem<StatusBarItem>[];
|
|
30
|
+
getToolbarButtonItems(stageId: string, stageUsage: string, usage: ToolbarUsage, orientation: ToolbarOrientation): readonly ProviderItem<ToolbarItem>[];
|
|
31
|
+
getWidgets(stageId: string, stageUsage: string, location: StagePanelLocation, section?: StagePanelSection | undefined): readonly ProviderItem<Widget>[];
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=AbstractUiItemsManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractUiItemsManager.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/ui-items-provider/AbstractUiItemsManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAKH,OAAO,EAAU,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAWV,cAAc,IAAI,0BAA0B,EAK7C,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,kCAAkC,EAAE,MAAM,kBAAkB,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAA2C,WAAW,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAChI,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAyB,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAmBlF,gBAAgB;AAChB,wBAAgB,mCAAmC,8CAIlD;AAED,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,cAAc,EAAE,YAAY,GAAG,uBAAuB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,UAAU,GAAG,oBAAoB,GAAG,uBAAuB,GAAG,wBAAwB,GAAG,YAAY,GAAG,6BAA6B,GAAG,mBAAmB,CAAC,CAAC;AAE5R,cAAM,6BAA8B,YAAW,MAAM;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,OAAO,0BAA0B;IAGjE,iBAAiB,IAAI,IAAI;IAIhC,IAAW,2BAA2B,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAOtF;IAEM,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAI3C,IAAW,sBAAsB,IAAI,OAAO,CAE3C;IAED,IAAW,qBAAqB,IAAI,MAAM,EAAE,CAE3C;IAEM,QAAQ,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,wBAAwB,GAAG,SAAS,GAAG,IAAI;IAK3F,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IASnE,iBAAiB,IAAI,SAAS,YAAY,CAAC,aAAa,CAAC,EAAE;IAY3D,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,YAAY,CAAC,aAAa,CAAC,EAAE;IAY9F,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,GAAG,SAAS,YAAY,CAAC,WAAW,CAAC,EAAE;IAYtJ,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,GAAG,SAAS,YAAY,CAAC,MAAM,CAAC,EAAE;CA8B/J"}
|