A long list
Posted: Fri Jul 23, 2004 9:24 pm
I read the manual, i a create a little list full of suggestions:
* New Variable-Types!
LongLongs .ll, Double .d, Unsigned .ub, .uw, .ul, .ull
* DefType.w VariableName
Maybe a alias "Var.w VariableName" is usefull
* ReDim Name.Typ()
Same as dim, but don't clear the array
* Protected
I know this command as "Local". Maybe a alias is usefull
* DrawText([x,y,]Text$[,color[,FontId])
* GetDrawingFont() is missing
* GetBackColor() is missing
* GetDrawingMode() is missing
* GetFrontColor() is missing
* LineTo(x,y[,color]) - Draw a line from the last point (Line/LineXY/Plot/Locate)
* BackColor(R,G,B) or Backcolor(RGB)
* FrontColor(R,G,B) or FrontColor(RGB)
* FillArea(x,y,StopColor[,FillColor])
When Stopcolor=-1 the fill command should stop on any color which is diffrent the color under the start-point. (like every Fill-Command in any Paint-Program)
* TextHeight(Text$) is missing
* CDAudioLength([CDId])
* CDAudioName([CDid])
* CDAudioStatus([CDId]) - btw. why not called CDAudioState()?
* CDAudioTrackLength([CDId,]TrackNumber)
* CDAudioTrackSeconds([CDId])
* CDAudioTracks([CDId])
* EjectCDAudio([CDID,]Status)
* PauseCDAudio([CDId])
* PlayCDAudio([CDId,]StartTrack,EndTrack)
* ResumeCDAudio([CDID])
* StopCDAudio([CDiD])
* GetCurrentCDAudio() id missing
* FileSeek([#File,]NewPos)
* Loc([#File])
* Lof([#File])
* ReadByte([#File])
* ReadData([#File,]*Membuffer,Length)
* ReadFloat([#File])
* ReadLong([#File])
* ReadString([#File])
* ReadWord([#File])
* GetCurrentFile() is missing
* WriteByte([#File,]Byte)
* WriteData([#File,]*Membuffer,Length)
* WriteFloat([#File,]Float)
* WriteString([#File,]String)
* WriteStringN([#File,]StringN)
* WriteWord([#File,]Word)
* DirectoryEntryAttributes([#Dir])
* DirectoryEntryName([#Dir])
* DirectoryEntrySize([#Dir])
* DirectoryEntryDate([#Dir]) is missing
* GetFileDate(File$) is missing
* SetFileDate(File$,Date) is missing
* GetFileAttribute(File$) is missing
* SetFileAttribute(File$,Attribute) is missing
(And the Constants: #PB_FileAttribute_Archive/Hidden/ReadOnly/System/Directory)
* GetCurrentDirectory() is missing
* NextDirectoryEntry([#Dir])
* FontId([#Font])
* GetCurrentFont() is missing
* CheckBoxGadget()
I miss a flag (#PB_CheckBox_Set)
* EditorGadget(#Gadget, x, y, width, Height[,text$])
* GetGadgetAttribute()
I miss a #PB_Gadget_Hidden, #PB_Gadget_Active, #PB_Gadget_Disabled
* OptionGadget(#Gadget, x, y, width, height, Text$[,flag])
I miss a flag #PB_OptionGadget_Set)
* ProgressBarGadget(#Gadget, x, y, Breite, Höhe, Minimum, Maximum [,State, Flags])
* CaptureImage(#Image,x,y,w,h) - Grab from StartDrawing()
* ImageDepth([#Image])
* ImageHeight([#Image])
* ImageID([#Image])
* ImageOutput([#Image])
* ImageWidth([#Image])
* GetCurrentImage() is missing
* UseGifImageDecode/Encoder is missing(Gif is free! No patents in japan,europe and USA any more!)
* ExamineJoystick() - Return the count of allwayable Joysticks (and please-support of more than on Joysticks!)
* JoystickAxis(#Joy,Axis) is missing
And the Constants #PB_Joystic_AxisX/AxisY/AxisU/AxisV/AxisR/AxisZ)
* JoystickAvaiableAxis(#Joy) is missing
* JoystickAxisX([#Joy])
* JoystickAxisY([#Joy])
* JoyStickButtons([#Joy])
* JoyStickAvailableButtons(#Joy) is missing
* JoystickMapButtons(#Joy) - Return a long, Bit0=first button, Bit1=second button ...
* LibraryFunctionAddress([#Lib])
* LibraryFunctionName([#lib])
* NextLibtatyFunction([#lib])
Compiler-Commands:
DEG - Set all the cos/sin... to degre
RAD - Set all the cos/sin... to radiant
* PokeB,PokeL,PokeW,PokeS ... Other Basic-Dialekts know this as Poke(byte),LPoke,WPoke,...
* DisableMenuItem([#Menu,]Menuitem,Sate)
* DisplayPopupMenu(#Menu, WindowID [, x, y[,flag]])
Flag: #PB_DisplayPopupmenu_left/centre/right/up/down/mid)
* MenuHeight() - Don't take care, when a window is too small and the menu is two/three-lines
* SetMenuItemState()
Enable Always a Item, when it is disabled before!
* GetParentPathPart(Path$) is missing. "C:\test\test2\File.txt" should return "C:\Test\"
* ProgramParameter([#Index])
* ProgramParameterCount() is missing
* ProgramParameterComplete() - Complete String
* RandomF() is missing (return a float betwen 0 and 1 (without 1!)). Other Dialekt know this as RND()
* RandomSeed() is also known als "Randomize"
* RunProgram()
I miss: #PB_RunProgram_Hide,#PB_RunProgram_Wait
* MouseButton(#Button)
I miss: #PB_MouseButton_Left,#PB_MouseButton_Right,#PB_MouseButton_Centre
* MouseAvailableButtons() is missing
* GetErrorLineNR()
Return 0 for the first line (and IDE start with 1)
* AddPackTagData(*Data,Length) is missing
Add addition Data (unpacked!) in the File. With this command it is possible to store addition Information, like filenames...
* AddPackTagString(String)
A string should be store this way
Structure
Length.l
String.s
Endstructure
* AddPackTagByte/Word/Long...
* GetPackTagData/Byte/Word/Long/String is missing
* ColorRequester([StartColor[,*ColorTable[,flag]]])
Structure ColorTable
rgb.l[16]
EndStructure
#PB_ColorRequester_Extended
* InputRequester()
I miss a cancel-Button
* MessageRequester
I miss the "Return"-Constants #PB_MessageRequester_Yes,#PB_MessageRequester_No,#PB_MessageRequester_Cancel
* CloneSound(#NewSound,#OriginalSound) is missing
Make a "Clone" of a sound, so it is possible to load one sound and can it play more than on time at the same time (for example a long lase-shoot-sound) and with diffrent Pans,etc.
* GetSoundFrequency(#Sound) is missing
* GetSoundPan(#Sound) is missing
* GetSoundVolume(#Sound) is missing
* GetSoundLength(#Sound) is missing (in relationship with the Frequency)
* ChangeAlpaIntensity(r,g,b) and ChangeAlpaIntensity(RGB)
* ChangeGamma(R, G, B, Flags) and ChangeGamma(RGB, Flags)
* ClearScreen(r,g,b) and ClearScreen(RGB)
* ScreenClip(x,y,width,height)
All Spritecommands are cliped in this box of the screen. a ScreenClip(0,0,-1,-1) should set it to the maximum.
(It would be nice, when Sprite3D is also affect by this command)
* VAL() should support $123 and %100101
*DisableWindow(#Window,flag) is missing
*MaximizeWindow(#Window,flag) #true=maximize, #flaze=normal
*MinimizeWindow(#Window,flag) is missing
*IsMaximizeWindow(#window) is missing
*IsMinimizeWindow(#Window) is missing
*ActivateWindow([#Window])
*DetachMenu([#window])
*EventWindowID() - Name is wrong, better would be EventWindow() (for backward compatibility: take both! and in the manual/Calltip(IDE) only EventWindow())
*IsWindowHidden([#window]) is missing
*ISWindowDisable([#window]) is missing
*GetCurrentWindow() is missing
* Space(): Other Dialekt know this as SPC()
* inSTR([Startpos,]String,SearchString) same as StringField)
* Mirror$(String) is missing
* LCase() is also known as Lower()
* UCase() is also knwon as Upper()
Complete Miss of StreamSound() for Oggs (PlaySound load the complete sound in memory, for Background music it would be usefull, when not the comple sound is loaded. I know, that this is possible with the Movie-Lib, but this is original for movies...) Maybe this command should support .OGG,.Mid; maybe a combination with the modul-lib?
InitStreamSound()
LoadStreamSound(#StreamSound,Filename) - of course, don't load (ok, maybe init buffer)!
PlayStreamSound(#StreamSound[,flag])
PauseStreamSound(#StreamSound,flag) ;#true=pause #flase=unpause
SeekStreamSound(#StreamSound); Set Playposition
GetStreamSoundPosition(#StreamSound)
SetStreamSoundSpeed(#Streamsound,Speed); 100=normal 200=Double...
GetStreamSoundSpeed(#StreamSound)
FreeStreamSound(#StreamSound)
StremSoundState(#Streamsound)
#PB_StreamSound_Stop,#pb_StreamSound_Pause
StopStreamSound(#StreamSound) ;-1 stop all sounds
* Thread-Communication-Commands would be nice (to prevent problems like strings)
SendThreadMessage(ThreadId,Message,Param)
ThreadMessage()/WaitThreadMessage()
ThreadMessageFrom()
* New Variable-Types!
LongLongs .ll, Double .d, Unsigned .ub, .uw, .ul, .ull
* DefType.w VariableName
Maybe a alias "Var.w VariableName" is usefull
* ReDim Name.Typ()
Same as dim, but don't clear the array
* Protected
I know this command as "Local". Maybe a alias is usefull
* DrawText([x,y,]Text$[,color[,FontId])
* GetDrawingFont() is missing
* GetBackColor() is missing
* GetDrawingMode() is missing
* GetFrontColor() is missing
* LineTo(x,y[,color]) - Draw a line from the last point (Line/LineXY/Plot/Locate)
* BackColor(R,G,B) or Backcolor(RGB)
* FrontColor(R,G,B) or FrontColor(RGB)
* FillArea(x,y,StopColor[,FillColor])
When Stopcolor=-1 the fill command should stop on any color which is diffrent the color under the start-point. (like every Fill-Command in any Paint-Program)
* TextHeight(Text$) is missing
* CDAudioLength([CDId])
* CDAudioName([CDid])
* CDAudioStatus([CDId]) - btw. why not called CDAudioState()?
* CDAudioTrackLength([CDId,]TrackNumber)
* CDAudioTrackSeconds([CDId])
* CDAudioTracks([CDId])
* EjectCDAudio([CDID,]Status)
* PauseCDAudio([CDId])
* PlayCDAudio([CDId,]StartTrack,EndTrack)
* ResumeCDAudio([CDID])
* StopCDAudio([CDiD])
* GetCurrentCDAudio() id missing
* FileSeek([#File,]NewPos)
* Loc([#File])
* Lof([#File])
* ReadByte([#File])
* ReadData([#File,]*Membuffer,Length)
* ReadFloat([#File])
* ReadLong([#File])
* ReadString([#File])
* ReadWord([#File])
* GetCurrentFile() is missing
* WriteByte([#File,]Byte)
* WriteData([#File,]*Membuffer,Length)
* WriteFloat([#File,]Float)
* WriteString([#File,]String)
* WriteStringN([#File,]StringN)
* WriteWord([#File,]Word)
* DirectoryEntryAttributes([#Dir])
* DirectoryEntryName([#Dir])
* DirectoryEntrySize([#Dir])
* DirectoryEntryDate([#Dir]) is missing
* GetFileDate(File$) is missing
* SetFileDate(File$,Date) is missing
* GetFileAttribute(File$) is missing
* SetFileAttribute(File$,Attribute) is missing
(And the Constants: #PB_FileAttribute_Archive/Hidden/ReadOnly/System/Directory)
* GetCurrentDirectory() is missing
* NextDirectoryEntry([#Dir])
* FontId([#Font])
* GetCurrentFont() is missing
* CheckBoxGadget()
I miss a flag (#PB_CheckBox_Set)
* EditorGadget(#Gadget, x, y, width, Height[,text$])
* GetGadgetAttribute()
I miss a #PB_Gadget_Hidden, #PB_Gadget_Active, #PB_Gadget_Disabled
* OptionGadget(#Gadget, x, y, width, height, Text$[,flag])
I miss a flag #PB_OptionGadget_Set)
* ProgressBarGadget(#Gadget, x, y, Breite, Höhe, Minimum, Maximum [,State, Flags])
* CaptureImage(#Image,x,y,w,h) - Grab from StartDrawing()
* ImageDepth([#Image])
* ImageHeight([#Image])
* ImageID([#Image])
* ImageOutput([#Image])
* ImageWidth([#Image])
* GetCurrentImage() is missing
* UseGifImageDecode/Encoder is missing(Gif is free! No patents in japan,europe and USA any more!)
* ExamineJoystick() - Return the count of allwayable Joysticks (and please-support of more than on Joysticks!)
* JoystickAxis(#Joy,Axis) is missing
And the Constants #PB_Joystic_AxisX/AxisY/AxisU/AxisV/AxisR/AxisZ)
* JoystickAvaiableAxis(#Joy) is missing
* JoystickAxisX([#Joy])
* JoystickAxisY([#Joy])
* JoyStickButtons([#Joy])
* JoyStickAvailableButtons(#Joy) is missing
* JoystickMapButtons(#Joy) - Return a long, Bit0=first button, Bit1=second button ...
* LibraryFunctionAddress([#Lib])
* LibraryFunctionName([#lib])
* NextLibtatyFunction([#lib])
Compiler-Commands:
DEG - Set all the cos/sin... to degre
RAD - Set all the cos/sin... to radiant
* PokeB,PokeL,PokeW,PokeS ... Other Basic-Dialekts know this as Poke(byte),LPoke,WPoke,...
* DisableMenuItem([#Menu,]Menuitem,Sate)
* DisplayPopupMenu(#Menu, WindowID [, x, y[,flag]])
Flag: #PB_DisplayPopupmenu_left/centre/right/up/down/mid)
* MenuHeight() - Don't take care, when a window is too small and the menu is two/three-lines
* SetMenuItemState()
Enable Always a Item, when it is disabled before!
* GetParentPathPart(Path$) is missing. "C:\test\test2\File.txt" should return "C:\Test\"
* ProgramParameter([#Index])
* ProgramParameterCount() is missing
* ProgramParameterComplete() - Complete String
* RandomF() is missing (return a float betwen 0 and 1 (without 1!)). Other Dialekt know this as RND()
* RandomSeed() is also known als "Randomize"
* RunProgram()
I miss: #PB_RunProgram_Hide,#PB_RunProgram_Wait
* MouseButton(#Button)
I miss: #PB_MouseButton_Left,#PB_MouseButton_Right,#PB_MouseButton_Centre
* MouseAvailableButtons() is missing
* GetErrorLineNR()
Return 0 for the first line (and IDE start with 1)
* AddPackTagData(*Data,Length) is missing
Add addition Data (unpacked!) in the File. With this command it is possible to store addition Information, like filenames...
* AddPackTagString(String)
A string should be store this way
Structure
Length.l
String.s
Endstructure
* AddPackTagByte/Word/Long...
* GetPackTagData/Byte/Word/Long/String is missing
* ColorRequester([StartColor[,*ColorTable[,flag]]])
Structure ColorTable
rgb.l[16]
EndStructure
#PB_ColorRequester_Extended
* InputRequester()
I miss a cancel-Button
* MessageRequester
I miss the "Return"-Constants #PB_MessageRequester_Yes,#PB_MessageRequester_No,#PB_MessageRequester_Cancel
* CloneSound(#NewSound,#OriginalSound) is missing
Make a "Clone" of a sound, so it is possible to load one sound and can it play more than on time at the same time (for example a long lase-shoot-sound) and with diffrent Pans,etc.
* GetSoundFrequency(#Sound) is missing
* GetSoundPan(#Sound) is missing
* GetSoundVolume(#Sound) is missing
* GetSoundLength(#Sound) is missing (in relationship with the Frequency)
* ChangeAlpaIntensity(r,g,b) and ChangeAlpaIntensity(RGB)
* ChangeGamma(R, G, B, Flags) and ChangeGamma(RGB, Flags)
* ClearScreen(r,g,b) and ClearScreen(RGB)
* ScreenClip(x,y,width,height)
All Spritecommands are cliped in this box of the screen. a ScreenClip(0,0,-1,-1) should set it to the maximum.
(It would be nice, when Sprite3D is also affect by this command)
* VAL() should support $123 and %100101
*DisableWindow(#Window,flag) is missing
*MaximizeWindow(#Window,flag) #true=maximize, #flaze=normal
*MinimizeWindow(#Window,flag) is missing
*IsMaximizeWindow(#window) is missing
*IsMinimizeWindow(#Window) is missing
*ActivateWindow([#Window])
*DetachMenu([#window])
*EventWindowID() - Name is wrong, better would be EventWindow() (for backward compatibility: take both! and in the manual/Calltip(IDE) only EventWindow())
*IsWindowHidden([#window]) is missing
*ISWindowDisable([#window]) is missing
*GetCurrentWindow() is missing
* Space(): Other Dialekt know this as SPC()
* inSTR([Startpos,]String,SearchString) same as StringField)
* Mirror$(String) is missing
* LCase() is also known as Lower()
* UCase() is also knwon as Upper()
Complete Miss of StreamSound() for Oggs (PlaySound load the complete sound in memory, for Background music it would be usefull, when not the comple sound is loaded. I know, that this is possible with the Movie-Lib, but this is original for movies...) Maybe this command should support .OGG,.Mid; maybe a combination with the modul-lib?
InitStreamSound()
LoadStreamSound(#StreamSound,Filename) - of course, don't load (ok, maybe init buffer)!
PlayStreamSound(#StreamSound[,flag])
PauseStreamSound(#StreamSound,flag) ;#true=pause #flase=unpause
SeekStreamSound(#StreamSound); Set Playposition
GetStreamSoundPosition(#StreamSound)
SetStreamSoundSpeed(#Streamsound,Speed); 100=normal 200=Double...
GetStreamSoundSpeed(#StreamSound)
FreeStreamSound(#StreamSound)
StremSoundState(#Streamsound)
#PB_StreamSound_Stop,#pb_StreamSound_Pause
StopStreamSound(#StreamSound) ;-1 stop all sounds
* Thread-Communication-Commands would be nice (to prevent problems like strings)
SendThreadMessage(ThreadId,Message,Param)
ThreadMessage()/WaitThreadMessage()
ThreadMessageFrom()