13thDecember 2023

SpiderBasic 2.51

- Updated: The .i type is now quad instead of long as JS supports mostly quad natively (#PB_Compiler_64Bit is now set to 1 to reflect this).

- Fixed: Some compiler and librarie bugs



9thJune 2023

SpiderBasic 2.50

- Added: Realtime sprite and screen shaders with AddSpriteShader(), SpriteShaderAttribute(), RemoveSpriteShader()
- Added: AddScreenShader(), ScreenShaderAttribute(), RemoveScreenShader()
- Added: FullScreen()
- Added: #PB_Shader_Blur, #PB_Shader_Noise, #PB_Shader_Pixelate, #PB_Shader_Bevel, #PB_Shader_BulgePinch
- Added: #PB_Shader_Reflection, #PB_Shader_Adjustment
- Added: WindowOpacity()
- Added: #PB_Window_NoMove flag for OpenWindow() to disable user window moving (with mouse or touch)
- Added: #PB_Compiler_App to detect the created app type: #PB_App_Android, #PB_App_IOS or #PB_App_Web
- Added: --keepappdir on commandline and 'Create App' window to keep the cordova app directory

- Updated: Cordova to lastest 11 version
- Updated: Android API to 33
- Updated: PixiJS to 5.3.12
- Updated: InnoSetup on Windows to be able to install SpiderBasic without admin rights.

- Fixed: Some compiler and librarie bugs



28thNovember 2022

SpiderBasic 2.40

- Added: WebSocket library: OpenWebSocket(), CloseWebSocket(), SendWebSocketData(), SendWebSocketString()
- Added: Packer library: CompressMemory(), UncompressMemory(), CompressString(), UncompressString()
- Added: Clipboard library: SetClipboardText()
- Added: DesktopResolutionX(), DesktopResolutionY(), DesktopScaledX(), DesktopScaledY(), DesktopUnscaledX(), DesktopUnscaledY()
- Added: Event(), EventString(), EventWebSocket()
- Added: FormatNumber()
- Added: Base64Encoder(), Base64Decoder(), Base64EncoderBuffer(), Base64DecoderBuffer()
- Added: #PB_EventType_Focus and #PB_EventType_LostFocus to TreeGadget()
- Added: #PB_Tree_Expanded support to SetGadgetAttribute() for TreeGadget() to quickly expand/collapse all nodes
- Added: HighAccuracy parameter to StartGeolocation() to use the real GPS if available.
- Added: #PB_ListIcon_GridLines support
- Added: a timestamp to the index.html to avoid caching problem
- Added: native OS X arm64 version
- Added: all IDE improvement from PureBasic

- Updated: android framework to android-32 to be able to publish app on Google PlayStore
- Updated: the application license file

- Changed: the behaviour of accessing a map element, it now always creates a new element if not found.

- Removed: the "Geolocation" checkbox in "Create App" window as it is no more needed



18thMay 2020

SpiderBasic 2.31

- Fixed: some compiler and library bugs



22thNovember 2019

SpiderBasic 2.30

- Added: MessageRequester(), InputRequester()
- Added: DeviceAlwaysOn(), DeviceBrightness()
- Added: #PB_Window_AllowSelection flag to OpenWindow() to allow to select gadget text for copy/paste
- Added: LoadScript() to load an external scripts for use in the program (JS, CSS)
- Added: #PB_Canvas_Container flag to CanvasGadget()
- Added: CloseDebugOutput() to close the debug output window
- Added: SDK example for LibraryMaker to create your own user libraries
- Added: UserLibraries support (directory SpiderBasic/Libraries/UserLibraries)
- Added: #PB_Font_Italic and #PB_Font_Bold support for LoadFont()

- Updated: GetWindowTitle() now works with windows with #PB_Window_BorderLess flag
- Updated: android framework to android-29 to be able to still publish app on Google PlayStore
- Updated: jQuery library to lastest version

- Fixed: some compiler and library bugs

13thSeptember 2019

SpiderBasic 2.22

- Added a verbose (-vb, --verbose) switch to the commandline compiler to have all cordova outputs and help debugging
- Added a new button in the iOS app window, to check if OS X is properly setuped (it will also update cordova if a new version is available)

- Fixed: some compiler and library bugs

4thJanuary 2019

SpiderBasic 2.21

- Added: New Android SDK support to be able to publish app on Google Play
- Added: #PB_Window_Background support to Dialog library

- Fixed: some compiler and library bugs

22thOctober 2017

SpiderBasic 2.20

- Added: Database library, based on sqlite (client side)
- Added: #PB_LocalStorage support for CreateFile(), OpenFile() and ReadFile() to easily create persistent files
- Added: #PB_HTTP_Put, #PB_HTTP_Patch, #PB_HTTP_Delete support for HttpRequest()
- Added: ExportFileMemory() to return the full file content as a memory buffer
- Added: 'End' keyword support to quit an application

- Fixed: some compiler and library bugs

4thJuly 2017

SpiderBasic 2.10

- Added: Accelerometer library
- Added: Geolocation library
- Added: InAppPurchase support for iOS
- Added: BatteryLevel(), SystemInfo(), VibrateDevice()
- Added: #PB_String_PlaceHolder flag to StringGadget() to set a placeholder at creation
- Added: #PB_Event_SizeDesktop event to monitor a desktop resize without having a background window
- Added: ResizeScreen() to resize an already created screen
- Added: Cordova command can be executed via Import/EndImport
- Added: Android app is immediately run on the device once deployed

- Changed: reworked the InAppPurchase library
- Changed: switched from crosswalk to cordova on Windows for Android. NOTE: cordova requires internet connection to build an app.

- Optimized: Android app size is now much smaller (1,5 MB instead of 20 MB)

- Removed: TouchRadiusX() and TouchRadiusY() as it was only working on FireFox

- Fixed: some compiler and library bugs

5thDecember 2016

SpiderBasic 2.00

- Added: Android App creation support (Windows version only)
- Added: iOS App creation support (MacOS version only)
- Added: InAppPurchase library (Android only)
- Added: new 'Create App' window in the IDE to ease the app creation
- Added: app name field for WebApp
- Added: default browser choice in Preferences -> Compiler
- Added: too old browser detection when launching an app
- Added: a lot of switch to the commandline compiler to support mobile app
- Added: custom headers support to HttpRequest()
- Added: #PB_Text_VerticalCenter flag to TextGadget()
- Added: touch support to window dragging and resizing
- Added: IsScreenActive()

- Optimized: reduced greatly DOJO footprint for much faster app loading
- Optimized: minified most of the spiderlibraries dependencies to reduce footprint

- Updated: DOJO to lastest 1.11.2 version

- Changed: Moved the old 'Export' panel to new 'Create App' window
- Changed: OSX compiler is now bundled in the main SpiderBasic app for easier installation
- Changed: New dmg for OSX for drag'n'drop install to support Sierra
- Changed: Examples on Windows are now installed in 'common app' folder to avoid permission issues

- Fixed: some compiler and library bugs

23thAugust 2016

SpiderBasic 1.40

- Added: New VectorDrawing library
- Added: New Touchscreen library

- Updated: dgrid component to 1.1.0

- Fixed: some compiler and library bugs

23thMarch 2016

SpiderBasic 1.30

- Added: DisableWindow(), AddKeyboardShortcut(), RemoveKeyboardShortcut()
- Added: OpenFile(), GetWindowColor(), SetWindowColor()
- Added: CountProgramParameters() and ProgramParameter() to get URL params
- Added: #PB_Mouse_Locked and #PB_Mouse_Unlocked support for InitMouse()
- Added: UseGoogleDrive() to access google drive remote files in read and write mode
- Added: #PB_GoogleDriveFile support to ReadFile(), CreateFile() and OpenFileRequester()
- Added: flag parameter to ExportFile() to support GoogleDrive
- Added: #PB_Canvas_Transparent flag for CanvasGadget() to have transparent canvas.

- Changed: Added a callback parameter to CreateFile()
- Changed: in the IDE, compiler option server port now needs the server address as well.
- Changed: NextSelectedFilename() replaced by NextSelectedFile() and SelectedFilename()/SelectedFileID()

- Updated: SoundJS to 0.6.2 and PixiJS to 3.0.10

- Fixed: some compiler and library bugs

9thFebruary 2016

SpiderBasic 1.20

- Added: new Cipher library with AES, MD5 and SHA1/2/3 support
- Added: new File library, with read and write support, including streaming read
- Added: AllocateMemory(), ReAllocateMemory(), MemorySize(), CompareMemory() and FreeMemory()
- Added: PeekB(), PeekA(), PeekC(), PeekU(), PeekW(), PeekL(), PeekF(), PeekS()
PokeB(), PokeA(), PokeC(), PokeU(), PokeW(), PokeL(), PokeF(), PokeS()
- Added: ParseDate()

- Fixed: some compiler and library bugs

21thDecember 2015

SpiderBasic 1.10

- Added: powerful dialog lib to easily create auto-resizable form with XML definition
- Added: 'flat' skin for gadget and window manager
- Added: DataSection support, with Read/Restore
- Added: DrawAlphaImage()
- Added: escaped string support with ~"" syntax
- Added: SetGadgetFont() support
- Added: theme selectors in "Compiler Options", and --windowtheme, --gadgettheme support for commandline
- Added: #PB_Gadget_RequiredSize support for GadgetWidth() and GadgetHeight()

- Optimized: better gadget resizing to handle CSS margin and borders definition
- Optimized: reworked the window theme files, it's now much easier to create a skin for window
- Optimized: libraries Dialog, Gadget and Window with google closure compiler in advanced mode

- Changed: procedure naming in generated Javascript: it's now f_procedurename

- Fixed: some compiler and library bugs

13thMay 2015

SpiderBasic 1.02

- Added full export support, for simple files and projects
- Reduced the JavaScript dependencies footprint (3 times smaller)
- Added a new online showcase viewer for the website (written in SpiderBasic)
- Bug fixes

8thApril 2015

SpiderBasic 1.01

- Bug fixes
- Improved the documentation

17thMarch 2015

First public version of SpiderBasic

- Full support of client GUI applications
- Dozens of built-in libraries
- More to come !