24. Juni 2022 : Version 6.00 LTS
- Hinzugefügt: Apple M1 Support ! -
Hinzugefügt: Raspberry Support (32-Bit und 64-Bit) !
- Hinzugefügt: ein neuer C-Backend-Compiler für
alle PureBasic-Versionen - Hinzugefügt:
#PB_Compiler_Backend, #PB_Backend_C und #PB_Backend_Asm Compiler-Konstanten
- Hinzugefügt: #PB_Compiler_64Bit und
#PB_Compiler_32Bit Compiler-Konstanten - Hinzugefügt: #PB_Compiler_Optimizer Konstante - welche auf
#True gesetzt ist, wenn der Optimizer eingeschaltet ist - Hinzugefügt: Support für Windows 11, OS X 11 und 12 bei
OSVersion() - Hinzugefügt: /OPTIMIZER, -z,
--optimizer Flag bei Nutzung der Kommandozeile, und eine 'Code-Optimizer
verwenden' Checkbox in den IDE 'Compiler-Optionen', um die C Optimierungen
einzuschalten - Hinzugefügt: WebGadget() Support
für GTK3 auf Linux - Hinzugefügt: CreateShader(),
CreateShaderMaterial(), MaterialShaderAutoParameter(),
MaterialShaderParameter(), MaterialShaderTexture() - Hinzugefügt: optionaler Parameter bei MeshFace() zum
Erstellen eines Vierecks (Quads) - Hinzugefügt:
optionaler Gravitationskraftvektor bei WorldGravity() - Hinzugefügt: optionaler PositionsModus bei ApplyEntityForce()
- Hinzugefügt: GetEntityMesh(),
CreateCubicTexture(), CreateAnimatedMaterial() - Hinzugefügt: neuer Modus bei CreateDataMesh():
#PB_Mesh_DiagonalShortestLength, #PB_Mesh_DiagonalClosestNormal,
#PB_Mesh_DiagonalAlternate, #PB_Mesh_DiagonalRegular1, #PB_Mesh_DiagonalRegular2
- Hinzugefügt: neue Strukturen: Vector3, Vector4
- Hinzugefügt: vordefinierte Shader:
#PB_Material_ColorShader, #PB_Material_PerpixelShader, #PB_Material_BumpShader,
#PB_Material_SkyShader, #PB_Material_WaterShader, #PB_Material_WaterShaderRTT,
#PB_Material_OceanShader, #PB_Material_PointSpriteSphereShader - Hinzugefügt: neue Modi bei SetMaterialAttribute():
#PB_Material_PointSprite, #PB_Material_DepthBias - Hinzugefügt: neuer optionaler 'Farbe' Parameter bei
CreateMaterial() - Hinzugefügt: neuer optionaler
'Glanzfarbe' Parameter bei MaterialShininess() - Hinzugefügt: neue optionale 'v' und 'w' Parameter bei
MeshVertexTextureCoordinate() - Hinzugefügt: neuer
optionaler 'Lod' Parameter bei CreateCamera() - Hinzugefügt: neue Modi bei AddMaterialLayer():
#PB_Material_ModulateX2, #PB_Material_ModulateX4, #PB_Material_AddSigned,
#PB_Material_Substract, #PB_Material_BlendDiffuseAlpha,
#PB_Material_BlendCurrentAlpha - Hinzugefügt: Neue
kontextbezogene Konstantenanzeige für Auto-Complete in der IDE (Fr34k -
https://github.com/fantaisie-software/purebasic/pull/183) - Hinzugefügt: 3 neue Trigger für benutzerdefinierte Werkzeuge
in der IDE: "Datei öffnen - nicht-PB Binärdatei", "Datei öffnen - nicht-PB
Textdatei", "Datei öffnen - mit spezieller Dateiendung" (HeX0R101 -
https://github.com/fantaisie-software/purebasic/pull/195) - Hinzugefügt: Neues 'Ersetzen' Tastenkürzel (CTRL+H) in der
IDE, welches den Finden-Dialog mit aktiviertem Ersetzen-Modus öffnet (ChrisRfr -
https://github.com/fantaisie-software/purebasic/pull/184) - Hinzugefügt: Backface-Culling beim Sprite-OpenGL-Subsystem,
um schneller zu sein und mit DirectX9/11 übereinzustimmen - Hinzugefügt: automatische DPI-Unterstützung für die Menu und
ToolBar Bibliotheken (Windows)
- Aktualisiert:
SetMaterialColor() kann jetzt mittels '|' mehrere Farbtypen auf einmal nutzen
- Aktualisiert: fasm, polink, polib und porc auf
die neuesten Versionen (Windows) - Aktualisiert:
Movie Bibliothek auf OS X aktualisiert zwecks Unterstützung moderner OS X
Versionen - Aktualisiert: SQLite auf 3.38.2 -
Aktualisiert: zlib auf 1.12.12 - Aktualisiert: libpq (PostgreSQL) auf 14.2 - Aktualisiert: der Standalone-Debugger ist jetzt DPI-fähig
(Windows)
- Repariert: die IDE für hohe
Auflösungen 'High-DPI' (Windows)
- Geändert:
umbenannte Strukturen PB_MeshFace -> MeshFace und PB_MeshVertex ->
MeshVertex - Geändert: der Name des /EXE
Kommandozeilen-Flags in /OUTPUT um kohärenter zu sein (das alte Kürzel
funktioniert noch für die Rückwärtskompatibilität, ist aber nicht mehr
dokumentiert) - Geändert: die kurze Version von
/CONSTANT von '-o' in '-co' da '-o' jetzt für /OUTPUT genutzt wird - Geändert: die Art und Weise, wie die Map-Elemente erstellt
werden, wenn passiver Syntax verwendet wird, um konsistenter zu sein - Geändert: OGRE unterstützt jetzt nur noch OpenGL, was die
Portierung auf Linux/OSX erleichtert und es erlaubt, sich nur auf GLSL für
Shader zu konzentrieren - Geändert: Das
Standard-Subsystem für Screen/Sprite ist jetzt OpenGL unter Windows für mehr
Konsistenz. DirectX9 ist weiterhin als Subsystem verfügbar. - Changed: die Movie Bibliothek auf Raspberry zwecks
Verwendung von libVLC, da xine darauf nicht funktioniert - Changed: die Mouse Bibliothek auf Windows zwecks Verwendung
von RawInput anstelle von DirectX, um High-DPI Mäuse zu unterstützen - Changed: InitNetwork() wird nicht mehr benötigt, um
Netzwerkfunktionen zu verwenden (veraltet)
- Entfernt: x86 Version von PureBasic für OS X, da sie seit OS X
Catalina nicht mehr unterstützt wurde (das älteste unterstützte OS X ist jetzt
10.10 - veröffentlicht in 2014). - Entfernt: die
'Help' Bibliothek auf Linux - Entfernt: Nvidia CG
Support für OGRE, da es von Nvidia seit einiger Zeit nicht mehr unterstützt wird
- Entfernt: ToolBarStandardButton(), da es keine hohe
Auflösung ('High-DPI') unterstützt und sehr schlecht aussieht
23. November 2020 : Version 5.73 LTS
- Hinzugefügt: #PB_HTTP_WeakSSL bei
HTTRequest() um ältere Server zu unterstützen - Hinzugefügt: #PB_HTTP_Debug zum Ausgeben von
Debug-Informationen in der Konsole - Hinzugefügt:
Neue Einrückungs-Option (Shardik): link -
Hinzugefügt: Option zum automatischen Umbruch der Suche
am Dateiende (kenmo) link -
Hinzugefügt: Neue Editor-Tastenkürzel
(Groß-/Kleinschreibung und deren Umkehrung)(kenmo) link
- Aktualisiert: SQLite auf Version 3.33.0
- Repariert: Auto-Vervollständigung auf Linux
(mk-soft) link -
Repariert: IDE-Absturz auf MacOS mit TouchBar (mk-soft)
link
- Repariert: Einige Bugs im Compiler und den
Bibliotheken
30. März 2020 : Version 5.72 LTS
- Hinzugefügt: #PB_HTTP_Headers zu
HTTPInfo(), um die Kopfzeilen (Header) zu erhalten - Hinzugefügt: #PB_HTTP_HeadersOnly zu HTTPRequest(), um nur
die Kopfzeilen anzufordern (GetHTTPHeaders() ist jetzt veraltet) - Hinzugefügt: Scintilla Wortzeichen-Auswahl als
Benutzereinstellung in der IDE (kenmo) Link -
Hinzugefügt: Zoom-Tastaturkürzel in der IDE (kenmo) Link -
Hinzugefügt: Neue Editor-Tastenkürzel-Funktionen in der
IDE (kenmo) Link -
Hinzugefügt: Memview (idle) Link
- Geändert: PostEvent() gibt jetzt ein
Ergebnis zurück, da es in einigen extremen Fällen fehlschlagen kann. - Geändert: Sign() gibt jetzt eine Ganzzahl anstelle einer
Fließkommazahl zurück. - Geändert: Auf MS Windows
wurde der Standard-Zeichensatz von MS Shell Dlg in Segoe UI Größe 9 geändert.
- Aktualisiert: OpenJPEG Bibliothek auf Version
2.3.1 - Aktualisiert: PCRE Bibliothek auf Version
8.44 - Aktualisiert: libpng auf Version 1.6.37
- Aktualisiert: libjpeg auf Version 9d - Aktualisiert: libtiff auf Version 4.1.0 - Aktualisiert: expat auf Version 2.2.9 - Aktualisiert: libflac auf Version 1.3.3 - Aktualisiert: libogg auf Version 1.3.4 - Aktualisiert: libvorbis auf Version 1.3.6 - Aktualisiert: sqlite auf Version 3.31.1 - Aktualisiert: curl auf Version 7.68.0
- Repariert: 'Vorheriges suchen' Einfrieren der IDE (kenmo) Link -
Repariert: Drag'n'Drop Position von Gadgets im
FormDesigner (ChrisR) Link -
Repariert: Fehler beim erneuten Aktivieren von
Schaltflächen im Fenster 'Suchen in Dateien' in der IDE (Sicro) Link -
Repariert: Anzeige-Fehler im Fenster
'#WINDOW_Form_Parent' des FormDesigners (Sicro) Link -
Repariert: Viele Verbesserungen an der Dokumentation
(Andre und Mesa) - Repariert: Einige Bugs im
Compiler und den Bibliotheken
16. August 2019 : Version 5.71 LTS
- Repariert: Einige Bugs im Compiler und den
Bibliotheken
2. Januar 2019 : Version 5.70 LTS
- Hinzugefügt: Brandneues QT Subsystem für
Linux - Hinzugefügt: HTTPRequest(),
HTTPRequestMemory() (gesponsert von c-wayne) - Hinzugefügt: UseMySQLDatabase() (gesponsert von Paul) -
Hinzugefügt: Unterstützung für DPI-Erkennung bei
Windows-Programmen - Hinzugefügt: #PS, #NPS, #PS$
and #NPS$ Konstanten (Pfadtrennzeichen abhängig vom Betriebssystem) - Hinzugefügt: #PB_JSON_NoClear Unterstützung bei
ExtractJSONStructure - Hinzugefügt:
#PB_Path_Winding Füllmodus beim VectorDrawing - Hinzugefügt: DesktopResolutionX(), DesktopResolutionY(),
DesktopScaledX(), DesktopScaledY(), DesktopUnscaledX(), DesktopUnscaledY() -
Hinzugefügt: ein optionaler 'Modus' Parameter für
OpenConsole() - Hinzugefügt:
MaterialTextureAliases() - Hinzugefügt:
#PB_Vehicle_IsInContact, #PB_Vehicle_ContactPointX/Y/Z für GetVehicleAttribute()
- Hinzugefügt: #PB_Vehicle_ContactPointNormalX/Y/Z
für GetVehicleAttribute() - Hinzugefügt:
#PB_Vehicle_CurrentSpeedKmHour, #PB_Vehicle_ForwardVectorX/Y/Z für
GetVehicleAttribute() - Hinzugefügt:
#PB_Material_ProjectiveTexturing für SetMaterialAttribute() - Hinzugefügt: ParticleScaleRate(), ParticleAngle(),
CameraReflection() - Hinzugefügt: BuildMeshLod(),
MeshVertex(), CreateDataMesh() - Hinzugefügt:
EntityDirection(), EntityDirectionX(), EntityDirectionY(), EntityDirectionZ()
- Hinzugefügt: #PB_Local/#PB_Parent/#PB_World
Unterstützung für ApplyEntityForce(), ApplyEntityImpulse(), ApplyEntityTorque()
und ApplyEntityTorqueImpulse()
- Repariert:
Einige Bugs im Compiler und den Bibliotheken
4. Februar 2018 : Version 5.62
- Repariert: Einige Bugs im Compiler und den
Bibliotheken
7. Januar 2018 : Version 5.46 LTS
- Repariert: Einige Bugs im Compiler und den
Bibliotheken
12. September 2017 : Version 5.61
- Repariert: Das Touchbar-Problem beim neuen
MacBook Air und das DebugOutput-Problem auf Windows. - Repariert: Viele Fehler behoben. Bemerkenswerte Bug-Fixes
sind: Prototyp und Quad-Return waren fehlerhaft, MacBook Pro Absturz und
OptionGadget unter Windows unterstützt jetzt die Tastatur. - Aktualisiert: Das MacOS X-Paket ist nun eigenständig
("self-contained"), um kompatibel mit OSX Sierra zu sein.
- Aktualisiert: Diese Version ist mit neuen Zertifikaten
signiert, um falsche positive (Antivirus) zu vermeiden.
10. August 2017 : Version 5.45 LTS
- Repariert: Das Touchbar-Problem beim neuen
MacBook Air und das DebugOutput-Problem auf Windows. - Repariert: Viele Fehler behoben. Bemerkenswerte Bug-Fixes
sind: Prototyp und Quad-Return waren fehlerhaft, MacBook Pro Absturz und
OptionGadget unter Windows unterstützt jetzt die Tastatur. - Aktualisiert: Das MacOS X-Paket ist nun eigenständig
("self-contained"), um kompatibel mit OSX Sierra zu sein.
- Aktualisiert: Diese Version ist mit neuen Zertifikaten
signiert, um falsche positive (Antivirus) zu vermeiden.
2. März 2017 : Version 5.60
- Hinzugefügt: GIF Decoder Support
- Hinzugefügt: Unterstützung für große Icons und Text in der ToolBar Bibliothek
- Hinzugefügt: SetImageFrame(), GetImageFrame(), ImageFrameCount(), AddImageFrame()
- Hinzugefügt: RemoveImageFrame(), SetImageFrameDelay(), GetImageFrameDelay()
- Hinzugefügt: UserAgent Unterstützung bei ReceiveHTTPMemory(), ReceiveHTTPFile() und GetHTTPHeader()
- Hinzugefügt: #PB_Http_NoRedirect Unterstützung bei GetHTTPHeader()
- Hinzugefügt: "Joe Doe <joe.doe@domain.com>" Email-Format Unterstützung bei SendMail()
- Hinzugefügt: HTTPProxy() Proxy-Unterstützung für Http-verwandte Befehle
- Hinzugefügt: Unterstützung für Kompressionslevel bei CreatePack() und CompressMemory()
- Hinzugefügt: ParticleAcceleration(), ParticleColorFader(), ParticleEmitterAngle()
- Hinzugefügt: #PB_Material_AlphaReject, #PB_Material_TAM und #PB_Material_EnvironmentMap Unterstützung für SetMaterialAttribute()
- Hinzugefügt: neuer optionaler Parameter 'Layer' bei SetMaterialAttribute()
- Hinzugefügt: Neue Orientierungsmodi für SetNodeAnimationKeyFrameRotation() und AddStaticGeometryEntity()
- Hinzugefügt: GetUserDirectory() um benutzerspezifische Verzeichnisse zu ermitteln
- Hinzugefügt: Mehr Flexibilität für Base64Decoder zum Umgang mit 'non-padded' Eingaben
- Hinzugefügt: Base64Encoder() und Base64Decoder(), die Strings als Eingabe/Ausgabe für einfachere Verwendung nutzen
- Hinzugefügt: Farb-Konstanten wie #Black, #Blue etc. für alle OS
- Hinzugefügt: Event(), um das aktuelle Ereignis zu erhalten (vor allem nützlich bei Callbacks)
- Hinzugefügt: #PB_Canvas_Container Unterstützung, um ein Container-Verhalten für Canvas zu erhalten
- Hinzugefügt: #PB_EventType_Resize Unterstützung für PanelGadget(), ContainerGadget(), CanvasGadget() und ScrollAreaGadget()
- Hinzugefügt: #PB_ListIcon_ColumnCount für GetGadgetAttribute() beim ListIconGadget(), um die Anzahl an Spalten zu ermitteln
- Hinzugefügt: #PB_All support bei RemoveGadgetColumn(), um alle Spalten zu entfernen
- Hinzugefügt: (IDE) Templates werden jetzt beim Erstellen gespeichert, um Verluste bei nicht korrekt geschlossener IDE zu vermeiden
- Hinzugefügt: (IDE) Sprung zu einer Prozedur klappt diese nun automatisch auf, wenn sie zusammengefaltet war
- Hinzugefügt: (IDE) neues spezifisches Popup-Menü für Datei-Reiter, um die Quellcode-Verwaltung zu vereinfachen
- Hinzugefügt: (IDE) Finde vorherigen Suchbegriff (Rückwärts-Suche)
- Geändert: Base64Encoder() in Base64EncoderBuffer() umbenannt
- Geändert: Base64Decoder() in Base64DecoderBuffer() umbenannt
- Geändert: 'define.b' Syntax zum Ändern des Standard-Typs entfernt, da dies schwer zu findende Bugs hervorrufen konnte.
19. Dezember 2016 : Version 5.51
- Aktualisiert: MacOS X Paket ist jetzt 'self-contained' (in sich selbst enthalten), um OSX Sierra kompatibel zu sein
- Repariert: Einige Bugs im Compiler und den Bibliotheken
19. November 2016 : Version 5.44 LTS
- Aktualisiert: Eine Bug-Fix Version des aktuellen "LTS"-Branches.
Diese behebt wichtige Linux-Probleme und bringt einen neuen Weg, um die App auf OS X zu installieren,
um auch OSX Sierra zu entsprechen. Nun ist das ganze Purebasic-Verzeichnis in die PureBasic.app eingebettet.
Wenn Sie daher die die Kommandozeile benutzen möchten, müssen Sie den Pfad
PureBasic.app/MacOS/Content/Resources/compiler zum $PATH hinzufügen.
25. July 2016 : Version Version 5.43 LTS
- Aktualisiert: Die neue Version des "Zweigs" von PureBasic mit Langzeit-Unterstützung ("long-term support", ohne
neue Funktionen etc.).
Alle Fixes der 5.50 sollten auch in dieser Version verfügbar sein.
25. Juli 2016 : Version 5.50
- Hinzugefügt: Vehicle Bibliothek zum einfachen Erstellen von 3D-Vehikeln mit Rädern
- Hinzugefügt: PickBody() zum einfachen Manipulieren eines 3D-Körpers mit der Maus
- Hinzugefügt: CreateTube(), CreateTorus(), CreateIcoSphere() und CreateCapsule()
- Hinzugefügt: #PB_Entity_PlaneBody und #PB_Entity_ConeBody Körpertypen
- Hinzugefügt: GenericJoint() zum Erstellen jeder Art von Gelenk/Verbindung
- Hinzugefügt: Begrenzungsrahmen-Größen-Unterstützung bei CreateEntityBody()
- Hinzugefügt: RegisterFontFile() zum einfachen Verwendung von benutzerdefinierten Zeichensätzen
- Hinzugefügt: PathLength(), PathPointX(), PathPointY(), PathPointAngle()
- Hinzugefügt: PathBoundsX(), PathBoundsY(), PathBoundsWidth(), PathBoundsHeight() um den Begrenzungsrahmen eines Pfads zu ermitteln
- Hinzugefügt: PathSegments(), AddPathSegments() zum Ermitteln/Setzen eines Pfads im Stringformat
- Hinzugefügt: DebuggerError(), DebuggerWarning(), CloseDebugOutput()
- Hinzugefügt: ResetStructure() zum Löschen und erneut Initialisierten eines Struktur-Puffers
- Hinzugefügt: UTF8() und Ascii() zum einfachen Erstellen von UTF8 und Ascii String-Puffern (müssen mit FreeMemory() freigegeben werden)
- Hinzugefügt: FormatNumber() um leicht wie Geld formatierte Zahlen zu erhalten
- Hinzugefügt: #StringConstant$ Syntax-Unterstützung, um die Adresse einer String-Konstante zu erhalten
- Hinzugefügt: #PB_MessageRequester_Info, #PB_MessageRequester_Error und #PB_MessageRequester_Warning für MessageRequester()
- Aktualisiert: SQLite Version 3.13.0
- Geändert: ParticleVelocity() um die aktuelle Geschwindigkeit zu unterstützen.
- Entfernt: ASCII-Modus für die interne PureBasic String-Darstellung, PureBasic ist jetzt rein Unicode.
1. März 2016 : Version 5.42 LTS
- Entfernt: 'Ereignisprozedur generieren' Option in den Einstellungen/Form
- Repariert: Einige Bugs im Compiler und den Bibliotheken
23. Dezember 2015 : Version 5.41 LTS
- Hinzugefügt: 'auto' Unterstützung für die innere Breite/Höhe einer ScrollArea in der Dialog Bibliothek
- Aktualisiert: neueste Assembler Versionen für Windows, Linux und OS X
- Repariert: französische Anleitung komplett korrigiert durch 'GG'
- Repariert: Einige Bugs im Compiler und den Bibliotheken
16. Oktober
2015 : Version 5.40 LTS
- Hinzugefügt: neue Vector 2D Bibliothek
- Hinzugefügt: neue CGI Bibliothek mit Standard und
FastCGI Unterstützung - Hinzugefügt: Zeichenketten
(Literal-Strings) Escape-Unterstützung mit dem '~' Operator (z.B.: a$ =
~"Hello\nWorld\n") - Hinzugefügt:
EscapeString()/UnescapeString() Funktionen, um Escape-Operationen auf jegliche
Strings (Variablen etc.) zu erlauben - Hinzugefügt:
EnumerationBinary zum automatischen Erstellen von Bitmasken-Aufzählungen -
Hinzugefügt: Datenbank-Parameter Bindung zur
Vereinfachung der Abfragen-Erstellung - Hinzugefügt: SetDatabaseBlob(), SetDatabaseFloat(),
SetDatabaseDouble(), SetDatabaseLong() - Hinzugefügt: SetDatabaseQuad(), SetDatabaseString(),
SetDatabaseNull() - Hinzugefügt: SHA2 und SHA3
(224/256/384/512-bit) Unterstützung bei der Cipher Bibliothek - Hinzugefügt: StringFingerprint() - Hinzugefügt: CRC32 Unterstützung für StartFingerprint() -
Hinzugefügt: ReceiveHTTPMemory(), IsJoint() - Hinzugefügt: RefreshDialog() zur Neuberechnung der
Abmessungen nach einer Text-Änderung oder ähnlich - Hinzugefügt: "Gruppe" XML-Attribut für das 'Option' Dialog
Gadget, um explizit eine Gruppe anzugeben - Hinzugefügt: HTTPS und einfach Auth. Unterstützung für
ReceiveHTTPFile() und GetHTTPHeaders() - Hinzugefügt: Auto-Weiterleitungs-Unterstützung für
ReceiveHTTPFile() und ReceiveHTTPMemory() - Hinzugefügt: Asynchron-Modus für ReceiveHTTPFile() und
ReceiveHTTPMemory() - Hinzugefügt: HTTPProgress(),
AbortHTTP() und FinishHTTP() zum Überwachen des Asynchron-Modus - Hinzugefügt: HTTPS/TLS Unterstützung für SendMail() -
Hinzugefügt: FlushPreferenceBuffers() - Hinzugefügt: CopyDebugOutput() um die Debug-Ausgabe
programmgesteuert in die Zwischenablage zu kopieren - Hinzugefügt: 7z Archiv-Erstellung - Hinzugefügt: tar (gz und bzip2) Archiv-Unterstützung bei der
Erstellung und beim Entpacken - Hinzugefügt:
Vollständiger Pfad im IDE 'Letzte Dateien' Menü - Hinzugefügt: #PB_ProgressBar_Unknown für SetGadgetState() zum
Anzeigen eines unbekannten Fortschritts - Hinzugefügt: #PB_UTF8/Ascii/Unicode Unterstützung bei
ReadCharacter() und WriteCharacter() - Hinzugefügt:
#PB_UTF8 Unterstützung bei URLEncoder() und URLDecoder (jetzt der
Standard-Modus) - Hinzugefügt: Windows 8.1/10 und
OS X 10.9/10/11 Unterstützung bei OSVersion() - Hinzugefügt: #PB_Editor_xxx Konstanten bei Verwendung der
'Version' Info auf Windows - Hinzugefügt:
#PB_Program_Ascii/Unicode/UTF8 Unterstützung für RunProgram() - Hinzugefügt: linux/osx Style-Flags beim
Kommandozeilen-Compiler auf Windows, um Cross-Plattform-Skripts zu vereinfachen
- Hinzugefügt: #PB_File_SharedWrite Unterstützung
bei ReadFile() und CreateFile() - Hinzugefügt:
'IMPORTLIST' Compiler-Interface, um alle vordefinierten API-Funktionen zu
erhalten - Hinzugefügt: #Null$ spezielle
String-Konstante, um einen echten Null-Wert auf einen String anzuwenden (um
diesen komplett freizugeben). Diese kann auch für API-Funktionen verwendet
werden, welche manchmal eine NULL anstelle einer String-Adresse akzeptieren.
- Hinzugefügt: #Empty$ Konstante - Hinzugefügt: #PB_ByteLength Unterstützung bei
MemoryStringLength() - Hinzugefügt: #PB_Ascii,
#PB_UTF8 und #PB_Unicode Unterstützung bei Create/Open/ReadFile(), um den
Standard Lese-/Schreibmodus festzulegen - Hinzugefügt: #PB_ByteLength Flag für PeekS() und #PB_UTF8
(nur) - Hinzugefügt: CreateCone(),
CameraCustomParameter(), ResizeCamera() - Hinzugefügt: #PB_Entity_DisableContactResponse und
#PB_Entity_EnableContactResponse für SetEntityAttribute() - Hinzugefügt: #PB_Entity_ConeBody, #PB_Entity_PlaneBody -
Hinzugefügt: FreeEntityBody(), FreeTerrainBody() -
Hinzugefügt: ApplyEntityTorque(),
ApplyEntityTorqueImpulse() - Hinzugefügt:
'KollisionsGruppe' und 'KollisionsMaske' Parameter für RayCollide() - Hinzugefügt: Migrations-Hilfeseite, um eine
Schritt-für-Schritt Anleitung für die Migration von altem zu neuem PureBasic zu
haben. - Hinzugefügt: Einsteiger-Kapitel in Deutsch
(Danke an André und Vera)
- Aktualisiert: die
Linux Printer Bibliothek, um natives GtkPrint anstelle von GnomePrint zu
verwenden - Aktualisiert: den Windows Compiler auf
VC++ 2013 für bessere Code-Generierung - Aktualisiert: SQLite auf 3.8.10.2
- Repariert: Zip Archiv-Unterstützung - Repariert: Probleme mit dem Senden von Emails und
HTTP-Anfragen - Repariert: 'CONSTANTLIST'
Compiler-Interface, jetzt werden String-Konstanten als Escape-Strings
zurückgegeben.
- Geändert: Die Standard GTK
Version ist jetzt GTK3 auf Linux. Ein gtk2 Subsystem wurde für
Abwärtskompatibilität hinzugefügt. - Geändert: Das
Standard String-Format für RunProgram() Read/Writestring ist jetzt UTF8 anstelle
von Unicode - Geändert: Die Cipher Bibliothek, um
modular zu sein (jetzt müssen UseMD5Fingerprint() und ähnliche Befehle verwendet
werden). - Geändert: ExamineFingerprint() in
StartFingerprint() - Geändert: NextFingerprint()
in AddFingerprintBuffer() - Geändert:
EntityPhysicBody() in CreateEntityBody() - Geändert: TerrainPhysicBody() in CreateTerrainBody() -
Geändert: Der SendMail() 'Asynchron' Parameter wurde
durch das #PB_Mail_Asynchronous Flag ersetzt. - Geändert: DLLImporter wurde entfernt und .pbl Dateien werden
nicht mehr unterstützt.. Neue 'Import Library' Dateien können können mit Hilfe
des '/IMPORT' Switchs vom pbcompiler erstellt werden.
- Entfernt: RemovePackFile() - Entfernt: #PB_Packer_CompressedSize Unterstützung für ZIP und
7z Archive mit PackerEntrySize() - Entfernt:
AvailableScreenMemory()
27. Oktober 2014 : Version 5.31
23. Juli 2014 : Version 5.30
- Hinzugefügt: Neues "Problem" ("Issue") Werkzeug für die IDE, um einfach anhand der Kommentare To-Do/Problem-Listen zu erstellen.
- Hinzugefügt: JSON-Bibliothek
- Hinzugefügt: ParseXML(), ComposeXML(), InsertXMLArray/List/Map/Structure(), ExtractXMLArray/List/Map/Structure() zur XML-Bibliothek
- Hinzugefügt: OpenGLGadget() mit Unterstützung für native OpenGL-Befehle und -Konstanten auf Windows, OSX und Linux
- Hinzugefügt: ExamineRegularExpression() und
zugehörige Befehle, um RegEx-Übereinstimmungen Schritt für Schritt zu
verarbeiten (mit Unterstützung für Gruppierungen)
- Hinzugefügt: ClipOutput(), UnclipOutput(), SetOrigin(), GetOriginX(), GetOriginY()
- Hinzugefügt: GetWindowData(), SetWindowData()
- Hinzugefügt: AllocateStructure(), FreeStructure()
- Hinzugefügt: #PB_Default Unterstützung bei WindowBounds(), um die minimale/maximale Größe zurückzusetzen
- Hinzugefügt: 'Format' Parameter bei Read/WriteProgramString(), WriteProgramStringN() und ReadProgramError()
- Hinzugefügt: /PREPROCESS Compiler-Flag zum
Erstellen eines einzigen großen Quellcodes, bei dem alle Makros,
CompilerIf und Datei-Includes aufgelöst sind. Kann mit /COMMENTED
kombiniert werden, um den originalen Quellcode auch mit Kommentaren zu
erhalten.
- Hinzugefügt: Optionaler '#Server' Parameter bei NetworkServerEvent(), um Ereignisse nur auf einem bestimmten Server zu überprüfen
- Hinzugefügt: #PB_String_NoZero Flag Unterstützung bei PokeS(), um das Schreiben des abschließenden Null-Zeichens zu vermeiden
- Hinzugefügt: #PB_Enumeration Unterstützung bei Defined()
- Hinzugefügt: #PB_Explorer_HiddenFiles, um versteckte Dateien in den Explorer-Gadgets anzuzeigen
- Hinzugefügt: Optionaler 'Typ' Parameter bei CreateBillboardGroup()
- Hinzugefügt: BillboardGroupCommonDirection(), BillboardGroupCommonUpVector()
- Hinzugefügt: #PB_Entity_MinVelocity und #PB_Entity_ForceVelocity bei SetEntityAttribute()
- Hinzugefügt: SetMaterialAttribute() mit #PB_Material_DepthCheck und #PB_Material_DepthWrite Konstanten
- Hinzugefügt: #PB_Material_DepthCheck Unterstützung bei GetMaterialAttribute().
- Hinzugefügt: Engine3DStatus() mit diesen
Konstanten: #PB_Engine3D_NbRenderedTriangles,
#PB_Engine3D_NbRenderedBatches, #PB_Engine3D_CurrentFPS,
#PB_Engine3D_MaximumFPS, #PB_Engine3D_MinimumFPS,
#PB_Engine3D_AverageFPS, #PB_Engine3D_ResetFPS
- Hinzugefügt: #PB_Absolute / #PB_Relative
Unterstützung bei CameraDirectionX/Y/Z(), CameraX/Y/Z(), EntityX/Y/Z(),
LightX/Y/Z(), LightDirectionX/Y/Z(), BillBoardGroupX/Y/Z(), NodeX/Y/Z(),
ParticleEmitterX/Y/Z() und FetchOrientation()
- Hinzugefügt: ParticleSpeedFactor(), DisableParticleEmitter()
- Hinzugefügt: GetEntityCollisionMask(), GetEntityCollisionGroup(), SetEntityCollisionFilter()
- Hinzugefügt: WaterHeight(), FreeWater()
- Hinzugefügt: Vollständig Unicode-kompatible IDE
- Hinzugefügt: Hervorheben wiederholter Vorkommen des gerade ausgewählten Worts in der IDE
- Hinzugefügt: Editier-Modus für reinen Text, um Nicht-PB Dateien in der IDE zu bearbeiten
- Hinzugefügt: 'Probleme' ("Issues") IDE-Werkzeug, um TODO/FIXME Markierungen innerhalb des Codes zu sammeln und anzuzeigen
- Hinzugefügt: Strg+E und Strg+Shift+E Tastaturkürzel, um Kommentare in einem ausgewählten Code-Block auszurichten bzw. zu verschieben
- Hinzugefügt: Strg+M und Strg+Shift+M
Tastaturkürzel, um den aktuellen Code-Block auszuwählen (wiederholte
Tastendrücke selektieren den nächsten Code-Block)
- Hinzugefügt: Popup-Menü bei der IDE Fehlerliste für Lösch-/Kopier-Operationen
- Hinzugefügt: %HOME und %PROJECT bei den
IDE-Werkzeug Kommandozeilen-Optionen, PB_TOOL_Project zu den verfügbaren
Umgebungsvariablen hinzugefügt
- Hinzugefügt: Automatische Code-Einrückung in der IDE kann Kommentare am Ende von Code-Zeilen ausrichten
- Hinzugefügt: Auto-Vervollständigen merkt sich die letzte Auswahl beim Strukturen/Modul Auto-Vervollständigen
- Hinzugefügt: Kontextsensitivität für aktuelle Module/Prozeduren bei der Anzeige von Variablen und Evaluierung von Ausdrücken im Debugger
- Geändert: FormatXML() mit #PB_XML_ReFormat
fügt für eine besser lesbare Ausgabe nicht länger Zeilenumbrüche
innerhalb ein-zeiliger Elemente ein
- Geändert: DeleteElement() gibt jetzt den Daten-Zeiger auf das neue aktuelle Element (sofern vorhanden) zurück
- Geändert: SetXMLAttribute() um Zeilenumbrüche in Attributen zu akzeptieren (werden dann als Charakter-Objekte kodiert)
- Geändert: Einen obligatorischen "Name"
Parameter bei CreateXMLNode() hinzugefügt, da einige Parser diesen zum
Zeitpunkt der Knoten-Erstellung benötigen
- Geändert: Der Weg, wie (X)IncludeFile und
IncludeBinary arbeiten: diese sind jetzt relativ zur Datei, welche diese
Befehle beinhalten (was einfacher zu handhaben ist)
- Geändert: #PB_Event_SizeWindow und
#PB_Event_MoveWindow arbeiten nicht mehr in Echtzeit auf Windows,
verwenden Sie BindEvent() um Echtzeit-Aktualisierungen zu erhalten. Dies
sollte hässliches Flimmern bei Echtzeit-Größenänderungen auf Windows
beseitigen.
- Geändert: DataSection Sprungmarken innerhalb von Prozeduren sind jetzt lokale Sprungmarken.
- Geändert: Der lokale
ASM-Sprungmarken-Präfix wurde von "l_" in "ll_" geändert ("ll" für
lokale Sprungmarken), um mögliche Konflikte mit Haupt-Sprungmarken zu
vermeiden.
- Geändert: #PB_LinkedList Konstante wurde für eine bessere Konsistenz in #PB_List umbenannt
- Geändert: Den "Billboard" Parameter bei
AddBillboard() entfernt, da dieser nicht verwendet wurde. Gibt jetzt den
neuen Billboard-Index zurück.
- Geändert: Scintilla auf Version 3.4.2 aktualisiert
- Entfernt: MaterialDepthWrite() (ersetzt durch SetMaterialAttribute())
- Entfernt: CountRenderedTriangles() und Engine3DFrameRate(), ersetzt durch Engine3DStatus()
17. März 2014 : Version 5.22 LTS
- Repariert: Einige Bugs im Compiler und den Bibliotheken
20. November 2013 : Version 5.21 LTS
-- Geändert:
'REQUEST' in 'AUTO' für die automatische Berechnung der Mindestgröße
eines Splitters (der alte Syntax wird weiterhin unterstützt)
- Repariert: Einige Bugs im Compiler und den Bibliotheken
17. September 2013 : Version 5.20
LTS
- Hinzugefügt: Module Unterstützung beim Compiler -
Hinzugefügt: Runtime Bibliothek - Hinzugefügt: Dialog Bibliothek - Hinzugefügt: GTK3 Subsystem für Linux - Hinzugefügt: DirectX11 Subsystem für Windows (unterstützt
derzeit noch nicht die 3D-Engine) - Hinzugefügt:
Unterstützung für benannte Enumeration, um das Fortsetzen einer vorherigen
Aufzählung zu ermöglichen - Hinzugefügt:
JoystickName(), JoystickZ() - Hinzugefügt:
Optionales #PB_Relative Flag bei JoystickX/Y/Z(), um genauere Werte zu erhalten
- Hinzugefügt: Optionale Pad-Nummer bei
JoystickX/Y/Z(), um komplexere Gamepads zu unterstützen - Hinzugefügt: ZoomSprite() akzeptiert jetzt #PB_Default als
Breite/Höhe, um zur ursprünglichen Sprite-Größe zurückzukehren - Hinzugefügt: 'Farbe' und 'Intensiät' Parameter bei
DisplayTransparentSprite() - Hinzugefügt:
ClipSprite() unterstützt jetzt #PB_Default für individuelle Parameter -
Hinzugefügt: #PB_Sprite_PixelCollision Flag bei
CreateSprite(), LoadSprite(), um pixelgenaue Kollision zu aktivieren - Hinzugefügt: Zoom-Unterstützung bei SpritePixelCollision()
und SpriteCollision() - Hinzugefügt: OpenGL
Unterstützung bei SpriteBlending() (Warnung: es "wrappt" einfach den
OpenGL-Modus, damit kann es sich anders verhalten als DirectX) - Hinzugefügt: 32-Bit Unterstützung bei SpriteOutput() für DX
und OpenGL - Hinzugefügt: #PB_EventType_Focus und
#PB_EventType_LostFocus Unterstützung beim EditorGadget() - Hinzugefügt: #PB_EventType_RightClick Unterstützung beim
ListViewGadget() - Hinzugefügt:
#PB_EventType_Change Unterstützung beim PanelGadget() und DateGadget() -
Hinzugefügt: #PB_Prototype und #PB_Module Unterstützung
bei Defined() - Hinzugefügt: Alle Init() Funktionen
können problemlos mehr als einmal aufgerufen werden (wie InitSound(),
InitNetwork() etc.) - Hinzugefügt:
#PB_FileSystem_Force Unterstützung bei DeleteFile() - Hinzugefügt: #PB_FileSystem_NoExtension Unterstützung bei
GetFilePart() - Hinzugefügt: Hintergrundfarbe
Parameter bei CreateImage() - Hinzugefügt:
#PB_Entity_NbSubEntities bei GetEntityAttribute() - Hinzugefügt: MeshIndexCount(), SetRenderQueue(),
FetchEntityMaterial(), GetMeshData(), SetMeshData() - Hinzugefügt: CPUName(), Un/BindEvent(), Un/BindGadgetEvent(),
Un/BindMenuEvent() - Hinzugefügt: Vorherige Stelle
wird angezeigt, wenn eine Struktur, Interface, Prototype oder Prozedur doppelt
deklariert wird. - Hinzugefügt: 2 Lizenz-Dateien,
um beim Vertrieb von PB Programmen einfach die benötigten Informationen
beizufügen (siehe Referenz-Dokumentation) - Hinzugefügt: Bool() wird nun bei der Kompilierung
ausgewertet, wenn der ganze Ausdruck konstant ist - Hinzugefügt: Debugger-Check für SortStructuredList() und
SortList(), um sicherzustellen, dass die angegebene Liste vom korrekten Typ ist
- Hinzugefügt: Linux Executables, welche auf einer
neuen Distribution erstellt wurden, sollten weiterhin auf einem älteren Linux
funktionieren. - Hinzugefügt:
#PB_EventType_FirstCustomValue für die Verwendung mit PostEvent() - Hinzugefügt: CameraFollow(), ExamineWorldCollisions(),
NextWorldCollision(), FirstWorldCollisionEntity(), SecondWorldCollisionEntity()
- Hinzugefügt: WorldCollisionContact(),
WorldCollisionNormal(), WorldCollisionAppliedImpulse() - Hinzugefügt: BuildMeshTangents(), MeshVertexTangent(),
CopyTexture() - Hinzugefügt: Pitch(), Roll(), Yaw()
- Hinzugefügt: #PB_Gadget_RequiredSize
Unterstützung für GadgetWidth/Height() - Hinzugefügt: #PB_Entity_LinearSleeping,
#PB_Entity_AngularSleeping, #PB_Entity_DeactivationTime, #PB_Entity_IsActive,
- Hinzugefügt: #PB_Entity_AngularVelocityX/Y/Z,
#PB_Entity_ScaleX/Y/Z, #PB_Entity_AngularVelocity, #PB_Entity_HasContactResponse
bei Get/SetEntityAttribute()
- Optimiert:
Pixel Sprite Kollisions-Routinen sind jetzt viel schneller mit DirectX -
Optimiert: Weitere 'Peephole' Optimierungen bei der
x64-Assembler Ausgabe - Optimiert: Schnellere
Kompilierung bei großen Programmen - Optimiert:
Linux Build-Server wurde aktualisiert - jetzt mit einem besseren GCC, der
besseren Code produziert.
- Geändert:
SpinGadget() Ereignistypen sind jetzt #PB_EventType_Up und #PB_EventType_Down
anstelle von -1 und 1. - Geändert: ZoomSprite3D()
in ZoomSprite() umbenannt - Geändert:
TransformSprite3D() in TransformSprite() umbenannt - Geändert: RotateSprite3D() in RotateSprite() umbenannt -
Geändert: Sprite3DQuality() in SpriteQuality()
umbenannt - Geändert: Sprite3DBlending() in
SpriteBlending() umbenannt - Geändert: Die gesamte
'Module' Bibliothek in 'Music' umbenannt - Geändert: Frame3DGadget() in FrameGadget() umbenannt -
Geändert: Frame3DGadget3D() in FrameGadget3D()
umbenannt - Geändert: #PB_Shortcut_Prior in
#PB_Shortcut_PageUp und #PB_Shortcut_Next in #PB_Shortcut_PageDown umbenannt
- Geändert: Packer Plugin-Konstanten in
#PB_PackerPlugin_XXX umbenannt - Geändert:
RayCollide() gibt jetzt das kollidierende #Entity zurück
- Aktualisiert: WebGadget() auf Windows benötigt nicht mehr die
ATL.dll - Aktualisiert: zlib auf 1.2.8 - Aktualisiert: pqlib (PostgreSQL) auf 9.2.4 - Aktualisiert: ziplib auf 0.11.1 - Aktualisiert: SCNotification Scintilla Struktur
-
Entfernt: Mozilla ActiveX Unterstützung beim WebGadget()
auf Windows, da die letzte ActiveX Version viel zu alt ist (2005) - Entfernt: Sprite3D Bibliothek (verschmolzen mit der regulären
Sprite Bibliothek) - Entfernt: Palette Bibliothek
(veraltet) - Entfernt: RenderMovieFrame() und
#PB_Movie_Rendered (veraltet) - Entfernt:
DisplayTranslucentSprite() -> ersetzt mit dem 'Alpha' Parameter bei
DisplayTransparentSprite() - Entfernt:
DisplaySolidSprite() -> ersetzt mit dem 'Farbe' Parameter bei
DisplayTransparentSprite() - Entfernt:
DisplayRGBFilter() -> kann durch ein gezoomtes Sprite mit Farbe ersetzt
werden - Entfernt: DisplayShadowSprite() -> kann
durch DisplayTransparentSprite() mit einer Farbe ersetzt werden - Entfernt: StartSpecialFX(), StopSpecialFX(),
DisplayAlphaSprite(), ChangeAlphaIntensity(), UseBuffer() - Entfernt: Carbon Subsystem auf OS X, es war zu alt um mit den
neuen Bibliotheken verwendet zu werden
- Repariert: Viele Bugs
19. März 2013 : Version 5.11
- Repariert: Einige Bugs im Compiler und den
Bibliotheken
14. Februar 2013 : Version 5.10
- Hinzugefügt: Form-Designer ist jetzt in
die IDE integriert ! - Hinzugefügt: komplett
überarbeitete Packer Bibliothek mit ZIP, BriefLZ, 7z (nur Entpacken), LZMA und
JCALG1 (Windows x86 und nur UncompressMemory()) Unterstützung. JCALG1
Unterstützung wurde eingestellt. Archiv-Formate für BriefLZ wurden geändert.
- Hinzugefügt: IPv6 Unterstützung bei der Network
Bibliothek. Aktualisierte IPString(), MakeIPAddress(), GetClientIP(),
IPAddressField(), ExamineIPAddress() und NextIPAddress(). #PB_Network_IPv6 Flag
bei OpenConnection und CreateServer() hinzugefügt. FreeIP() für v6 IP
hinzugefügt. - Hinzugefügt: System-Bibliothek:
ComputerName(), UserName(), MemoryStatus(), CountCPUs() - Hinzugefügt: Zeilenfortsetzungs-Funktion, mit folgenden
Operanden: ',' '|' '+' And Or XOr - Hinzugefügt:
Vergleiche mit konstanten Strings werden jetzt zum Zeitpunkt des Kompilierens
verarbeitet, was die Verwendung z.B. in CompilerIf ermöglicht. - Hinzugefügt: CocoaMessage() für OS X - Hinzugefügt: 'Syntax überprüfen' um den Code nur zu
kompilieren, ohne ein Executable zu erstellen/zu starten (/CHECK Switch oder im
IDE Compiler Menü) - Hinzugefügt: Array/List/Map
Parameter Unterstützung bei Interface Methoden - Hinzugefügt: Unterstützung für dynamische Array/List/Map in
Strukturen/Interfaces in Residents. - Hinzugefügt:
Unterstützung für #PB_Character, #PB_Unicode, #PB_Ascii und #PB_Integer Flags
bei FillMemory() - Hinzugefügt:
#PB_RegularExpression_NoCase Unterstützung bei CreateRegularExpression() -
Hinzugefügt: EncodeImage() mit PNG, JPEG und JPEG2000
Unterstützung - Hinzugefügt: #PB_Memory_NoClear
Unterstützung bei Re/AllocateMemory() - Hinzugefügt: ImageFormat() - Hinzugefügt: #PB_Editor_WordWrap beim EditorGadget() -
Hinzugefügt: Vergleich mit mehreren Zeichen bei
StringField() - Hinzugefügt: AnzahlVorkommen
Parameter bei ReplaceString() - Hinzugefügt:
PostEvent(), EventData() - Hinzugefügt:
Rückgabewert bei SetCurrentDirectory() - Hinzugefügt: #PB_String_NoCase Modus Parameter bei
FindString() - Hinzugefügt: #PB_Preference_NoSpace
und #PB_Preference_GroupSeparator Flags bei OpenPreferences() und
CreatePreferences() - Hinzugefügt:
DatabaseColumnIndex() - Hinzugefügt: #PB_Cipher_URL
und #PB_Cipher_NoPadding bei Base64Encoder(), URL-Kompatibilität bei
Base64Decoder() hinzugefügt - Hinzugefügt:
SetGadgetItemImage() bei allen Gadgets, welche Bilder bei den Einträgen
unterstützen - Hinzugefügt:
#PB_Gadget_ScreenCoordinate und #PB_Gadget_WindowCoordinate Flag bei GadgetX/Y()
- Hinzugefügt: #PB_File_SharedRead (kein Effekt auf
Linux/OSX), #PB_File_SharedWrite (kein Effekt auf Linux/OSX), #PB_File_Append
und #PB_File_NoBuffering bei OpenFile(), ReadFile() und CreateFile() - Hinzugefügt: #PB_Event_RightClick, #PB_Event_LeftClick und
#PB_Event_LeftDoubleClick Ereignisse - Hinzugefügt:
optionaler Titel-Parameter bei OpenConsole() - Hinzugefügt: #PB_ScrollArea_ScrollStep beim
ScrollAreaGadget() - Hinzugefügt: #PB_Ignore bei
ResizeImage() - Hinzugefügt: eine bestimmte IP an
CreateNetworkServer() binden - Hinzugefügt:
Timeout, LokaleIP$ und LokalerPort Parameter bei OpenNetworkConnection() -
Hinzugefügt: #PB_NetworkEvent_Disconnect Unterstützung
bei NetworkClientEvent() - Hinzugefügt:
#PB_Unicode, #PB_Ascii und #PB_UTF8 Unterstützung bei SendNetworkString() -
Hinzugefügt: #PB_String_MaximumLength Attribut bei
StringGadget() - Hinzugefügt:
#PB_Event_DeactivateWindow Unterstützung - Hinzugefügt: #PB_EventType_Change Unterstützung bei
EditorGadget() - Hinzugefügt:
#PB_Relative/#PB_Absolute Flag bei FileSeek() - Hinzugefügt: 'Offset' und 'Länge' Parameter bei
SHA1/MD5/CRC32FileFingerprint() - Hinzugefügt:
GetSoundPosition(), SetSoundPosition(), SoundLength(), PauseSound(),
ResumeSound(), SoundStatus(), GetSoundFrequency() - Hinzugefügt: #PB_All Unterstützung bei SoundVolume() -
Hinzugefügt: SetGadgetItemState() Unterstützung bei
ExplorerListGadget() - Hinzugefügt: InputRequester
schließen - Hinzugefügt:
#PB_InputRequester_Password Flag bei InputRequester() - Hinzugefügt: optionaler Minimalwert bei Random() - Hinzugefügt: SetGadgetItemText() bei ListIconGadget():
Verwendung von Chr(10) wie bei AddGadgetItem() - Hinzugefügt: Stretch-Parameter bei OpenWindowedScreen() jetzt
optional - Hinzugefügt: ScreenWidth(),
ScreenHeight(), ScreenDepth() - Hinzugefügt: SMTP
AUTH Unterstützung bei der Mail Bibliothek - Hinzugefügt: optionale Parameter bei RemoveMailRecipient(),
Möglichkeit zum Entfernen aller Empfänger - Hinzugefügt: ReadString(#File [, Flags [, Länge]]) : Längen-
und #PB_File_IgnoreEOL Unterstützung - Hinzugefügt:
#PB_Window_InnerCoordinate Unterstützung bei WindowX/Y() - Hinzugefügt: #PB_Window_FrameCoordinate Unterstützung bei
WindowWidth()/Height() - Hinzugefügt:
#PB_Image_Raised Unterstützung beim ImageGadget() - Hinzugefügt: Unterstützung für FreeXXX(#PB_All) bei allen
Freigeben-Befehlen - Hinzugefügt:
Compiler-Kontansten: #PB_Compiler_LineNumbering, #PB_Compiler_InlineAssembly,
#PB_Compiler_EnableExplicit - Hinzugefügt:
Compiler-Kontansten: #PB_Compiler_ExecutableFormat (mit #PB_Compiler_DLL,
#PB_Compiler_Console, #PB_Compiler_Executable) - Hinzugefügt: Compiler-Kontansten: #PB_Compiler_IsIncludeFile,
#PB_Compiler_IsMainFile, #PB_Compiler_Filename (Dateiname ohne Pfad) - Hinzugefügt: Bool() Compiler-Operator. Boolesche Operationen
ohne Bool() sind jetzt verboten. - Hinzugefügt:
MacroExpandedCount internes Schlüsselwort - Hinzugefügt: UndefineMacro - Hinzugefügt: XIncludeFile berücksichtigt jetzt auch die
Haupt-Datei, um doppeltes Einfügen zu vermeiden, wenn die Haupt-Datei von einer
anderen Datei eingefügt ("included") wird - Hinzugefügt: TypeOf() für Variablen, Strukturen und Felder
- Hinzugefügt: Defined(Sprungmarke, #PB_Label)
Unterstützung - Hinzugefügt: CompilerElseIf -
Hinzugefügt: lokale Sprungmarken - Hinzugefügt: Define verhält sich jetzt wie Global und
akzeptiert Dim(), NewMap() und NewList() auf der gleichen Zeile - Hinzugefügt: Unterstützung des 'Align' Schlüsselworts bei
Strukturen, mit einem speziellen #PB_Structure_AlignC Wert um das 'Padding' bei
C-Strukturen zu imitieren - Hinzugefügt:
Auto-Casting von numerischen Werten, wenn Strings beteiligt sind - erlaubt das
Verketten von Strings und numerischen Konstanten - Hinzugefügt: 'CONSTANTLIST' beim Compiler Interface -
Hinzugefügt: Aufzeichnen der
Bearbeitungs-/Versionsgeschichte in der IDE um frühere Code-Zustände
wiederherstellen zu können und zur Wiederherstellung nach einem Systemabsturz
(siehe Datei -> Sitzungsgeschichte) - Hinzugefügt: AffectedDatabaseRows(), CheckDatabaseNull() bei
der Database Bibliothek - Hinzugefügt: neue Text3D
Bibliotheky - Hinzugefügt: optionaler Parameter
'Modus' bei allen ...Yaw/Roll/Pitch() Funktionen - Hinzugefügt: optionale 'Typ' und 'Modus' Parameter bei
CreateMesh() - Hinzugefügt: RayCast(),
MouseRayCast(), NormalX(), NormalY(), NormalZ() - Hinzugefügt: UpdateMesh(), EnableManualEntityBoneControl(),
MoveEntityBone(), RotateEntityBone(), MeshIndex() - Hinzugefügt: optionaler Paramter 'Typ' bei AddSubMesh() -
Hinzugefügt: 'Typ' Parameter bei FinishMesh() -
Hinzugefügt: ScaleNode(), GetMaterialColor(),
GetMaterialAttribute(), ConvertLocalToWorldPosition(),
ConvertWorldToLocalPosition() - Hinzugefügt:
MaterialCullingMode(), FetchOrientation(), SetOrientation(), GetX(), GetY(),
GetZ(), GetW(), GetLightColor() - Hinzugefügt:
AttachEntityObject(): Name des 'Bone' (Knochen) kann leer bleiben, womit das
Objekt direkt zum Entity hinzugefügt wird
- Geändert: SoundFrequency() in SetSoundFrequency() umbenannt
- Geändert: AddMeshVertex() in
MeshVertexPosition() umbenannt - Geändert:
LightColor() in SetLightColor() umbenannt - Geändert: alle MaterialXXXXColor() entfernt, ersetzt durch
SetMaterialColor() - Geändert: alle XXXXLocate()
entfernt, ersetzt durch #PB_Absolute Flag bei den MoveXXXX() Befehlen -
Geändert: ResizeEntity() entfernt, ersetzt durch
#PB_Absolute Flag beim ScaleEntity() Befehl, ebenso bei ScaleNode() und
ScaleText3D() - Geändert: #PB_Sort_<Type>
ersetzt durch #PB_<Type>, um mögliche Fehler zu vermeiden - Geändert: Native Typen bei Zeigern (Pointern) sind nicht
mehr erlaubt - Geändert: StrF/D(), Nullen werden
jetzt automatisch entfernt, wenn keine Dezimalstellen angegeben werden
-
Aktualisiert: Update des OGRE Core auf 1.8.2 -
Aktualisiert: SQLite Version (3.7.15.2) - Aktualisiert: Einsteiger-Kapitel: neue Kapitel über
dynamische Nummerierung und das Verwalten mehrerer Fensters hinzugefügt durch
spikey
- Entfernt: SendNetworkFile(),
RecieveNetworkFile(), #PB_NetworkEvent_File, um mögliche Sicherheitslücke zu
vermeiden - Entfernt: DirectX7 und NT4 Subsystem auf
Windows - Entfernt: SDL Subsystem auf Linux -
Entfernt: PowerPC Version auf OS X
- Optimiert: FindString() ist jetzt fast doppelt so schnell
- Repariert: viele Bugs
5. November 2012 : Version 5.00
- Hinzugefügt: Cocoa Support auf OS X
(jetzt das Standard-Toolkit) - Hinzugefügt: 64-Bit
Version von PureBasic für OS X - Hinzugefügt:
Brandneuer Form-Designer, für Windows, Linux und OS X - Hinzugefügt: Carbon Subsystem für PowerPC und x86 Versionen
von PureBasic - Hinzugefügt: Unterstützung für
mehrdimensionale Arrays in Strukturen - Hinzugefügt: InitScintilla() auf Linux und OS X, um
Kompilierungsprobleme zu vermeiden - Hinzugefügt:
#PB_Window_NoActivate Flag bei OpenWindow() und HideWindow() - Hinzugefügt: #PB_EventType_RightClick Support beim
ScintillaGadget() - Hinzugefügt: Favoriten-Auswahl
im Explorer-Werkzeug (IDE) - Hinzugefügt: Trigger
für selbsterstellte Tools, wenn eine neue Quellcode-Datei erstellt wird (IDE)
- Hinzugefügt: SetWindowCallback() Support auf OS
X, um Callback-Ereignisse zu haben - Hinzugefügt:
teilweise Thread-Sicherheit bei GTK (Linux) - Hinzugefügt: SpritePixelCollision() Support auf OS X und
Linux
- Aktualisiert: Scintilla aktualisiert
auf 3.2.2 - Aktualisiert: Expat aktualisiert auf
2.1.0 - Aktualisiert: libjpeg aktualisiert auf 8.0d
- Aktualisiert: libpng aktualisiert auf 1.5.12
- Aktualisiert: Ogre auf 1.8.0, bullet auf 2.80,
hydrax auf 0.5.4, CEGUI auf 0.7.7 - Aktualisiert:
ModPlug lib aktualisiert auf 0.8.8.4 - Aktualisiert: Verwendung von VC++ 2010 anstelle von VC++ 2005
zum Kompilieren der Windows Libraries (32-Bit und 64-Bit), resultierend in
besser optimiertem Code - Aktualisiert:
Französische Anleitung wurde großartig aktualisiert/verbessert, Danke an Jean R.
VIALE.
- Geändert: SetModulePosition()
arbeitet jetzt in Millisekunden, nicht mehr in Pattern
- Repariert: Viele Bugs
3D Engine: - Hinzugefügt: EntityAnimation Bibliothek - Hinzugefügt: NodeAnimation Bibliothek - Hinzugefügt: VertexAnimation Bibliothek - Hinzugefügt: Spline Bibliothek - Hinzugefügt: CG Tookit Support für die 3D engine (sowohl
DirectX als auch OpenGL), mittels InitEngine3D() - Hinzugefügt: optionaler 'Modus' Parameter bei InitEngine3D()
- Hinzugefügt: 'PickMask' Parameter bei MousePick()
und CreateEntity() - Hinzugefügt: RenderWorld()
gibt jetzt die 'ZeitSeitLetztemFrame' zurück, in Millisekunden - Hinzugefügt: SkyBox() und SkyDome() unterstützen jetzt Fog()
- Hinzugefügt: 'Farbe' und 'TexturGröße' Parameter
bei WorldShadows() - Hinzugefügt:
#PB_World_UnderWater und #PB_World_WaterGodRays Flags bei CreateWater() -
Hinzugefügt: RayPick(), CameraViewWidth(),
CameraViewHeight(), CameraViewX(), CameraViewY(), CameraDirection() - Hinzugefügt: CameraDirectionX/Y/Z(), SetCameraFixedYawAxis()
- Hinzugefügt: optionaler 'IsActive' Parameter
zum Rendern auf die Textur bei CreateCamera() - Hinzugefügt: ScaleMaterial(), MaterialFog(),
ReloadMaterial(), ResetMaterial(), NodeFixedYawAxis() - Hinzugefügt: optionaler 'TextureCoordinateIndex' Parameter
bei AddMaterialLayer() - Hinzugefügt:
#PB_Material_Anisotropic Support bei MaterialFilteringMode() - Hinzugefügt: Unterstützung für #PB_Default als #Material, um
die Standard-Einstellungen für Materialien festzulegen. - Hinzugefügt: #PB_Material_Wireframe, #PB_Material_Point und
#PB_Material_Solid bei MaterialShadingMode() - Hinzugefügt: SoundListenerLocate() - Hinzugefügt: optionale DirectionX/Y/Z Parameter bei
NodeLookAt() - Hinzugefügt: optionaler 'Modus'
Parameter bei MoveLight(), MoveEntity() und MoveNode() - Hinzugefügt: CreateTexture() arbeitet jetzt auch mit
Alpha-Texturen - Hinzugefügt: #PB_Entity_Wireframe,
#PB_Entity_Solid, #PB_Entity_Point und #PB_Entity_DisplaySkeleton bei
EntityRenderMode() - Hinzugefügt:
FreeEntityJoints(), AttachEntityObject(), DetachEntityObject(),
EntityBoneX/Y/Z() - Hinzugefügt: EntityBonePitch(),
EntityBoneRoll(), EntityBoneYaw(), EntityFixedYawAxis() - Hinzugefügt: DirectionX/Y/Z optionale Paramter bei
EntityLookAt() - Hinzugefügt: EntityVelocity(),
EntityAngularFactor(), EntityLinearFactor(), EntityCustomParameter(),
EntityParentNode() - Hinzugefügt:
EntityBoundingBoxX/Y/Z(), DisableEntityBody() - Hinzugefügt: #PB_Entity_VelocityX/Y/Z,
#PB_Entity_MassCenterX/Y/Z, #PB_Entity_MaxVelocity bei Get/SetEntityAttribute()
- Hinzugefügt: LightAttenuation(), LightX/Y/Z(),
LightDirection(), LightDirectionX/Y/Z() - Hinzugefügt: RotateLight(), LightPitch(), LightYaw(),
LightRoll() - Hinzugefügt: GetScriptParticle(),
CreateRenderTexture(), UpdateRenderTexture(), SaveRenderTexture() - Hinzugefügt: CreateCubeMapTexture(), EntityCubeMapTexture()
- Hinzugefügt: HideEffect() arbeitet jetzt auch mit
"Ribbon" (Farbband) - Hinzugefügt: EffectID(),
RibbonEffectWidth(), AttachRibbonEffect(), DetachRibbonEffect(),
CreateLensFlareEffect(), LensFlareEffectColor() - Hinzugefügt: EnableHingeJointAngularMotor() - Hinzugefügt: Joint Parameter bei ConeTwistJoint(),
HingeJoint(), PointJoint(), SliderJoint() - Hinzugefügt: #PB_HingeJoint_LowerLimit und
#PB_HingeJoint_UpperLimit bei Get/SetJointAttribute() - Hinzugefügt: optionale 'Pitch', 'Yaw', 'Roll' Parameter bei
AddStaticGeometryEntity() - Hinzugefügt:
FreeTerrain(), SetupTerrains(), CreateTerrain(), TerrainPhysicBody(),
DefineTerrainTile() - Hinzugefügt:
AddTerrainTexture(), BuildTerrain(), TerrainLocate(), TerrainHeight(),
TerrainTileHeightAtPosition() - Hinzugefügt:
TerrainTilePointX/Y(), TerrainTileSize(), GetTerrainTileHeightAtPoint(),
SetTerrainTileHeightAtPoint() - Hinzugefügt:
UpdateTerrain(), TerrainTileLayerMapSize(), GetTerrainTileLayerBlend(),
SetTerrainTileLayerBlend() - Hinzugefügt:
UpdateTerrainTileLayerBlend(), TerrainMousePick(), SaveTerrain(),
TerrainRenderMode() - Hinzugefügt:
Sondertasten-Handling bei InputEvent3D()
- Geändert: CameraLookAt() ändert nicht mehr die Richtung
- Geändert: Attach/DetachNodeObject() - das 'Typ'
Objekt entfernt - Geändert: Parameter
'Anfangsbreite' bei CreateRibbonEffect() entfernt
- Entfernt: AnimateEntity() (ersetzt mit
Start/StopEntityAnimation()) - Entfernt:
#PB_Entity_Wireframe, #PB_Entity_Point und #PB_Entity_Solid bei
EntityRenderMode() - Entfernt:
CheckEntityCollision(), NextWorldCollision(), FirstWorldCollisionEntity(),
SecondWorldCollisionEntity()
22. Mai 2012 : Version 4.61
- Hinzugefügt: "Up-to-date" VisualC SDK für
Windows zum Erstellen von PureLibraries - Hinzugefügt: Ressourcen-Support für Win9x - Hinzugefügt: Neues Einsteiger-Kapitel (PureBasic-Einführung)
im Referenz-Handbuch
- Aktualisiert: FASM
Version (1.69.35) - Aktualisiert: SQLite Version
(3.7.9) - Aktualisiert: PCRE Version (8.30)
- Geändert: OpenGL Subsystem ist jetzt der
Standard auf Linux (ein neues 'sdl' Subsystem wurde eingeführt)
- Repariert: 3D-Beispiele für Linux - Repariert: WinAPI 64 Bit Residents (von Danilo) - Repariert: Eine ganze Reihe Bugs im Compiler und den
Bibliotheken
7. November 2011 : Version 4.60
- Hinzugefügt: ein brandneuer Ordner mit
'3D' Beispielen - Hinzugefügt: 'Joint' Bibliothek
- Hinzugefügt: 'SpecialEffect' Bibliothek -
Hinzugefügt: 'StaticGeometry' Bibliothek - Hinzugefügt: CameraPitch(), CameraRoll(), CameraYaw(),
SwitchCamera() - Hinzugefügt: ApplyEntityForce(),
ApplyEntityImpulse(), EntityPitch(), EntityRoll(), EntityYaw() - Hinzugefügt: GetEntityAttribute(), GetEntityMaterial(),
SetEntityAttribute(), SetEntityMaterial() - Hinzugefügt: LightDiffuseColor(), SpotLightRange(),
LightLookAt(), DisableLightShadows() - Hinzugefügt:
MaterialDepthWrite(), MaterialSelfIlluminationColor(), MaterialShininess(),
GetScriptMaterial() - Hinzugefügt: CreateLine3D(),
CreateCube(), CreateSphere(), CreateCylinder(), CreatePlane() - Hinzugefügt: MeshVertexCount(), UpdateMeshBoundingBox(),
MeshRadius(), AddMeshVertex() - Hinzugefügt:
MeshVertexNormal(), MeshVertexColor(), AddSubMesh(), BuildMeshShadowVolume()
- Hinzugefügt: MeshVertexTextureCoordinate(),
AddMeshFace(), FinishMesh(), NormalizeMesh() - Hinzugefügt: SaveMesh(), SetMeshMaterial(), SubMeshCount(),
TransformMesh() - Hinzugefügt: NodePitch(),
NodeRoll(), NodeYaw(), GetScriptTexture(), TextureOutput() - Hinzugefügt: EntityCollide(), RayCollide - Hinzugefügt: OpenGL Renderer zur 3D-Bibliothek auf Windows,
wenn das OpenGL Subsystem verwendet wird - Hinzugefügt: CanvasGadget(), CanvasOutput() - Hinzugefügt: SetGadgetItemData() für das PanelGadget -
Hinzugefügt: MoveElement(), MergeLists(), SplitList()
- Hinzugefügt: RandomizeList(), RandomizeArray(),
DoubleClickTime() - Hinzugefügt:
PushListPosition(), PopListPosition(), PushMapPosition(), PopMapPosition() -
Hinzugefügt: ImageID Parameter zu OpenSubMenu() -
Hinzugefügt: #PB_ListIcon_ThreeState und
#PB_ListIcon_Inbetween - Hinzugefügt:
#PB_Tree_ThreeState und #PB_Tree_Inbetween - Hinzugefügt: "Crossplattform" ComboBox Ereignisse - Hinzugefügt: 'DeclareC' Schlüsselwort zur Vervollständigung
- Geändert: FindString() 'StartPosition'
Parameter ist jetzt optional - Geändert: WebGadget
verwendet jetzt das WebKitGtk auf Linux - Geändert: ContainerGadget mit #PB_Container_Borderless fügt
jetzt keinen 2 Pixel breiten unsichtbaren Rand auf Linux mehr hinzu - Geändert: EntityPhysicBody(), CreateLight(), RenderWorld(),
ShowGUI(), WorldShadows() - Geändert:
EntityMaterial() in SetEntityMaterial()
- Entfernt: Get/SetEntityMass(), Get/SetEntityFriction() -
Entfernt: SetMeshData()
- Repariert: Viele Bugs
IDE: - Hinzugefügt: IDE-Optionen für die Projekt-Erstellung per
Kommandozeile - Hinzugefügt: Überwachen von Dateien
auf Änderungen auf Disk, während sie in der IDE geöffnet sind - Hinzugefügt: eigene Datei-Panel Implementierung mit Drag
& Drop, Dropdown Menü, Scrolling auch auf OSX - Hinzugefügt: Vergleichs-Tool für Verzeichnisse/Dateien -
Hinzugefügt: Html Hilfe-Anzeiger für Linux/OSX -
Hinzugefügt: Hilfe-Anzeiger im Werkzeug-Panel -
Hinzugefügt: neues Farbauswahl-Tool ("Color-Picker")
- Hinzugefügt: aktivierte Zeichensatz-Auswahl in
der IDE für OSX - Hinzugefügt: Projekt-Panel merkt
sich jetzt den Status aufgeklappter Knoten
Debugger: - Hinzugefügt: Maximierungs-Schalter bei allen
Debugger-Fenstern - Hinzugefügt: Alle IsXxx() und
XxxID() Funktionen zum Ausdrucks-Parser (für Daten-Haltepunkte)
8. September 2010 : Version 4.51
- Repariert: Eine ganze Reihe Bugs im
Compiler und den Bibliotheken
7. Juni 2010 : Version 4.50 - Hinzugefügt:
Unterstützung für Array, List, Map innerhalb von Strukturen
- Hinzugefügt: CopyList(), CopyMap(),
CopyArray()
- Hinzugefügt: FreeList(), FreeMap(),
FreeArray()
- Hinzugefügt: CopyStructure(),
InitializeStructure()
- Hinzugefügt: Lautstärke-Support bei
PlaySound()
- Hinzugefügt: Tiefe-Parameter bei
SaveImage()
- Hinzugefügt: ImageDepth() Flag, um die
originale oder aktuelle Bildtiefe zu erhalten
- Hinzugefügt: #PB_Image_Transparent Flag bei
CreateImage()
- Hinzugefügt: 32Bit Support beim TGA
Bild-Decoder
- Hinzugefügt: RoundBox(), AbortFTPFile(),
RandomData()
- Hinzugefügt: #PB_2DDrawing_AllChannels
Modus bei DrawingMode()
- Hinzugefügt: Image (Bild) Unterstützung bei
ComboBoxGadget()
- Hinzugefügt: Grafische Console-Funktionen
auf Linux
- Hinzugefügt: Unterstützung für große
Dateien bei der 'File' Library auf Linux/OSX
- Hinzugefügt: CryptRandom(),
CryptRandomData(), OpenCryptRandom(), CloseCryptRandom()
- Hinzugefügt: Viele Mathe-Funktionen: Exp(),
ATan2(), Radian(), Degree(), [A]CosH(), [A]SinH(), [A]TanH(), IsNaN(),
IsInfinity(), NaN(), Infinity(), Sign()
- Hinzugefügt: 'Debugger' Library, um einige
Debugger-Aktionen aus dem Code heraus kontrollieren zu können
- Geändert: Die Image Library behandelt
Bilder jetzt intern als 24Bit oder 32Bit (das Laden und Speichern
funktioniert mit anderen Bit-Tiefen)
- Repariert: So einige Bugs in den Libraries
und im Compiler
IDE/Debugger:
- Hinzugefügt: Schlüsselwort-Unterstreichung
bei Break, Continue, ProcedureReturn
- Hinzugefügt: StatusBar-Hilfe für Prototypen
und Interfaces
- Hinzugefügt: Schlüsselwort-abhängige
Einrückung (Block-Modus ist weiterhin verfügbar)
- Hinzugefügt: Option "Einrückung
formatieren" im Bearbeiten-Menü
- Hinzugefügt: Einrücknugs-Hilfslinien und
Leerzeichen-Optionen
- Hinzugefügt: Die Möglichkeit zur Auswahl
mehrerer Compiler in den Compiler-Optionen
- Hinzugefügt: Purifier-Werkzeug für den
Debugger
- Hinzugefügt: Vollständige
Debugger-Kompatibilität zwischen allen OS und Prozessoren
- Hinzugefügt: Netzwerk-Debuggen für den
eigenständigen Debugger
- Hinzugefügt: Daten-Haltepunkte beim
Debugger
- Hinzugefügt: Unterstützung für
strukturierte Einträge in den 'Array/Listen/Map anzeigen' Registern der
Variablenliste
- Geändert: Die Array, Listen bzw. Map-Namen
in der Variablenliste müssen nun mit "()" eingegeben werden, um ihre
Elemente anzuzeigen.
1. Februar 2010 : Version 4.41 - Repariert: Eine
ganze Reihe Bugs in den Bibliotheken und im Compiler
1.
Dezember 2009
: PureBasic V4.40 (alle OS)
- Hinzugefügt: Native Linux x64 Unterstützung -
Hinzugefügt: Eingebaute Map Bibliothek für
Hash-Tabellen - Hinzugefügt: 'Threaded'
Schlüsselwort für Thread-lokale Variablen - Hinzugefügt: Struktur-Zuweisung kopiert die Struktur (a.point
= b.point) - Hinzugefügt: ClearStructure() -
Hinzugefügt: AESEncoder(), AESDecoder(),
StartAESCipher(), AddCipherBuffer(), FinishCipher() - Hinzugefügt: Dylib Unterstützung für OS X - Hinzugefügt: Joystick Bibliothek für OS X - Hinzugefügt: Systray Bibliothek für OS X - Hinzugefügt: Trim/LTrim/RTrim() haben ein optionales zu
kürzendes Zeichen erhalten - Hinzugefügt:
#PB_Function, #PB_OSFunction, #PB_Map bei Defined() - Hinzugefügt: ReverseString(), InsertString(), RemoveString()
- Hinzugefügt: Blob-Unterstützung bei Datenbanken
- Hinzugefügt: UsePostgreSQLDatabase(): native
PostgreSQL Unterstützung - Hinzugefügt:
'Peephole'-Optimierer bei den 64 Bit Versionen, um besseren Code zu produzieren
- Hinzugefügt: '.a' (ascii) und '.u' (unicode)
native Typen, um native vorzeichenlose Byte und Word bereitzustellen. -
Hinzugefügt: FileBuffersSize() - #PB_Default
Unterstützung ändert die Buffergröße für die nächsten zu öffnenden Dateien -
Hinzugefügt: #PB_URL_Protocol bei Get/SetURLPart()
- Hinzugefügt: #PB_Shadow_TextureAdditive -
Hinzugefügt: FTPDirectoryEntryRaw(), FillMemory() -
Hinzugefügt: Global, Protected, Threaded, Shared und
Static akzeptieren jetzt einen Typ, um sich auf alle Standard
Variablen-Deklarationen auszuwirken. - Hinzugefügt:
AddWindowTimer(), RemoveWindowTimer(), EventTimer() - Hinzugefügt: #PB_Window_Tool zum Erstellen von
'Tool'-Fenstern - Hinzugefügt: ShortcutGadget(),
StatusBarProgress() - Hinzugefügt: StatusBarImage()
unterstützt jetzt normale Bilder (nicht nur Icons) - Hinzugefügt: #PB_Checkbox_ThreeState Flag zum Erstellen einer
"3 Status"-Checkbox - Hinzugefügt:
CreateImageMenu(), CreatePopupImageMenu() für OSX - Hinzugefügt: Vollständige Alpha-Kanal Unterstützung für alle
GUI-Elemente, die Bilder darstellen - Hinzugefügt:
Vollständige Alpha-Kanal Unterstützung für die Image Bibliothek - Hinzugefügt: Neue Zeichen-Modi für 2DDrawing in ImageOutput()
- Hinzugefügt: LinearGradient(), BoxedGradient(),
CircularGradient(), EllipsicalGradient(), ConicalGradient() - Hinzugefügt: CustomGradient(), GradientColor(),
ResetGradientColors(), CustomFilterCallback() - Hinzugefügt: DrawAlphaImage() für alle Ausgabekanäle auf
allen OS - Hinzugefügt: DrawAlphaImage() hat einen
neuen Transparenz-Parameter und kann verwendet werden, um nicht-Alpha-Bilder
teilweise transparent zu zeichnen - Hinzugefügt:
QuickDraw Subsystem für WindowOutput() auf OSX - Hinzugefügt: Sprite/ScreenOutput für OpenGL (alle OS) -
Hinzugefügt: DrawingFont() funktioniert für die
SDL-Ausgabe - Hinzugefügt: OutputWidth(),
OutputHeight(), OutputDepth() für 2DDrawing - Hinzugefügt: GrabDrawingImage(), DrawRotatedText(), RGBA(),
Alpha(), AlphaBlend() - Hinzugefügt:
#PB_PixelFormat_ReversedY - für Pixel-Buffer, die umgekehrt gespeichert sind
(Windows ImageOutput oder OpenGl) - Hinzugefügt:
#PB_OS_Windows_7, #PB_OS_MacOSX_10_6 bei OSVersion()
- Aktualisiert: OGRE auf 1.6.2, sqlite 3.6.14.2, PCRE auf 7.9
- Geändert: Call(C)Function(Fast) Parameter
wurden geändert von 'Any' in 'Integer'. - Geändert: OpenScreen() akzeptiert jetzt FlipModus und
RefreshRate - Geändert: FlipBuffers() unterstützt
keinen optionalen Parameter mehr
- Entfernt:
#PB_Image_DisplayFormat ist jetzt "veraltet" (der Wert wurde auf 24 gesetzt, um
standardmäßig 24Bit zu haben) - Entfernt:
SetRefreshRate() wurde entfernt, der Parameter befindet sind jetzt in
OpenScreen()
- Repariert: Image-Decoder sind
jetzt thread-sicher - Repariert: Eine ganze Reihe
Bugs in den Bibliotheken und im Compiler
PureBasic IDE: -
Hinzugefügt: Vollständige Projekt-Management -
Hinzugefügt: Hervorheben passender Schlüsselwörter
unter dem Cursor (gebunden an die Farbeinstellung zur Prüfung passender
Klammern) - Hinzugefügt: Bearbeiten -> Gehe zum
dazugehörenden Schlüsselwort - Hinzugefügt:
PB_TOOL_Preferences Umgebungs-Variable für die IDE-Tools - Hinzugefügt: Themen-Management zum Anpassen der Menü-Icons
- Hinzugefügt: Neues 'Silk' Thema basierend auf dem
Icon-Set von Mark James - Hinzugefügt:
'AutoVervollständigen' überprüft auch indirekte Variablen-Deklarationen und
respektiert den Zuständigkeitsbereich ("Scope") - Hinzugefügt: Automatisches Vervollständigen von
Struktur-Einträgen
- Geändert: Einstellungen
für Codierung/Zeilenumbruch von den Compiler-Optionen in das Datei-Menü
verschoben
PureBasic Debugger: - Optimiert: wesentlich verbesserte Geschwindigkeit beim
Aktualisieren des Variablenanzeigers - Hinzugefügt:
Fortschrittsanzeige, wenn die Aktualisierung des Variablenanzeigers länger
dauert - Hinzugefügt: Möglichkeit zur Sortierung
der Spalten im Variablenanzeiger (nur auf Windows)
3.
Juni 2009
: PureBasic V4.31 (alle OS)
- Repariert: Viele Fehler des Compilers und der
Bibliotheken
16.
Dezember 2008
: PureBasic V4.30 (alle OS) - Hinzugefügt: Vollständige 64 Bit Version von PureBasic (Windows) -
Hinzugefügt: MacOS X x86 Unterstützung - Hinzugefügt: 'JPEG 2000' Bibliothek
- Hinzugefügt: 'Node' Bibliothek - Hinzugefügt: 'Gadget3D' Bibliothek
- Hinzugefügt: 'Window3D' Bibliothek - Hinzugefügt: 'Sound3D' Bibliothek
- Hinzugefügt: Vollständige Unicode-Unterstützung bei der Engine3D -
Hinzugefügt: MacOS X Unterstützung für die Engine3D - Hinzugefügt:
Absolute/relative Rotation bei allen Engine3D Rotate-Befehlen - Hinzugefügt:
Absolute Bewegung beim Engine3D physischen Körper - Hinzugefügt: EntityID(),
EntityLookAt() - Hinzugefügt: CameraProjectionX(), CameraProjectionY(),
WorldDebug(), Sun() - Hinzugefügt: MousePick(), PointPick(), PickX/Y/Z(),
CreateWater(), AntialiasingMode() - Hinzugefügt: CatchModule(), ArraySize(),
WindowBounds(), DesktopX(), DesktopY() - Hinzugefügt: FinishDatabaseQuery(),
DatabaseID() - Hinzugefügt: CreateSemaphore(), FreeSemaphore(),
SignalSemaphore(), WaitSemaphore(), TrySemaphore()
- Hinzugefügt: '.i' nativer Typ als 32/64 Bit Ganzzahlen-Größe -
Hinzugefügt: Read/WriteInteger(), Read/WritePreferenceInteger(), PeekI(),
PokeI() - Hinzugefügt: Sprachen-Unterstützung (Lokalisierung) beim Compiler
und Debugger - Hinzugefügt: Stil-Parameter bei FontRequester() -
Hinzugefügt: Unterstützung für 'And/Or' in CompilerIf Bedingungen -
Hinzugefügt: #PB_Event_MinimizeWindow, #PB_Event_MaximizeWindow,
#PB_Event_RestoreWindow - Hinzugefügt: #PB_Ignore Unterstützung bei
AddStatusBarField() - Hinzugefügt: #PB_Explorer_DisplayMode beim
ExplorerListGadget() - Hinzugefügt: Unterstützung für mehrere Joysticks
- Hinzugefügt: #PB_Compiler_FilePath Compiler-Konstante
-
Verbessert: größere Überarbeitung der OnError Bibliothek (cross-plattform) -
Verbessert: InitScintilla(), Parameter ist jetzt optional - Verbessert:
Vollständige Neuprogrammierung des Debuggers zwecks Unterstützung der neuen
Plattformen
- Optimiert: XML Bibliothek zum
schnellen Verarbeiten sehr großer Dateien - Optimiert: LinkedList Bibliothek
zwecks effizienterer Verwendung des Speichers
- Geändert: 'Read'
Schlüsselwort benötigt jetzt einen Typ (Read.l, Read.q, etc.), um Probleme mit
der 64 Bit Migration zu vermeiden - Geändert:
CountList() in ListSize() - Geändert: ClearGadgetItemList() in
ClearGadgetItems() - Geändert: CameraProjection() in CameraProjectionMode()
- Geändert: AddElement() und entsprechende Befehle geben jetzt einen Zeiger
auf den Start der Daten zurück - Geändert:
ComboBoxGadget() Höhe ist jetzt die tatsächliche Gadget-Höhe - Geändert:
#Long, #Byte, #Word etc. in #PB_Long, #PB_Byte, #PB_Word etc. zwecks Konsistenz
- Geändert: RotateEntity(), RotateCamera() und RotateBillboard() x,y
Rotations-Achsen - Geändert: CameraFOV() Winkel von Bogenmaß in Grad -
Geändert: Array und LinkedList parameter in Prozeduren benötigen nun das 'Array'
oder 'List' Schlüsselwort
- Entfernt: StrQ(),
HexQ(), BinQ(), ValQ() - Entfernt: ChangeListIconDisplay(), ersetzt durch
ein Gadget-Attribut - Entfernt: ButtonImageGadget() Rückwärts-Kompatibilität
- Entfernt: CreateGadgetList(), erfolgt jetzt bei OpenWindow() automatisch
- Entfernt: CopyTexture(), TextureOutput() - Entfernt: CPU-Monitor aus
der IDE entfernt, da alle OS die gleiche Funktionalität bieten - Repariert:
DX9 Subsystem auf Windows - Repariert: Viele Fehler des Compilers und der
Bibliotheken
23.
Mai 2008
: PureBasic V4.20 (alle OS) - Hinzugefügt: XML library - Hinzugefügt: Mail Library - Hinzugefügt: Ftp Library -
Hinzugefügt: RegularExpression Library - Hinzugefügt: Http Library -
Hinzugefügt: SerialPort Library - Hinzugefügt: FLAC Library -
Hinzugefügt: SQLite Library - Hinzugefügt: DirectX 9 Subsystem -
Hinzugefügt: Sound Streaming für OGG und FLAC - Hinzugefügt:
#PB_Sound_MultiChannel Unterstützung für die Sound Library - Hinzugefügt:
CreateImageMenu(), CreatePopupImageMenu(), SHA1FingerPrint(),
SHA1FileFingerPrint() - Hinzugefügt: CRC32FileFingerprint(),
ExamineMD5FingerPrint(), ExamineSHA1FingerPrint(), - Hinzugefügt:
NextFingerPrint(), FinishFingerPrint(), IsFingerPrint() - Hinzugefügt:
Hexadezimal- und Binärunterstützung für Val() und ValQ() - Hinzugefügt:
#PB_Compiler_Procedure Compiler Konstante - Hinzugefügt: #PB_Round_Nearest
für Round() - Hinzugefügt: 'XOr' Unterstützung für 2DDrawing unter MacOS X
- Hinzugefügt: Neues Tool zur Programmanalyse im Debugger Menu - um zu
beobachten, wie oft Zeilen ausgeführt werden - Hinzugefügt: Der Debugger
kann jetzt Ausdrücke auswerten (siehe Ausgabefenster des Debuggers) -
Hinzugefügt: Der Speicheranzeiger kann Ausdrücke als Start-/Endadresse annehmen
- Hinzugefügt: Ein "+" vor die Endadresse im Speicheranzeiger macht die
Endadresse relativ zur Startadresse - Hinzugefügt: Platzieren des Cursors
über einer Variable im Code zeigt deren Wert an, während das Programm läuft
- Hinzugefügt: Auswählen eines komplexeren Ausdrucks und Platzieren des
Cursors darüber wertet den Ausdruck aus und zeigt dessen Wert, wenn das Programm
läuft
- Geändert: Der letzte Parameter von Mid() ist jetzt optional
- Optimiert: Geschwindigkeit des Compilers beim verarbeiten des Codes
(bis zu 8x schneller) - Optimiert: Alle Befehle profitieren vom Verwenden
eines besseren C Compilers (nur unter Windows)
- Repariert: Viele Bugs
im Compiler und den Bibliotheken
09.
November 2007
: PureBasic V4.10 (alle OS) - Hinzugefügt: XML library - Hinzugefügt: Drag & Drop library -
Hinzugefügt: Vista Kompatibilität (voll kompatibel mit UAC), außer bei der
Sprite Library (geplant für 4.20) - Hinzugefügt: ModPlug Unterstützung für
das Abspielen von Modulen (MIDAS entfernt) - Hinzugefügt: ScintillaGadget(),
TruncateFile() - Hinzugefügt: EnableASM und DisableASM Compiler Direktiven
- Hinzugefügt: #PB_OS_Windows_Vista und #PB_OS_Windows_Server_2008 bei
OSVersion() - Hinzugefügt: Viele neue Features beim WebGadget() -
Hinzugefügt: Viele neue kleine Verbesserungen bei der IDE (neues Compiler
Kommunikations-Protokoll, Vista fähig, Klammer-Markierung, schnelleres Einfärben
etc.) - Hinzugefügt: synchronisierte Veröffentlichung von Windows, Linux und
MacOS X !
- Geändert: InitDatabase() in UseODBCDatabase() -
Geändert: Auf Windows werden die Einstellungen der IDE und der PB-Werkzeuge
jetzt im Anwender "applicationdata" (Anwenderdaten) Ordner gespeichert
-
Entfernt: Das SmartUpdate Tool wird in Zukunft nicht mehr unterstützt
-
Repariert: viele Bugs bei den Befehlen und im Compiler
28.
April 2007
: PureBasic V4.01 (Linux) - Repariert: Alle Byteorder Probleme von 4.00 - Repariert:
GetGadgetItemText() beim TreeGadget() - Repariert: IDE crash beim Benutzen
von Compile->Run
15.
April 2007
: PureBasic V4.00 (Linux) Da PureBasic 4 ein ziemlich großes Release ist - sowohl im Hinblick auf
Änderungen als auch Verbesserungen, ist ein Dokument mit einer Übersicht aller
Änderungen an den Library-Befehlen seit dem letzten stabilen Release verfügbar:
klicken Sie hier.
- Hinzugefügt: Native Unicode-Unterstützung - Hinzugefügt:
Unterstützung von Subsystems - Hinzugefügt: Unbegrenzte Länge von Strings,
sowohl im ASCII- als auch Unicode-Modus - Hinzugefügt: Threadsicheres
Befehlsset und Strings - Hinzugefügt: Character Typ (.c) - Hinzugefügt:
Double Typ (.d) - Hinzugefügt: Quad Typ (.q) - Hinzugefügt: 'XOr' und
'Not' logische Operatoren - Hinzugefügt: Fixed String Typ (String${#Anzahl})
- Hinzugefügt: Macro/EndMacro - einfacher und komplexer Modus -
Hinzugefügt: With/EndWith für saubereren Code - Hinzugefügt: Möglichkeit der
Zuweisung bei Static (ziemlich unbedeutend), Protected und Global: "Global a =
5" - Hinzugefügt: Es ist jetzt möglich, eine verknüpfte Liste von Zeigern zu
erstellen - Hinzugefügt: Unterstützung für Global, Protected, Static und
Shared Arrays und verknüpfte Listen: "Global NewList MyList.l()". NewList allein
macht die Liste nicht mehr global. - Hinzugefügt: #PB_Compiler_File,
#PB_Compiler_Line, #PB_Compiler_Version, #PB_Compiler_Home,
#PB_Compiler_Debugger, #PB_Compiler_ThreadSafe, #PB_Compiler_Unicode -
Hinzugefügt: CompilerError "Message" Direktive - Hinzugefügt: @Procedure()
und ?Label Unterstützung in Data.l Direktiven - Hinzugefügt: Optionale
Parameter für Prozeduren, Interface Methoden und Prototypes - Hinzugefügt:
/CONSTANT Test=Wert Switch zum Deklarieren von Konstanten auf der Compilerzeile
- Hinzugefügt: Swap Schlüsselwort zum schnellen Tauschen von 2 Variablen
oder Elementen (Swap a,b). - Hinzugefügt: Mehrfaches 'Case' für
Select/EndSelect: Case 1, 2, 6 To 20 - Hinzugefügt: 'Prototype'
Schlüsselwort zum einfachen Deklarieren von Funkionszeigern - Hinzugefügt:
'ProcedureC' Schlüsselwort zum einfachen Deklarieren von cdecl Prozeduren -
Hinzugefügt: Procedure Parameter können jetzt den gleichen Namen wie eine
globale Variable haben (werden automatisch geschützt) - Hinzugefügt:
EnableExplicit/DisableExplicit: Variablen müssen mittels Define, Global,
Protected, Shared oder Static deklariert werden. - Hinzugefügt:
Defined(Name, Typ) Compiler-Funktion. Typ kann sein #PB_Constant, #PB_Variable,
#PB_Array, #PB_LinkedList, #PB_Structure, #PB_Interface - Hinzugefügt: ReDim
für einfache und mehrdimensionale Arrays - Hinzugefügt:
Import/ImportC/EndImport zum Importieren von Funktionen und Variablen von
externen .lib - Hinzugefügt: Verknüpfte Listen und Arrays können jetzt als
Prozedur-Parameter übergeben werden. - Hinzugefügt: PseudoTypes: p-ascii,
p-unicode und p-utf8 - Hinzugefügt: Assembler und Linker Fehler beim
CLI-compiler werden jetzt direkt angezeigt - Hinzugefügt: OpenGL Subsystem
für Multimedia-Applikationen - Hinzugefügt: Vollständige
Alphakanal-Unterstützung für die Sprite3D Library (über PNG und TIFF) -
Hinzugefügt: Subsystem() Compiler-Direktive zur Überprüfung, ob ein Subsystem in
Benutzung ist. - Hinzugefügt: Exponenten-Form für Fließkomma-Konstanten:
123.5e-20 - Hinzugefügt: Aliasnamen für lokale Variablen werden bei der
Verwendung von "raw" Assembler ('!') generiert, für einfacheres Verweisen darauf
(in der Form p.v_variable) - Hinzugefügt: 'Step over' und 'Step out'
Features beim Debugger - Hinzugefügt: Process Library - Hinzugefügt:
Erstellung von .so Bibliotheken
- Aktualisiert: Resident-Dateien
unterstützen jetzt Quad, Double, Macros und Prototypes - Aktualisiert: Viele
Library Befehle - Aktualisiert: OGRE Engine auf die 1.0.7 Version -
Aktualisiert: Die französische Dokumentation wurde stark verbessert.
-
Optimiert: Schnelleres Mischen von numerischen Fließkomma und Literalen -
Optimiert: File Library komplett neu geschrieben und verwaltet jetzt einen
Lese-/Schreib-Cache für sehr schnelle Performance. - Optimiert: Prozeduren
sind jetzt so klein wie möglich, was etwas Geschwindigkeitszuwachs geben sollte.
- Geändert: Wenn ein numerischer Parameter erwartet wird, ist es nicht
mehr möglich, einen String zu übergeben. - Geändert: 'DefType' umbenannt in
'Define'
- Repariert: Interne System-Funktionen zerstören nicht mehr
reservierte Register. - Repariert: Viele kleine/mittlere Angelegenheiten,
die seit der letzten Version aufgetreten sind.
18.
Dezember 2006
: PureBasic V4.02 (Windows) - Repariert: Macro Probleme - Repariert: LoadImage() mit Plugins im Unicode
Modus - Repariert: ExplorerListGadget() mit Dateien > 4Gb -
Repariert: ExaminePreferenceKeys() hat den ersten Key nicht ausgegeben -
Repariert: ExamineDirectory() hat Patterns nicht richtig verarbeitet -
Repariert: Einige Probleme mit IDE und Debugger - Repariert: Eine Reihe
Compilerbugs
01.
November 2006
: PureBasic V4.01 (Windows) - Geändert: CreateThread() gibt nicht mehr den OS-Handle zurück. (ThreadID()
kann dazu benutzt werden)
- Repariert: Einige wichtige Quad und Unicode
Probleme - Repariert: Thread-Sicherer Modus machte in manchen Fällen
Probleme - Repariert: Genestete Compiler-Direktiven in Macros -
Repariert: GetFileDate() und DirectoryEntryDate() benutzen jetzt die lokale
Zeitzone - Repariert: OpenFileRequester() hatte Probleme mit zu vielen
selektierten Dateien - Repariert: Viele weitere bugs
08.
Mai 2006
: PureBasic V4.00
(Windows) Die inzwischen berühmte, hochgejubelte Version 4.00 von PureBasic ist da.
Beurteilen Sie einfach selbst, es gibt eine Menge an neuen und "sexy" Features.
Und es gibt auch eine ganze Reihe an Änderungen, da wir die Gelegenheit zum
Bereinigen längere Zeit ausstehender Dinge wahrnahmen, indem wir das Befehlsset
etwas überarbeitet haben, nur zum Besten. Schrecken Sie nicht zurück, es kann
ein bisschen massiv aussehen, aber Sie werden sich immer noch heimisch fühlen,
da sich absolut nichts an der Programmierlogik geändert hat. Um die an den
Bibliotheken erfolgten Änderungen anzusehen, klicken Sie hier. Viel Freude !
- Hinzugefügt: Native Unicode-Unterstützung - Hinzugefügt: Unterstützung von
Subsystems - Hinzugefügt: Unbegrenzte Länge von Strings, sowohl im ASCII-
als auch Unicode-Modus - Hinzugefügt: Threadsicheres Befehlsset und Strings
- Hinzugefügt: Character Typ (.c) - Hinzugefügt: Double Typ (.d) -
Hinzugefügt: Quad Typ (.q) - Hinzugefügt: 'XOr' und 'Not' logische
Operatoren - Hinzugefügt: Fixed String Typ (String${#Anzahl}) -
Hinzugefügt: Macro/EndMacro - einfacher und komplexer Modus - Hinzugefügt:
With/EndWith für saubereren Code - Hinzugefügt: Möglichkeit der Zuweisung
bei Static (ziemlich unbedeutend), Protected und Global:
"Global a = 5" - Hinzugefügt: Es ist jetzt möglich,
eine verknüpfte Liste von Zeigern zu erstellen - Hinzugefügt: Unterstützung
für Global, Protected, Static und Shared Arrays und verknüpfte Listen:
"Global NewList MyList.l()". NewList allein macht die
Liste nicht mehr global. - Hinzugefügt: #PB_Compiler_File,
#PB_Compiler_Line, #PB_Compiler_Version, #PB_Compiler_Home,
#PB_Compiler_Debugger, #PB_Compiler_ThreadSafe,
#PB_Compiler_Unicode - Hinzugefügt: CompilerError "Message" Direktive -
Hinzugefügt: @procedure()und ?Label Unterstützung in Data.l Direktiven -
Hinzugefügt: Optionale Parameter für Prozeduren, Interface Methoden und
Prototypes - Hinzugefügt: /CONSTANT Test=Wert Switch zum Deklarieren von
Konstanten auf der Compilerzeile - Hinzugefügt: Swap Schlüsselwort zum
schnellen Tauschen von 2 Variablen oder Elementen (Swap a,b). - Hinzugefügt:
Mehrfaches 'Case' für Select/EndSelect: Case 1, 2, 6 To 20 - Hinzugefügt:
'Prototype' Schlüsselwort zum einfachen Deklarieren von Funkionszeigern -
Hinzugefügt: 'ProcedureC' Schlüsselwort zum einfachen Deklarieren von cdecl
Prozeduren - Hinzugefügt: Procedure Parameter können jetzt den gleichen
Namen wie eine globale Variable haben (werden
automatisch geschützt) - Hinzugefügt: EnableExplicit/DisableExplicit:
Variablen müssen mittels Define, Global, Protected, Shared
oder Static deklariert werden. - Hinzugefügt:
Defined(Name, Typ) Compiler-Funktion. Typ kann sein #PB_Constant, #PB_Variable,
#PB_Array, #PB_LinkedList, #PB_Structure, #PB_Interface
- Hinzugefügt: ReDim für einfache und mehrdimensionale Arrays -
Hinzugefügt: Import/ImportC/EndImport zum Importieren von Funktionen und
Variablen von externen .lib - Hinzugefügt:
Verknüpfte Listen und Arrays können jetzt als Prozedur-Parameter übergeben
werden. - Hinzugefügt: /LINKER Flags zum Übergeben einer Befehlsdatei direkt
an den Linker - Hinzugefügt: PseudoTypes: p-ascii, p-unicode, p-variant,
p-utf8 und p-bstr - Hinzugefügt: Assembler und Linker Fehler beim
CLI-compiler werden jetzt direkt angezeigt - Hinzugefügt: OpenGL Subsystem
für Multimedia-Applikationen (kann mit dem für NT4 kombiniert
werden) - Hinzugefügt: Vollständige
Alphakanal-Unterstützung für die Sprite3D Library (über PNG und TIFF) -
Hinzugefügt: Subsystem() Compiler-Direktive zur Überprüfung, ob ein Subsystem in
Benutzung ist. - Hinzugefügt: Exponenten-Form für Fließkomma-Konstanten:
123.5e-20 - Hinzugefügt: Aliasnamen für lokale Variablen werden bei der
Verwendung von "raw" Assembler ('!') generiert, für
einfacheres Verweisen darauf (in der Form p.v_variable) - Hinzugefügt: 'Step
over' und 'Step out' Features beim Debugger - Hinzugefügt: Process Library
- Aktualisiert: NT4 Unterstützung erfolgt jetzt durch Verwendung eines
Subsystems (DirectX 3) - Aktualisiert: Resident-Dateien unterstützen jetzt
Quad, Double, Macros und Prototypes - Aktualisiert: Viele Library Befehle
- Aktualisiert: OGRE Engine auf die 1.0.7 Version - Aktualisiert: Die
französische Dokumentation wurde stark verbessert. - Aktualisiert: File
Library unterstützt 64 Bit Dateien
- Optimiert: Kleinerer
Executable-Footprint: 1,5 KB anstelle von 2,5 KB für das kleinste -
Optimiert: Schnelleres Mischen von numerischen Fließkomma und Literalen -
Optimiert: File Library komplett neu geschrieben und verwaltet jetzt einen
Lese-/Schreib-Cache für sehr schnelle Performance. -
Optimiert: Prozeduren sind jetzt so klein wie möglich, was etwas
Geschwindigkeitszuwachs geben sollte.
- Geändert: Console Library
Befehle können jetzt vollständig umgeleitet werden (z.B. für CGI) -
Geändert: Wenn ein numerischer Parameter erwartet wird, ist es nicht mehr
möglich, einen String zu übergeben. - Geändert:
Temporäre purebasic.exe Namen sind nicht mehr zufällig, da dies zu einer
Verlangsamung mit einigen Firewalls führte. - Geändert:
'DefType' umbenannt in 'Define'
- Repariert: Interne System-Funktionen
zerstören nicht mehr reservierte Register. - Repariert: Die Maus wird im
"Windowed Modus" automatisch freigegeben, wenn das Fenster den Fokus
verliert. - Repariert: KeyboardInkey() behandelt jetzt
Shift/Alt Änderungen korrekt. - Repariert: IsScreenActive() arbeitet auch
für den "Windowed Modus" korrekt. - Repariert: Viele kleine/mittlere
Angelegenheiten, die seit der letzten Version aufgetreten sind.
05.
Oktober 2005
: PureBasic V3.94
(MacOS X - erste Version) Sie ist endlich da! Sie ist das Ergebnis vieler Monate harter Arbeit und wir
sind sehr glücklich, die OS X Version von PureBasic präsentieren zu können. Sie
ist sehr vollständig, bietet native Unterstützung aller PureBasic Libraries und
kann entweder über die Kommandozeile (für die Kommandozeilen-Freaks) oder über
die mitgelieferte IDE verwendet werden. Es gibt sogar eine optionale
Unterstützung für GTK 1 und 2, um "Look & Feel" (Aussehen und Handhabung)
der Anwendung mit dieser API zu testen (zum Beispiel beim Portieren von OS X auf
Linux). Zögern Sie nicht damit, diese Version auszuprobieren und berichten Sie
auftretende Probleme hier: http://forums.purebasic.com. Viel
Spaß!
- Eingebaute native IDE und Debugger (eigenständig oder
Konsole). - Native OS X Unterstützung für GUI (Carbon), Sprites (OpenGL),
Sounds und Movies (QuickTime). - Sehr schnelle PowerPC Assembler
Code-Generierung, welche ausgezeichnete Leistung und reduzierte
Executable-Größe ermöglicht. - Eingebaute OS X API Unterstützung
(derzeit nur einige Funktionen). - Die IDE und die Debugger sind vollständig
in PureBasic geschrieben, was das Portierbarkeits-Konzept zwischen OS X,
Windows und Linux beweist. - Der größte Teil des PureBasic-Befehlssets wird
unterstützt.
21.
September 2005
: PureBasic V3.94
(Linux) - Hinzugefügt: Brandneue IDE für GTK1.2 und GTK2 ! - Hinzugefügt: Mächtiger
integrierter, eigenständiger und Konsolen-Debugger ! - Hinzugefügt:
SoundPlugin und SoudPluginOGG Libraries - Hinzugefügt: FillArea() Support
sowohl für SDL als auch GTK - Hinzugefügt: DrawingMode() Support für SDL
(außer XOR) - Hinzugefügt: #PB_ToolBar_Toggle, Get/SetToolBarButtonState()
- Hinzugefügt: Gleicher Zeichensatz wie Windows für die SDL Drawing-Befehle
- Hinzugefügt: DrawingImage() und Point() Support für GTK - Hinzugefügt:
DrawingImage() für SDL, einschließlich Zoom-Support - Hinzugefügt:
CallCFunction() und CallCFunctionFast() - Hinzugefügt:
Get/SetGadgetAttribute() Support für das ScrollAreaGadget() - Hinzugefügt:
ContainerGadget() Flags für 'Border' Support - Hinzugefügt:
#PB_Event_ActivateWindow - Hinzugefügt: #PB_Splitter_First/SecondMinimumSize
Support - Hinzugefügt: #PB_Splitter_First/SecondFixed Support -
Hinzugefügt: CountTreeGadgetNodeItems() Support - Hinzugefügt: Optionaler
'Position' Parameter für OpenTreeGadgetNode() - Hinzugefügt: Optionaler
'Color' Parameter für ColorRequester() - Hinzugefügt: PNG-Transparenz
Support für Images (für Toolbar und Gadgets) - Hinzugefügt: ParentID Support
für OpenWindow()
- Geändert: *Warnung* CallFunction/Fast() ist nicht
mehr CDecl-kompatibel (stattdessen CallCFunction)
- Optimiert: SDL und
GTK 'Shared Libraries' werden nur noch bei Verwendung hinzugelinkt -
Optimiert: 2DDrawing ist kleiner und schneller - Optimiert: ListViewGadget()
komplett neu programmiert, um besser skalierbar zu sein
- Repariert:
Zeichensatz-Management für GTK2 wurde überarbeitet - Repariert:
CallFunction() und CallFunctionFast akzeptierten nur 11 Argumente -
Repariert: Circle() und Ellipse() waren nicht richtig zentriert - Repariert:
GrabImage() und CopyImage() konnten bei einer ID > 9 fehlschlagen -
Repariert: RunProgram() beendete das Programm, wenn die Datei nicht gefunden
wurde - Repariert: PopupMenu() gab WindowEventID() nicht korrekt zurück
- Repariert: SetGadgetState() mit ListViewGadget() scrollte nicht -
Repariert: Mehrfacher Aufruf von CreateToolBar() konnte zu einem Abstutz führen
- Repariert: TrackBarGadget() Bug unter GTK2 - Repariert: Image-Probleme
auf 16 Bit-Desktops - Repariert: Refresh-Problem mit SetGadgetState() und
ButtonImageGadget() - Repariert: RemoveGadgetItem() arbeitete nicht mit
ListIconGadget() - Repariert: DesktopDepth() funktionierte nicht -
Repariert: EditorGadget() unterstützte kein Get/SetGadgetItemText(),
CountGadgetItems(), ClearGadgetItemList() - Repariert:
Menü-Shortcuts gaben keine Ereignisse zurück - Repariert: MenuItem() gab bei
Verwendung eines falschen Kürzels eine GTK-Warnung aus - Repariert:
EventType() arbeitete nicht bei ListViewGadget() - Repariert: Input() gab
nur ein Zeichen zurück - Repariert: ClipSprite() arbeitete nicht richtig
- Repariert: CatchSound() hatte nicht den optionalen Parameter -
Repariert: ReceiveNetworkFile() funktionierte nicht - Repariert:
NetworkServerEvent() sendete kein 'Verbindungsabbruch' Ereignis - Repariert:
userlibraries\ Verzeichnis funktionierte nicht - Repariert: Pfeile werden
jetzt angezeigt, wenn zu viele Panels vorhanden sind - Repariert: Images
verschwanden im TreeGadget() - Repariert: #PB_Event_SizeWindow Ereignis ging
manchmal verloren
16.
August 2005
: PureBasic V3.94
(Windows) - Hinzugefügt: Brandneue IDE und 3 Debugger (!) - Hinzugefügt: Support für
Ressourcen-Dateien beim Compiler und der IDE (/RESOURCE Compiler-Switch) -
Hinzugefügt: Unterstützung der Versionsangabe bei Executables und DLL (mittels
Ressourcen) - Hinzugefügt: Unterstützung für das #PB_Event_ActivateWindow
Ereignis - Hinzugefügt: #PB_Web_Mozilla Flag, um das Mozilla ActiveX beim
WebGadget() zu nutzen - Hinzugefügt: GetToolBarButtonState() und
SetToolBarButtonState() - Hinzugefügt: Vollständige Dokumentation für IDE
und den Debugger
- Repariert: 32x32 Bitmaps im ListIconGadget() im
Anzeigemodus für große Icons - Repariert: OpenScreen()/CloseScreen() konnte
fehlschlagen, wenn sprite3D verwendet wurde - Repariert: MovieLength() und
MovieInfo() arbeiteten unkorrekt mit dem WMV-Format (danke an Traumatic ;-)
- Repariert: ToolBar Deaktivieren-Bug, wenn Images und Icons mit XP-Skins
gemischt wurden - Repariert: Möglichen Absturz beim Schließen eines Fensters
mit freigegebener Statusleiste oder ToolBar - Repariert: ImageGadget() und
ButtonImageGadget() konnten nicht mit AnimateWindow_() verwendet werden -
Repariert: ImageGadget() Bug bei der Verwendung von DisableGadget() -
Repariert: LineXY() gab den Speicher nicht richtig frei - Repariert: Line()
und LineXY() beeinflussten die DrawText() Position - Repariert: SortList()
konnte bei großen, bereits sortierten Listen abstürzen - Repariert:
SetMenuItemState() änderte nicht die Deaktivieren-Status
- Repariert:
Mit #PB_Any erstellte editierbare Combobox behandelte TAB nicht korrekt -
Repariert: OpenFileRequester() schlug fehl, wenn der Standard-Dateiname nicht
korrekt war - Repariert: Compiler-Bug bei String-Verkettung und Prozeduren
- Repariert: Abgleichproblem in Prozeduren, was unter Umständen zum
Fehlschlagen von API-Aufrufen führte
28. Februar 2005 : Version 3.93
(Windows) - Hinzugefügt: SortStructuredArray(), SortList(), SortStructuredList() -
Hinzugefügt: bedingte Anweisungen beim LibraryMaker - Hinzugefügt:
KeyboardMode() (war nicht in der Anleitung) - Hinzugefügt: Optionaler
'Farbe' Parameter bei ColorRequester() und FontRequester() - Hinzugefügt:
SetGadgetText() kann jetzt bei einem editierbaren ComboBoxGadget() verwendet
werden - Hinzugefügt: #PB_Default Support bei ClipSprite() zum Entfernen des
Clippings - Hinzugefügt: #PB_FileSystem_Force bei CopyDirectory() -
Hinzugefügt: #PB_OS_Windows_Server_2003 Support bei OSVersion() -
Hinzugefügt: Base64Decoder(), GetGadgetFont() - Hinzugefügt: ResizeImage()
unterstützt jetzt einen 'Modus' Parameter zur Auswahl des
Größenänderungs-Algorithmus - Hinzugefügt: Ereignis beim Verschieben oder
Redimensionieren eines Splitters, wodurch die 'Childs' jetzt angepasst werden
können - Hinzugefügt: Echtzeit-Debugger-Check für Plot(x,y,Farbe) bei
ScreenOutput() und SpriteOutput() - Hinzugefügt: Debugger-Check bei
DirectoryEntrySize/Name/Attributes() - Hinzugefügt: IDE-Verbesserungen von
Tinman
- Aktualisiert: Interface-Importer und DirectX9 Interfaces in den
Residents (danke an Traumatic!) - Aktualisiert: Verwendung von Kale's Icons
für die IDE - Aktualisiert: Französische Dokumentation mittels trasfract auf
Rechtschreibfehler kontrolliert und überarbeitet
- Optimiert:
Debugger-Modus ist kleiner und ermöglicht große strukturierte Variablen -
Optimiert: Misc Library aufgesplittet - Optimiert: Schnellere
Base64Encoder() Funktion - Optimiert: Verbesserte Code-Generierung für
Zuweisung und Verkettung von Strings
- Geändert: OffsetOf() Syntax, um
zum SizeOf() zu passen (einheitlicher als vorher)
- Repariert: Ein Bug
beim ImageGadget() mit aktiviertem XP-Skin und 32 Bit-Bitmaps - Repariert:
ExplorerListGadget() stellte .ico und .lnk Dateien nicht korrekt dar -
Repariert: ButtonImageGadget() verlor sein Bild unter manch seltenen Umständen
mit XP-Skins - Repariert: Kein 'Ding' (windows-Sound) mehr beim Klick auf
den Vollbildschirm, wenn ExamineMouse() nicht verwendet wurde - Repariert:
Bei Verwendung von ALT+TAB bei einer Vollbildschirm-Anwendung wird das Icon
korrekt dargestellt - Repariert: Sprites werden jetzt korrekt
wiederhergestellt, nach dem Zurückschalten vom Multitasking - Repariert:
CopyDirectory() modifizierte den Eingabestring unter manchen Umständen -
Repariert: ListIndex() war fehlerhaft unter manch seltenen Umständen -
Repariert: RemoveString() und CRC32FingerPrint() konnten nicht in Ausdrücken
verwendet werden - Repariert: SetGadgetItemText() war fehlerhaft in
Verbindung mit dem ListView() Gadget - Repariert: ExamineDirectory() mit
einer nicht initialisierten String-Variable - Repariert: CalendarGadget()
Bug, wenn mehrere Kalender auf dem gleichen Fenster initialisiert wurden -
Repariert: RSet() gab in manch seltenen Situationen ein falsches Ergebnis zurück
- Repariert: CreateFile() schlug fehl bei versteckten Dateien -
Repariert: ZeroMemory_(), FillMemory_(), MoveMemory_() und CopyMemory_() wurden
nicht erkannt - Repariert: #PB_Event_MoveWindow wird jetzt korrekt erkannt
- Repariert: #PB_EventType_LostFocus wurde nicht gesendet, wenn 2
StringGadgets nebeneinander platziert waren. - Repariert: Gadget's Tooltips
wurden auf NT4 nicht korrekt dargestellt, wenn das Fenster immer obenauf war
- Repariert: OGG-Plugin funktionierte nicht mehr und manchmal wurden Songs
abgeschnitten. Es ist jetzt auch schneller beim Dekodieren. - Repariert:
ResizeImage() verändert jetzt das Bild nicht mehr, wenn die gleichen Dimensionen
verwendet werden. - Repariert: TAB in einem EditorGadget() gibt den Fokus
nicht mehr an andere Gadgets, sondern fügt ein TAB ein. - Repariert: LCase()
behandelte das deutsche Zeichen 'ß' nicht korrekt - Repariert:
SetGadgetState() arbeitete nicht korrekt beim OptionGadget() - Repariert:
Die Dimensionen der Codeanzeige vom Debugger werden jetzt gespeichert wie bei
den anderen Debugger-Fenstern. - Repariert: EditorGadget() bei der
Verwendung von AddGadgetItem() mit leeren Strings und der -1 Position -
Repariert: SortArray() konnte bei großen und bereits sortierten Arrays abstürzen
und jetzt auch thread-sicher - Repariert: ReceiveNetworkFile() behandelte
lange Dateinamen nicht korrekt - Repariert: Darstellungsfehler bei
ButtonImageGadget() und Toggle-Modus (mittels API) - Repariert:
SpriteWidth() und SpriteHeight() gaben falsche Werte zurück, wenn ClipSprite()
verwendet wurde - Repariert: MessageRequester() über einem Konsolenfenster
schickte das Fenster in den Hintergrund - Repariert: SetGadgetState() beim
ListIconGadget() stahl den aktuellen Fokus - Repariert: Base64Encoder()
erzeugte manchmal eine falsche Ausgabe - Repariert: Refresh-Probleme beim
Frame3DGadget() mit #PB_Frame3D_Single/Double Flags - Repariert:
GDI-Ressourcen Leck beim ButtonImageGadget() und ImageGadget() - Repariert:
RotateSprite3D verwendete einen falschen Winkel - Repariert:
DisableMenuItem() arbeitete nicht mit #PB_Any - Repariert: GadgetWidth()
funktionierte nicht korrekt beim SpinGadget() - Repariert: Date() gab ein
falsches Ergebnis im Falle von 1970,1,1,0,0,0 zurück - Repariert:
CallFunctionFast() akzeptierte nur 17 Parameter anstelle von 20 - Repariert:
OpenWindowedScreen() im AutoStretch-Modus verlor einige Pixel - Repariert:
Einige Refresh-Bugs beim PanelGadget() - Repariert: Fehler bei transparenten
Farben und 32 Bit-Screens sowie 'Texture' Sprites - Repariert: Einige kleine
Bugs in der IDE - Repariert: Einige Compiler-Bugs (String-Verkettung,
Interfaces in Prozeduren)
25. Januar 2005
: PureBasic V3.92 (Linux) -
Hinzugefügt: vollständige Runtime-Debugger Unterstützung mit einem einfachen
Konsolen-Debugger - Hinzugefügt: Neuer Library-Maker mit bedingten with
bedingten Direktiven - Hinzugefügt: DocMaker für Linux im SDK/ -
Hinzugefügt: DynamicCPU, SSE, SSE2, 3DNOW, MMX Support für den Compiler -
Hinzugefügt: Allgemeine Subsytem-Unterstützung für den Compiler -
Hinzugefügt: GTK2+ Support (optional mittels Compiler-Switch: --subsytem gtk2)
- Hinzugefügt: Desktop Library - Hinzugefügt: RemoveKeyboardShortcut(),
GetGadgetAttribute(), SetGadgetAttribute() - Hinzugefügt:
GetGadgetItemAttribute(), SetGadgetItemAttribute() - Hinzugefügt:
CalendarGadget(), ExplorerTreeGadget(), ExplorerComboGadget() - Hinzugefügt:
MDIGadget(), DateGadget() - Hinzugefügt: WebGadget() (ein Link von
/usr/lib/libgtkmozembed.so muss noch erstellt werden) - Hinzugefügt:
UsePalette(), CreatePalette(), SetPaletteColor(), GetPaletteColor() -
Hinzugefügt: SwapElements(), IsFile(), DeleteDirectory() - Hinzugefügt:
OpenGadgetList(), CountString(), ActivateWindow() - Hinzugefügt:
ThreadPriority(), WaitThread() - Hinzugefügt: CountLibraryFunctions(),
ExamineLibraryFunctions(), NextLibraryFunction() - Hinzugefügt:
LibraryFunctionName(), LibraryFunctionAddress() - Hinzugefügt: Standard
Icon-Schalter für die Toolbar - Hinzugefügt: Bikubische Interpolation bei
ResizeImage()
- Aktualisiert: ExplorerListGadget() verwendet jetzt Icons
- Optimiert: LinkedLists, MemoryExtension und Misc (Libraries
gesplittet)
- Repariert: SetGadgetFont() mit #PB_Default funktionierte
nicht - Repariert: Zeichensatzunterstützung für OptionGadget(),
PanelGadget(), ExplorerListGadget() - Repariert: GTK/GDK und SDL Strukturen
in den Residents - Repariert: RunProgram() konnte fehlschlagen, wenn keine
Parameter angegeben waren - Repariert: BMP-Decoder für Sprites -
Repariert: NetworkServerEvent() blockierte unter manchen Umständen -
Repariert: ResizeImage() funktionierte nicht - Repariert: Speicherverlust bei
SaveImage() - Repariert: Ereignisse bei ExplorerListGadget() und
ExplorerTreeGadget() - Repariert: SpinGadget() vollständig neu programmiert,
um 100% kompatibel mit Windows zu sein - Repariert: Sound Befehle führen
nicht mehr zu einem Absturz, wenn keine Soundkarte vorhanden ist - Repariert:
MessageRequester() und InputRequester() konnten X blockieren - Repariert:
CountGadgetItems() funktionierte nicht beim TreeGadget() - Repariert:
FormatDate() stürzte ab - Repariert: ReplaceString() war fehlerhaft unter
manchem Umständen - Repariert: EventWindowID() funktionierte nicht mit
Menü-Ereignissen - Repariert: Der 3. Parameter von CatchSprite() war nicht
optional - Repariert: OpenFile() schlug fehl, wenn die Datei nicht
existierte - Repariert: ExamineDirectory() stürzte ab, wenn eine Null-String
Variable verwendet wurde - Repariert: Linker-Fehler bei Random(), PeekB()
- Repariert: HideGadget() und FreeGadget() bei einigen Gadgets -
Repariert: WindowX() und WindowY() gaben falsche Werte zurück - Repariert:
Open/SaveFileRequester() wenn der Dateiname direkt im Eingabefeld eingegeben
wurde
25.10.2004
- PureBasic V3.92
(Windows) - Hinzugefügt: CalendarGadget() und
DateGadget(), Danke an Fr34k ! - Hinzugefügt: LibraryID(),
SwapElements() - Hinzugefügt: SaveSprite() hat jetzt einen optionalen 'Flags'
Parameter und kann jetzt 8 Bit-Sprites/Screens
speichern - Hinzugefügt: Doppelklick auf den Fenster-Hintergrund generiert
jetzt ein Ereignis (Danke an Rings)
- Optimiert: ListCount() und
ListIndex() sind jetzt sehr schnell (sie durchlaufen jetzt nicht mehr jedes Element der Liste).
- Geändert: DeleteElement() geht
jetzt immer zurück zum vorherigen Element (kann damit außerhalb der Liste liegen, wenn es das erste Element war), um voll
kompatibel mit ForEach zu sein. Ein optionaler Flag wurde
hinzugefügt, um die bisherige Verhaltensweise weiterhin zu ermöglichen. -
Geändert: Das aktuelle Verzeichnis der Anwendung wird von keinem der
PureBasic-Befehle mehr berührt, um den Windows-Regeln zu
entsprechen.
- Repariert: CloseWindow() Bug beim Verwenden des
'ParentWindow' OpenWindow() Parameters - Repariert: IsSound() war nicht
verfügbar im NT4 Modus - Repariert: AddDate() konnte fehlschlagen, abhängig
von der eingestellten Zeitzone des Computers. - Repariert: Speicherleck mit
verknüpften Listen, Arrays und lokalen Variablen, wenn eine
Struktur verwendet wurde, die Strings enthielt. -
Repariert: SaveSprite() Standardwert für das Speichern von JPEG ist jetzt
'7'. - Repariert: DisplayPalette() schlug fehl auf XP-Systemen (erste und
letzte Farbe blieb unverändert) - Repariert: ImageGadget() unterstützt jetzt
ToolTips und Bitmap/Icon "Live" Umschaltung - Repariert: ImageButtonGadget()
unterstützt jetzt "Skinning" und Bitmap/Icon "Live" Umschaltung - Repariert:
SetGadgetItemText() beim ListViewGadget() zerstörte die "Item-User-Daten" -
Repariert: CopyImage() schlug auf WinNT4 in einigen Konstellationen fehl -
Repariert: Ein Speicherleck in SendNetworkFile(). Es wird jetzt 1 bei Erfolg und
0 bei einem Fehler zurückgegeben. - Repariert:
StatusBarText() aktualisierte nicht die Statusleiste bei gesetztem 'Borderless'
Flag - Repariert: CatchImage() mit #PB_Any - Repariert: der PNG-Decoder
kann jetzt auch sicher mit korrupten PNG umgehen - Repariert: der
JPEG-Encoder mit Qualitätswerten kleiner als 3 konnte zu einem Crash führen -
Repariert: ein kleiner TreeGadget() Bug, wenn Häkchen-Boxen aktiviert waren - Repariert: Packer Kompressionsroutine hatte Probleme mit manchen Dateien -
Repariert: OnError Library konnte nicht in DLL's verwendet werden (Danke an
Rings) -
Repariert: die String-Verkettung war unter manchen Umständen falsch -
Repariert: der Compiler gab keinen Exit-Code ungleich null zurück, wenn ein
Fehler auftrat - Repariert: mehrere Compiler Bugs
16.07.2004
- PureBasic V3.91
(Linux) - Hinzugefügt: #PB_Any für alle Libraries, die
dies auch unter Windows unterstützen - Hinzugefügt: Kompressions-Routine für
die Packer Library - Hinzugefügt: DisplayShadowSprite(),
DisplayAlphaSprite(), ChangeAlphaIntensity() - Hinzugefügt: IPString(),
MakeIPAddress() - Hinzugefügt: DirectoryEntryAttributes() - Hinzugefügt:
Set/GetWindowTitle() - Hinzugefügt: 8 Bits BMP RLE Support für alle
Image-relevanten Befehle - Hinzugefügt: IsDatabase(), IsFile(), IsFont(),
IsDirectory(), IsGadget(), IsImage(), IsLibrary(),
IsMenu(), IsModule(), IsMovie(), IsPalette(), IsSprite(),
IsSprite3D(), IsStatusBar(), IsSysTrayIcon(), IsToolBar(), IsWindow()
- Aktualisiert: Database Library
-
Repariert: FileSize() welches nicht die richtigen Werte zurückgab -
Repariert: NextSelectedFile() damit dieses sich wie der Windows-Befehl
verhält - Repariert: OpenSubMenu() - Repariert: ColorRequester() gab einen
falschen Wert zurück - Repariert: Box() Befehl, wenn dieser mit
SpriteOutput() oder ScreenOutput() verwendet wurde - Repariert: CatchSprite()
dekodierte nicht alle BMP richtig - Repariert: Linker-Bug wenn InitCDAudio()
allein verwendet wurde - Repariert: SpinGadget() zeigte einige GTK
Warnungen - Repariert: EditorGadget() wenn dieses in ein ContainerGadget()
oder SplitterGadget() eingefügt wurde - Repariert: Round() fehlte -
Repariert: DrawingBufferPixelFormat() welches einen falschen Wert zurückgab -
Repariert: PanelGadget(): GetGadgetState() und SetGadgetState() wurden nicht
unterstützt - Repariert: GadgetX(), GadgetY(), GadgetWidth() und
GadgetHeight() für einige Gadgets - Repariert: ResizeWindow() - Repariert:
ein Bug in WindowEvent() - Repariert: #PB_EventType_Change und
#PB_EventType_Focus für StringGadget() und ComboBoxGadget() - Repariert:
Event für PanelGadget()
04.07.2004 - PureBasic V3.91 (Windows)
- Hinzugefügt: Desktop Library -
Hinzugefügt: IsDatabase(), IsFile(), IsFont(), IsDirectory(), IsGadget(),
IsImage(), IsLibrary(), IsMenu(), IsModule(), IsMovie(),
IsPalette(), IsSprite(), IsSprite3D(), IsStatusBar(), IsSysTrayIcon(),
IsToolBar(), IsWindow() - Manifest-Datei (für XP Skins) wird jetzt in die Exe
eingebunden - LCC Ressourcen-Compiler und Linker wurden gegen PellesC
ausgetauscht - Hinzugefügt: 'Haupt-Source' Support in der IDE für Multi-Datei
Projekte - Hinzugefügt: Debugger-Überprüfung für Zugriff auf leere
Listenelemente
- Geändert: WindowMouseX() und WindowMouseY() geben jetzt
die Koordinaten innerhalb des Fenster-Clientbereichs zurück (DesktopMouseX()
ersetzt das alte Verhalten).
- Repariert: AddDate() Bug - Repariert:
MDIGadget-Größenänderung, nachdem eine StatusBar nach der MDI-Erstellung
hinzugefügt wurde - Repariert: InputPathRequester() welcher unter einigen
Umständen auf Win98 zu einem Crash führte - Repariert: OpenWindowedScreen()
Position, wenn dieser Bildschirm in ContainerGadgets verwendet wurde -
Repariert: Trim() in Ausdrücken - Repariert: ein Crash, der manchmal am Ende
des Programms auftrat, wenn OpenHelp() benutzt wurde - Repariert: ein Bug in
PlayMovie(), welcher das Movie auf einigen Konfigurationen versteckte -
Repariert: Compiler-Bug beim Zugriff auf ein tief verschachteltes
Strukturen-Array.
12.04.2004 - PureBasic V3.90 (Windows)
- Hinzugefügt: #PB_Any Support (dynamische Nummerierung) für DataBase, File,
Font, FileSystem, Gadget, Image, Library, Module, Movie, Palette, Sprite,
Sprite3D, SysTray, ToolBar, StatusBar und Window - Hinzugefügt:
CountString(), KeyboardInkey(), GetWindowTitle(), SetWindowTitle(),
ElapsedMilliseconds() - Hinzugefügt: RemoveGadgetColumn(),
SetGadgetAttribute(), GetGadgetAttribute(), SetGadgetItemAttribute(),
GetGadgetItemAttribute() - Hinzugefügt: MDIGadget() von Fr34k -
Hinzugefügt: VerticalBlank Support für FlipBuffers() (arbeitet ebenfalls im
Fenstermodus 'Windowed') - Hinzugefügt: 'Autosize' (automatische
Größenanpassung) für StatusBar und ToolBar (keine Callbacks mehr nötig) -
Hinzugefügt: Neuer 'Size-Handler' von Fr34k, welcher automatische (Echtzeit-)
Größenanpassung von Fenstern (mit #PB_Event_SizeWindow) ohne Callback ermöglicht
! - Hinzugefügt: Neuer optionaler 'z' Parameter bei TransformSprite3D() -
Hinzugefügt: Mehrere neue Flags beim SplitterGadget() für höhere
Flexibilität - Hinzugefügt: SetGadgetAttribute() Support für
ScrollAreaGadget(), zum Anpassen der Größe des inneren Bereiches. -
Hinzugefügt: Joystick und Module Support für den NT4 Kompatibilitäts-Modus -
Hinzugefügt: Hexadezimale Anzeige, Löschen-Kopieren-Speichern der
Debugger-Ausgabe und Speicherung der Fensterposition des Debuggers -
Hinzugefügt: Unterstützung für Icons mit verschiedener Tiefe beim Standard
Programm-Icon - Hinzugefügt: IDE-Features: Interface-Anzeiger, neuer MS SDK
Support, Suchen in Dateien, Zeilennummerierung - Hinzugefügt: 'Static'
Schlüsselwort für lokale Variablen (in Prozeduren), welche ihren Wert behalten
sollen - Hinzugefügt: Aktuellste FAsm (Assembler) Version, welche eine kleine
Geschwindigkeitsverbesserung mitbringt und einen Bug bei großen Sourcecodes
beseitigt - Hinzugefügt: QuickHelp Support in der Purebasic IDE für die
meisten der API Funktionen !
- Geändert: kein #MemoryID und Flag bei
AllocateMemory() mehr - Geändert: CDAudioName() benötigt keine ID mehr, wie
bereits in der Anleitung geschrieben.
- Libraries CDAudio, Database,
File, Network, StatusBar und Systray gesplittet
- Entfernt:
UpdateStatusBar(), UseMemory(), MemoryID()
- Repariert: Französische
Dokumentation ist jetzt absolut aktuell - Repariert: NT4 (DirectX 3) Support
für die Sprite, Palette, Sound, Keyboard und Mouse Libraries - Repariert: Bug
in CreateSprite3D(), die Breite und Höhe war 1 Pixel größer - Repariert: Bug
bei SpritePixelCollision(), wenn das gleiche Sprite für Kollisionen verwendet
wurde. - Repariert: Bug im Debugger unter Win98 (das Anwendungsfenster war im
Hintergrund) - Repariert: OpenWindowedScreen() beachtete nicht die Menü-Höhe
(sofern vorhanden) - Repariert: bei IsFilename() fehlten einige Checks -
Repariert: Einige Bugs im Ausdruck-Parser des Compilers - Repariert: SizeOf()
bei der Verwendung mit erweiterten Strukturen - Repariert: NewPrinterPage()
Bug auf Win98 - Repariert: CloseScreen() bei der Verwendung mit der Sprite3D
Library - Repariert: Einige Pfad-Probleme bei der Verwendung des Compilers im
Konsolenmodus - Repariert: Alle Requester blockieren ('lock') jetzt alle
geöffneten Fenster
01.01.2004
- PureBasic
V3.81 (Linux) -
Happy New Year
! - Hinzugefügt: Sort Library -
Hinzugefügt: Toolbar Library - Hinzugefügt: StatusBar
Library - Hinzugefügt: Font Library - Hinzugefügt: vollständiger
3D-Engine Support - Hinzugefügt: $PUREBASIC_HOME Env Variable, zum Angeben
des Installationspfades - Hinzugefügt: ElapsedMilliseconds() -
Hinzugefügt: CatchSprite(), CreateSprite(), SpriteOutput() und
ScreenOutput() - Hinzugefügt: 2DDrawing Support für ScreenOutput() und
SpriteOutput() mit sehr schnellem Direct-Videobuffer Zugriff - Hinzugefügt:
SplitterGadget(), ContainerGadget(), ScrollAreaGadget(), IPAddressGadget(),
EditorGadget() - Hinzugefügt: ScrollBarGadget(), SpinGadget(),
TrackBarGadget(), HyperLinkGadget(), ExplorerListGadget() - Hinzugefügt:
GetGadgetItemState(), SetGadgetItemState(), GetGadgetItemText(),
SetGadgetItemText() - Hinzugefügt: BMP, JPEG, PNG, TIFF und TGA Decoder
Support für LoadImage() und LoadSprite() - Hinzugefügt: BMP, JPEG and PNG
Encoder für SaveImage() - Hinzugefügt: SaveImage(), CopyImage(),
GrabImage() - Hinzugefügt: CopySprite(), GrabSprite(), UseBuffer(),
DisplayTranslucideSprite(), DisplayRGBFilter() - Hinzugefügt:
WindowID(#Window), WindowOutput() - Hinzugefügt: PathRequester(),
InputRequester() - Hinzugefügt: DisableMenuItem(), GetMenuItemState(),
SetMenuItemState(), MenuHeight() - Hinzugefügt: CloseTreeGadgetNode(),
UseGadgetList(), SetGadgetFont(), ButtonImageGadget() - Hinzugefügt:
DayOfYear(), SelectedFontStyle() - Hinzugefügt: Support für XOR und
ungefüllter Formen bei 2DDrawing - Hinzugefügt: NextSelectedFileName() -
Hinzugefügt: StrU(), CopyFile() - Hinzugefügt: Mustererkennung
(Pattern-Matching) bei ExamineDirectory()
- Gadget Library
gesplittet - Sprite Library gesplittet
- Compiler aktualisiert auf
v3.81 mit Enumeration, Interface, Modulo und mehr...
Dieses Update ist
für alle registrierten Anwender frei erhältlich, senden Sie einfach eine Email
an support@purebasic.com mit Ihren persönlichen Daten und Ihrer
Registrierungsmail. Vielen Dank !
09.12.2003 - PureBasic V3.81 (Windows)
- Hinzugefügt: DatabaseUpdate(), DatabaseError()
- Hinzugefügt: Play/Stop/Resume/PauseMovie() Support für auf Sprites gerenderte Movies
- Hinzugefügt: 'Extends' Support für 'Structure'
- Hinzugefügt: Icon-Support und Echtzeit Image-'Resize' für DrawImage()
- Hinzugefügt: 2, 16 und 256 Farben BMP-Support für Catch/LoadSprite()
- Hinzugefügt: #PB_Default Support für DrawingFont()
- Hinzugefügt: Japanisch-Unterstützung für die Gadget Library, Editor und Visual Designer
- Hinzugefügt: Exzellentes SmartUpdate Tool von fr34k zum schnellen Updaten jeder PureBasic Version
- Hinzugefügt: Neueste Version des Visual Designers von Berikco
- Optimiert: ExplorerGadgets sind jetzt beim Einlesen von Verzeichnissen 5x schneller
- Geändert: Sprungmarken ("Labels") sind NICHT mehr "case-sensitive" (achten nicht auf Groß-/Kleinschreibung)
- Geändert: Standard-Qualität für SaveImage() und JPEG-Plugin ist jetzt '7'
- Geändert: InitModule() und InitPalette() benötigen die 'Maximum'-Parameter nicht mehr
- Geändert: Verhalten von PlayMovie() bei gerenderten Movies wurde geändert
- Repariert: ein Speicherleck bei auf Sprites gerenderten Movies
- Repariert: Requester-Befehle konnten andere Applikationen blockieren, wenn kein Fenster geöffnet war
- Repariert: einige Interface Definitionen waren in den Residents falsch
- Repariert: String-Konstanten mit mehreren Konstanten-Elementen
- Repariert: KeyboardReleased(#PB_Key_All) funktionierte nicht
- Repariert: Compiler-Bug mit Interface in Prozeduren und mit String-Rückgaben
- Repariert: ProcedureDLL Bug, wenn ein String als Rückgabetyp definiert war
- Repariert: CopySprite() arbeitete nicht mit Alpha-Sprites
- Repariert: Bug im Compiler-Optimierer mit Bytes und Words in einigen sehr seltenen Fällen
- Repariert: JPEG und TIFF Decoder-Bug in seltenen Situationen
- Repariert: kleine EditorGadget() und SpinGadget() Bugs
06.10.2003 - PureBasic V3.80 (Windows)
- Hinzugefügt: ExplorerComboBoxGadget()
- Hinzugefügt: CameraProjection(), CameraBackColor() und CameraRange()
- Hinzugefügt: Den Modulo Operator: '%'
- Hinzugefügt: ForEach Befehl zum schnellen Durchlaufen von verknüpften Listen
- Hinzugefügt: Interface/EndInterface zur Unterstützung von
Objekt-Funktionsaufrufen! Ja, COM und DX Objekte sind jetzt nativ in
PureBasic verfügbar...
- Hinzugefügt: Große Resident-Dateien mit allen Windows/DirectX Interfaces, fertig zur Benutzung !
- Hinzugefügt: Break und Continue zum Modifizieren des Schleifenablaufs
- Hinzugefügt: Enumeration/EndEnumeration zum schnellen Deklarieren einer Vielzahl aufeinanderfolgender Konstanten
- Hinzugefügt: OffsetOf() zum Ermitteln des Offsets eines Struktur oder eines Interface Felds
- Hinzugefügt: SizeOf() unterstützt jetzt Variablen und Interfaces
- Hinzugefügt: Interface-, Float- und String-Konstanten Unterstützung zum 'Resident' Dateiformat
- Hinzugefügt: Qualitäts-Support bei SaveImage() und dem JPEG Encoder
- Hinzugefügt: MessageRequester() 'Flags' ist jetzt ein optionaler Parameter
- Hinzugefügt: Die Syntaxeinfärbung im Editor und der Strukturen-Anzeiger wurden stark verbessert
- Optimiert: viele Abhängigkeiten von OGRE entfernt, resultierend in einer kleineren Engine3D.DLL
- Geändert: Konstanten sind jetzt wieder echte Konstanten (benutzen Sie Enumeration, um dynamische Konstanten zu erhalten)
- Repariert: ASM-Register Anzeige im Debugger
- Repariert: IncludePath Probleme mit IncludeBinary
- Repariert: Benutzung von TAB innerhalb eines editierbaren ComboBoxGadget() war nicht möglich
- Repariert: DeleteDirectory() schlug fehl mit einem "Read-only" Verzeichnis im 'Force' Modus
- Repariert: TGA-Decoder Bug bei Top/Down und RLE Bildern
- Repariert: Möglicher 'Lock' in den AddPackFile() und PackMemory() Routinen
- Repariert: die Strukturen-Größe, wenn eine Struktur sehr groß war (über 32000 Bytes)
- Repariert: Int(): ein negativer Wert konnte falsche Ergebnisse produzieren
- Repariert: ein LinkedList Problem, wenn diese innerhalb und außerhalb einer Prozedur benutzt wurde
- Repariert: Line() und LineXY() zeichneten nicht den letzten Punkt
- Repariert: Debugger überprüft: InitEngine3D()
- Repariert: Ein Bug in TextLength(), wenn ein leerer String benutzt wurde
- Repariert: Bug bei ProcedureReturn, wenn es in einem 'Select String$' Ausdruck verwendet wurde
- Repariert: Sounds waren auf 50 begrenzt, wenn der Debugger aktiviert war
- Repariert: ClipSprite() wurde nicht unterstützt von
DisplayAlphaSprite(), DisplayShowSprite(), DisplaySolidSprite() und
DisplayTranslucideSprite()
- Repariert: Ein reserviertes Schlüsselwort wie 'Data' konnte nicht in einer Struktur benutzt werden
- Repariert: CreatePack(), SaveImage() und SaveSprite() arbeiteten nicht mit sehr langen Dateinamen
- Repariert: Inkey() hielt den Programmablauf an
- Repariert: FileSize() gab einen falschen Wert für Stammverzeichnisse (Root) auf Win9x System zurück
- Repariert: Ein Editor-Bug, welcher ein Vertauschen der Panels verursachte
14.07.2003 - PureBasic V3.72 (Windows) - Geändert: SelectedFilePattern() und
Open/SaveFileRequester Patternindex basiert jetzt auf '0' anstelle auf '1'.
Achtung ! - Geändert: ListIndex() basiert jetzt auf '0' anstelle auf '1'.
Achtung !
- Aktualisiert: Editor: Update bei Finden/Ersetzen, ein '*'
markiert jetzt eine geänderte Datei - Aktualisiert: Toolbar Library wurde
gesplittet und optimiert - Aktualisiert: alle fehlenden Library Quickhelps
(im Statusbar des Editors)
- Repariert: ParseDate() wenn keine
Trennzeichen im Datum benutzt wurden - Repariert: ResizeImage() besitzt jetzt
eine höhere Qualität beim Größe verändern - Repariert: verschiedene
Gadget-Ereignis Probleme (Splitter, Panel) - Repariert: PNG und JPEG Decoder
in einigen seltenen Fällen - Repariert: den Namen verschiedener Funktionen
(OnError Library) - Repariert: verschiedene Compiler Bugs
07.06.2003 - PureBasic V3.70 (Windows)
- Hinzugefügt: Terrain Library
- Hinzugefügt: Billboard Library
- Hinzugefügt: Entity Library
- Hinzugefügt: Material Library
- Hinzugefügt: Particle Library
- Hinzugefügt: OnError Library
- Hinzugefügt: CameraLookAt(), CameraRenderMode(), CameraFOV(), Engine3DFrameRate(), CountRenderedTriangles()
- Hinzugefügt: CreateMesh(), SetMeshData()
- Hinzugefügt: ExamineLibraryFunctions(), NextLibraryFunction(), LibraryFunctionName(), LibraryFunctionAddress()
- Hinzugefügt: IsFunctionEntry(), CallCFunction(), CallCFunctionFast()
- Hinzugefügt: RenderMovieFrame(): Ja, Sie können ein Movie auf einem Sprite oder einem Bildschirm abspielen !
- Hinzugefügt: OpenGadgetList(), ScrollBarGadget(), ScrollAreaGadget(), SplitterGadget()
- Hinzugefügt: HyperLinkGadget(), ContainerGadget(), EditorGadget()
- Hinzugefügt: TreeGadgetItemNumber(), ExplorerListGadget(), ExplorerTreeGadget()
- Hinzugefügt: #PB_FontRequester_Effects Flag für den FontRequester()
- Hinzugefügt: PanelGadget() wurde vollständig neu geschrieben und ist jetzt XP Theme fähig
- Hinzugefügt: TreeGadget() wurde neu geschrieben zur Unterstützung von dynamischen Einträgen (Hinzufügen, Entfernen...)
- Hinzugefügt: AddGadgetItem() unterstützt jetzt Bilder für das PanelGadget()
- Hinzugefügt: 'ParentID' optionaler Parameter bei OpenWindow()
- Hinzugefügt: CDecl Support für PureFunctions und Prozeduren ('ProcedureCDLL' und 'DeclareCDLL' Schlüsselwörter hinzugefügt)
- Hinzugefügt: End [ExitCode] optionaler Parameter
- Hinzugefügt: Präzisere Fehlermeldungen für Assembler und Linker Fehler
- Hinzugefügt: /LINENUMBERING Compiler-Switch
- Hinzugefügt: Vollständiger Debugger-Support für die 3D-Engine
- Hinzugefügt: ComboBox Support für GetGadgetItemText() und SetGadgetItemText()
- Hinzugefügt: Viele neue Funktionen beim Visual Designer,
einschließlich Tab-Reihenfolge, Zeichensatz-Auswahl, neue Gadgets und
mehr...
- Geändert: Mesh Library, eine neue Entity Library eingeführt (für flexiblere Kontrolle)
- Geändert: ClosePanelGadget() in CloseGadgetList()
- Geändert: Inline Assembler Sprungmarken sind jetzt l_label anstelle von pLabel
- Movie Library gesplittet und optimiert
- Repariert: SpriteCollision() und SpritePixelCollision() war um 1 Pixel falsch
- Repariert: Ergebnis-Code von CopyDirectory war in manchen Fällen falsch
- Repariert: StrF(): wenn Dezimalstellen angegeben werden, rundet es korrekt
- Repariert: Verschiedene Debugger Warn-Meldungen fehlten
- Repariert: Fließkommazahlen und Ganzzahlen wurden in manchen Fällen schlecht vermischt
25.03.2003
- PureBasic V3.62 (Windows)
- Entfernt: FakeEndSelect
- Repariert: Einige Compiler Bugs
- Repariert: Kleiner Bug im PNG Encoder und Decoder
- Repariert: ProcedureReturn innerhalb Select/EndSelect
- Repariert: Array Zuweisung, wenn kein Speicher verfügbar war
- Repariert: Int(): fehlerhaft seit v3.60
- Repariert: Val(): akzeptiert jetzt alle in BASIC gültigen Formen
- Repariert: AddPackFile() Problem mit manchen Dateien
- Repariert: RunProgram() mit sehr langen Pfaden
19.03.2003 - PureBasic V3.61 (Windows)
- Repariert: Schwerwiegende Compiler Bugs (Arrays)
- Repariert: Schwerwiegender MD5FileFingerprint() Bug
- Repariert: Syntax-Highlighting für Funktionen/Prozeduren und Alt+V Tastenkürzel
- Repariert: 2 Bugs im Visual Designer
- Repariert: Laden von Sprite und Image-Plugin (JPEG, PNG) im 16 Bit Modus
- Repariert: XOR Inline-Asm Schlüsselwort wurde nicht mehr erkannt
- Repariert: TGA Decoder konnte einige Dateien nicht laden
17.03.2003 - PureBasic V3.60 (Windows)
- Hinzugefügt: Mächtiger Visual Designer, zum einfachen Erstellen von graphischen Anwendungen
- Hinzugefügt: Viele neue Optimierungen im Compiler-Kernel, welche in schnellerem/kleinerem Code
resultieren (insbesondere beim Umgang mit Arrays und strukturierten Variablen)
- Hinzugefügt: Native JPEG, TIFF, PNG und TGA Image/Sprite Decoder mittels Plugin
- Hinzugefügt: Native JPEG und PNG Image/Sprite Encoder mittels Plugin
- Hinzugefügt: Native OGG Sound Decoder mittels Plugin
- Hinzugefügt: AvailableScreenMemory(), SelectedFilePattern(), DefaultPrinter()
- Hinzugefügt: Flags für LoadFont() zum Aktivieren von kursiv, fett und weiteren
- Hinzugefügt: Multi-Source Support für den Debugger (Include-Dateien)
- Hinzugefügt: Array-Überlauf Debugger Überprüfung
- Hinzugefügt: Data-Read-Überlauf Debugger Überprüfung
- Hinzugefügt: Icon-Support für CatchImage()
- Hinzugefügt: optionaler MMX, 3DNOW, SSE und SSE2 Support, mit Autoselect-Modus (zum automatischen
Auswählen der richtigen Routine während der Laufzeit, abhängig vom Prozessor).
- Hinzugefügt: DLL-Importer Tool im Library SDK
- Gesplitted: Font, Gadget und Window Libraries, für kleinere Executable (Danke an Danilo)
- Entfernt: CatchJPEGSPrite() und LoadJPEGSprite() (ersetzt durch Plugins)
- Verbesserung des PureBasic Library-Formats (neues komprimiertes Format)
- Verbesserung des Inline-ASM, akzeptiert jetzt FPU Opcode
- Verbesserung des Editors: Doppelklick auf (X)IncludeFile öffnet die Datei, Inline-Hilfe arbeitet bei allen
Schlüsselwörtern (If/EndIf...), ASM-Syntax Einfärbung, Inline-Hilfe für ASM
- Geändert: SetGadgetFont() verwendet jetzt 2 Parameter, um Änderung des Zeichensatzes während der Laufzeit zu ermöglichen
- Repariert: SortArray() beim Sortieren von Strings im Groß-/Kleinschreibungs-unabhängigen Modus
- Repariert: RunProgram() Befehl mit 3 Argumenten
- Repariert: ImageOutput() Problem mit Windows 98
- Repariert: das 16Bit-Sprite Darstellungsproblem mit einigen alten Grafikkarten, welche intern 15 Bit verwenden
- Repariert: einige Bugs im Compiler
10.02.2003 - PureBasic V3.50 (Linux)
- Hinzugefügt: Date Library
- Hinzugefügt: Joystick Library
- Hinzugefügt: Library Library
- Hinzugefügt: Packer Library (nur Dekomprimieren)
- Hinzugefügt: #PB_Compiler_OS und #PB_Compiler_Date
- Hinzugefügt: WriteFloat(), ReadFloat(), RunProgram()
- Hinzugefügt: Base64Encoder(), MD5FileFingerPrint(), CRC32FingerPrint()
- Hinzugefügt: PeekF(), PokeF(), ProgramParameter(), OSVersion()
- Hinzugefügt: RSet(), LSet(), RemoveString(), Bin(), StringField()
- Aktualisiert: Compiler-Kernel auf v3.50 (einschließlich Fasm)
- Aktualisiert: Resident-Datei
- Aktualisiert: Dokumentation
- Loc() und Lof() repariert, wenn keine aktuelle Datei geöffnet ist
13.01.2003 - PureBasic V3.51 (Windows)
- Französische Dokumentation für v3.51 aktualisiert
- Einige Bugs im Compiler repariert und die Ausgabe ein wenig optimiert
- IPString() und IPAddressField() repariert (waren in umgedrehter Reihenfolge)
- InputRequester() repariert und durch Hinzufügen von Tastaturunterstützung verbessert
- ReadPreferenceLong/String/Float() repariert, um Schlüsselwörter mit Leerzeichen zu akzeptieren
- MouseButton "Beep"-Problem im Fullscreen-Modus repariert
- Date() und ParseDate() repariert, wenn ein ungültiges Datum angegeben wurde
- "XP-Theme" Problem des Editors repariert
- ProcedureBrowser des Editors repariert (Danke an Dominique und Plouf)
- OpenWindow() Dimension repariert, wenn kein Flag angegeben wurde
- Gosub/Return Check entfernt, welcher in v3.50 eingeführt wurde (aus Flexibilitätsgründen)
06.01.2003 - PureBasic V3.50 - (Windows) :
-
Hinzugefügt: Engine3D Library: Add3DArchive(), AmbientColor(), Fog(),
InitEngine3D(), LoadWord(), RenderWorld(), SkyBox(), SkyDome() -
Hinzugefügt: Camera Library: CameraLocate(), CameraX(), CameraY(),
CameraZ(), CreateCamera(), FreeCamera(), MoveCamera(), RotateCamera()
- Hinzugefügt: Light Library: CopyLight(), CreateLight(), FreeLight(),
HideLight(), LightColor(), LightLocate(), LightSpecularColor(),
MoveLight()
- Hinzugefügt: Mesh Library: CopyMesh(), FreeMesh(),
GetMeshAnimationTime(), MeshAnimation(), MeshAnimationLength(),
MeshLocate(), MeshTexture(), MeshX(), MeshY(), MeshZ(), MoveMesh(),
ResizeMesh(), RotateMesh(), ScaleMesh(), SetMeshAnimationTime()
- Hinzugefügt: Texture Library: CopyTexture(), CreateTexture(),
FreeTexture(), LoadTexture(), TextureHeight(), TextureID(),
TextureOutput(), TextureWidth()
- Hinzugefügt: WriteFloat(), ReadFloat(), MouseLocate(), MD5FileFingerprint()
- Hinzugefügt: STDCALL und ALLE Flags zu den PureLibraries. Siehe in die SDK Dokumentation für mehr Informationen
- Hinzugefügt: TreeGadget Checkbox-Unterstützung bei GetGadgetItemState()
- Hinzugefügt: SetGadgetState() arbeitet jetzt bei ButtonImageGadget()
- Aktualisiert: CallFunction() und CallFunctionFast(): Fließkommazahlen können direkt übergeben werden
- Aktualisiert: SetStatusBarText() 'Aussehen' Parameter ist jetzt optional
- Aktualisiert: Frame3DGadget() 'Flags' Parameter ist jetzt optional
- Optimiert: CallFunctionFast() (2x schneller)
- Optimiert: die Code-Generierung: Chr(#Konstante) wird jetzt
Buchstaben-String berücksichtigt und einige Geschwindigkeitssteigerungen
- Geändert: den Assembler (FASM), resultiert in einen besser optimierten Code (PB-Editor ist 6 KB kleiner zum Beispiel)
- Geändert: LSet() durch RSet() und RSet() durch LSet() (waren vertauscht im Vergleich zu normalen Basic-Funktionen)
- Geändert: OpenTreeGadgetNode() und CloseTreeGadgetNode() (jetzt mit einem Parameter)
- Geändert: ReleaseMouse() erwartet jetzt einen Parameter
- Repariert: den Spiele Maus-Support im "Windowed"-Modus (konnte zu einer Computer-Blockierung führen)
- Repariert: SelectElement() arbeitete falsch bei der Übergabe von -1..
- Repariert: TreeGadget() bei mehrfacher Benutzung auf dem gleichen Fenster
- Repariert: SaveImage() mit 16Bit- und 8Bit-Desktops
- Repariert: RSet() mit 2 Argumenten
- Repariert: ein kleiner Bug in ParseDate()
- Repariert: AddPackFile() und AddPackMemory(): Buffer-Überlauf in einigen seltenen Situationen
- Repariert: OpenFileRequester() mit dem Mehrfachselektions-Modus (MultiSelection)
- Repariert: ein blöder Bug beim Benutzen vieler Bilder in den Gadget-Einträgen (TreeGadget, ListIconGadget...)
- Repariert: Cipher Library
09.10.2002
- PureBasic V3.40 (Windows) :
- Geändert: Struktur-Namen sind nicht mehr "case sensitive" (Groß- und Kleinschreibung wurde bisher unterschieden), da
dies einen schwierig zu findenden Bug verursachen konnte
- Hinzugefügt: Date Library: Date(), Year(), Month(), Day(),
DayOfWeek(), DayOfYear(), Hour(), Minute(), Second(), FormatDate(),
AddDate(), ParseDate()
- Hinzugefügt: Hostname(), ExamineIPAddresses(), NextIPAddress(), IPString()
- Hinzugefügt: LSet(), RSet(), Bin(), RemoveString(), StringField()
- Hinzugefügt: ModuleVolume(), OSVersion(), WaitThread()
- Hinzugefügt: CopyDirectory(), DeleteDirectory(), IsFilename()
- Hinzugefügt: NextSelectedFileName(), InputRequester()
- Hinzugefügt: DrawingBuffer(), DrawingBufferPixelFormat(), DrawingBufferPitch(), FillArea()
- Hinzugefügt: #PB_Compiler_Date, #PB_Compiler_OS als eingebaute Compiler-Konstanten
- "Splitted" Libs: FileSystem, StringExtension, Date
- Updated: RunProgram() hat jetzt einen optionalen ArbeitsVerzeichnis$ Parameter
- Updated: SetGadgetFont(#PB_Font_Default) geht jetzt zurück zum Standard-Zeichensatz
- Updated: OpenWindow() akzeptiert jetzt 2 neue Flags: #PB_Window_WindowCentered und #PB_Window_ScreenCentered
- Updated: GetGadgetItemText() und SetGadgetItemText() arbeiten jetzt mit TreeGadget()
- Updated: ReplaceString hat jetzt einen optionalen 'StartPosition' Parameter
- Updated: SetGadgetState() kann zusammen mit ImageGadget() benutzt werden, um das aktuelle Bild zu ändern
- Updated: 'Level' Flag hinzugefügt bei PackMemory(), AddPackFile() und AddPackMemory() für schnellere Komprimierung
- Updated: beim Erstellen einer DLL, AttachProcess(), DetachProcess(),
AttachThread() und DetachThread() müssen einen 'Instanz' Parameter haben
- Updated: keine '_' beim Erstellen einer DLL mehr
- Repariert: Debugger Problem in der FileSystem Library
- Repariert: ReadPreferenceLong() und ReadPreferenceFloat()
- Repariert: SpriteOutput() Bug beim Benutzen von Plot()
- Repariert: CDAudioTrackLength(): der letzte Track gab immer 0 zurück...
- Repariert: OpenWindowedScreen(): falsche BottomOffset und RightOffset Werte
- Repariert: GetPathPart(), GetFilePart() und GetExtensionPart()
- Repariert: SetGadgetText() beim Benutzen mit ComboBox und einem leeren String (löscht den ComboBox Inhalt)
- Repariert: SetClipboardText(), benutzt jetzt das TEXT anstelle des OEM Formats.
- Repariert: der Compiler warnte nicht, wenn eine "globale" Variable in den Prozedur-Parametern benutzt wurde.
- Repariert: Compiler Bugs im InlineASM : 'MOV eax, "String"' und 'MOV eax, #CONSTANT' wurden schlecht kompiliert.
- Repariert: Compiler Bug beim Benutzen negativer Fließkomma-Konstanten
- Repariert: Compiler Bug beim Benutzen von Fließkomma-Operationen mit API-Funktionen
- Repariert: Compiler Bug beim Vergleichen von Strings mit numerischen Werten (jetzt verboten)
- Repariert: Compiler Bug beim Benutzen von INCLUDEBINARY in DataSection
- Repariert: Compiler Bug wenn DECLARE und PROCEDURE nicht übereinstimmten (es wurden keine Fehlermeldungen generiert)
- Repariert: Compiler Bug wenn DEBUG in Prozeduren mit String-Operationen benutzt wurde
- Editor verbessert (mehrere Dateien, Prozeduren-Browser, Zusatz-Tools
und mehr...) und den Sourcecode veröffentlicht... Dankeschön an Danilo !
|