4D v18.2Überholte und entfernte Funktionalitäten |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v18.2
Überholte und entfernte Funktionalitäten
|
Feature | Stattdessen verwenden | Status in aktueller 4D Version |
4D 32-bit/4D Server 32-bit Versionen | 4D 64-bit/4D Server 64-bit | Entfernt |
4D Write | 4D Write Pro | Entfernt |
4D View | 4D View Pro | Entfernt |
XSLT Befehle | PHP Modul libxslt oder Befehl PROCESS 4D TAGS | Entfernt |
QuickTime Unterstützung (Option für Kompatibilität) | Native Bildformate | Entfernt |
Typ Fließkomma | wird automatisch in Zahl konvertiert | Entfernt |
Nicht-Unicode Modus (konvertierte Datenbanken vor v11) | Unicode | Entfernt |
Bilder in PICT Format | Moderne Formate - mit GET PICTURE FORMATS finden Sie Bilder im alten PICT Format | Entfernt |
Schlüssel DatabaseOutsidePackage | nichts | Entfernt |
Rechts-nach-links Features | nichts | Entfernt |
Benutzerformulare | Dynamische Formulare | Überholt |
Dynamische Zuweisung von Variablen, die über HTTP empfangen werden (Option für Kompatibilität für Datenbanken, die vor v13.4 erstellt wurden) | WEB GET VARIABLES (um Variablen auszulesen) WEB GET BODY PART/WEB Get body part count (um gepostete Dateien auszulesen) | Überholt |
Konvertierte Untertabellen | N->1 Tabellen | Überholt |
Mac OS QuickDraw Schriften und Schriftnummern | Schriftnamen | Entfernt |
API QuickDraw für Plug-Ins | Neues SDK Plug-In für third-party Plug-Ins | Entfernt |
Datei und Ordner APIs auf Mac | Path to object, Object to path | Überholt |
Auf Code basierende Standardaktionen | Stringmuster ("ak" Konstanten unter dem Thema Standardaktion) | Überholt |
Mac Ressourcen | Ordner "Resources" - Ist zur Wahrung der Kompatibilität in konvertierten Anwendungen noch verwendbar. Befehle mit Schreibzugriff werden nicht mehr unterstützt. | OS (cicn Icons: entfernt) Database .RSR Dateien der Anwendung werden nicht automatisch geöffnet. Sie müssen Open resource file verwenden. |
CPU Priorität verwalten | nichts | Überholt |
Bisherige Netzwerkschicht | ServerNet | Überholt |
4D Mobile | ORDA und REST Server | Überholt |
Jeder überholte Befehl erhält die Vorsilbe _o_ und ist in 4D Listen (Code-Editor, type-ahead Funktion, etc.) nicht verfügbar. Überholte (oder veraltete) Befehle werden nicht aus vorhandenem Code entfernt und funktionieren wie gewohnt, solange sie noch unterstützt werden. Sie lassen sich weiterhin (auch wenn wir davon abraten) mit der Vorsilbe _o_ im Namen in einer Methode hinzufügen und werden korrekt interpretiert.
Befehl | Ersetzt durch | Überholt seit | |
Kapitel 4D Umgebung: | |||
_o_DATA SEGMENT LIST | - | v11 | |
Kapitel Auswahl: | |||
_o_MOBILE Return selection | ORDA | v18 | |
Kapitel Backup: | |||
_o_INTEGRATE LOG FILE | INTEGRATE MIRROR LOG FILE | v16 | |
Kapitel Benutzerformulare: | |||
_o_CREATE USER FORM | Dynamische Formulare | v17 R4 | |
_o_DELETE USER FORM | Dynamische Formulare | v17 R4 | |
_o_EDIT FORM | Dynamische Formulare | v17 R4 | |
_o_LIST USER FORMS | Dynamische Formulare | v17 R4 | |
Kapitel Bilder: | |||
_o_PICTURE TO GIF | PICTURE TO BLOB | v16 R5 | |
Kapitel Compiler: | |||
_o_ARRAY STRING | ARRAY TEXT | v12 | |
_o_C_GRAPH | (SVG mit dem Befehl GRAPH verwenden) | v12 | |
_o_C_INTEGER | C_LONGINT | v12 | |
_o_C_STRING | C_TEXT (sobald die Datenbank in Unicode ist) | v12 | |
Kapitel Dateneingabe: | |||
_o_ADD SUBRECORD | ADD RECORD in der n Tabelle einer N->1 Verknüpfung | v12 | |
_o_MODIFY SUBRECORD | MODIFY RECORD in der n Tabelle einer N->1 Verknüpfung | v12 | |
Kapitel Diagramme: | |||
GRAPH (4D Diagrammbereich verwenden) | stattdessen ein SVG Bild verwenden | v12 | |
Kapitel Drag and Drop: | |||
_o_DRAG AND DROP PROPERTIES | Befehle aus dem Kapitel Pasteboard | v17 R4 | |
Kapitel Drucken: | |||
_o_PAGE SETUP | SET PRINT OPTION, GET PRINT OPTION, Print settings to BLOB, BLOB to print settings | v18 | |
Kapitel Formulare: | |||
_o_FORM GET PARAMETER | Deaktiviert | v17 R4 | |
Kapitel Formularereignisse: | |||
_o_During | Ersetzen mit Form event code und geeignetem Ereignis | v12 | |
Kapitel Hierarchische Listen: | |||
_o_REDRAW LIST | im Code entfernen (führt seit v11 nichts mehr aus) | v11 | |
Kapitel Listboxen: | |||
LISTBOX Get property Konstanten: | |||
_o_lk display hor scrollbar/_o_lk display ver scrollbar | OBJECT GET SCROLLBAR | v16 R3 | |
_o_lk footer height | LISTBOX Get footers height | v16 R3 | |
_o_lk header height | LISTBOX Get headers height | v16 R3 | |
_o_lk hor scrollbar position/_o_lk ver scrollbar position | OBJECT GET SCROLL POSITION | v16 R3 | |
Kapitel Objekte (Formulare): | |||
_o_DISABLE BUTTON/_o_ENABLE BUTTON | OBJECT SET ENABLED | v12 | |
_o_OBJECT Get action | OBJECT Get action | v16 R3 | |
_o_OBJECT SET COLOR | OBJECT SET RGB COLORS | v18 | |
Kapitel Programmiersprache: | |||
_o_NO TRACE | Die Schaltfläche "No trace" im Debugger verwenden | v18 | |
Kapitel SQL: | |||
_o_USE EXTERNAL DATABASE | SQL LOGIN | v12 | |
_o_USE INTERNAL DATABASE | SQL LOGOUT | v12 | |
Kapitel String: | |||
_o_Mac to Win | v11 | ||
_o_Win to Mac | v11 | ||
Kapitel Systemdokumente: | |||
_o_Document type | Path to object | v12 | |
_o_Document creator | Path to object | v16 R6 | |
_o_SET DOCUMENT TYPE | Object to path | v16 R6 | |
_o_SET DOCUMENT CREATOR | Object to path | v16 R6 | |
_o_MAP FILE TYPES | UTIs und Info.plist verwenden | v16 R6 | |
Kapitel Systemumgebung: | |||
_o_Font name | Identifier für Schrift verwenden | v14 | |
OBJECT SET FONT akzeptiert für Schrift keinen Parameter Lange Ganzzahl: Dieser Parameter ist jetzt ein String und Sie müssen den Schriftnamen angeben. | |||
_o_Gestalt | Get system info / Is macOS / Is Windows | v17 | |
_o_PLATFORM PROPERTIES | Get system info / Is macOS / Is Windows | v17 | |
Kapitel Unterdatensätze: Alle Befehle | “nnn SUBRECORD” und “nnn SUBSELECTION” in einer N->1 Verknüpfung mit einer Aktion auf N-Datensatz bzw. N-Auswahl der N-Tabelle ersetzen | v12 | |
4D Internet Commands: | |||
FTP_Progress | Gibt bei Aufruf einen Fehler zurück | v16 R2 | |
Hinweis: Parameter progress wird mit FTP_Append, FTP_Receive, FTP_Send nicht mehr unterstützt |
Diese Befehle in alphabetischer Reihenfolge finden Sie im Anhang Überholte Befehle des Handbuchs 4D Programmiersprache.
Die folgenden Befehle waren bisher veraltet. Sie wurden in 4Dv17 R5 entfernt und dürfen in Ihrem Code nicht mehr verwendet werden. Beim Aufrufen lösen Sie den Fehler 33 aus: "Befehl oder Funktion ist nicht vorhanden".
Warnung: Die Syntaxprüfung oder Features zum Kompilieren können keine Aufrufe von entfernten Befehlen herausfinden. Sie müssen Ihren Code überprüfen, um sicherzustellen, dass er keine Aufrufe entfernter Befehle enthält.
Befehl | Ersetzt durch | Entfernt in |
Kapitel 4D Umgebung: | ||
_o_ADD DATA SEGMENT | - | v17 R5 |
Kapitel Benutzeroberfläche: | ||
_o_Get platform interface/_o_SET PLATFORM INTERFACE | Ist nur für konvertierte Anwendung mit der Konstanten Automatic Platform verwendbar | v17 R5 |
_o_INVERT BACKGROUND | - | v17 R5 |
Kapitel Bilder: | ||
_o_PICTURE TYPE LIST | PICTURE CODEC LIST | v17 R5 |
_o_QT COMPRESS PICTURE | CONVERT PICTURE | v17 R5 |
_o_QT COMPRESS PICTURE FILE | WRITE PICTURE FILE/PICTURE TO BLOB | v17 R5 |
_o_QT LOAD COMPRESS PICTURE FROM FILE | READ PICTURE FILE/CONVERT PICTURE | v17 R5 |
_o_SAVE PICTURE TO FILE | WRITE PICTURE FILE | v17 R5 |
Kapitel Diagramme: | ||
_o_GRAPH TABLE | Daten in Arrays setzen und GRAPH in einem SVG Bild aufrufen | v17 R5 |
Kapitel Fenster: | ||
_o_Open external window | - | v17 R5 |
Kapitel Ressourcen: | ||
_o_ARRAY TO STRING LIST | - | v17 R5 |
_o_Create resource file | - | v17 R5 |
_o_DELETE RESOURCE | - | v17 R5 |
_o_Get component resource ID | - | v17 R5 |
GET ICON RESOURCE | - | v17 R5 |
_o_SET PICTURE RESOURCE | - | v17 R5 |
_o_SET RESOURCE | - | v17 R5 |
_o_SET RESOURCE NAME | - | v17 R5 |
_o_SET RESOURCE PROPERTIES | - | v17 R5 |
_o_SET STRING RESOURCE | - | v17 R5 |
_o_SET TEXT RESOURCE | - | v17 R5 |
Kapitel String: | ||
_o_Convert case | CONVERT FROM TEXT/Convert to text bei Bedarf. | v17 R5 |
_o_ISO to Mac | Befehl aus der Methode entfernen, wenn keine Konvertierung erforderlich ist | v17 R5 |
_o_Mac to ISO | (bedeutet, dass die Anwendung im Unicode Modus läuft) | v17 R5 |
Kapitel Systemumgebung: | ||
_o_Font number | Schrift Identifier verwenden | v17 R5 |
Kapitel Web Server: | ||
_o_SET CGI EXECUTABLE | - | v17 R5 |
_o_SET WEB DISPLAY LIMITS | - | v17 R5 |
_o_SET WEB TIMEOUT | - | v17 R5 |
_o_Web Context | - | v17 R5 |
Kapitel XML: | ||
_o_XSLT APPLY TRANSFORMATION | PHP Modul libxslt oder Befehl PROCESS 4D TAGS verwenden | v17 R5 |
_o_XSLT GET ERROR | PHP Modul libxslt oder Befehl PROCESS 4D TAGS verwenden | v17 R5 |
_o_XSLT SET PARAMETER | PHP Modul libxslt module oder Befehl PROCESS 4D TAGS verwenden | v17 R5 |
Der Projektmodus ist eine wichtige Evolution in der Architektur von 4D Datenbanken. Da er auf den neuesten Software-Anforderungen für die Oberfläche und aktuellen Technologien basiert, unterstützt er einige veraltete Features nicht (siehe nachfolgende Tabellen). Solche Features sollten Sie zur besseren Anpassung an die zukünftige Projekt-Architektur nicht mehr verwenden.
Ausführliche Informationen zur Projekt-Architektur in 4D finden Sie im Dokument 4D Projects unter developer.4d.com. 4D bietet ein automatisches Export Tool, um .4db Anwendungen in Projekte zu konvertieren. Veraltete Features werden während dem Export automatisch konvertiert, entfernt oder erzeugen Fehler (siehe Anwendungen in Projekte umwandeln).
Folgende Formularobjekte und Eigenschaften erfüllen nicht die Anforderungen für aktuelle Oberflächen und sind jetzt überholt. Dynamische Formulare unterstützen sie nicht und können im Konvertierungsprotokoll eine Warnung oder einen Fehler generieren. (siehe Kommentar).
Veraltetes Feature | Status der Konvertierung | Kommentar |
Invertierte Schaltfläche | Fehler | In 3D Schaltflächen konvertieren |
Optionsbild | Fehler | In 3D Schaltflächen konvertieren |
Halbkreisskala | Fehler | In Ablaufbalken konvertieren |
Matrix | Warnung | Wird automatisch in SVG Bild konvertiert und im Ordner Resources der Anwendung gespeichert |
Optionsfeld vom Typ Boolean | Warnung | Wird unterstützt, aber automatisch in ein Paar Standardfelder mit zugewiesenen Ausdrücken: [table]Boolean_field und Not([table]Boolean_field) konvertiert |
Bildformat Im Hintergrund | - | wird in abgeschnitten (nicht-zentriert) konvertiert |
Listbox - Kompatibilität "Rollbarer Bereich" | Warnung/Fehler | Standardmäßige Features der Listbox verwenden |
Listbox - Kompatibilität "Verbundene Listboxen" | Fehler | Standardmäßige Features der Listbox verwenden |
Oberflächeneigenschaft "Drucken" der Plattform | Warnung | Objekte mit der Eigenschaft "Drucken" werden automatisch in "flat" Stil konvertiert (Schaltfläche, Kontrollkästchen, Optionsfeld, Variable/Feld mit "System" Rand |
Folgende Einstellungen für Felder sind überholt und werden bearbeitet oder zeigen im Konvertierungsprotokoll einen Fehler (siehe Kommentar).
Veraltetes Feature | Status beim Konvertieren | Kommentar |
"Nicht änderbar" | Warnung | Wird beim Export in Projekt automatisch auf Formularebene verschoben |
"Nur anzeigen" | Warnung | Wird beim Export in Projekt automatisch auf Formularebene verschoben |
"Zwingend" | Fehler | Option "Eingabe von NULL Werten verweigern" verwenden |
Folgende Editoren und Features der Toolbox sind überholt und werden in Projekten nicht unterstützt:
Veraltete Features | Status beim Konvertieren | Kommentar |
Bildbibliothek | Warnung | Bilder werden automatisch in den Ordner Resources der Anwendung exportiert |
GET PICTURE FROM LIBRARY | - | Funktioniert nicht - Stattdessen READ PICTURE FILE verwenden |
Option "Änderbar durch Anwender" für Auswahllisten | - | |
LIST OF CHOICE LISTS | - | - |
SAVE LIST | - | Runtime-Fehler bei Aufrufen in einem Projekt |
Gruppe mit Zeichen "" oder "*" | Fehler | Namen sind in Projekten reserviert |
Standardbenutzer genannt "Designer" oder "Administrator" | - | Namen sind in Projekten reserviert |
Projekte unterstützen keine bisherigen Einstellungen zur Kompatibilität. Sie werden beim Export in ein Projekt wie für eine neue Anwendung zurückgesetzt. Nutzt Ihre Anwendung noch alte Einstellungen für Kompatibilität, sollten Sie entsprechende Anpassungen vornehmen.
Wir raten dringend, dazu die Blogs unter series of blog posts devoted to how to get rid of compatibility settings zu lesen.
Ab 4D v17 R5 werden 32-bit Versionen von 4D und 4D Server weder hergestellt noch ausgeliefert. Nur 64-bit Versionen sind verfügbar, so dass 4D Applikationen die Vorteile dieses leistungsstarken Architektur vollständig nutzen können.
64-bit Versionen unterstützen zwar die meisten der bisherigen 4D Funktionalitäten, orientieren sich aber an den neuesten Technologien und unterstützen nicht solche, die schon in vorigen Versionen veraltet waren. Beim Updaten von Anwendungen, die in 32-bit entwickelt wurden, sind evtl. einige Anpassungen erforderlich. Weitere Informationen zum Updaten Ihrer Anwendungen finden Sie auf der Seite Von 32-bit Versionen auf 64-bit Versionen wechseln des Handbuchs Konvertierung in v18.
XSLT ist in 4D nicht mehr verfügbar. Beim Aufrufen eines XSLT Befehls erscheint der Fehler 33 "Befehl oder Funktion ist nicht vorhanden".
Für Kunden, die noch XSLT in 4D verwenden, bieten wir noch die Nutzung der PHP XSL library. Sie enthält ein verständliches API, mit dem Sie alle erforderlichen Operationen zum Ersetzen der XSL Transformation durchführen können. Damit können Sie auch mühelos die entfernten Befehle _o_XSLT APPLY TRANSFORMATION, _o_XSLT SET PARAMETER und _o_XSLT GET ERROR ersetzen. Ausführliche Informationen zur Verwendung von PHP XSL anstelle der überholten XSLT 4D Befehle finden Sie unter: Download XSLT with PHP technical document (PDF).
Wir empfehlen außerdem die Nutzung von 4D TAGS, wenn HTML Seiten dynamisch generiert werden sollen. Denn in den meisten Fällen lässt sich HTML Code leichter als unformatierter Text verwalten. Weitere Informationen dazu finden Sie unter dem Befehl PROCESS 4D TAGS.
In 4D v17 R5 wurde die Kompatibilitäts-Unterstützung von QuickTime (über Datenbankparameter) entfernt. Codecs für Bilder in einem Format, das QuickTime erfordert, werden auf macOS und Windows nicht mehr unterstützt.
Ab v18 werden Datenfelder vom Typ Fließkomma in 4D Anwendungen nicht mehr unterstützt. Diesen Datenfeldtyp hat bisher nur die SQL Engine von 4D genutzt. Hat Ihre Anwendung den Typ Fließkomma verwendet, wird er beim Öffnen der Anwendung in v18 automatisch in den Typ Zahl konvertiert. Vorhandene Daten werden nicht konvertiert, außer Sie komprimieren die Daten oder sichern Datensätze erneut.
Die Unterstützung des ASCII Modus, auch Nicht-Unicode Modus genannt, wurde in 4D V17 R5 und höher entfernt. Beim Öffnen einer konvertierten Anwendung, die nicht auf Unicode gesetzt ist, zeigt 4D folgende Meldung:
Diese Meldung erscheint bei jedem Starten, wenn die Option Unicode Modus auf der Seite "Kompatibilität" der Datenbank-Einstellungen nicht markiert ist.
4D Entwickler müssen in konvertierten Strukturen den Unicode Modus aktivieren. Weitere Hinweise dazu finden sie im PDF Dokument 4D v14 Konvertierung.
Ab 4D v17 R5 wird das PICT Format (von Apple seit 2005 als veraltet deklariert) nicht mehr unterstützt, d.h. Bilder im PICT Format lassen sich überhaupt nicht mehr darstellen, sie müssen konvertiert werden. Mit dem Befehl GET PICTURE FORMATS können Sie Bilder im PICT Format in Ihren Datendateien finden und herausfiltern.
Ab 4D v17 R5 wird der Schlüssel DatabaseOutsidePackage in der info.plist ignoriert. Dieser spezifische Vertriebsmodus für 4D Anwendungen im Einzelplatz mit einkompilierter Volume Desktop auf der Mac Plattform wird nicht mehr unterstützt.
Ab 4D v17 R4 unterstützt 4D unter Windows nicht mehr spezifisch Oberflächen von rechts-nach-links. Die dazugehörigen Optionen in den Datenbank- oder Formulareigenschaften wurden entfernt. In konvertierten Anwendungen werden Einstellungen für rechts-nach-links im laufenden Betrieb ignoriert.
Ab 4D v17 R4 sind Benutzerformulare überholt. Für anpassbare Benutzeroberflächen empfehlen wir jetzt, dynamische Formulare zu verwenden (siehe Dynamische Formulare des Handbuchs 4D Designmodus). Alle Befehle im Kapitel "Benutzerformulare" sind überholt.
Zur Wahrung der Kompatibilität werden Benutzerformulare noch unterstützt, sie sollten aber nicht mehr verwendet werden. Denn dieses Feature wird in zukünftigen Releases entfernt.
4D Mobile ist ab 4D v18 überholt und sollte nicht mehr verwendet werden. Der Zugriff auf 4D Daten über REST Anfragen wird jetzt über ORDA Technologie und den 4D REST Server unterstützt.
In früheren 4D Versionen hat der Web Server automatisch den Wert von Variablen, die über ein Web Formular oder eine URL gesendet wurden, in 4D Variablen kopiert, wenn sie denselben Namen hatten.
Dieses Prinzip wird aus Sicherheitsgründen in 4D v14 nicht beibehalten, d.h. der Wert von Web Variablen wird nicht mehr automatisch 4D Variablen zugewiesen. Um über POST oder GET gesendete Variablen zu finden, müssen Sie ausschließlich den Befehl WEB GET VARIABLES verwenden.
Um per POST übertragene Dateien zu erhalten, müssen Sie den Befehl WEB GET BODY PART bzw. WEB Get body part count verwenden.
Hinweis: Die dynamische Zuweisung ist in 4D Anwendungen, die mit v13.4 oder höher erstellt wurden, standardmäßig deaktiviert.
Die bisherige Funktionsweise wird zur Wahrung der Kompatibilität standardmäßig in Anwendungen beibehalten, die mit einer Version älter als 13.4 erstellt wurden. Sie können bei Bedarf in den Datenbank-Eigenschaften auf der Seite Kompatibilität die Option Automatische Zuweisung von Variablen deaktivieren.
Da diese Funktionsweise überholt und unsicher ist, empfehlen wir dringend, diese Option in konvertierten Anwendungen zu deaktivieren (und Ihren Code bei Bedarf anzupassen).
4D warnt Entwickler schon seit einigen Hauptversionen (Major Releases) davor, Untertabellen zu verwenden. Schon seit 4D v11 lässt sich kein Datenfeld vom Typ Untertabelle mehr anlegen. Unterdatensätze haben einige bekannte Einschränkungen. Sie werden z.B. immer in den Speicher geladen und nicht von den Befehlen SEND RECORD oder DUPLICATE RECORD verwaltet.
Wir planen vorerst nicht, die Unterstützung von Untertabellen zu entfernen. Entwickler sollten aber auf alle Fälle ihre Untertabellen in reguläre N-> Tabellen umwandeln, da sie in einer zukünftigen 4D Hauptversion entfernt werden.
Im allgemeinen gibt es zwei Vorgehensweisen zum Entfernen von Untertabellen. Hier ein ein kurzer Überblick:
“den Code an den erforderlichen Stellen ändern” bedeutet im Einzelnen:
Hinweis: Ab 4D v14 R3 können Sie dem speziellen Feld "id_added_by_converter" selbst Werte zuweisen. Dieses Feld fügt 4D automatisch hinzu, wenn eine Anwendung mit Untertabellen konvertiert wird. So können Sie die spezielle Verknüpfung "Untertabelle Verknüpfung" beibehalten und verknüpfte Datensätze ändern oder hinzufügen, als ob sie normale Datensätze wären und müssen nicht mehr überholte Befehle wie _o_CREATE SUBRECORD verwenden. Sind dann all Ihre Methoden aktualisiert, können Sie diese spezielle Verknüpfung durch eine reguläre Verknüpfung ersetzen, ohne Ihren Code zu verändern.
QuickDraw Schriften, wie z.B. Geneva, Chicago sind überholt und Sie sollten auch nicht mehr ID Nummern für Schriften verwenden.
Zur Wahrung der Kompatibilität ist die Funktion _o_Font name noch verfügbar, sie wird aber in nachfolgenden Versionen entfernt. Der Befehl OBJECT SET FONT akzeptiert jetzt nur Schriftnamen.
Es gibt zwei Arten: Plug-Ins, die das neue Plug-In API nutzen und solche, die noch das alte mit QuickDraw nutzen.
Für Plug-Ins mit der alten Toolbox (mit QuickDraw) gilt folgendes: Zur Wahrung der Kompatibilität wird das Zeichnen/Rendering nicht mehr – wie in früheren Versionen – direkt in einem QuickDraw Port ausgeführt, sondern über einen GWorld QuickDraw offscreen Bereich, speziell für dieses Plug-Ins.
Deshalb müssen Sie ein paar Regeln beachten, insbesondere dass Plug-Ins nicht den aktuellen Port verändern dürfen, der vom Container gesetzt wird (Formularobjekt).
Für Plug-Ins mit der neuen Toolbox gilt folgendes: Es wird nur die neue Toolbox verwendet und nicht QuickDraw. Ausführliche Informationen finden Sie unter https://github.com/4D/4D-Plugin-SDK)
Ab 4D v16 R6 sind auf Mac OS 9 basierende APIs zur Datei- und Ordnerverwaltung überholt. Diese APIs sind bei Apple schon seit längerer Zeit überholt.
4D Befehle, die auf den alten APIs basieren, wurden entsprechend umbenannt: _o_Document type, _o_Document creator, _o_SET DOCUMENT TYPE, _o_SET DOCUMENT CREATOR und _o_MAP FILE TYPES. Diese Befehle werden zur Wahrung der Kompatibilität beibehalten. Sie sind jedoch überholt und sollten nicht mehr verwendet werden. 4D enthält zwei neue Befehle zum Verwalten von Pfadnamen und Dateiendungen: Path to object und Object to path.
Standardaktionen wurden in 4D v16 R3 intern umgestaltet. Sie basieren jetzt auf Stringmustern und unterstützen Parameter. Weitere Informationen dazu finden Sie im Abschnitt Standardaktionen.
In Ihren konvertierten Anwendungen werden Standardaktionen transparent an das neue Design angepasst. In der 4D Programmiersprache basierten Standardaktionen bisher auf Code-Werten. Dieses Prinzip ist überholt und sollte nicht mehr eingesetzt werden:
Dies ist eine weitere alte Mac OS Technologie, die seit Mac OS X 10.4 überholt ist (Tiger, 2005). Ressourcen dienten zum Speichern von Strukturdaten, wie Text und Strings zur Lokalisierung, Icons, etc. Im Grunde genommen sind aber nicht die Ressourcen ansich überholt, sondern vielmehr die Unterstützung einer eigenen Datei auf der Festplatte, auch bekannt als Resource Fork. Sie ist Teil des Mac OS Dateisystems, und Apple hat seit Einführung von OS X die Unterstützung dieser Datei eingestellt, da sie mit anderen Dateisystemen, wie Unix oder Windows, nicht kompatibel ist und beim Übertragen von Dateien über das Netzwerk eine Menge Probleme verursachte.
Unter Windows wird dieser Mechanismus emuliert und Mac Ressourcen liegen in einer .RSR Datei.
Wir raten jedoch davon ab, diesen alten Mechanismus weiter zu verwenden - auch wenn es noch APIs zum Verwalten dieser Ressourcen gibt (und Mac OS in Data Forks gespeicherte Ressourcen transparent verwaltet). Dafür gibt es folgende Gründe:
Befehle, die Ressourcen schreiben oder erstellen, werden nicht mehr unterstützt.
Die meisten 4D Applikationen, die Ressourcen nutzen, verwenden String Listen, d.h. ‘STR#’ Ressourcen. 4D bietet Tools, um einfach von STR# zu XLIFF zu wechseln:
Für andere Arten von Ressourcen gilt folgendes:
Das Verändern der CPU Priorität ist jetzt eine überholte Einstellung. Da die Speicherverwaltung für 4D Applikationen im Laufe der Versionen optimiert wurde, muss die Standardeinstellung nicht mehr verändert werden, dies kann u.U. sogar kontraproduktiv sein. Es gibt folgende Anpassungen:
Produkt: 4D
Thema: Überholte und entfernte Funktionalitäten
4D v18 Release Notes ( 4D v18)
4D v18.x Release Notes ( 4D v18.1)
4D v18.x Release Notes ( 4D v18.2)