| Image Entfernt: UseImage() - ändern Sie 
UseImage(#Image) in ImageID(#Image), wo einfach nur die ID benötigt wird. 
 Hinzugefügt: CreateImage(#Image, Breite, Höhe 
[, Tiefe]) - neuer Parameter
 Hinzugefügt: 
LoadImage(#Image, DateiName$ [, Flags]) - neuer Parameter
 Hinzugefügt: CatchImage(#Image, DateiName$ [, Länge [, 
Flags]]) - neue Parameter
 
 Geändert: 
ImageDepth(#Image) - neuer Parameter
 Geändert: 
ImageHeight(#Image) - neuer Parameter
 Geändert: 
ImageWidth(#Image) - neuer Parameter
 Geändert: 
ImageID(#Image) - neuer Parameter
 Geändert: 
ImageOutput(#Image) - neuer Parameter
 
 String Hinzugefügt: StrD(Nummer [, 
Dezimalstellen]) Hinzugefügt: StrQ()
 Hinzugefügt: HexQ()
 Hinzugefügt: 
BinQ()
 Hinzugefügt: StrU(): ein #PB_Quad Flag 
hinzugefügt
 Hinzugefügt: ValD(), ValQ()
 Hinzugefügt: StringByteLength() - zum Berechnen der 
benötigten Länge eines Strings in den von PureBasic unterstützten verschiedenen 
Kodierungen
 Math Hinzugefügt: IntQ()  Thread Hinzugefügt: IsThread(Thread) - testet, ob 
ein Thread (noch) existiert. Hinzugefügt: 
CreateMutex() - erstellt ein Mutex-Objekt
 Hinzugefügt: FreeMutex(Mutex) - zerstört das Objekt
 Hinzugefügt: LockMutex(Mutex) - wartet bis ein Mutex 
verfügbar ist und sperrt diesen dann
 Hinzugefügt: 
TryLockMutex(Mutex) - sperrt einen Mutex, wenn verfügbar, andernfalls wird 
umgehend 0 zurückgegeben
 Hinzugefügt: 
UnlockMutex(Mutex) - entsperrt den Mutex, damit andere Threads diesen sperren 
können
 
 Process (Neu) Hinzugefügt: GetEnvironmentVariable(Name$) 
- ermittelt den Wert einer Umgebungsvariable Hinzugefügt: SetEnvironmentVariable(Name$, Wert$) - setzt den 
Wert
 Hinzugefügt: RemoveEnvironmentVariable(Name$) 
- löscht eine Umgebungsvariable
 Hinzugefügt: 
ExamineEnvironmentVariables() - untersucht die derzeit gesetzten 
Umgebungsvariablen
 Hinzugefügt: 
NextEnvironmentVariable() - ermittelt die nächste Variable
 Hinzugefügt: EnvironmentVariableName() - ermittelt den 
Variablennamen
 Hinzugefügt: 
EnvironmentVariableValue() - ermittelt den Variablenwert
 Hinzugefügt: ProgramName() - ermittelt den vollständigen Pfad 
des Executables
 Hinzugefügt: 
CountProgramParameters() - ermittelt die Anzahl der Parameter
 Hinzugefügt: IsProgram(Programm) - überprüft, ob 'Programm' 
ein gültiges und mit RunProgram gestartetes Programm ist
 Hinzugefügt: ProgramID(Programm) - ermittelt die ProcessID 
des Programms
 Hinzugefügt: ProgramRunning(Programm) 
- gibt 1 zurück, wenn das Programm noch läuft
 Hinzugefügt: WaitProgram(Programm [, Timeout]) - wartet auf 
das Ende des Programms (mit optionalem Timeout). Gibt 1 zurück, wenn das 
Programm beendet wurde.
 Hinzugefügt: 
KillProgram(Programm) - zwingt das Programm zum Beenden
 Hinzugefügt: ProgramExitCode(Programm) - ermittelt den 
Exitcode des Programms (nur gültig, nachdem das Programm beendet wurde)
 Hinzugefügt: CloseProgram(Programm) - schließt die 
Interaktion mit dem Programm
 Hinzugefügt: 
AvailableProgramOutput(Programm) - gibt die Anzahl an Bytes zurück, die bereit 
sind zum Lesen
 Hinzugefügt: 
ReadProgramString(Programm) - liest einen String von der Programmausgabe
 Hinzugefügt: ReadProgramData(Programm, *Buffer, 
Größe) - liest Daten von der Ausgabe
 Hinzugefügt: 
ReadProgramError(Programm) - liest eine Nachricht von STDERR
 Hinzugefügt: WriteProgramString(Programm, String$) - schreibt 
in die Programmeingabe (String)
 Hinzugefügt: 
WriteProgramData(Program, *Buffer, Größe)- schreibt Daten in die Programmeingabe
 
 Geändert: ProgramParameter([Index]) - 
ermittelt den nächsten Parameter (oder den am Positions-Index)
 Geändert: RunProgram() mit neuen Flags:
   #PB_Program_Open    - öffnet die Programmkommunikation/ermittelt Informationen
  #PB_Program_Read    - erlaubt das Lesen der Programmausgabe (STDOUT)
  #PB_Program_Write   - erlaubt das Schreiben in die Programmeingabe (STDIN)
  #PB_Program_Error   - erlaubt das Abfragen von Nachrichten auf der Standard-Fehlerausgabe (STDERR)
  #PB_Program_Connect - verbindet die Ausgabe eines anderen Programms mit der Eingabe dieses Programms
 File Hinzugefügt: FileBuffersSize(#Datei, Größe) 
- ändert die Größe des Puffers für die angegebene Datei Hinzugefügt: FileID(#Datei) - gibt die einmalige ID zurück, 
welche die Datei im Betriebssystem identifiziert
 Hinzugefügt: FlushFileBuffers(#Datei) - stellt sich, dass 
alle gepufferten Operationen auf Disk geschrieben werden
 Hinzugefügt: ReadChar(#Datei)
 Hinzugefügt: ReadQuad(#Datei)
 Hinzugefügt: ReadDouble(#Datei)
 Hinzugefügt: WriteChar(#Datei, Wert)
 Hinzugefügt: WriteQuad(#Datei, Wert)
 Hinzugefügt: WriteDouble(#Datei, Wert)
 Hinzugefügt: ReadStringFormat(#Datei)
 Hinzugefügt: WriteStringFormat(#Datei, Format)
 
 Geändert: FileSeek(#Datei, NeuePosition) - neuer Parameter
 Geändert: WriteData(#Datei) - neuer Parameter
 Geändert: ReadData(#Datei) - neuer Parameter
 Geändert: Lof(#Datei) - neuer Parameter
 Geändert: Loc(#Datei) - neuer Parameter
 Geändert: ReadByte(#Datei) - neuer Parameter
 Geändert: ReadWord(#Datei) - neuer Parameter
 Geändert: ReadLong(#Datei) - neuer Parameter
 Geändert: ReadFloat(#Datei) - neuer Parameter
 Geändert: ReadString(#Datei [,Format]) - neuer Parameter
 Geändert: ReadData(#Datei) - neuer Parameter
 Geändert: WriteByte(#Datei, Data) - neuer 
Parameter
 Geändert: WriteWord(#Datei, Data) - 
neuer Parameter
 Geändert: WriteLong(#Datei, Data) 
- neuer Parameter
 Geändert: WriteFloat(#Datei, 
Data) - neuer Parameter
 Geändert: 
WriteString(#Datei, Data [,Format]) - neuer Parameter
 Geändert: WriteStringN(#Datei, Data [,Format]) - neuer 
Parameter
 Geändert: WriteData(#Datei, Data, Länge) 
- neuer Parameter
 
 Entfernt: UseFile() - ändern 
Sie UseFile(#Datei) in FileID(#Datei), wo lediglich die ID benötigt wird.
 
 2DDrawing Hinzugefügt: DrawAlphaImage() Hinzugefügt: TextHeight(Text$) - gibt die für den String 
benötigte Höhe zurück (unter Berücksichtigung des aktuellen 
Zeichensatzes/-ausgabe)
 Hinzugefügt: FillArea(x, y, 
RandFarbe [, Farbe]) - wenn RandFarbe = -1, wird der Bereich mit der gleichen 
Farbe wie an (x,y) gefüllt
 
 Geändert: 
FrontColor(Farbe) - Rot, Grün und Blau in nur einen Farbwert verbunden (fügen 
Sie RGB() für eine schnelle Umsetzung von altem Code hinzu).
 Geändert: BackColor(Farbe) - Rot, Grün und Blau in nur einen 
Farbwert verbunden.
 Geändert: NeuX = DrawText(x, 
y, Text$ [, ZeichenFarbe [, HintergrundFarbe]]) - x/y Koordinaten und optionale 
Farbwerte hinzugefügt
 Geändert: TextLength(Text$) 
-> TextWidth(Text$) - umbenannt
 
 Entfernt: 
Locate(x, y) - nicht länger nützlich.
 Palette Entfernt: UsePalette() 
 Geändert: GetPaletteColor(#Palette, Index) - neuer Parameter
 Geändert: SetPaletteColor(#Palette, Index, Farbe) 
- neuer Parameter
 Module Geändert: SetModulePosition(#Modul, 
Position) - neuer Parameter Geändert: 
GetModulePosition(#Modul) - neuer Parameter
 Geändert: GetModuleRow(#Modul) - neuer Parameter
 Geändert: StopModule(#Modul) - neuer Parameter und -1 = 
stoppt alle Module
 Database Geändert: FirstDatabaseRow(#Datenbank) - 
neuer Parameter Geändert: 
PreviousDatabaseRow(#Datenbank) - neuer Parameter
 Geändert: NextDatabaseRow(#Datenbank) - neuer Parameter
 Geändert: GetDatabaseLong(#Datenbank) - neuer 
Parameter
 Geändert: GetDatabaseFloat(#Datenbank) - 
neuer Parameter
 Geändert: 
GetDatabaseString(#Datenbank) - neuer Parameter
 Geändert: DatabaseUpdate(#Datenbank, Anfrage$) - neuer 
Parameter
 Geändert: DatabaseQuery(#Datenbank, 
Anfrage$) - neuer Parameter
 Geändert: 
DatabaseColumnType(#Datenbank, Spalte) - neuer Parameter
 Geändert: DatabaseColumns(#Datenbank) - neuer Parameter
 Geändert: DatabaseColumnName(#Datenbank, Spalte) - 
neuer Parameter
 
 Entfernt: UseDatabase()
 
 Movie Geändert: MovieAudio(#Movie) - neuer 
Parameter Geändert: MovieHeight(#Movie) - neuer 
Parameter
 Geändert: MovieWidth(#Movie) - neuer 
Parameter
 Geändert: MovieInfo(#Movie) - neuer 
Parameter
 Geändert: MovieLength(#Movie) - neuer 
Parameter
 Geändert: RenderMovieFrame(#Movie) - 
neuer Parameter
 Geändert: ResizeMovie(#Movie, x, 
y, Breite, Höhe) - neuer Parameter
 Geändert: 
ResumeMovie(#Movie) - neuer Parameter
 Geändert: 
PauseMovie(#Movie) - neuer Parameter
 Geändert: 
StopMovie(#Movie) - neuer Parameter
 Geändert: 
MovieSeek(#Movie, Position) - neuer Parameter
 Geändert: MovieStatus(#Movie) - neuer Parameter
 
 Entfernt: UseMovie()
 FileSystem Hinzugefügt: FinishDirectory(#Verzeichnis) 
Hinzugefügt: DirectoryEntryType(#Verzeichnis)
 Hinzugefügt: DirectoryEntryDate(#Verzeichnis, 
DateType) - #PB_Date_Created, #PB_Date_Accessed, #PB_Date_Modified
 Hinzugefügt: GetFileDate(Dateiname$, DatenTyp)
 Hinzugefügt: SetFileDate(Dateiname$, DatenTyp)
 
 Geändert: NextDirectoryEntry(#Verzeichnis) - neuer Parameter
 Geändert: DirectoryEntryName(#Verzeichnis) - neuer 
Parameter
 Geändert: 
DirectoryEntryAttributes(#Verzeichnis) - neuer Parameter
 Geändert: DirectoryEntrySize(#Verzeichnis) - neuer Parameter
 Geändert: IsFilename() in CheckFilename() - 
Funktionsname geändert
 
 Entfernt: UseDirectory()
 
 Wichtige Hinweise: NextDirectoryEntry() gibt nicht länger den Typ eines 
Eintrags (Datei/Typ) zurück. Um einheitlich zu anderen Examine...()/Next...() 
Funktionen in PB zu sein, wird jetzt nur 0 oder 1 zurückgegeben (0 bedeutet 
keine weiteren Objekte). Verwenden Sie DirectoryEntryType(), um den Typ eines 
Eintrags herauszufinden, wie Sie dies zuvor mit dem Ergebnis von 
NextDirectoryEntry() gemacht haben. FinishDirectory() muss nach jedem 
ExamineDirectory() aufgerufen werden.
 Menu Hinzugefügt: GetMenuItemText(#Menu, 
EintragID) Hinzugefügt: GetMenuTitleText(#Menu, 
EintragID)
 Hinzugefügt: SetMenuItemText(#Menu, 
EintragID, Text$)
 Hinzugefügt: 
SetMenuTitleText(#Menu, EintragID, Text$)
 
 Geändert: DisableMenuItem(#Menu, EintragID, Status) - neuer 
Parameter
 Geändert: MenuID(#Menu) - neuer 
Parameter
 Console Hinzugefügt: EnableGraphicalConsole(Status) 
Hinzugefügt: RawKey()
 Hinzugefügt: Umleitung und Standardausgabe Unterstützung
 
 Geändert: Inkey() - gibt jetzt nur 1 Zeichen 
oder nichts zurück (anstelle von immer 2), verwenden Sie RawKey() für das extra 
Zeichen
 
 Hinweis: die alte Console Library verwendete einen grafischen 
Konsolenmodus, womit keine korrekte Ausgabe auf stdout erfolgte (Sie konnten sie 
nicht über die Befehlszeile aufrufen, wie : myprogram.exe > test.txt). Jetzt 
haben Sie diese Wahl mit EnableGraphicalConsole(Status), und wenn Sie nicht 
ausdrücklich den grafischen Modus einstellen, sollte die Ausgabe korrekt an 
stdout gesendet werden, was Ihnen das Schreiben besserer Konsolen-Werkzeuge 
ermöglicht. Das gleich gilt für stdin und den Input() Befehl.
 AudioCD Geändert: alle Funktionsnamen von 
'CDAudio' in 'AudioCD' (weniger französisch-englisch...)  Toolbar Hinzugefügt: ToolBarHeight(#ToolBar) 
Hinzugefügt: ToolBarID(#ToolBar)
 
 Geändert: ToolBarTooltip(#ToolBar, Schalter, Text$) - neuer 
Parameter
 Geändert: DisableToolBarButton(#ToolBar, 
Schalter, Status) - neuer Parameter
 Statusbar Hinzugefügt: StatusBarHeight(#StatusBar) 
Hinzugefügt: StatusBarID(#StatusBar)
 Font Geändert: FontID(#Font) - neuer Parameter 
Geändert: CloseFont() in FreeFont()
 
 Entfernt: UseFont()
 Preferences Hinzugefügt: Möglichkeit zum 
Hinzufügen/Ändern/Löschen von Schlüsseln in existierenden Prefs-Dateien. 
Hinzugefügt: RemovePreferenceKey(Name$)
 Hinzugefügt: RemovePreferenceGroup(Name$)
 Hinzugefügt: ExaminePreferenceGroups() - untersuchen aller 
Gruppennamen in der Datei
 Hinzugefügt: 
NextPreferenceGroup() - springt zum nächsten Gruppennamen (die Gruppe wird als 
die aktuelle gesetzt).
 Hinzugefügt: 
PreferenceGroupName() - ermitteln des Gruppennamens.
 Hinzugefügt: ExaminePreferenceKeys() - untersuchen aller 
Schlüsselnamen in der aktuellen Gruppe.
 Hinzugefügt: NextPreferenceKey() - springt zum nächsten 
Schlüssel.
 Hinzugefügt: PreferenceKeyName() - 
ermitteln den Schlüsselnamen.
 Hinzugefügt: 
ReadPreferenceQuad(Schlüssel$, Standard)
 Hinzugefügt: ReadPreferenceDouble(Schlüssel$, Standard)
 Hinzugefügt: WritePreferenceQuad(Schlüssel$, Wert)
 Hinzugefügt: WritePreferenceDouble(Schlüssel$, 
Wert)
 Sprite Hinzugefügt: SpriteID(#Sprite) Hinzugefügt: FlipBuffer() - ein Flag hinzugefügt, um eine 
CPU-optimierte Synchronisation im Vollbildschirm-Modus zu erhalten.
 
 Umbenannt: DisplayTranslucideSprite() in DisplayTranslucentSprite()
 
 Geändert: TransparentSpriteColor(#Sprite, R, 
G, B) in TransparentSpriteColor(#Sprite, Farbe)
 Geändert: ClearScreen(R, G, B) in ClearScreen(Farbe)
 Library Umbenannt: IsFunction() -> GetFunction()  Network Hinzugefügt: UDP-Unterstützung über die 
Flags #PB_Network_UDP und #PB_Network_TCP Hinzugefügt: GetClientIP()
 Hinzugefügt: GetClientPort()
 Hinzugefügt: EventServerNumber()
 
 Umbenannt: 
NetworkClientID() -> EventClient()
 Keyboard Hinzugefügt: #PB_Keyboard_International und 
#PB_Keyboard_AllowSystemKeys Flags bei KeyboardMode()  Clipboard Geändert: GetClipboardData(Typ) in 
GetClipboardImage(#Image) Geändert: 
SetClipboardData(Typ, Data) in SetClipboardImage(#Image)
 Memory Hinzugefügt: Unterstützung für 
Unicode-Konvertierung bei PeekS() und PokeS() zwischen ASCII, UTF8 und UTF16 
Hinzugefügt: PeekC(), PeekD(), PeekQ()
 Hinzugefügt: PokeC(), PokeD(), PokeQ()
 Hinzugefügt: MemorySize() - gibt die Größe eines 
Speicherblocks zurück
 Hinzugefügt: MoveMemory()
 Hinzugefügt: CompareMemoryString(*Text1, *Test2 
[Modus [, MaxLänge [, Flags]]]) - Neue Flag-Parameter für den Vergleich von 
UTF16/UTF8/ASCII
 Hinzugefügt: MemoryStringLength() 
- Neue Flag-Parameter für UTF16/UTF8/ASCII Unterstützung
 
 Hinweis: Die 
Befehle PeekS, PokeS, CompareMemoryString, MemoryStringLength haben jetzt einen 
Parameter, welcher das String-Format angibt. Mögliche Optionen sind: #PB_Ascii, 
#PB_Unicode oder #PB_UTF8. Dies erlaubt das Arbeiten mit Strings im Speicher 
unabhängig vom aktuellen String-Modus, in dem das Executable kompiliert wurde 
(Unicode oder nicht).
 Engine3D Geändert: CreateMesh(#Mesh, MaximumVertex) 
- neuer Parameter Geändert: 
MaterialAmbientColor(#Matrix1, -1) - -1 neuer Parameter
 
 Hinzugefügt: EntityRenderMode()
 Hinzugefügt: WorldShadows(#PB_Shadow_Additive)
 Hinzugefügt: ParticleEmitterDirection()
 Hinzugefügt: GetEntityMass
 Hinzugefügt: SetEntityMass
 Hinzugefügt: GetEntityFriction
 Hinzugefügt: SetEntityFriction
 Hinzugefügt: EntityPhysicBody
 Hinzugefügt: ExamineWorldCollisions
 Hinzugefügt: NextWorldCollision
 Hinzugefügt: CheckWorldCollisionEntity
 Hinzugefügt: FirstWorldCollisionEntity
 Hinzugefügt: SecondWorldCollisionEntity
 Hinzugefügt: WorldGravity
 Hinzugefügt: EnableWorldCollision
 Hinzugefügt: EnableWorldPhysics
 Hinzugefügt: Parse3DScripts
 
 Entfernt: RotateParticleEmitter() (war bisher nutzlos)
 
 Window Hinzugefügt: GetActiveWindow() - gibt das 
Fenster mit dem Fokus zurück Hinzugefügt: 
DisableWindow(#Window, Status) - deaktiviert Anwendereingaben in das Fenster
 Hinzugefügt: GetWindowState(#Window) - ermittelt 
den Minimiert/Maximiert Status
 Hinzugefügt: 
SetWindowState(#Window, Status)- setzt den Minimiert/Maximiert Status
 Hinzugefügt: StickyWindow(#Window, Status) - setzt das 
Fenster in den Vordergrund aller anderen, auch wenn es deaktiviert ist
 Hinzugefügt: SetWindowColor(#Window, Farbe)- setzt die 
Hintergrundfarbe eines Fensters
 Hinzugefügt: 
GetWindowColor(#Window) - ermittelt die aktuelle Hintergrundfarbe eines Fensters
 Hinzugefügt: SmartWindowRefresh(#Window, Status) - 
Aktiviert oder deaktiviert das "SmartRefresh" Feature (intelligentes 
Auffrischen)
 
 Geändert: OpenWindow(#Window, x, 
y, Breite, Höhe, Titel$ [, Flags [, ParentID]]) - Flags sind jetzt am Ende und 
optional
 Geändert: WaitWindowEvent([Timeout]) - 
optionalen Timeout-Wert hinzugefügt
 Geändert: 
ResizeWindow(#Window, x, y, Breite, Höhe) - '-1' Parameter müssen in #PB_Ignore 
geändert werden
 Geändert: 
SetWindowCallback(@procedure()[, #Window]) - optionalen Window-Parameter 
hinzugefügt (um einen Callback nur für ein Fenster einzustellen)
 Geändert: ResizeWindow(#Window, x, y, Breite, Höhe) - jetzt 
das gleiche wie ResizeGadget()
 Geändert: 
WindowID(#Window) - Parameter ist nicht länger optional
 Geändert: WindowHeight(#Window) - neuer Parameter
 Geändert: WindowWidth(#Window) - neuer Parameter
 Geändert: WindowX(#Window) - neuer Parameter
 Geändert: WindowY(#Window) - neuer Parameter
 Geändert: WindowMouseX(#Window) - neuer Parameter
 Geändert: WindowMouseY(#Window) - neuer Parameter
 Geändert: WindowOutput(#Window) - neuer Parameter
 
 Umbenannt: EventWindowID() in EventWindow()
 Umbenannt: 
EventGadgetID() in EventGadget()
 Umbenannt: EventMenuID() in EventMenu()
 Umbenannt: ActivateWindow() in SetActiveWindow(#Window)
 
 Entfernt: MoveWindow()
 Entfernt: 
DetachMenu()
 Entfernt: UseWindow()
 Entfernt: Konstanten zur Kompatibilität mit früheren Versionen 
entfernt, wie z.B. #PB_EventCloseWindow (benutzen Sie stattdessen das 
dokumentierte #PB_Event_CloseWindow)
 
 Gadget Hinzugefügt: GetActiveGadget() - gibt das 
gerade aktive Gadget zurück Hinzugefügt: 
GadgetType(#Gadget) - gibt eine Konstante zurück, welche den Typ des Gadgets 
identifiziert
 Hinzugefügt: SetGadgetData(#Gadget, 
Wert) - weist einem Gadget einen Wert hinzu (funktioniert mit allen Gadgets)
 Hinzugefügt: GetGadgetData(#Gadget) - liest den 
zugewiesenen Wert
 Hinzugefügt: 
SetGadgetItemData(#Gadget, Eintrag, Wert) - weist einem Gadget-Eintrag einen 
Wert zu (funktioniert nur bei bestimmten Gadgets)
 Hinzugefügt: GetGadgetItemData(#Gadget, Eintrag)
 Hinzugefügt: SetGadgetColor(#Gadget, Farbtyp, Farbe)
 Hinzugefügt: GetGadgetColor(#Gadget, Farbtyp)
 Hinzugefügt: SetGadgetItemColor(#Gadget, Eintrag, 
Farbtyp, Farbe [, Spalte])
 Hinzugefügt: 
GetGadgetItemColor(#Gadget, Eintrag, Farbtyp [, Spalte])
 
 Geändert: ActivateGadget(#Gadget) ist jetzt 
SetActiveGadget(#Gadget)
 Geändert: 
ResizeGadget(#Gadget, x, y, Breite, Höhe), -1 sollte jetzt in #PB_Ignore 
geändert werden
 
 Entfernt: #PB_String_MultiLine
 
 Individuelle Änderungen bei Gadgets:
 
 CalendarGadget()
 - unterstützt SetGadgetColor() mit den 
folgenden Farbtypen:
 
 #PB_Gadget_BackColor - Hintergrund #PB_Gadget_FrontColor - Text 
zum Anzeigen der Tage
 #PB_Gadget_TitleBackColor - Hintergrund des 
Monats-Titels
 #PB_Gadget_TitleFrontColor - Textfarbe des Monats-Titels
 #PB_Gadget_GreyTextColor - Farbe für Tage, die nicht im aktuellen Monat 
liegen
 
 ComboBoxGadget()
 - unterstützt 
SetGadgetItemData()
 
 ContainerGadget()
 - unterstützt 
SetGadgetColor() für die Hintergrundfarbe
 
 DateGadget()
 - 
unterstützt SetGadgetColor() mit den gleichen Wert wie das CalendarGadget() zum 
Einfärben des Aufklapp-Kalenders
 - der Eingabebereich kann derzeit nicht 
eingefärbt werden
 
 EditorGadget()
 - unterstützt SetGadgetColor 
für Vorder- und Hintergrundfarbe
 - neuer Flag: #PB_Editor_ReadOnly
 - 
unterstützt SetGadgetrAttribute() mit #PB_Editor_ReadOnly zum Ermitteln/Setzen 
des "Readonly" Flags
 
 ExplorerListGadget()
 - unterstützt 
SetGadgetColor() für Vorder- und Hintergrundfarbe & #PB_Gadget_LineColor
 - unterstützt GetGadgetItemAttribute(#Gadget, 0, #PB_Explorer_ColumnWidth, 
2) ; gibt die Breite der Spalte 2 zurück
 - unterstützt 
SetGadgetItemAttribute(#Gadget, 0, #PB_Explorer_ColumnWidth, 100, 2) ; setzt die 
Breite der Spalte 2 auf 100
 - unterstützt GetGadgetItemText(#Gadget, -1, 2) 
; gibt die Überschrift der Spalte 2 zurück
 - unterstützt 
SetGadgetItemText(#Gadget, -1, "New Text", 2) ; ändert die Überschrift der 
Spalte 2
 
 ExplorerTreeGadget()
 - unterstützt SetGadgetColor() 
für Vorder- und Hintergrundfarbe & #PB_Gadget_LineColor
 
 HyperLinkGadget()
 - unterstützt SetGadgetColor() für die 
Vordergrundfarbe (Hintergrund ist immer transparent)
 - neuer Flag: 
#PB_Hyperlink_Underline - zeichnet eine Linie unter den Text (ohne eine 
unterstrichenen Zeichensatz zu benötigen)
 
 ListIconGadget()
 - 
unterstützt SetGadgetColor() für Vorder- und Hintergrundfarbe und 
#PB_Gadget_LineColor (für #PB_ListIcon_GridLines)
 - unterstützt 
SetGadgetItemColor() für Vorder- und Hintergrundfarbe (kann für jede Zelle 
individuell eingestellt werden)
 - unterstützt SetGadgetItemData()
 - Das 
Ereignis zum Feststellen einer Änderung der der Checkbox ist jetzt 
#PB_EventType_Change
 - unterstützt GetGadgetItemAttribute(#Gadget, 0, 
#PB_ListIcon_ColumnWidth, 2) ; gibt die Breite der Spalte 2 zurück
 - 
unterstützt SetGadgetItemAttribute(#Gadget, 0, #PB_ListIcon_ColumnWidth, 100, 2) 
; setzt die Breite von Spalte 2 auf 100
 - unterstützt 
GetGadgetItemText(#Gadget, -1, 2) ; gibt die Überschrift von Spalte 2 zurück
 - unterstützt SetGadgetItemText(#Gadget, -1, "New Text", 2) ; ändert die 
Überschrift von Spalte 2
 
 ListViewGadget()
 - unterstützt 
SetGadgetColor() für Vorder- und Hintergrundfarbe (nicht für individuelle 
Einträge)
 - unterstützt SetGadgetItemData()
 - neue Flags:
 
 #PB_ListView_Multiselect - erlaubt Mehrfach-Auswahl 
#PB_ListView_ClickSelect - Mehrfachauswahl + Anklicken eines Eintrags 
markiert diesen oder entfernt die Markierung
 
 MDIGadget()
 - Die Child-Fenster des MDIGadget 
sind nicht länger "GadgetItems" (Gadget-Einträge), stattdessen echte PB-Fenster. 
Dies bedeutet, dass Sie ALLE Befehle der Windows Library mit ihnen benutzen 
können (mit Ausnahme von StickyWindow()). Dies macht einige der MDIGadget 
Features überflüssig, daher gibt es einige Änderungen:
 - Das Gadget sendet 
keinerlei Events mehr: alle Ereignisse zum Schließen, Größenänderung oder 
Aktivieren werden jetzt als Window-Events empfangen.
 - GetGadgetAttribute(), 
Get/SetGadgetItemAttribute, Get/SetGadgetItemState(), Get/SetGadgetItemText 
werden alle nicht länger unterstützt. All dies kann einfach über die Befehle der 
Windows Library erledigt werden.
 - RemoveGadgetItem() wird nicht länger 
unterstützt. Verwenden Sie CloseWindow().
 
 Die mit dem MDIGadget 
nutzbaren Befehle sind jetzt nur noch diese: (+ die gesamte Windows Library!)
 - ClearGadgetItemList() : schließt alle Child-Fenster
 - 
CountGadgetItems() : ermittelt die Anzahl an Child-Fenstern im Gadget
 - 
GetGadgetState() : ermittelt die WindowID des gerade im Vordergrund des Gadgets 
befindlichen Fensters
 - SetGadgetState() : setzt ein bestimmtes Fenster in 
den Vordergrund oder ordnet die Child-Fenster an. (Alles wie beim alten 
MDIGadget.)
 - AddGadgetItem() : erstellt ein MDI Child - dies funktioniert 
wie folgt:
 
    AddGadgetItem(#MDI, #Window, Titel$ [, ImageID [, Flags]])
     - #Window - Nummer des neuen Fensters (kann #PB_Any sein!)
     - Titel$  - neuer Fenstertitel
     - ImageID - Icon für das Fenster (optional)
     - Flags   - unterstützt die meisten Flags von OpenWindow - wenn keine angegeben sind, werden die Standard MDI Flags verwendet. Hinweis: Sie müssen jetzt CreateGadgetList() aufrufen, um Einträge 
zu einem MDI Child-Fenster hinzufügen zu können, einfach wie bei normalen 
Fenstern.Nicht unterstützte Flags: #PB_Window_Borderless, #PB_Window_ScreenCentered, #PB_Window_WindowCentered
 - SetGadgetColor() kann mit #PB_Gadget_BackColor verwendet 
werden, um die MDI Hintergrundfarbe festzulegen
 - SetGadgetAttribute() kann 
mit #PB_MDI_Image verwendet werden, um ein Hintergrundbild festzulegen, 
#PB_MDI_TileImage kann den Kachelmodus für das Bild ein- oder ausschalten
 
 PanelGadget()
 - GetGadgetAttribute() hinzugefügt, mit 
#PB_Panel_ItemWidth, #PB_Panel_ItemHeight ("Readonly") (es muss mindestens ein 
Tab vorhanden sein, damit dies funktioniert)
 
 ProgressBarGadget()
 - unterstützt SetGadgetColor() für Vorder- und Hintergrundfarbe 
(funktioniert nicht mit XP Skins)
 - unterstützt SetGadgetAttribute() mit 
#PB_ProgressBar_Minimum, #PB_ProgressBar_Maximum
 
 ScrollAreaGadget()
 - unterstützt SetGadgetColor() für die 
Hintergrundfarbe
 - neuer Flag: #PB_ScrollArea_Center - wenn die innere Größe 
kleiner als die äußere ist, wird der innere Bereich automatisch zentriert
 - 
neue Optionen für SetGadgetAttribute(): #PB_ScrollArea_X/#PB_ScrollArea_Y zum 
Auslesen/Setzen der aktuellen Scroll-Position
 - generiert jetzt ein 
Ereignis, wenn gescrollt wird
 
 ScrollBarGadget()
 - unterstützt 
SetGadgetAttribute() mit #PB_ScrollBar_Minimum, #PB_ScrollBar_Maximum, 
#PB_ScrollBar_PageLength
 
 SpinGadget()
 - unterstützt 
SetGadgetColor für Vorder- und Hintergrundfarbe (to color the edit area)
 - 
unterstützt SetGadgetAttribute() mit #PB_Spin_Minimum, #PB_Spin_Maximum
 - 
Neue Flags:
 
 #PB_Spin_ReadOnly - Das zugehörige Stringgadget ist nicht 
editierbar, die Zahl kann nur durch die Pfeile geändert werden 
- Werte für EventType (Ereignistypen):#PB_Spin_Numeric - Das SpinGadget wird automatisch den Text mit dem Wert des 
eingestellten Status aktualisieren, sodass SetGadgetText nicht benötigt wird.
 
 
 1 - der 'Hoch' Schalter wurde gedrückt -1 - der 'Runter' 
Schalter wurde gedrückt
 #PB_EventType_Change - der Text in der Eingabebox 
wurde geändert
 
 SplitterGadget()
 - neue Flags für 
Get/SetGadgetAttribute(): #PB_Splitter_FirstGadget, #PB_Splitter_SecondGadget
 Mit GetGadgetAttribute() geben sie die #Gadget Nummer des gespeicherten 
Gadget zurück.
 Mit SetGadgetAttribute() können Sie ein neues Gadget in den 
Splitter-Bereich einfügen.
 
 Hinweis: Das alte Gadget wird nicht 
automatisch freigegeben! (Es wird aus dem Splitter genommen und auf dem gleichen 
Fenster wie der Splitter platziert.) Wenn Sie daher nicht möchten, dass das alte 
Gadget verbleibt, entfernen Sie es mit FreeGadget(). Dies ermöglicht das 
Umschalten von Gadgets in einem Splitter, ohne diese jedes Mal neu erstellen zu 
müssen.
 
 Hinweis: Sie können ein Gadget nicht gleichzeitig in 2 
Splitterbereichen haben. Um dieses daher von einem Splitter in einen anderen zu 
verschieben, ersetzen Sie es zuerst im ersten Splitter und setzen Sie es dann in 
den zweiten.
 
 StringGadget()
 - unterstützt SetGadgetColor() 
für Vorder- und Hintergrundfarbe
 
 TextGadget()
 - unterstützt 
SetGadgetColor() für Vorder- und Hintergrundfarbe
 TrackBarGadget()
 - unterstützt SetGadgetAttribute() mit #PB_TrackBar_Minimum, 
#PB_TrackBar_Maximum
 
 TreeGadget()
 - unterstützt 
SetGadgetColor() für Vorder- und Hintergrundfarbe & #PB_Gadget_LineColor
 - unterstützt SetGadgetItemColor() für Vorder- und Hintergrundfarbe
 - 
Management der Einträge komplett geändert. Es gibt keinerlei Knoten ("Nodes") 
mehr, einfach eine fortlaufende Liste, wo jeder Eintrag einen "Sublevel" hat. 
Die Sublevel aller Einträge definieren die Baumstruktur wie folgt:
    + Sublevel 0
   +-+ Sublevel 1
   | | Sublevel 1
   | +-+ Sublevel 2
   | | Sublevel 1
   | Sublevel 0              
- neuer Parameter für AddGadgetItem: AddGadgetItem(#Gadget, 
Position, Text$ [, ImageID [, Flags]]) Der "Flags" Parameter wird beim 
TreeGadget immer benötigt und definiert den Sublevel, in welchen dieser Eintrag 
eingeordnet wird.
 
 Um den oben dargestellten Baum zu erstellen, gehen Sie 
wie folgt vor:
    AddGadgetItem(#TreeGadget, -1, "Sublevel 0", 0, 0)
   AddGadgetItem(#TreeGadget, -1, "Sublevel 1", 0, 1)
   AddGadgetItem(#TreeGadget, -1, "Sublevel 1", 0, 1)
   AddGadgetItem(#TreeGadget, -1, "Sublevel 2", 0, 2)
   AddGadgetItem(#TreeGadget, -1, "Sublevel 1", 0, 1)
   AddGadgetItem(#TreeGadget, -1, "Sublevel 0", 0, 0)    
- neues GetGadgetItemAttribute() mit #PB_Tree_SubLevel 
("readonly"), um den Sublevel jedes Eintrags zu ermitteln - Entfernt: OpenTreeGadgetNode()
 - Entfernt: CloseTreeGadgetNode()
 - Entfernt: TreeGadgetItemNumber() - kann einfach mittels 
GadgetItemID() und einem Durchlauf durch die Eintragliste emuliert werden
 - 
Entfernt: CountTreeGadgetNodeItems() - kann einfach durch 
Vergleichen des Sublevels der Einträge emuliert werden
 
 
 |