About RapidQ and
the include files in RapidQ2
RapidQ2 is made to standardize improvement of the language. If there is
a component that is a "must fix" then add it to RapidQ2.inc.
Instead of looking around for the latest include files and code, just
improve RapidQ2.inc to new versions.
Updates or major improvements to RapidQ2.inc should be posted in
the discussion group:
If the code is reliable and acceptable to the group, the request updating
RapidQ2 and update the documents and RapidQ.chm file.
In RapidQ2 additions include:
APPLICATION, SCREEN, QFORM, QBITMAP, QCANVAS, QIMAGE, QMenuEx, QLISTVIEWex,
QDEBUG, QFILEDIALOG, QSYSTEM, QFORMmDI, QDOCKFORM, GDI plus and other
Of note, the addition of GDI+ api depreciates the outdated
and there is no need to include NviewLib.DLL or Jpeg.DLL. However, these
files may be distributed for compatibility.
Things to beware of:
* A large list of Windows API funcions are included. If you have a naming
conflict, DON'T CHANGE RapidQ2.inc, PLEASE CHANGE YOUR CODE. Why?
because you can always find documentation on Windows MSDN API documentation,
but nobody knows the name of a modified API function!
* You must declare custom components at the Global level (outside a
* You cannot have arrays of custom components,
A large compiled html help file. This was compiled with Microsofts HTML help
Workshop, which can be downloaded for free from
Use this to decompile/recompile the help file. Edit the html file in your
editor. Then recompile the CHM file with HTML help
workshop. Be sure you have the HHA.DLL distribution with HTML help Workshop.
There are 3
very important files needed for compiling that are coded in INI or HTML:
rapidq.hhp -The project file
Table of Contents.hhc - table of contents
help RapidQ.hhk -index file
This file is NOT to be distributed with any commercial product, please
the rights of Realbasic (tm) and William Yu, the author
Windows 32 API include file. Updated 3/2005.
Very large and covers most of the API calls/constants you will need.
Unzipped it is about 700K, 15000 lines of code, but only takes about
0.5 sec longer to compile! Forget putting in all those DECLARE statements!
*** If you use WINDOWS.INC, it must be declared before RapidQ2.INC ***
'for example must be in this order:
Updated DirectX 3D (D3D) include file. Adds directx 3d constants and
components QD3DCAMERA, QD3DPrimitive, and QD3DCloneMesh.
Minor fixes, additional GDI+ documentation and implementation in the
Added support for Unicode / Wide String so RapidQ can call Unicode APIs.
** Revision 10/2017 (version 1.5)
Removed dependency on JPEG.DLL and NVIEWLIB.DLL (they don't support large or
modern versions of jpeg) .
That means code looking for the variable NviewLibPresent will generate an
There is no need to use NviewLibPresent as QBitmapEx and QImageEx use
GDI+ to Load / Save image file formats (JPG, TIFF, PNG, GIF)
This essentially ends support for Windows 95/98 when using these components
QBITMAPEX supports 8-bit greyscale images.
**Revision 2/2007 (Version 1.3b)
QColorDialog -Fixed .Color array in CHOOSECOLOR struct , should have been
pointer to array
QBitmapEx QimageEx - constant NviewLibPresent (1, 2, or 3) to better control
flow for LoadOtherFormat and SaveAsJpg
**Revision 12/2006 (Version 1.3)
Added Snakedile 1.07 fixed libs as part of the distribution
In preparation of new fixed libs, CONVBASEeX$ and STRINGex$ were removed,
HexToDec now uses CONVBASE$
Added QFormEx.AddMessage and QFormEx.OnMessage so that any message could
be sent to a custom WndProc
Updated SnakeDile fixed lib components in CHM help file
Added SortByColumn to QStringGridEx (code by Jacques)
Removed string const for QComport, and put in component (don't add string
space if not needed)
QBitmapEx.AlphaBlend has memory leak, probably GDI leak. Lowered memory
overhead by removing BLENDFUNCTION
Updated QProcess and QProgress with multithreading
**Revision 9/2006 (Version 1.2d)
Fixed SOUND keyword for windows versions > Win 98, uses a SUB alias
Fixed STRING$, which limited text length to 2k, or buffer overload
Added Frequency output for Screen.EnumResolution(ListView AS QLISTBOX)
Added QSystem.BuildNumber for Windows Build version
Updated undocumented commands in CHM help file (thanks to Warriant97)
**Revision 4/2006 (Version 1.2c)
Fixed QFormEx.FormStyle, the form disappeared with fsStayOnTop and could not
be reset to fsNormal
converted more CONST to $DEFINE
Added ShutDown options to QSYSTEM
updated docs, especially DLL tutorials.
fixed/updated inc files (OpenGL, CMD5, microTIMER, XP_Manifest..)
**Revision 3/2006 (Version 1.2b)
Fixed Windows.inc with incorrect byval var as Byte, etc. BYTE, SHORT,
WORD, Single, DOUBLE if passed byVAL must be put into a 32-bit
RapidQ_D3D fixed D3DRM api calls
**Revision 1/2006 (version 1.2)
Improved code for muliple custom components to be used at the same time.
Added QAVI component for reading/creating AVI files
Added XP_Manifest component for automatic generation of xp style buttons.
Improvements to the RapidQ.CHM file, included links to RQDP, FreeBasic DLL
Fixed bug in QSystem component
Minor corrections to original RapidQ.inc file
Entire wad of basic RapidQ2 system can be downloaded from www.airsys.org
**Revision 8/2005 (version 1.1)
Muliple custom components can be used at the same time. Those rewritten
QFORMex -- added focus EVents, and TrayIcon goodies
QMenuEx -- major revision with much better stability
Updated include files to be compatible with WINDOWS.INC
Updated Direct3d custom components
Updated Docs to include the new Direct3D components
**Revision 5/2005 (version 1.0e)
fixed minor bug in QDockForm. This error must still exist in QDockform.inc
**Revisions 3/2005 (version 1.0d)
Automatically detects nviewlib or jpeg.dll and uses these in
Corrected QbitmapEx.alphaBlend (Thanks Paul again)
fixed bug in QFileDialog (thanks Paul)
***note .Files(0), the directory always has a blackslash now.
added bug comments on LIBRARYINST, others
Udated RapidQ_D3D to work with Boris Holyard's 3D engine (DEA) demo.
**Revisions 2/2005 (version 1.0c)
Allow multiple QformEx forms in an application
QformEx.DeskBar does not take any parameters and should be called
NViewLibPresent flag fixed
**Revisions 1/2005 (version 1.0b)
fixed several minor bugs
Removed __EXTENSIONS_ON ** error with $DEFINE***
Added QFORMex.OnMouseWheel event
QDRAWMENU dropped and QMENUex added
QCAMERA changed to QD3DCAMERA for future QCAMERA video camera component
QSYSTEM added DiskFreeSpace for free space on drive
QBITMAP.AlphaBlend supports 32-bit alpha mask
HEXtoINC changed to HexToDec to be more compatible with previous code
SLEEP API function renamed Sleep.ms
Added UDTPTR to get pointer of a user defined type
Windows.inc removed $DEFINE INTEGER SHORT