Page 1 of 6

PureBasic 3.93 beta 3 for Windows released

Posted: Wed Feb 16, 2005 12:26 am
by Fred
Hi there !

This is the first public beta of the heavily bug fixed v3.93 so feel free to get it and test it as much as you can as lot of code have been changed. If you report a bug, be sure it's a bug, don't make us cry for nothing ;). So basically it includes several cool new commands (the Sort series..) and some commands have been enhanced to be more functionnal. Else, a lot of fixes, just see by yourself:

Code: Select all

  - Added: SortStructuredArray(), SortList(), SortStructuredList()
  - Added: Conditional directives to LibraryMaker
  - Added: KeyboardMode() (wasn't in the doc)
  - Added: Optional 'Color' parameter for ColorRequester() and FontRequester()
  - Added: SetGadgetText() can now be used on an editable ComboBoxGadget()
  - Added: #PB_Default support to ClipSprite() to remove the clipping
  - Added: Base64Decoder()
  - Added: Event when a splitter is moved or resized so the children can be agenced
  - Added: Realtime debugger check for Plot(x,y,Color) with ScreenOutput() and SpriteOutput()
  - Added: Debugger check to DirectoryEntrySize/Name/Attributes()
  - Added: IDE enhancements by Tinman
  
  - Optimized: Debugger mode is smaller and allow big structured variables
  - Optimized: Splitted Misc library
  - Optimized: Faster Base64Encoder() function
  - Optimized: Better code generation for string assignement and concatenation
  
  - Fixed: A bug in ImageGadget() with XP skin activated and 32 bits bitmaps
  - Fixed: ExplorerListGadget() didn't displayed .ico and .lnk files correctly
  - Fixed: ButtonImageGadget() was loosing its picture in rare case with XP skins
  - Fixed: No more 'ding' (windows sound) on click in fullscreen when ExamineMouse() wasn't used
  - Fixed: When using ALT+TAB with a fullscreen application, the icon is correctly displayed
  - Fixed: Sprites are now correctly restored when switching back from multitask
  - Fixed: CopyDirectory() modified the input string in some case
  - Fixed: ListIndex() was broken in some rare cases
  - Fixed: RemoveString() and CRC32FingerPrint() couldn't be used in expressions
  - Fixed: SetGadgetItemText() was broken for ListView() gadget
  - Fixed: ExamineDirectory() with an uninitialized string variable
  - Fixed: CalendarGadget() bug when multiple calendars were initialized on the same window
  - Fixed: RSet() returned wrong result in some rare cases
  - Fixed: CreateFile() failed on hidden files
  - Fixed: ZeroMemory_(), FillMemory_(), MoveMemory_() and CopyMemory_() wasn't recognized
  - Fixed: #PB_Event_MoveWindow is now correctly recognized
  - Fixed: #PB_EventType_LostFocus wasn't sent if 2 stringgadgets were side by side.
  - Fixed: Gadget's tooltips wasn't correctly displayed on NT4 when the window was always on top
  - Fixed: OGG Plugin wasn't working anymore and sometimes songs were cut. It's also faster to decode.
  - Fixed: ResizeImage() doesn't change the image anymore if the same dimensions are used.
  - Fixed: TAB in an EditorGadget() doesn't give the focus to others gadgets anymore but insert a Tab
  - Fixed: LCase() didn't handled the 'ß' german character correctly
  - Fixed: SetGadgetState() wasn't working correctly for OptionGadget()
  - Fixed: Debugger's code listing window dimensions are now saved like other windows
  - Fixed: EditorGadget() while using AddGadgetItem() with blank strings and -1 position
  - Fixed: SortArray() could crash on big already sorted arrays and is now thread safe
  - Fixed: ReceiveNetworkFile() didn't handle long filename correctly
  - Fixed: Display issues with ButtonImageGadget() and toogle mode (with API)
  - Fixed: SpriteWidth() and SpriteHeight() returned wrong values when ClipSprite() was used
  - Fixed: MessageRequester() over a console window sent the console window to the back
  - Fixed: SetGadgetState() for ListIconGadget() stealed the current focus
  - Fixed: Base64Encoder() produced wrong output sometimes
  - Fixed: Refresh problem with Frame3DGadget() and #PB_Frame3D_Single/Double flags
  - Fixed: GDI resource leak in ButtonImageGadget() and ImageGadget()
  - Fixed: RotateSprite3D was using a wrong angle
  - Fixed: DisableMenuItem() didn't work with #PB_Any
  - Fixed: GadgetWidth() didn't work correctly for SpinGadget()
  - Fixed: Several compiler bugs (string concatenation, interfaces in procedures)
You can grab it on your personnal account.

Have fun ! 8)

