IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PureBasic Discussion :

PureBasic 6.30 beta 1 est disponible sur votre compte


Sujet :

PureBasic

  1. #1
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut PureBasic 6.30 beta 1 est disponible sur votre compte
    Hello everyone,

    I hope the holidays season was good ! The brand new beta of PureBasic is available on your online account. It mostly has features which were hanging on my TODO list since a while, and fix a few long time bugs in the process . Here we go:
    • Added: Brand new HID library !
    • Added: Add #PB_ListIcon_NoHeaders flag ListIconGadget()
    • Added: Add #PB_Explorer_NoHeaders flag ExplorerListGadget()
    • Added: Add Unicode() to create a dynamic unicode string like Ascii() and UTF8()
    • Added: HeaderSection/EndHeaderSection to put C or ASM code outside the main() function
    • Added: #PB_InputRequester_HandleCancel to have a special return for InputRequester() if the user cancelled it
    • Added: Gzip encoding support for HttpRequest(), HttpRequestMemory(), RecieveHTTPFile() and RecieveHTTPMemory()
    • Added: #PB_Menu_NativeImageSize tot CreateImageMenu() and CreatePopupImageMenu() to allow larger icons in menus (Windows)
    • Added: #PB_2DDrawing_FastText for DrawingMode() to use have a faster text rendering (Windows).
    • Added: #PB_Mail_NoSSLCheck and #PB_Mail_WeakSSL flags for SendMail() to ease tests.
    • Added: Automatic BOM handling to CreateFile() and ReadFile()/OpenFile() with #PB_File_BOM flag
    • Added: Changed x,y type for DisplaySprite/DisplayTransparentSprite() from integer to float (Not supported on DX9 or DX11 subsystem)
    • Added: Placeholder support for StringGadget() with #PB_String_PlaceHolder flag
    • Added: PackerCallback() to monitor and abort compression.
    • Updated: Splitted the 2DDrawing lib with function which doesn't needed dependencies (https://www.purebasic.fr/english/viewtopic.php?t=87034)
    • Changed: CreateImage() background color now takes full RGBA() color for 32-bit picture. #PB_Image_Transparent and #PB_Image_TransparentBlack can be used to set a transparent background with white or black antialising.



    Have fun !

    The Fantaisie Software Team
    Here is an HID small example, but I don't have an HID device to test, so may be someone can test it. It's based on hidapi: https://github.com/libusb/hidapi . On Linux, it needs udev and libusb1.0 package to work:
    sudo apt install libusb-1.0-0-dev libudev-dev
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    #PB_HID_Path             = 1
    #PB_HID_VendorId         = 2
    #PB_HID_ProductId        = 3
    #PB_HID_SerialNumber     = 4
    #PB_HID_ReleaseNumber    = 5
    #PB_HID_Manufacturer     = 6
    #PB_HID_Product          = 7
    #PB_HID_UsagePage        = 8
    #PB_HID_Usage            = 9
    #PB_HID_InterfaceNumber  = 10
    #PB_HID_BusType          = 11
    OpenConsole()
     
    ExamineHIDs()
    While NextHID()
     
      Debug HIDInfo(#PB_HID_Product)
      Debug HIDInfo(#PB_HID_Manufacturer)
      Debug HIDInfo(#PB_HID_VendorId)
      Debug HIDInfo(#PB_HID_ProductId)
      Debug HIDInfo(#PB_HID_Path)
      Debug HIDInfo(#PB_HID_SerialNumber)
    Wend
    Source de l'information
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  2. #2
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut
    Un utilisateur a fait un test de la lib HID

    I briefly tested the new HID library with Windows 7 x64 and PB x86. Communication with a Brymen BC-86X adapter for a digital multimeter works.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    EnableExplicit
     
    Define iHidNumber.i
    Define fResult.i
    Define iResult.i
    Define c.i
     
    Dim aaData.a(4 - 1)
    Dim aaBuffer.a(3 * 9 - 1)
     
    aaData(0) =$00	; ReportNumber.
    aaData(1) =$00	; Command 1
    aaData(2) =$86	; Command 2
    aaData(3) =$66	; Command 3
     
    iHidNumber = OpenHID(#PB_Any, $0820, $0001)
     
    fResult = Bool(iHidNumber)
    If Not fResult
    	Debug("Error OpenHID: " + HIDError())
    EndIf
     
    If fResult
    	iResult = WriteHIDData(iHidNumber, @aaData(0), 4)
    	fResult = Bool(iResult)
    	If Not fResult
    		Debug("Error WriteHIDData: " + HIDError())
    	Else
    		Debug("iResult WriteHIDData: " + iResult)
    	EndIf
    EndIf
     
    If fResult
    	For c = 0 To 2
    		iResult = ReadHIDData(iHidNumber, @aaBuffer(c * 9 + 1), 8, 1000)
    		If Not iResult
    			Debug("Error ReadHIDData: " + HIDError())
    			Break
    		Else
    			Debug("iResult ReadHIDData: " + iResult)
    		EndIf
    	Next
    	ShowMemoryViewer(@aaBuffer(0), 27)
    EndIf
     
    If iHidNumber
    	CloseHID(iHidNumber)
    EndIf
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  3. #3
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut PureBasic 6.30 beta 2 est disponible sur votre compte
    beta 2 is out ! Mostly bug fixes as you can see:

    • Added: #PB_FTP_Debug flag for OpenFTP() to allow to get more info (in the console) about the connection.
    Liste des bugs corrigés
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  4. #4
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut PureBasic 6.30 beta 3 est disponible sur votre compte
    2025-10-06: beta 3 is out, with one big new library: ScreenGadget, thanks to pf-shadoko ! It's also the first official library 100% written in PureBasic. The Window3D and Gadget3D lib based on CEGUI will be deprecated. The examples for the new lib can be found in the Examples/Sources/ScreenGadget.pb and Examples/3D/ScreenGadgetMultipleWindow.pb files. Don't hesitate to send your feedback as the lib is very new. There is also the usual bug fixes:

    • Added: New ScreenGadget library to create easily UI on a game screen (for 2D and 3D)
    Liste des bugs corrigés
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  5. #5
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut
    This lib is a mimic of the regular gadget lib so it should be easy for PB coders to get a grip of it. Doc will be ready a bit later
    Liste des fonctions de la nouvelle biblio ScreenGadget en attendant la doc :
    • AddScreenGadgetItem(#ScreenGadget, Position, Text$) ; Adds an item to a gadget (ListView, ComboBox etc.)
    • ButtonImageScreenGadget(#ScreenGadget, x, y, Width, Height, ImageID [, Flags]) ; Creates a button image gadget in the current screen or screen window.
    • ButtonScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a button gadget in the current screen or screen window.
    • CheckBoxScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a checkbox gadget in the current screen or screen window.
    • CloseScreenGadgetList(#ScreenGadget [, GadgetItem]) ; Closes the current screen gadget list and go back to the previous one.
    • CloseScreenWindow(#ScreenWindow) ; Closes the specified screen window.
    • ComboBoxScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates a combobox gadget in the current screen or screen window.
    • ContainerScreenGadget(#ScreenGadget, x, y, Width, Height, [, Flags]) ; Creates a container gadget in the current screen or screen window.
    • DisableScreenGadget(#ScreenGadget) ; Disables or enables the #ScreenGadget.
    • DisableScreenWindow(#ScreenWindow, State) ; Disable or enable all user input in the window.
    • EditorScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates an editor gadget in the current screen or screen window.
    • EventScreenGadget() ; Returns the screen gadget number (#ScreenGagdet) which triggered the event.
    • FreeScreenGadget(#ScreenGadget) ; Frees the specified screen gadget
    • GetScreenGadgetState(#ScreenGadget) ; Gets the state of the #ScreenGadget.
    • GetScreenGadgetText(#ScreenGadget) ; Gets the text of the #ScreenGadget.
    • HideScreenGadget(#ScreenGadget) ; Hides or shows the specified screen gadget.
    • HideScreenWindow(#ScreenWindow, State) ; Hide or show the specified #ScreenWindow.
    • ImageScreenGadget(#ScreenGadget, x, y, Width, Height, ImageID [, Flags]) ; Creates a image gadget in the current screen or screen window.
    • InitScreenGadgets() ; Intialize the screen gadget library for the current screen.
    • IsScreenGadget(#ScreenGadget) ; Tests if the given screen gadget is a valid screen gadget object.
    • ListViewScreenGadget(#ScreenGadget, x, y, Width, Height [, Flags]) ; Creates a listview gadget in the current screen or screen window.
    • OpenScreenGadgetList(#ScreenGadget [, GadgetItem]) ; Makes the #ScreenGadget the current screen gadget list.
    • OpenScreenWindow(#ScreenWindow, x, y, Width, Height [Title$ [, Flags]]) ; Open a new window on the current screen.
    • OptionScreenGadget(#ScreenGadget, x, y, Width, Height, Text$) ; Creates an option gadget in the current screen or screen window.
    • PanelScreenGadget(#ScreenGadget, x, y, Width, Height) ; Create a panel gadget in the current screen or screen window.
    • ProgressBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max [, Flags]) ; Creates a progressbar gadget in the current screen or screen window.
    • RemoveScreenGadgetItem(#ScreenGadget, Position, Text$) ; Removes the item at the specified position from the #ScreenGadget.
    • RenderScreenGadgets() ; Renders the screen window and gadgets on the current screen.
    • ResizeScreenGadget(#ScreenGadget, x, y, Width, Height) ; Moves and resizes the specified #ScreenGadget to the given position and dimensions.
    • ResizeScreenWindow(#ScreenWindow, x, y, Width, Height) ; Moves and resizes the specified #ScreenWindow to the given position and dimensions.
    • ScreenEventType() ; After ScreenWindowEvent(), use this function to determine of which type the event is.
    • ScreenGadgetHeight(#ScreenGadget) ; Returns the height of the #ScreenGadget, in pixels.
    • ScreenGadgetSkin(SkinPart, #Image [, FreePrevious]) ; Set an image for a specific skin part.
    • ScreenGadgetType(#ScreenGadget) ; Returns the type of the specified #ScreenGadget.
    • ScreenGadgetWidth(#ScreenGadget) ; Returns the width of the #ScreenGadget, in pixels.
    • ScreenGadgetX(#ScreenGadget) ; Returns the X position of the #ScreenGadget, in pixels.
    • ScreenGadgetY(#ScreenGadget) ; Returns the Y position of the #ScreenGadget, in pixels.
    • ScreenWindowAnimation(#ScreenWindow, Way, Duration, [, Fading [, Zoom, [x, [y, [, Angle]]]]) ; Setup an animation to open the window.
    • ScreenWindowEvent() ; Check if an event has occurred on any of the opened screen windows.
    • ScrollAreaScreenGadget(#ScreenGadget, x, y, Width, Height, ScrollAreaWidth, ScrollAreaHeight, ScrollStep [, Flags]) ; Creates a scrollarea gadget in the current screen or screen window.
    • ScrollBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max, PageLength [, Flags]) ; Creates a scrollbar gadget in the current screen or screen window.
    • SetScreenGadgetFont(#ScreenGadget, FontID) ; Changes the font which will be used by newly created gadgets.
    • SetScreenGadgetState(#ScreenGadget, State) ; Changes the state of the #ScreenGadget.
    • SetScreenGadgetText(#ScreenGadget, Text$) ; Changes the text of the #ScreenGadget.
    • SplitterScreenGadget(#ScreenGadget, x, y, Width, Height, #ScreenGadget1, #ScreenGadget2 [, Flags]) ; Creates a splitter gadget in the current screen or screen window.
    • StringScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a string gadget in the current screen or screen window.
    • TextScreenGadget(#ScreenGadget, x, y, Width, Height, Text$ [, Flags]) ; Creates a text gadget in the current screen or screen window.
    • TrackBarScreenGadget(#ScreenGadget, x, y, Width, Height, Min, Max [, Flags]) ; Creates a trackbar gadget in the current screen or screen window.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  6. #6
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 316
    Billets dans le blog
    8
    Par défaut PureBasic 6.30 beta 4 est disponible sur votre compte
    2025-10-24: beta 4 is out, mostly for bug fixes.

    • Switched to hidraw backend for HID lib on Linux/Raspberry
    • Added: #PB_Menu_Services, #PB_Menu_Hide, #PB_Menu_HideOthers and #PB_Menu_ShowAll constants on macOS to allow to localize the system menu easily
    • Added: Automatic localization of system dialogs and toolbars on macOS to the current system language
    Liste des bugs corrigés
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

Discussions similaires

  1. PureBasic 6.20 beta 1 est disponible sur votre compte
    Par comtois dans le forum PureBasic
    Réponses: 5
    Dernier message: 13/02/2025, 12h45
  2. PureBasic 5.60 beta 1 est disponible sur votre compte
    Par comtois dans le forum PureBasic
    Réponses: 3
    Dernier message: 08/02/2017, 09h37
  3. PureBasic 5.40 beta 1 est disponible sur votre compte
    Par comtois dans le forum PureBasic
    Réponses: 9
    Dernier message: 12/10/2015, 19h00
  4. PureBasic 5.20 bêta 1 est disponible sur votre compte
    Par comtois dans le forum PureBasic
    Réponses: 21
    Dernier message: 15/09/2013, 13h10
  5. PureBasic 5.11 beta 1 est disponible sur votre compte
    Par comtois dans le forum PureBasic
    Réponses: 2
    Dernier message: 13/03/2013, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo