|
|
|
Why should I
upgrade?
to PowerBASIC 10 For Windows
|
|
|
There
are plenty of reasons to upgrade to the PowerBASIC 10.0
Compiler for Windows. PowerBASIC 10.0 for Windows adds much in
the way of new functionality.
|
|
|
Unicode Support
Mix Unicode and ANSI in the same program. Convert strings to and from OEM, Unicode, ANSI, and UTF-8. Display Unicode characters. Print Unicode characters. Read and write to Unicode files. Conversions from Unicode and ANSI are automatic. You can even select to have a complete Unicode emulation package in your executable or DLL to allow it to run properly on Windows 95, 98, and ME or select to have the runtime only use ANSI API routines.
|
Resources
You can add resource data inline, right in your BASIC source code. There is no need to create a resource file, compile it, and then link it into your source. All this done automatically. Add bitmaps, icons, manifests, strings, type libraries, wave files, version information, and even binary data (RCDATA). Of course, .RC, .PBR, and .RES files are still supported. The inline resource support simplifies adding resources to your program or DLL.
|
Static Link Libraries
Static Link Libraries (SLLs) consist of a set of Classes, Subs, and Functions that are compiled into a machine-code library. A SLL is the perfect vehicle for third-party code, because it creates a single final module that does not require source code to be distributed. It allows you to create a group of your own libraries that you know function correctly and don't require any further debugging. It also offers big advantages to larger group programming projects to control distribution of various elements. Multiple SLL modules may be collected into a Power Library, which is linked as a single item. Creating an SLL could not be easier. All it takes is a single #COMPILE SLL at the top of your module source code. When you wish to use the SLL code in a host program, you simply use #LINK "MyLib.SLL" and the contents are automatically embedded in the new .EXE or .DLL. It's just that simple.
|
Graphics
The built in graphics engine has been expanded to support virtual graphic windows and controls, clipping regions, scrolling text, text wrapping, and much more! Create a virtual graphic control or window that displays the contents of a larger virtual window. Scroll bars are added so the user can move the viewport to the desired section. There is even an option to allow the user to "drag" the edges of a graphic window to a new size. Graphic controls can now be resized. Graphic windows can be made noncloseable by the user. Work with rows and columns in a graphic window or control, similar to the DOS or Console LOCATE statement. GRAPHIC PRINT now supports POS(n), SPC(n), and TAB(n) functions for even more control over printing text. There's even a new Text window specially designed for text display and input, just like a Console window, but more attractive.
|
Dynamic
Dialog
Tools
Dynamic Dialog Tools (DDT) has been expanded with CONTROL ADD HEADER and the HEADER statement for adding and manipulating a Header control. LISTVIEW GET HEADERID has been added to retrieve the handle and ID of the header in a ListView for advanced handling of the header control. Make dialogs and graphic windows unclosable. Show and hide dialogs and controls. Improved support for menus. Floating context menus are now supported. Improved Tab control support. The METRICS function retrieves information or dimensions of system elements. Get the width and height of different types of borders, scrollbars, minimum and maximum window sizes, and more!
|
Threads
Creating multi-threaded applications is easier than ever! The built-in THREAD object that offers a collection of methods which allow you to easily create and maintain additional threads of execution in your programs. Functions, Subroutines, Methods, and Properties can even be marked as THREADSAFE. When a procedure is declared THREADSAFE, PowerBASIC automatically establishes a semaphore which allows only one thread to execute it at a time. Others must wait until the first thread exits the THREADSAFE procedure before they are allowed to begin. This is important to protect global data (global, threaded, static, and instance variables) from corruption by interaction of the threads.
|
Optimization
#OPTIMIZE has been expanded with #OPTIMIZE CODE. Any unreferenced code will be removed from the compiled program to minimize the executable file size.
String handling routines
have been dramatically improved in performance.
We have added a STRINGBUILDER object for high performance string concatenation. Of course, you can still use BUILD$ to concatenate strings with high efficiency. There
has been an improvement in graphic execution speed. Use #ALIGN
metastatement to gain ultimate efficiency from critical code sections. Then
there's #OPTIMIZE SIZE and #OPTIMIZE SPEED to choose between faster execution or
smaller code size.
|
Printing
The built in GDI printer
engine has been expanded. Use XPRINT PREVIEW to display a replica of a printed document on the screen. Set a clipping region. Wrap text on the printed page. Work with rows and columns on the host printer. XPRINT PRINT now supports POS(n), SPC(n), and TAB(n) functions for even more control over printing text. Limit a print job by set and retreiving the page number limits and selection flag from the Print Dialog which is displayed when XPRINT ATTACH CHOOSE is executed. Many of the XPRINT statements now have a similar function form for use in expressions. And more!
|
IDE
Numerous improvements in
the IDE have been made. The IDE is now based on tabs rather than MDI children. Up to 36 bookmarks are now supported. Improved undo handling. Quick context-sensitive syntax help is shown on the status bar. Find/Replace can now be set to wrap around the file. Project files have been enhanced to support a list of files, their scrolling position and caret position, a primary file, the active tab, breakpoints, bookmarks, and the debug Watch list. Backup files can now be created with a timestamp, numbered from 0 to 99, or even no backup file if you prefer. There's Print Preview and the new #PAGE metastatement for inserting a page break when printing from the IDE. Improved template files. The Open File dialog for source files now allows selecting multiple files at a time. And much more!
|
Miscellaneous
A new equate %PB_COMPILETIME contains the date and time of compilation. ASMDATA/END ASMDATA statements define a block where primitive read-only data is stored. The new PowerARRAY object encapsulates the Windows SAFEARRAY structure. A PowerARRAY is perfect for sharing arrays between processes and COM Servers. A PowerTime Object contains a date and time value, allowing easy calculations. We have added Collections, PowerCollections, LinkList and Stack Collections. A Power Collection creates a set of data items, each of which is associated with an alphanumeric key. A Linked List Collection is an ordered set of data items, which are accessed by their position in the list rather than by an alphanumeric key. A Stack Collection is an ordered set of data items, which are accessed on a LIFO (Last-In / First-Out) basis. And much more!
|
|
|
The complete documentation for PowerBASIC 10.0 For Windows is available
here.
|
|
|
- %PB_COMPILETIME numeric equate helps to determine the date/time of compilation.
- #COM CLASS metastatement allows you to add the COM attribute to a class defined elsewhere. The COM attribute can even be added to a class in an SLL which was compiled separately.
- #EXPORT metastatement declares a Sub/Function to have the EXPORT attribute.
- #INCLUDE THIS ONCE metastatement is placed in the file to be included and tells the compiler to "Include me only one time, no matter how many times it is requested".
- #LINK metastatement links a pre-compiled Static Link Library (SLL) into your host program.
- #OPTIMIZE CODE metastatement tells the compiler whether unreferenced code should be removed from the compiled program to minimize the executable file size.
- #OPTION LARGEMEM32 metastatement sets the "Large Memory Model" flag. This allows your application to use more than the original limit of 2 Gigabytes of memory.
- #OPTION WIN95 metastatement tells the compiler to include a complete Unicode emulation package in your executable or DLL to allow them to run properly on Windows 95, 98, and ME.
- #OPTION ANSIAPI metastatement instructs the compiler to call only ANSI versions of the Windows API.
- #PAGE metastatement sets a page boundary for the PowerBASIC IDE.
- #RESOURCE BITMAP metastatement embeds a bitmap into the compiled EXE or DLL.
- #RESOURCE ICON metastatement embeds an icon into the compiled EXE or DLL.
- #RESOURCE MANIFEST metastatement embeds a manifest file into the compiled EXE or DLL.
- #RESOURCE RCDATA metastatement embeds binary data into the compiled EXE or DLL.
- #RESOURCE STRING metastatement embeds string data into the compiled EXE or DLL.
- #RESOURCE TYPELIB metastatement embeds a type library file into the compiled EXE or DLL.
- #RESOURCE WAVE metastatement embeds a wave sound file into the compiled EXE or DLL.
- #RESOURCE VERSIONINFO metastatement embeds version information into the compiled EXE or DLL.
- #UNIQUE metastatement specifies whether unique variable names are required.
- ASC function now supports Unicode and ANSI characters.
- ASC statement now supports Unicode and ANSI characters.
- ASM ALIGN statement rounds up the instruction location to a power of two address.
- ASMDATA/END ASMDATA statements defines a block where primitive read-only data is stored.
- BIN$ function has been expanded to 64-bits with formatting and now supports adding leading and trailing spaces to the string result.
- BITS$ function copies string contents without modification.
- CHOOSE, CHOOSE&, and CHOOSE$ functions have been enhanced with optional ELSE clause. The ELSE option allows an optional choice value to be returned when no match is made.
- CHR$$ function converts one or more numeric Unicode character codes, code ranges, and/or strings into a single string.
- CHRBYTES function determines the size of a single character in a string variable.
- ChrToOem$ function translates a string of ANSI/WIDE characters to OEM byte characters.
- ChrToUtf8$ function translates a string of ANSI/WIDE characters to UTF-8 byte characters.
- CLIPBOARD GET TEXT statement automatically converts the retrieved string to ANSI or Unicode to match the format of the target variable.
- CLIP$ function deletes characters from a string.
- COMBOBOX ADD and COMBOBOX INSERT statements now offer an optional TO clause that returns the index position of the added string.
- COMM function, COMM LINE, COMM OPEN, COMM PRINT, COMM RECV, COMM SEND, and COMM SET have been expanded to support ANSI and Unicode strings.
- COMM TIMEOUT function places a limit on the time to complete a COMM operation.
- CONTROL ADD GRAPHIC statement. Graphic controls may now be resized with CONTROL SET CLIENT, GRAPHIC SET CLIENT, CONTROL SET SIZE, or GRAPHIC SET SIZE.
- CONTROL ADD HEADER statement adds a header control to a dialog.
- CONTROL HIDE statement makes a control invisible.
- CONTROL NORMALIZE statement makes a control visible.
- CONTROL SET CLIENT statement now resizes graphic controls.
- CONTROL SET FONT statement resets back to the default original font chosen by PowerBASIC when a font handle of zero is specified.
- CONTROL SET SIZE statement has been enhanced to support graphic controls.
- DAYNAME$ function converts a Day-of-Week number to the associated name.
- DEC$ function converts an integral value to a decimal string.
- DECLARE statement has been updated to support the COMMON and THREADSAFE descriptors.
- DIALOG DEFAULT FONT statement specifies the default font to be used for DDT Dialogs and Controls.
- DIALOG HIDE statement makes a Dialog invisible.
- DIALOG NONSTABLE statement makes a Dialog non-stable (closeable).
- DIALOG NORMALIZE statement makes a Dialog visible.
- DIALOG STABILIZE statement makes a Dialog stabilized (non-closeable).
- DIR$ function now supports Unicode file names and directories. The DIRDATA built-in UDT has been updated to return Unicode short and long filenames.
- END statement terminates the program immediately.
- ENUM/END ENUM statements creates a group of logically related numeric equates.
- EXE.INST read-only user defined type returns the instance handle of the program which is currently executing.
- EXIT statement has been improved to support exiting a FASTPROC immediately.
- FASTPROC/END FASTPROC statements defines a FastProc code section.
- FONT NEW statement now optionally supports creating fonts with external leading.
- FOR EACH/NEXT statements defines a loop of program statements which can sequentially examine and act upon each member of a PowerCollection or LinkListCollection.
- FUNCTION/END FUNCTION statements have been expanded to support an optional THREADSAFE descriptor. With the THREADSAFE option, PowerBASIC automatically establishes a semaphore which allows only one thread to execute the procedure at a time.
- GET$ statement reads ANSI string data from a file opened in binary mode, but if the data is read into a Unicode string it will be converted to Unicode before it is assigned.
- GET$$ statement reads WIDE string data from a file opened in binary mode.
- GRAPHIC(CANVAS.X) function retrieves the writable width of the attached graphic target.
- GRAPHIC(CANVAS.Y) function retrieves the writable height of the attached graphic target.
- GRAPHIC(Cell.Size.X) function retrieves the character cell width including external leading.
- GRAPHIC(Cell.Size.Y) function retrieves the character cell height including external leading.
- GRAPHIC(Chr.Size.X) function retrieves the character width on the graphic target.
- GRAPHIC(Chr.Size.Y) function retrieves the character height on the graphic target.
- GRAPHIC(Client.X) function retrieves the client width of the attached graphic target.
- GRAPHIC(Client.Y) function retrieves the client height of the attached graphic target.
- GRAPHIC(Clip.X) function retrieves the width of the clip area.
- GRAPHIC(Clip.Y) function retrieves the height of the clip area.
- GRAPHIC(COL) function retrieves the next column print position, based upon the row and column position of a text cell.
- GRAPHIC(DC) function retrieves the handle of the DC (device context) for the selected graphic target.
- GRAPHIC(INSTAT) function determines whether a keyboard character is ready.
- GRAPHIC(LINES) function retrieves the number of text lines which will fit on the graphic target.
- GRAPHIC(LOC.X) function retrieves the horizontal location of the graphic target on the desktop.
- GRAPHIC(LOC.Y) function retrieves the vertical location of the graphic target on the desktop.
- GRAPHIC(MIX) function retrieves the color mix mode for the selected graphic target.
- GRAPHIC(OVERLAP) function retrieves the status of Graphic Overlap Mode.
- GRAPHIC(PIXEL...) function retrieves the color of the pixel at the specified point.
- GRAPHIC(POS.X) function retrieves the horizontal POS (last point referenced) by a GRAPHIC statement.
- GRAPHIC(POS.Y) function retrieves the vertical POS (last point referenced) by a GRAPHIC statement.
- GRAPHIC(PPI.X) function retrieves the horizontal resolution of the display device, in points per inch.
- GRAPHIC(PPI.Y) function retrieves the vertical resolution of the display device, in points per inch.
- GRAPHIC(ROW) function retrieves the next row print position, based upon the row and column position of a text cell.
- GRAPHIC(SCROLLTEXT) function retrieves the status of Graphic ScrollText Mode.
- GRAPHIC(SIZE.X) function retrieves the overall width of the selected graphic target.
- GRAPHIC(SIZE.Y) function retrieves the overall height of the selected graphic target.
- GRAPHIC(STRETCHMODE) function retrieves the default bitmap stretching mode for the attached DC.
- GRAPHIC(TEXT.SIZE.X...) function calculates the width of text to be printed.
- GRAPHIC(TEXT.SIZE.Y...) function calculates the height of text to be printed.
- GRAPHIC(View.X) function retrieves the horizontal position of the virtual graphic viewport.
- GRAPHIC(View.Y) function retrieves the vertical position of the virtual graphic viewport.
- GRAPHIC(WORDWRAP) function retrieves the status of Graphic WordWrap Mode.
- GRAPHIC(WRAP) function retrieves the status of Graphic Wrap Mode.
- GRAPHIC$(CAPTION) function retrieves the caption from a Graphic Window.
- GRAPHIC$(INKEY$) function reads a keyboard character if one is ready.
- GRAPHIC$(WAITKEY$) function reads a keyboard character or extended key, waiting until one is ready.
- GRAPHIC$ (WAITKEY$...) function reads a limited set of keyboard characters or extended keys, with an optional timeout value.
- GRAPHIC CELL statement sets or retrieves the next print position, based upon the row and column position of a text cell.
- GRAPHIC CELL SIZE statement retrieves the character cell size including external leading.
- GRAPHIC COLOR statement now supports parameters of -3 to indicate that the existing color should not be changed.
- GRAPHIC COL statement retrieves the next column print position, based upon the row and column position of a text cell.
- GRAPHIC GET CANVAS statement retrieves the buffer size of the attached graphic target.
- GRAPHIC GET CAPTION statement retrieves the caption from a Graphic Window.
- GRAPHIC GET CLIENT statement now returns the client area size in dialog units or pixels only.
- GRAPHIC GET CLIP statement retrieves the size of the clip area.
- GRAPHIC GET OVERLAP statement retrieves the status of Graphic Overlap Mode.
- GRAPHIC GET SCROLLTEXT statement retrieves the status of Graphic ScrollText Mode.
- GRAPHIC GET SIZE statement retrieves the overall size of the selected graphic target.
- GRAPHIC GET STRETCHMODE statement retrieves the default bitmap stretching mode for the attached DC.
- GRAPHIC GET VIEW statement retrieves the position of the virtual graphic viewport.
- GRAPHIC GET WORDWRAP statement retrieves the status of Graphic WordWrap Mode.
- GRAPHIC GET WRAP statement retrieves the status of Graphic Wrap Mode.
- GRAPHIC PRINT statement has been expanded to support POS(), SPC(), TAB(), commas, and semicolons.
- GRAPHIC ROW statement retrieves the next row print position, based upon the row and column position of a text cell.
- GRAPHIC SET AUTOSIZE statement expands a graphic target into autosize mode.
- GRAPHIC SET CAPTION statement changes the caption on a Graphic Window.
- GRAPHIC SET CLIENT statement changes the size of a graphic control or graphic window to a specific client area size.
- GRAPHIC SET CLIP statement establishes margins around the outer edges of the graphic target.
- GRAPHIC SET FIXED statement restores a graphic target to standard fixed mode.
- GRAPHIC SET FONT statement resets back to the default original font chosen by PowerBASIC when a font handle of zero is specified.
- GRAPHIC SET OVERLAP statement enables or disables Graphic Overlap Mode.
- GRAPHIC SET SCROLLTEXT statement enables or disables Graphic ScrollText Mode.
- GRAPHIC SET SIZE statement changes the overall size of a graphic control or graphic window.
- GRAPHIC SET STRETCHMODE statement sets the default bitmap stretching mode for the current DC.
- GRAPHIC SET VIEW statement changes the position of the viewport on a virtual graphic target.
- GRAPHIC SET VIRTUAL statement expands a graphic target into virtual mode.
- GRAPHIC SET WORDWRAP statement enables or disables Graphic WordWrap Mode.
- GRAPHIC SET WRAP statement enables or disables Graphic Wrap Mode.
- GRAPHIC SPLIT statement splits a string into two parts for display on a graphic target.
- GRAPHIC STRETCH PAGE statement copies and resizes a bitmap to the clip or client area of the selected graphic target.
- GRAPHIC WAITKEY$ statement has been improved with a optional KeyMask$ and TimeOut& expressions.
- GRAPHIC WINDOW statement has been expanded to support an optional font handle of the initial font to be used in the GRAPHIC WINDOW.
- GRAPHIC WINDOW END statement has been enhanced with an optional handle of the graphic window to close.
- GRAPHIC WINDOW HIDE statement makes a graphic window invisible.
- GRAPHIC WINDOW MINIMIZE statement minimizes a graphic window.
- GRAPHIC WINDOW NONSTABLE statement makes a graphic window non-stable (closeable).
- GRAPHIC WINDOW NORMALIZE statement makes a graphic window visible.
- GRAPHIC WINDOW STABILIZE statement makes a graphic window stabilized (non-closeable).
- GRAPHIC WINDOW TEXT statement creates a new standalone window oriented more towards the display of text.
- HEADER statement manipulates a HEADER control in order to set/retrieve data.
- HEX$ function now supports adding leading and trailing spaces to the string result.
- IMPORT ADDR statement loads a library (DLL) to access an imported procedure.
- IMPORT CLOSE statement frees a library.
- ILinkListCollection.ADD method adds am item to the end of the LinkListCollection.
- ILinkListCollection.CLEAR method removes all items from the LinkListCollection.
- ILinkListCollection.COUNT method returns the number of items currently in the LinkListCollection.
- ILinkListCollection.FIRST method sets the current index for the LinkListCollection to one (1) and returns the previous value.
- ILinkListCollection.INDEX method sets the current index for the LinkListCollection to the specified value and returns the previous value.
- ILinkListCollection.INSERT method adds the specified item to the specified index position..
- ILinkListCollection.ITEM method returns the item from the specified index position.
- ILinkListCollection.LAST method sets the index value to the last item and returns the previous value.
- ILinkListCollection.NEXT method returns the next item in the LinkListCollection.
- ILinkListCollection.PREVIOUS method returns the previous item in the LinkListCollection.
- ILinkListCollection.REMOVE method removes the item at the specified position from the LinkListCollection.
- ILinkListCollection.REPLACE method replaces the item at the specified position with a new item in the LinkListCollection.
- IPowerArray.ARRAYBASE method returns the address of the first element of the array.
- IPowerArray.ARRAYDESC method returns the address of the SAFEARRAY descriptor.
- IPowerArray.ARRAYINFO property retrieves the info string, if one is present.
- IPowerArray.ARRAYINFO property assigns the info string to the array.
- IPowerArray.CLONE method copies an exact duplicate of the SafeArray, and stores it in the specified PowerArray object.
- IPowerArray.COPYFROMVARIANT method copies an exact duplicate of the specified SafeArray and stores it in this PowerArray object.
- IPowerArray.COPYTOVARIANT method copies an exact duplicate of the SafeArray in this object and stores it in the specified Variant.
- IPowerArray.DIM method dimensions (creates) a new array.
- IPowerArray.ELEMENTPTR method retrieves the address of the specified data element.
- IPowerArray.ELEMENTSIZE method retrieves the storage size (in bytes) of each data element of the array.
- IPowerArray.ERASE method destroys the contained array and empties the object.
- IPowerArray.LBOUND method retrieves the lower bound number for the dimension specified.
- IPowerArray.LOCK method increments the lock count of the SAFEARRAY.
- IPowerArray.MOVEFROMVARIANT method transfers ownership of the specified SafeArray contained in the variant to the PowerArray object.
- IPowerArray.MOVETOVARIANT method transfers ownership of the SafeArray contained in this PowerArray object to a variant parameter.
- IPowerArray.REDIM method allows the SafeArray to be erased and re-dimensioned to a new size.
- IPowerArray.REDIMPRESERVE method allows the least significant (rightmost) bound to be changed to a new size. The remaining data items in the array are preserved.
- IPowerArray.RESET method sets all elements in the SafeArray back to their initial, default value.
- IPowerArray.SUBSCRIPTS method retrieves the number of dimensions (subscripts) for this array.
- IPowerArray.UBOUND method retrieves the upper bound number for the dimension specified.
- IPowerArray.UNLOCK method decrements the lock count of the SAFEARRAY.
- IPowerArray.VALUEGET method retrieves the value of the specified array element.
- IPowerArray.VALUESET method assigns the value to the specified array element.
- IPowerArray.VALUETYPE method retrieves the %VT code which describes the data contained in this array.
- IPowerCollection.ADD method adds an item and key to the end of the PowerCollection.
- IPowerCollection.CLEAR method removes all items and keys from the PowerCollection.
- IPowerCollection.CONTAINS method scans the PowerCollection for the specified key.
- IPowerCollection.COUNT method returns the number of data items currently contained in the PowerCollection.
- IPowerCollection.ENTRY method returns the PowerCollection item specified by the Index number.
- IPowerCollection.FIRST method sets the index to the first item and returns the previous value.
- IPowerCollection.INDEX method sets the index value and returns the previous value.
- IPowerCollection.ITEM method returns the item associated with the specified key in the PowerCollection.
- IPowerCollection.LAST method sets the index to the last item and returns the previous value.
- IPowerCollection.NEXT method returns the next item in the PowerCollection.
- IPowerCollection.PREVIOUS method returns the previous item in the PowerCollection.
- IPowerCollection.REMOVE method removes the item associated with the specified key from the PowerCollection.
- IPowerCollection.REPLACE method replaces the item associated with the specified key with a new item.
- IPowerCollection.SORT method sorts the data items in the PowerCollection based upon the text in the associated keys.
- IPowerThread.Close method releases the thread handle of this thread.
- IPowerThread.Equals method compares the specified object to determine if it references the same object as this object.
- IPowerThread.Handle method retrieves the handle of the thread for use with Windows API functions.
- IPowerThread.Id method retrieves the ID of the thread for use with Windows API functions.
- IPowerThread.IsAlive method checks the thread to see if it is currently "alive".
- IPowerThread.Join method waits for the specified thread object to complete before execution of this thread continues.
|
- IPowerThreadLaunch method begins execution of the thread object.
- IPowerThread.Priority property get retrieves the priority value for this thread.
- IPowerThread.Priority property set sets the priority value for this thread.
- IPowerThread.Result method retrieves the results value if the thread has ended.
- IPowerThread.Resume method resumes execution of a suspended thread.
- IPowerThread.StackSize property get retrieves the size of the stack for this thread.
- IPowerThread.StackSize property set sets the size of the stack for this thread to the value specified.
- IPowerThread.Suspend method suspends execution of the thread.
- IPowerThread.TimeCreate method retrieves the date and time-of-day of the thread creation.
- IPowerThread.TimeExit method retrieves the date and time-of-day of the thread exit
- IPowerThread.TimeKernel method retrieves the amount of time this thread has spent in kernel mode.
- IPowerThread.TimeUser method retrieves the amount of time this thread has spent in user mode.
- IPowerTime.AddDays method adds or subtracts a specified number of days to value of this object.
- IPowerTime.AddHours method adds or subtracts a specified number of hours to value of this object.
- IPowerTime.AddMinutes method adds or subtracts a specified number of minutes to value of this object.
- IPowerTime.AddMonths method adds or subtracts a specified number of months to value of this object.
- IPowerTime.AddMSeconds method adds or subtracts a specified number of milliseconds to value of this object.
- IPowerTime.AddSeconds method adds or subtracts a specified number of seconds to value of this object.
- IPowerTime.AddTicks method adds or subtracts a specified number of ticks to value of this object.
- IPowerTime.AddYears method adds or subtracts a specified number of years to value of this object.
- IPowerTime.DateDiff method compares the date component of an external PowerTime object to this objects date component.
- IPowerTime.DateString method returns the Date component of the object expressed as a string.
- IPowerTime.DateStringLong method returns the Date component of the PowerTime object, expressed as a string, with a full alphabetic month name.
- IPowerTime.Day method returns the Day component of the object.
- IPowerTime.DayOfWeek method returns the Day-of-Week component of the object.
- IPowerTime.DayOfWeekString method returns the Day-of-Week of the object, expressed as a string (Sunday, Monday...).
- IPowerTime.DaysInMonth method returns the number of days which comprise the month of the date of the PowerTime object.
- IPowerTime.FileTime property get returns a Quad-Integer value of the PowerTime object as a FileTime.
- IPowerTime.FileTime property set the FileTime Quad-Integer value specified is assigned as the PowerTime object value
- IPowerTime.Hour method returns the Hour component of the object.
- IPowerTime.IsLeapYear method returns true/false (-1/0) to tell if the object year is a leap year.
- IPowerTime.Minute method returns the Minute component of the object.
- IPowerTime.Month method returns the Month component of the object.
- IPowerTime.MonthString method returns the Month component of the object, expressed as a string (January, February...).
- IPowerTime.MSecond method returns the millisecond component of the PowerTime object.
- IPowerTime.NewDate method assigns a new value to the date component of the PowerTime object.
- IPowerTime.NewTime method assigns a new value to the time component of the PowerTime object.
- IPowerTime.Now method assigns the current local date and time on this computer to this object.
- IPowerTime.NowUTC method assigns the current Coordinated Universal date and time (UTC) to this object.
- IPowerTime.Second method returns the Second component of the object.
- IPowerTime.Tick method returns the Tick component of the object.
- IPowerTime.TimeDiff method compares the time component of an external PowerTime object with this objects time component.
- IPowerTime.TimeString method returns the Time component of the PowerTime object expressed as a string.
- IPowerTime.TimeString24 method returns the Time component of the PowerTime object expressed as a string. The time is formatted as hh:mm in 24-hour notation.
- IPowerTime.TimeStringFull method returns the Time component of the PowerTime object expressed as a string. The time is formatted as hh:mm:ss.tt in 24-hour notation.
- IPowerTime.Today method the current local date on this computer is assigned to this PowerTime object.
- IPowerTime.ToLocalTime method converts the object to local time.
- IPowerTime.ToUTC method converts the object to Coordinated Universal Time (UTC).
- IPowerTime.Year method returns the Year component of the PowerTime object as a numeric value.
- IQueueCollection.CLEAR method removes all items from the QueueCollection.
- IQueueCollection.COUNT method returns the number of data items currently contained in the QueueCollection.
- IQueueCollection.DEQUEUE method returns the item at the "oldest" position in the QueueCollection.
- IQueueCollection.ENQUEUE method adds the specified item to the "newest" position in the QueueCollection.
- IStackCollection.CLEAR method removes all items from the StackCollection.
- IStackCollection.COUNT method returns the number of data items currently contained in the StackCollection.
- IStackCollection.POP method returns the item at the "Stack-Top" (the item most recently added).
- IStackCollection.PUSH method adds the specified item to the StackCollection at the "Stack-Top" position.
- IStringBuilderA.Add method appends an ANSI string to the object.
- IStringBuilderA.Capacity property get retrieves the size of the internal buffer.
- IStringBuilderA.Capacity property set sets the size of the internal buffer.
- IStringBuilderA.Char property get returns the numeric character code of the character at the specified position.
- IStringBuilderA.Clear method erases all data in the object.
- IStringBuilderA.Delete method deletes all data in the object.
- IStringBuilderA.Insert method inserts a string at a specified position.
- IStringBuilderA.Len method returns the number of characters stored in the object.
- IStringBuilderA.String method returns the ANSI string stored in the object.
- IStringBuilderW.Add method appends an WIDE string to the object.
- IStringBuilderW.Capacity property get retrieves the size of the internal buffer.
- IStringBuilderW.Capacity property set sets the size of the internal buffer.
- IStringBuilderW.Char property get returns the numeric character code of the character at the specified position.
- IStringBuilderW.Clear method erases all data in the object.
- IStringBuilderW.Delete method deletes all data in the object.
- IStringBuilderW.Insert method inserts a string at a specified position.
- IStringBuilderW.Len method returns the number of characters stored in the object.
- IStringBuilderW.String method returns the WIDE string stored in the object.
- ISNOTNULL function determines if a string is not null (contains 1 or more characters).
- ISNULL function determines if a string is null (zero-length).
- LET statement (with Types) has been expanded to support assigning a Variant byte string to a UDT using the Variant$ function.
- LISTBOX ADD and LISTBOX INSERT statements now offer an optional TO clause that returns the index position of the added string.
- LISTVIEW GET HEADERID statement returns the handle of the LISTIVEW control and the ID of HEADER control.
- MEMORY COPY statement copies a specified number of bytes from one address to another.
- MEMORY FILL statement fills a specified area of memory using a string expression.
- MEMORY SWAP statement exchanges a specified number of bytes from at one address with the data at another address.
- MENU ADD POPUP statement has been expanded with an optional AS id& clause.
- MENU CONTEXT statement creates a floating context menu.
- MENU GET STATE statement has been enhanced to support the %MFS menu states equates.
- MENU SET STATE statement has been enhanced to support the %MFS menu states equates.
- METHOD/END METHOD statements have been expanded to support an optional THREADSAFE descriptor. With the THREADSAFE option, PowerBASIC automatically establishes a semaphore which allows only one thread to execute the procedure at a time.
- METRICS function retrieves information or dimensions of system elements.
- MID$ function and MID$ statement now support both a starting and ending position.
- MONTHNAME$ function converts a Month number to the associated name.
- OBJEQUAL function checks if object variables refer to the same object.
- OCT$ function has been expanded to 64-bits with formatting and now supports adding leading and trailing spaces to the string result.
- OemToChr$ function translates a byte string of OEM characters into ANSI/WIDE characters.
- OPEN statement has been improved with the CHR clause. The CHR clause specifies the character mode for this file: ANSI or WIDE (Unicode).
- PATHNAME$ function has been enhanced to accept relative path names.
- PEEK$$ function retrieves a specified count of consecutive 2-byte wide characters, and returns them as a wide character string.
- PLAY statement plays a wave file under program control.
- POKE statement now supports multiple data items to be stored successively.
- POKE$$ statement stores the characters of a string expression as consecutive 2-byte words of memory at a specific address.
- PREFIX/END PREFIX statements execute a series of statements, each of which utilizes pre-defined source code.
- PROPERTY/END PROPERTY statements have been expanded to support an optional THREADSAFE descriptor. With the THREADSAFE option, PowerBASIC automatically establishes a semaphore which allows only one thread to execute the procedure at a time.
- PUT$ statement has been expanded to support Unicode string expressions. If string expressions result is a Unicode string, it is converted to ANSI byte characters.
- PUT$$ statement writes a WIDE Unicode string to a file opened in binary mode.
- RESOURCE$ function returns predefined resource data.
- RESUME FLUSH statement flushes the RESUME stack and program execution simply continues on the line immediately following the RESUME FLUSH.
- RETURN FLUSH statement removes the most recent return address from the system stack and program flow continues normally after the RETURN FLUSH.
- SELECT CASE/END SELECT block has been improved with the CONST$$ modifier to enhance performance when the controlling expression is Unicode.
- SHRINK$ function shrinks a string to use a consistent single character delimiter.
- SPLIT statement splits a string into two parts.
- STRING$$ function returns a Unicode string consisting of multiple copies of a specified character.
- SUB/END SUB statements have been expanded to support an optional THREADSAFE descriptor. With the THREADSAFE option, PowerBASIC automatically establishes a semaphore which allows only one thread to execute the procedure at a time.
- TAB GET IMAGE statement retrieves the index of the image displayed on the specified TAB page.
- TAB GET PAGE statement retrieves the page number of the specified TAB page dialog.
- TAB GET SELECT statement returns the index of the currently selected TAB page.
- TAB GET TEXT statement retrieves the text displayed on the specified page tab.
- TAB SET IMAGE statement displays the specified image on the specified page tab.
- TAB SET TEXT statement displays the specified text on the specified page tab.
- TOOLBAR ADD SEPARATOR statement has been improved with an optional unique numeric identifier. This identifier may be used later with a BYCMD option in TOOLBAR DELETE, TOOLBAR SET STATE, etc.
- TXT.CELL method sets or retrieves the cursor position.
- TXT.CLS method clears the Text Window and moves to caret to the upper left corner.
- TXT.COLOR method sets the foreground color.
- TXT.END method destroys and detaches the Text Window currently attached to your program from the process.
- TXT.INKEY$ method reads a keyboard character if one is ready.
- TXT.INSTAT method determines whether a keyboard character is ready.
- TXT.LINE.INPUT method reads an entire line from the keyboard.
- TXT.PRINT method writes text data to the TEXT WINDOW at the current caret location.
- TXT.WAITKEY$ method reads a keyboard character, waiting until one is ready.
- TXT.WINDOW method creates a new Text Window and attaches it to your program.
- TRIM$ function has been expanded to take a numeric expression and convert it to a string without any leading or trailing spaces along with an option specify the maximum number of significant digits.
- UCODEPAGE statement now supports the OEM code page.
- UNWRAP$ removes paired characters from the beginning and end of a string.
- Utf8ToChr$ function translates a byte string of OEM characters into ANSI/WIDE characters.
- VAL function has been enhanced with an optional parameter to specify the position in the string where the conversion should begin.
- VAL statement converts a text string to a numeric value with additional information.
- VARIANT$$ function returns the Unicode string value contained in a Variant variable.
- WINDOW GET HANDLE statement retrieves the handle of a Window.
- WINDOW GET STYLE statement retrieves the style of the Window.
- WINDOW GET STYLEX statement retrieves the extended-style of the Window.
- WINDOW GET USER statement retrieves the 32-bit user data value associated with the window.
- WINDOW SET ID statement changes the integral ID of the window.
- WINDOW SET STYLE statement changes the style of the Window.
- WINDOW SET STYLEX statement changes the extended-style of the Window.
- WINDOW SET USER statement changes the 32-bit user data value associated with the window.
- WRAP$ function adds paired characters to the beginning and end of a string.
- XPRINT(CANVAS.X) function retrieves the writable width of the host printer page.
- XPRINT(CANVAS.Y) function retrieves the writable height of the host printer page.
- XPRINT(Cell.Size.X) function retrieves the character cell width including external leading.
- XPRINT(Cell.Size.Y) function retrieves the character cell height including external leading.
- XPRINT(Chr.Size.X) function retrieves the character width on the host printer page.
- XPRINT(Chr.Size.Y) function retrieves the character height on the host printer page.
- XPRINT(Client.X) function retrieves the width of the client area (printable area) on the host printer page.
- XPRINT(Client.Y) function retrieves the height of the client area (printable area) on the host printer page.
- XPRINT(Clip.X) function retrieves the width of the clip area on the selected printer.
- XPRINT(Clip.Y) function retrieves the height of the clip area on the selected printer.
- XPRINT(COL) function retrieves the next column print position, based upon the row and column position of a text cell.
- XPRINT(COLLATE) function retrieves the XPRINT collate status.
- XPRINT(COLORMODE) function retrieves the XPRINT colormode status.
- XPRINT(COPIES) function retrieves the XPRINT copy count.
- XPRINT(DC) function retrieves the handle of the device context (DC) for the host printer page.
- XPRINT(DUPLEX) function retrieves the XPRINT duplex status.
- XPRINT(LINES) function retrieves the number of lines that can be printed.
- XPRINT(MIX) function retrieves the color mix mode for a host printer page.
- XPRINT(ORIENTATION) function retrieves the paper orientation for a host printer page.
- XPRINT(OVERLAP) function retrieves the status of XPrint Overlap Mode.
- XPRINT(PAPER) function retrieves the current paper size/type.
- XPRINT(PIXEL...) function retrieves the color of a pixel on a host printer page.
- XPRINT(POS.X) function retrieves the last horizontal point referenced (POS) by an XPRINT statement.
- XPRINT(POS.Y) function retrieves the last vertical point referenced (POS) by an XPRINT statement.
- XPRINT(PPI.X) function retrieves the horizontal resolution of the host printer page.
- XPRINT(PPI.Y) function retrieves the vertical resolution of the host printer page.
- XPRINT(ROW) function retrieves the next row print position, based upon the row and column position of a text cell.
- XPRINT(QUALITY) function retrieves the print quality setting for the host printer.
- XPRINT(SELECTION) function retrieves the status of the SELECTION flag.
- XPRINT(SIZE.X) function retrieves the width of the host printer page.
- XPRINT(SIZE.Y) function retrieves the height of the host printer page.
- XPRINT(STRETCHMODE) function retrieves the default bitmap stretching mode for the attached DC.
- XPRINT(TEXT.SIZE.X...) function calculates the width of text to be printed on a host printer.
- XPRINT(TEXT.SIZE.Y...) function calculates the height of text to be printed on a host printer.
- XPRINT(TRAY) function retrieves the active printer tray.
- XPRINT(WORDWRAP) function retrieves the status of XPRINT WordWrap Mode.
- XPRINT(WRAP) function retrieves the status of XPRINT Wrap Mode.
- XPRINT$(ATTACH) function returns the name of the attached host printer.
- XPRINT$(PAPERS) function retrieves a list of supported paper types.
- XPRINT$(TRAYS) function retrieves a list of supported paper trays.
- XPRINT ATTACH CHOOSE statement has been expanded to support optional numeric expression to control the execution of the Printer Dialog.
- XPRINT CELL statement sets or retrieves the next print position, based upon the row and column position of a text cell.
- XPRINT CELL SIZE statement retrieves the character cell size including external leading.
- XPRINT COLOR statement now supports parameters of -3 to indicate that the existing color should not be changed.
- XPRINT GET ATTACH statement retrieves the name of the attached host printer.
- XPRINT GET CANVAS statement retrieves the buffer size of the attached host printer.
- XPRINT GET CLIP statement retrieves the size of the clip area on the selected printer.
- XPRINT GET OVERLAP statement retrieves the status of XPrint Overlap Mode.
- XPRINT GET PAGES statement retrieves the XPRINT page number limits for this print job.
- XPRINT GET SELECTION statement retrieves the status of the SELECTION flag.
- XPRINT GET STRETCHMODE statement retrieves the default bitmap stretching mode for the attached DC.
- XPRINT GET WORDWRAP statement retrieves the status of XPRINT WordWrap Mode.
- XPRINT GET WRAP statement retrieves the status of XPRINT Wrap Mode.
- XPRINT PREVIEW statement display a replica of a printed document on the screen.
- XPRINT PREVIEW CLOSE statement reverts XPRINT output back to the host printer.
- XPRINT PRINT statement has been expanded to support POS(), SPC(), TAB(), commas, and semicolons.
- XPRINT SET CLIP statement establishes margins around the outer edges of the print page.
- XPRINT SET FONT statement resets back to the default original font chosen by PowerBASIC when a font handle of zero is specified,
- XPRINT SET OVERLAP statement enables or disables XPRINT Overlap Mode.
- XPRINT SET PAGES statement sets the XPRINT page number limits for this print job.
- XPRINT SET STRETCHMODE statement sets the default bitmap stretching mode for the current DC.
- XPRINT SET WORDWRAP statement enables or disables XPRINT WordWrap Mode.
- XPRINT SET WRAP statement enables or disables XPrint Wrap Mode.
- XPRINT SPLIT statement splits a string into two parts for printing with XPRINT.
- XPRINT STRETCH PAGE statement copies and resizes a bitmap to the clip or client area of the print page.
|
|