Feldklasse
Abstrakte Klasse für ein bearbeitbares Feld.
Unterschrift:
export declare abstract class Field<T = any> implements IASTNodeLocationSvg, IASTNodeLocationWithBlock, IKeyboardAccessible, IRegistrable
Implementiert: IASTNodeLocationSvg, IASTNodeLocationWithBlock, IKeyboardAccessible, irregistrierbar
Konstruktoren
Konstruktor | Modifikatoren | Beschreibung |
---|---|---|
(Konstruktor)(Wert, Opt_Validator, Opt_Config) | Erstellt eine neue Instanz der Field -Klasse |
Attribute
Attribut | Modifikatoren | Typ | Beschreibung |
---|---|---|---|
BorderRect_ | protected |
SVGRectElement | null | Das SVG-Rahmenelement des gerenderten Felds. |
clickTarget_ | protected |
Element | null | Das Element, an das der Klick-Handler gebunden ist |
Konstanten_ | protected |
ConstantProvider | Null | Konstanten, die dem Renderer des Quellblocks zugeordnet sind |
CURSOR | String | Bewegen Sie den Mauszeiger über den Hotspot, der den Editor initiiert. | |
STANDARDWERT | T | null | Wenn Sie den in **Field** festgelegten Standardwert überschreiben möchten, aktualisieren Sie den Prototyp direkt. Beispiel: |
FieldImage.prototype.DEFAULT_VALUE = null;
|
| BEARBEITBAR | | Boolesch | Bearbeitbare Felder zeigen in der Regel an, dass sie bearbeitet werden können. Sie werden auch vom Serialisierer gespeichert. |
| enabled_ | protected
| boolean | Kann der Feldwert im Editor für einen bearbeitbaren Block geändert werden? |
| fieldGroup_ | protected
| SVGGElement | null | Das SVG-Gruppenelement des gerenderten Felds |
| isDirty_ | protected
| Boolesch | Muss dieser Block neu gerendert werden? |
| maxDisplayLength | | number | Maximale Textlänge, die angezeigt werden soll, bevor eine Ellipse hinzugefügt wird. |
| Name? | | String | (Optional) Name des Felds. Innerhalb jedes Blocks eindeutig. Statische Labels sind in der Regel unbenannt. |
| NBSP |
readonly
static
protected
| Größe | |
| SKIP_SETUP | readonly
static
protected
| Blockieren | null | Blockiert dieses Feld. Beginnt als null und wird dann in init festgelegt. |
| textContent_ | protected
| Text | null | Der Textinhalt des gerenderten Felds |
| textElement_ | protected
| SVGTextElement | null | Das SVG-Textelement des gerenderten Felds. |
| validator_ | protected
| FieldValidator<T> | null | Validierungsfunktion wird aufgerufen, wenn ein Nutzer ein bearbeitbares Feld bearbeitet. |
| Wert_ | protected
| T | Null | |
| visible_ | protected
| boolesch | Ist das Feld aufgrund des minimierten Blocks sichtbar oder ausgeblendet? |
Methoden
Methode | Modifikatoren | Beschreibung |
---|---|---|
bindEvents_() | protected |
Binden Sie Ereignisse an das Feld. Kann von abgeleiteten Klassen überschrieben werden, wenn sie eine benutzerdefinierte Eingabebehandlung durchführen müssen. |
configure_(config) | protected |
Verarbeiten Sie die an das Feld übergebene Konfigurationszuordnung. |
CreateBorderRect_() | protected |
Erstellt ein Feldrahmenrechteck-Element. Nicht von Unterklassen zu überschreiben. Ändern Sie stattdessen das Ergebnis der Funktion in initView oder erstellen Sie eine separate Funktion, die aufgerufen werden soll. |
createTextElement_() | protected |
Erstellen Sie ein Feldtextelement. Nicht von Unterklassen zu überschreiben. Ändern Sie stattdessen das Ergebnis der Funktion in initView oder erstellen Sie eine separate Funktion, die aufgerufen werden soll. |
doClassValidation_(opt_newValue) | protected |
Wird verwendet, um einen Wert zu validieren. Gibt standardmäßig eine Eingabe zurück. Kann von Unterklassen überschrieben werden, siehe FieldDropdown. |
doValueUngültiger_Wert | protected |
Wird verwendet, um das Feld über einen ungültigen Wert zu informieren. Kann von Unterklassen überschrieben werden, siehe FieldTextInput. Standardmäßig keine Operation. |
doValueUpdate_(neuer Wert) | protected |
Wird verwendet, um den Wert eines Felds zu aktualisieren. Kann von abgeleiteten Klassen überschrieben werden, um eine benutzerdefinierte Speicherung von Werten/Aktualisierung externer Objekte durchzuführen. |
getAbsoluteXY_() | protected |
Gibt die absoluten Koordinaten der oberen linken Ecke dieses Felds zurück. Der Ursprung (0,0) ist die linke obere Ecke des Seitentexts. |
getBorderRect() | protected |
Ruft das Rahmenrechteckelement ab. |
getClickTarget_() | protected |
Das Element, an das der Klick-Handler gebunden werden soll. Enthält standardmäßig kein SVG-Stammverzeichnis des Felds. Wenn Sie auf ein bearbeitbares Feld klicken, wird der Editor geöffnet. |
getConstants() | Renderer-Konstantenanbieter abrufen. | |
getDisplayText_() | protected |
Ruft den Text aus diesem Feld ab, der im Block angezeigt werden soll. Kann aufgrund von Auslassungspunkten und anderen Formatierungen von getText abweichen. |
getFlipRtl() | Gibt zurück, ob das Feld in RTL umgedreht werden soll. | |
getSize() | Gibt Höhe und Breite des Felds zurück. Dies sollte *in der Regel* der einzige Ort sein, von dem aus render_ abgerufen wird. |
|
getSourceBlock() | Rufen Sie den Block ab, an den dieses Feld angehängt ist. | |
getSvgRoot() | Ruft das Gruppenelement für dieses bearbeitbare Feld ab. Wird zum Messen der Größe und für die Positionierung verwendet. | |
getText_() | protected |
Ein Entwickler-Hook zum Überschreiben des zurückgegebenen Texts dieses Felds. Wird überschrieben, wenn die Textdarstellung des Felds nicht nur eine Stringumwandlung des Werts ist. Zurück zu null, um auf ein String-Umwandlungsmodell zu verweisen. |
getText() | Ruft den Text aus diesem Feld ab. Überschreibt getText_, um ein anderes Verhalten bereitzustellen, als nur den Wert in einen String umzuwandeln. | |
getTextContent() | protected |
Ruft den Textinhalt ab. |
getTextElement() | protected |
Ruft das Textelement ab. |
getTooltip() | Gibt den Kurzinfo-Text für dieses Feld zurück. | |
getValidator() | Ruft die Validierungsfunktion für bearbeitbare Felder ab. Wenn nicht festgelegt, wird null festgelegt. | |
getValue() | Ruft den aktuellen Wert des Felds ab. | |
isClickable() | Prüfen Sie, ob dieses Feld die Funktion „showEditor_“ definiert. | |
isCurrentlyEditable() | Prüfen Sie, ob dieses Feld derzeit bearbeitet werden kann. Einige Felder (z.B. Textlabels) können NICHT BEARBEITEN. Andere Felder können BEARBEITBAR sein, sind aber in nicht bearbeitbaren Blockierungen vorhanden oder derzeit deaktiviert. | |
isEnabled() | Prüfen Sie, ob der Wert dieses Felds im Editor geändert werden kann, wenn der Quellblock bearbeitet werden kann. | |
isSerializable() | Prüfen Sie, ob dieses Feld vom XML-Renderer serialisiert werden soll. Behandelt die Logik für Abwärtskompatibilität und inkonsistente Zustände. | |
isTabNavigable() | Gibt an, ob das Feld über den Tab navigierbar ist. | |
isViewable() | Ruft ab, ob dieses bearbeitbare Feld sichtbar ist. | |
loadLegacyState(callingClass, status) | Lädt den angegebenen Status mithilfe der alten XML-Hooks, falls diese verwendet werden sollten. Gibt „true“ zurück, um anzugeben, dass der Ladevorgang verarbeitet wurde, andernfalls „false“. | |
onMouseDown_(e) | protected |
Verarbeitet ein Zeigerereignis für ein Feld. |
onShortcut(_Shortcut) | Behandelt die angegebene Tastenkombination. | |
positionBorderRect_() | protected |
Positionieren Sie den Rahmenrechteck eines Felds nach einer Größenänderung. |
positionTextElement_(xOffset, contentWidth) | protected |
Positionieren Sie das Textelement eines Felds nach einer Größenänderung. Dies übernimmt sowohl die LTR- als auch die RTL-Positionierung. |
render_() | protected |
Wird von getSize() verwendet, um alle DOM-Elemente zu verschieben bzw. ihre Größe anzupassen und die neue Größe abzurufen. Alle Renderings, die Auswirkungen auf die Größe/Form des Blocks haben, sollten hier vorgenommen und durch getSize() ausgelöst werden. |
saveLegacyState(callingClass) | protected |
Gibt eine Stringversion des XML-Status zurück, falls dieser verwendet werden sollte. Andernfalls wird null zurückgegeben, um das Feld mit seiner eigenen Serialisierung zu verwenden. |
setEnabled(aktiviert) | Legen Sie fest, ob der Wert dieses Felds im Editor geändert werden kann, wenn der Quellblock bearbeitet werden kann. | |
setSourceBlock(block) | Dieses Feld wird an einen Block angehängt. | |
setTooltip(newTip) | Legt die Kurzinfo für dieses Feld fest. | |
setValidator(handler) | Legt eine neue Validierungsfunktion für bearbeitbare Felder fest oder löscht eine zuvor festgelegte Validierung. Die Validierungsfunktion übernimmt den neuen Feldwert und gibt den validierten Wert zurück. Der validierte Wert kann der Eingabewert, eine geänderte Version des Eingabewerts oder null sein, um die Änderung abzubrechen. Wenn die Funktion nichts oder nicht definierte Werte zurückgibt, wird der neue Wert als gültig akzeptiert. So können Sie Felder mit der validierten Funktion als Änderungsbenachrichtigung auf Feldebene verwenden. |
|
setValue(newValue) | Wird verwendet, um den Wert des Felds zu ändern. Führt Validierung und Ereignisse aus. Abgeleitete Klassen sollten doClassValidation_ und doValueUpdate_ statt dieser Methode überschreiben. | |
showEditor_(_e) | protected |
Entwickler-Hook zum Erstellen eines Editors für das Feld. Dies ist standardmäßig keine Operation und muss überschrieben werden, um einen Editor zu erstellen. |
updateEditable() | Fügen Sie die UI hinzu oder entfernen Sie sie, um anzugeben, ob dieses Feld bearbeitet werden kann. | |
updateMarkers_() | protected |
Ziehen Sie bei Bedarf alle angehängten Marker oder Cursor-SVG-Dateien neu. |
updateSize_(opt_margin) | protected |
Aktualisiert die Größe des Felds basierend auf dem Text. |