Zum Inhalt springen

pivotick v3.0.0


Pivotick / GraphUI / RailModeDefinition

Interface: RailModeDefinition ​

Definiert in: interfaces/GraphUI.ts:440

Ein auf der Modusschiene registrierter Modus – die Tür, durch die ein Integrator seinen eigenen Explore- oder Enrich-Modus erstellt.

Registrierte Modi rendern unter einem Teiler, nach den vier integrierten Modi, geordnet nach Reihenfolge. Registrieren Sie eines zu jedem Zeitpunkt im Leben des Diagramms mit graph.UIManager.addRailMode() oder von einem Plugin aus install über ctx.addRailMode(). Entweder gibt ein Entsorger zurück.

Ein 'pointer'-Modus besitzt das kontextuelle Werkzeugfeld: Er deklariert tools und kann über render alles andere hinzufügen. Ein 'flyout'-Modus stellt stattdessen eine Flyout-Fabrik bereit, deren Bedienfeld geöffnet wird, während der Modus aktiv ist.

Beispiel ​

js
const dispose = graph.UIManager.addRailMode({
    id: 'explore', label: 'Explore', icon: compassSvg, shortcut: 'E',
    tools: [{ id: 'expand', label: 'Expand', icon: plusSvg, kind: 'action', run: () => … }],
})

Eigenschaften ​

defaultTool? ​

optional defaultTool: string | null

Definiert in: interfaces/GraphUI.ts:469

Das Werkzeug, auf dem dieser Modus basiert, wenn nichts scharfgeschaltet ist.

Standardwert ​

ts
null

flyout()? ​

optional flyout: (ui) => Flyout

Definiert in: interfaces/GraphUI.ts:515

Erstellt das Flyout-Panel dieses Modus. Erforderlich für kind: 'flyout' und ansonsten ignoriert. Das Panel wird im Flyout-Slot montiert und mit dem Modus abgenommen; Die eigene mode der Unterklasse muss der id dieser Definition entsprechen.

Parameter ​

ui ​

UIManager

Rückgabewert ​

Flyout


icon ​

icon: string

Definiert in: interfaces/GraphUI.ts:449

Eine SVG-Zeichenfolge, injiziert mit innerHTML und nicht bereinigt – sie muss vertrauenswürdig sein. CSS passt die Größe auf der Schiene auf 20 Pixel an.


id ​

id: string

Definiert in: interfaces/GraphUI.ts:442

Stabile Identität: das, was der Laden bereithält, und die data-mode auf dem Schienenknopf.


keepPanelOpen? ​

optional keepPanelOpen: boolean

Definiert in: interfaces/GraphUI.ts:499

Lassen Sie das Bedienfeld geöffnet, wenn eines der Werkzeuge dieses Modus aktiviert ist. Durch die Scharfschaltung wird das Bedienfeld normalerweise ausgeblendet, sodass die Arbeitsfläche frei ist – richtig für das Lasso von Select, falsch für einen Modus, dessen Bedienfeld ** der Arbeitsbereich ist und dessen Werkzeuge nur sagen, wie es zugeführt wird.

Standardwert ​

ts
false

kind? ​

optional kind: "pointer" | "flyout"

Definiert in: interfaces/GraphUI.ts:455

'pointer' Modi besitzen das Werkzeugfeld; 'flyout' Modi öffnen eine Einstellungsüberlagerung und verfügen über keine Werkzeuge.

Standardwert ​

ts
'pointer'

label ​

label: string

Definiert in: interfaces/GraphUI.ts:444

Die Beschriftung des Schienenknopfes, wörtlich verwendet.


onEnter()? ​

optional onEnter: () => void

Definiert in: interfaces/GraphUI.ts:517

Wird aufgerufen, wenn der Modus aktiv wird.

Rückgabewert ​

void


onExit()? ​

optional onExit: () => void

Definiert in: interfaces/GraphUI.ts:523

Wird aufgerufen, wenn der Modus verlassen wird und wenn die Registrierung im aktiven Modus aufgehoben wird. Entschärfen Sie den hier aktivierten Modus. Wird nicht beim UI-Teardown aufgerufen – verwenden Sie dafür die Entsorger, die Ihr Plugin bereits verfolgt.

Rückgabewert ​

void


order? ​

optional order: number

Definiert in: interfaces/GraphUI.ts:467

Anzeigereihenfolge zwischen den registrierten Modi, aufsteigend. Gleiche Bestellungen behalten die Registrierungsreihenfolge bei. Hat keinen Einfluss auf die integrierten Modi, die immer an erster Stelle stehen.

Standardwert ​

ts
0

panelOpen? ​

optional panelOpen: boolean

Definiert in: interfaces/GraphUI.ts:475

Ob das Werkzeugfenster beim ersten Aufrufen des Modus erweitert wird. Wird standardmäßig geöffnet, sodass die Tools des Modus erkennbar sind.

Standardwert ​

ts
true

panelResizable? ​

optional panelResizable: boolean

Definiert in: interfaces/GraphUI.ts:492

Lassen Sie den Analysten das Bedienfeld dieses Modus am rechten Rand breiter oder schmaler ziehen.

Standardmäßig deaktiviert: Ein Bereich mit Symbolzeilen hat eine rechte Breite und ein Griff darauf ist ein Steuerelement, das nichts zu tun hat. Ein Modus, dessen Panel der Arbeitsbereich ist – ein Formular, eine Liste, eine Reihe von Ergebnissen – ist der Ort, an dem sich die Auswahl lohnt. Die Breite wird pro Modus für die Sitzung gespeichert und nicht beibehalten, sodass ein Neuladen erneut bei panelWidth beginnt.

Standardwert ​

ts
false

panelWidth? ​

optional panelWidth: number

Definiert in: interfaces/GraphUI.ts:481

Gibt an, wie breit das Werkzeugfenster dieses Modus in Pixeln ist. Die integrierte Breite passt zu einer Reihe von Symbolen + Beschriftungen. Ein Modus, dessen render-Slot ein Formular oder eine Liste enthält, benötigt mehr.

Standardwert ​

ts
216

render()? ​

optional render: () => HTMLElement

Definiert in: interfaces/GraphUI.ts:509

Zusätzlicher Panelinhalt, angehängt unterhalb den Werkzeugzeilen – ein Schieberegler, ein Suchfeld, alles, was die Zeilen nicht ausdrücken können. Wird immer wieder aufgerufen, wenn das Panel neu erstellt wird.

Rückgabewert ​

HTMLElement


shortcut? ​

optional shortcut: string

Definiert in: interfaces/GraphUI.ts:461

Eine einzelne Taste, die den Modus aktiviert oder das Bedienfeld umschaltet, wenn es bereits aktiv ist. Wird über den normalen Tastenbelegungsmanager registriert, sodass ein bereits gebundener Schlüssel im Schatten (mit einer Warnung) bleibt, bis dieser Modus entfernt wird.


tools? ​

optional tools: RailTool[] | () => RailTool[]

Definiert in: interfaces/GraphUI.ts:504

Die Werkzeuge des Modus als Zeilen in seinem Bedienfeld. Übergeben Sie eine Funktion, wenn die Menge von der aktuellen Auswahl oder den aktuellen Daten abhängt. Es wird bei jedem Rendern erneut gelesen.