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
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?
optionaldefaultTool:string|null
Definiert in: interfaces/GraphUI.ts:469
Das Werkzeug, auf dem dieser Modus basiert, wenn nichts scharfgeschaltet ist.
Standardwert
nullflyout()?
optionalflyout: (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
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?
optionalkeepPanelOpen: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
falsekind?
optionalkind:"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
'pointer'label
label:
string
Definiert in: interfaces/GraphUI.ts:444
Die Beschriftung des Schienenknopfes, wörtlich verwendet.
onEnter()?
optionalonEnter: () =>void
Definiert in: interfaces/GraphUI.ts:517
Wird aufgerufen, wenn der Modus aktiv wird.
Rückgabewert
void
onExit()?
optionalonExit: () =>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?
optionalorder: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
0panelOpen?
optionalpanelOpen: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
truepanelResizable?
optionalpanelResizable: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
falsepanelWidth?
optionalpanelWidth: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
216render()?
optionalrender: () =>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?
optionalshortcut: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?
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.