The Purebasic team.

Posted: Wed Feb 16, 2005 12:34 am
by Sparkie
Thanks Fred :) Your hard work and dedication is very much appreciated :!:

Posted: Wed Feb 16, 2005 1:06 am
by SR-Games
:shock: WOW! Thank you, Fred for all of the hard work!

Posted: Wed Feb 16, 2005 1:23 am
by benny
I just read all new posts ... and I saw that a lot of bugs which has been
reported months ago are fixed with this release :!:
This is very promising for the future as Fred is working full-time
on PB right now.

Thanks Fred and the crew for all your hard work and dedication :!:

Posted: Wed Feb 16, 2005 1:26 am
by blueznl
is this one with the readbyte() fix?

Posted: Wed Feb 16, 2005 1:32 am
by Kale
Added: SortStructuredArray(), SortList(), SortStructuredList()
Absolutely awesome!!! but how to use the new commands??? there not documented anywhere. :?

Posted: Wed Feb 16, 2005 2:27 am
by Fred
Blueznl: if you mean Chr(ReadByte()) yes it's fixed

Kale: take a look here, it show a double sortlist : http://rafb.net/paste/results/e9UBfW59.html

Basically, you can look at the QuickHelp in the statusbar. For the Type, it's these values (constants will be added of course):
1: Byte
3: Word
5: Long
8: String
9: Float

That's it ;)

Great work!

Posted: Wed Feb 16, 2005 5:50 am
by npath
I just recently discovered PureBasic. Fred, you have created a remarkable Basic programming language. I am proud to support your team. Keep up the great work.

npath

Posted: Wed Feb 16, 2005 9:46 am
by Jimbo_H
Thank you Fred! You're keeping a lot of people very happy here :D

Regards,
Jim

Posted: Wed Feb 16, 2005 10:48 am
by gnozal
- Fixed: Base64Encoder() produced wrong output sometimes
Does this mean that Base64Encoder() returns the encoded string length correctly now ?
- Added: Base64Decoder()
Thanks, now I can forget my own slow (not asm) function
- Optimized: Faster Base64Encoder() function
Thanks, so my PureSMTP lib will be faster :D

Posted: Wed Feb 16, 2005 10:58 am
by Kale
Kale: take a look here, it show a double sortlist : http://rafb.net/paste/results/e9UBfW59.html

Basically, you can look at the QuickHelp in the statusbar. For the Type, it's these values (constants will be added of course):
1: Byte
3: Word
5: Long
8: String
9: Float
Simply Awesome!!! :shock: this and the base64decode() is fanatasic just by themselves!!!!! thanks Fred!

Posted: Wed Feb 16, 2005 11:35 am
by Psychophanta
mmmm... :D

Finally lots of corrected things, optimizations and addings :shock: :!: :D :D :D

Re: PureBasic 3.93 beta 1 for Windows released

Posted: Wed Feb 16, 2005 11:37 am
by PB
> Fixed: A bug in ImageGadget() with XP skin activated and 32 bits bitmaps

Hmm, not quite... :) If XP skin support is turned ON and I draw an image to
an ImageGadget, then the missing parts of the image are not transparent, if
you know what I mean? If I turn XP skin support OFF then I can see through
the missing parts of the image to the window background, which is the desired
effect. Version 3.92 used to do this, but v3.93 beta 1 doesn't anymore. Here's
an example screenshot with XP skins off and on:

Image

Also, my ImageGadget is on a PanelGadget, and with XP skin support both
ON and OFF the ImageGadget isn't visible -- you need to switch to another
tab first and then back again to make it become visible. v3.92 didn't do this.
This is my fix: InvalidateRect_(GadgetID(#MyImageGadget),0,#True)

Re: PureBasic 3.93 beta 1 for Windows released

Posted: Wed Feb 16, 2005 12:38 pm
by NoahPhense
Is it ok that I still use build 1361 of the VD. Or has anything changed in
the 1360 build?

http://www.purebasic.be/download.htm


**edit**

OMG.. a compile and run button... ah, life will now be 2 clicks quicker.


- np

Posted: Wed Feb 16, 2005 4:39 pm
by fsw
benny wrote:I just read all new posts ... and I saw that a lot of bugs which has been
reported months ago are fixed with this release :!:
This is very promising for the future as Fred is working full-time
on PB right now.

Thanks Fred and the crew for all your hard work and dedication :!:
I second that :D