home *** CD-ROM | disk | FTP | other *** search
-
- ΓòÉΓòÉΓòÉ 1. Title Page ΓòÉΓòÉΓòÉ
-
-
-
-
-
-
- BGI Graphics Emulator for OS/2
-
-
- ΓòÉΓòÉΓòÉ 2. Introduction ΓòÉΓòÉΓòÉ
-
- Introduction
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- When Borland created their Borland C++ for OS/2, they did a good job of
- providing backwards compatibility for DOS text programs, however no provision
- was made for backwards compatibility with DOS graphics programs. This makes
- sense, since OS/2 provides a very sophisticated graphics environment. However,
- for people with an investment in programs using the BGI graphics API, the
- effort to port to this new environment may not be worthwhile. And for those
- writing programs which use only simple graphics, the Presentation Manager API
- can be daunting.
-
- This package is addressed to these needs. It aims to allow porting of existing
- BGI applications to OS/2 with very little modification to the source. It also,
- by handling some of the more complex Presentation Manager details
- transparently, allows for a simpler transition from DOS based, procedural
- programs, to the more sophisticated OS/2 programs. For example, using this
- emulator, it is relatively trivial to write a program which uses multiple
- threads to calculate different parts of the graphic image, but still display
- the image using the familiar BGI graphics commands.
-
- How does it work? While the implementation is still not fully defined at this
- time, the basic operation is as follows. When a program compiled with the BGI
- emulator starts, it splits into two threads. One thread is the user's code
- executing. The second thread maintains a window on screen. This second thread
- handles screen repaints, resizes, and so on, transparently to the user's code.
- The user's code calls the normal BGI functions, which are translated into
- Presentation Manager calls. The two threads are synchronized using mutex
- semaphore's behind the scenes, so that the user's program will never try to
- modify the current window while it is being repainted for example.
-
- The current version (0.5) is essentially a pre-alpha release. It is far from
- feature complete, and some major parts of the implementation are not even fully
- defined yet. However, it was thought important to get some early feedback on
- the development direction (and some early bug reports) to help focus further
- efforts. Hopefully there will be regular further pre-release versions, until
- the release version is ready.
-
- Please see the section How to Report Problems for information on reporting
- problems and suggestions. Please carefully read the sections in this document
- on Supported Features and Future Directions so that you will have some idea of
- what is working in the current version, and what is planned for future
- versions. Also, check Functions Currently Supported check out any functions
- that you are using to make sure they are implemented and to see what
- restrictions the current implementation has.
-
-
- ΓòÉΓòÉΓòÉ 3. Installation ΓòÉΓòÉΓòÉ
-
- Installation
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Installation of the package is relatively simple. Currently, it is necessary
- for you to supply a copy of the include file graphics.h which is supplied with
- the Borland C compilers for DOS. It contains all of the structures and
- definitions required to use the BGI package. The legal issues of distributing
- this file with the package have not yet been explored. You must place
- graphics.h in the include directory of your BCOS2 installation.
-
- The installation procedure has been designed to work with the default directory
- setup of Borland C++ for OS/2. If you have a different setup, you should
- create a set of temporary directories with the required structure, and then
- move the installed files afterwards.
-
- To install the package, unzip all of the supplied files into a temporary
- directory, or place them on a floppy. From within this directory, run the REXX
- script install.cmd. The syntax is:
-
- install <bcos2 directory>
-
- <bcos2 directory> is the directory in which BCOS2 is installed. For example:
-
- install c:\bcos2
-
- Note: In the rest of this discussion, it will be assumed that the compiler is
- installed in \bcos2. Substitute the appropriate directory for your
- installation where required.
-
- The install script does two things. First, it copies the file bgi.lib to
- \bcos2\lib - the default location for the Borland libraries. You can move it
- from there to another directory if you wish - just make sure that you link it
- in to your application when compiling.
-
- Second, it edits the graphics.h file. It expects to see this file in
- \bcos2\include. These edits add in the BGIEM function declarations, and any
- other changes and extensions that may be required. Note that the changes are
- set up with #if..#endif pairs, so that they will only have effect when
- compiling an OS/2 program. You can still use the modified graphics.h file to
- compile programs with a DOS compiler.
-
- Note: The original graphics.h file is saved as graphics.bak.
-
- If you have a non-standard setup, the easiest thing to do is simply create a
- directory structure which contains lib and include subdirectories. Put
- graphics.h in the include subdirectory and run the install script. You can
- then move the bgi.lib and the modified graphics.h files to your lib and include
- directories.
-
-
- ΓòÉΓòÉΓòÉ 4. How to Use BGIEM ΓòÉΓòÉΓòÉ
-
- How to Use BGIEM
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Once you have BGIEM installed, it is very simple to use. The following are the
- crucial steps:
-
- 1. You must include the file graphics.h in any source file in which you call
- the BGI functions (if you are porting code, this will already be done).
-
- 2. You must rename the main() function of the program to bgiem_main()
-
- 3. You must link the bgi.lib library with the program after compiling it.
-
- That's all there really is to it. Of course, you will have to be aware of
- other porting considerations when going from a 16-bit compiler to a 32-bit
- compiler. Int's are now 32 bits instead of 16, and if your code has any
- dependencies on the size of the data types you may have problems.
-
- Note: Although it may appear that your program has no main function, it
- actually does. The main function is in bgi.lib, as it has to do some setup
- before your program code begins.
-
- Warning: bgiem_main does not currently pass command line parameters in argp and
- argc the way main does. This will be corrected in the next release.
-
- Here is an example of a simple program that starts emulation in VGA mode
- (640x460x16) and draws a line on the screen.
-
- #include <graphics.h>
-
- bgiem_main() {
- int driver,mode;
-
- driver=VGA;
- mode=VGAHI;
- initgraph(&gdriver,&gmode,NULL);
-
- line (0,0,100,100);
- closegraph();
- }
-
-
- ΓòÉΓòÉΓòÉ 5. Supported Features ΓòÉΓòÉΓòÉ
-
- Supported Features
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- The supported features list is pretty short for this release. Basically, all
- of the functions listed in Functions Currently Supported are supported (some
- only partially) and not much else. Currently, only a single initgraph call per
- program is supported. See Future Directions for features that will be
- supported in upcoming versions.
-
-
- ΓòÉΓòÉΓòÉ 6. Future Directions ΓòÉΓòÉΓòÉ
-
- Future Directions
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- The following list is items that will definitely be part of the package in the
- final release (in no particular order of priority):
-
- o Support for argc, argp, and env arguments in bgiem_main.
- o Support for viewports and all related functions.
- o Support for image get and put functions.
- o Support for active/visible pages.
- o Greater program control over the emulation. For example, currently all
- operations to the screen are also duplicated on an in-memory bitmap, so that
- when re-paints are required, the information in the bitmap can be copied to
- the screen. However, for programs which refresh the screen image frequently
- this is unneccesary overhead. This, and other aspects of the emulation will
- be controllable with extra functions provided.
- o Fix window sizing problems (espcially maximize problem).
- o Ability to cut and paste graphics from a BGIEM window to/from the clipboard.
- o Functions to return the window handle and presentation spaces being used by
- BGIEM so that the program can optionally use more sophisticated presentation
- managers functions.
- o Proper error handling, and emulation of graphresult.
- o Tuning and performance enhancements.
-
- The following are features which may find their way into the final release if
- time permits, and if interest is indicated.
-
- o Permit multiple initgraph calls which will open multiple windows
- simultaneously, and provide functions to change which one will be drawn in.
- o Permit user-definable graphics modes to emulate. User will be able to chose
- resolution, number of colours, and number of pages.
- o Allow the user-program to hook into the BGIEM window message queue, and
- optionally handle some of the messages received.
- o Simulate text mode output in the emulated graphics window.
- o Simulate the standard keyboard input commands (which will not work in a
- presentation manager program). This one is pretty important actually, and
- will almost certainly be done.
- o Provide an interface to the mouse. (Any suggestions on the design of the API
- for this would be welcome).
- o Other suggestions are welcome!
-
-
- ΓòÉΓòÉΓòÉ 7. How To Report Problems ΓòÉΓòÉΓòÉ
-
- How To Report Problems
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Please report problems electronically, by sending mail to one of the following
- addresses:
-
- Compuserve: 71005,132
- Internet: rob.mcdermid@rose.com
-
- Both suggestions and bug reports are welcome. Before reporting a bug, please
- study Functions Currently Supported to make sure that it is not simply
- something not implemented yet.
-
- When reporting bugs, a detailed description is always helpful, and code
- indicating the problem is extremely helpful. Also, when looking for bugs,
- please note that wherever there was a discrepancy between the documented
- behaviour of BGI, and how it was actually found to behave, the actual behaviour
- was emulated. Also, the version being emulated is that shipped with Borland
- C++ 3.0, so any behaviour changes in 3.1 will not be reflected.
-
-
- ΓòÉΓòÉΓòÉ 8. Functions Currently Supported ΓòÉΓòÉΓòÉ
-
- Functions Currently Supported
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- The functions highlighted in green are currently supported. Double click on
- the word to jump to a description of the function and its implementation.
- Functions in blue are not supported, and do not link to a description.
-
- Γûáarc
- Γûábar
- Γûábar3d
- Γûácircle
- Γûácleardevice
- Γûáclearviewport
- Γûáclosegraph
- Γûádetectgraph
- Γûádrawpoly
- Γûáellipse
- Γûáfillellipse
- Γûáfillpoly
- Γûáfloodfill
- Γûágetarccoords
- Γûágetaspectratio
- Γûágetbkcolor
- Γûágetcolor
- Γûágetdefaultpalette
- Γûágetdrivername
- Γûágetfillpattern
- Γûágetfillsettings
- Γûágetgraphmode
- Γûágetimage
- Γûágetlinesettings
- Γûágetmaxcolor
- Γûágetmaxmode
- Γûágetmaxx
- Γûágetmaxy
- Γûágetmodename
- Γûágetmoderange
- Γûágetpalette
- Γûágetpalettesize
- Γûágetpixel
- Γûágettextsettings
- Γûágetviewsettings
- Γûágetx
- Γûágety
- Γûágraphdefaults
- Γûágrapherrormsg
- Γûá_graphfreemem
- Γûá_graphgetmem
- Γûágraphresult
- Γûáimagesize
- Γûáinitgraph
- Γûáinstalluserdriver
- Γûáinstalluserfont
- Γûáline
- Γûálinerel
- Γûálineto
- Γûámoverel
- Γûámoveto
- Γûáouttext
- Γûáouttextxy
- Γûápieslice
- Γûáputimage
- Γûáputpixel
- Γûárectangle
- Γûáregisterbgidriver
- Γûáregisterbgifont
- Γûárestorecrtmode
- Γûásector
- Γûásetactivepage
- Γûásetallpalette
- Γûásetaspectratio
- Γûásetbkcolor
- Γûásetcolor
- Γûásetfillpattern
- Γûásetfillstyle
- Γûásetgraphbufsize
- Γûásetgraphmode
- Γûásetlinestyle
- Γûásetpalette
- Γûásetrgbpalette
- Γûásettextjustify
- Γûásettextstyle
- Γûásetusercharsize
- Γûásetviewport
- Γûásetvisualpage
- Γûásetwritemode
- Γûátextheight
- Γûátextwidth
-
-
- ΓòÉΓòÉΓòÉ 9. Reference ΓòÉΓòÉΓòÉ
-
- Reference
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- This section describes the function calls that are emulated, as well as some
- emulator specific calls.
-
-
- ΓòÉΓòÉΓòÉ 9.1. arc ΓòÉΓòÉΓòÉ
-
- void arc(int x,int y,int stangle,int endangle, int radius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws an arc in the current colour. The arc is centered on (x,y), and its
- radius is specified by radius. The arc travels from stangle to endangle
- (specified in degrees). The angle increases in a counterclockwise direction,
- with 0 degrees at 3 o'clock.
-
- Note: In BGI the linestyle parameter does not affect arcs, circles, ellipses,
- or pie slices. Only the thicknessparameter is used. This behaviour is
- maintained in the emulation.
-
- Status: Mostly working. No error checking, and should be optimized.
-
- Related Functions:
-
- circle ellipse fillellipse getarccoords getaspectratio graphresult pieslice
- sector
-
-
- ΓòÉΓòÉΓòÉ 9.2. bar ΓòÉΓòÉΓòÉ
-
- void bar(int left,int top,int right,int bottom)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a filled, rectangular bar using the current fill pattern and fill color.
- The bar is not outlined; to draw an outlined two-dimensional bar, use bar3d
- with depth=0.
-
- The upper-left and lower right corners of the bar are specified by (left,top)
- and (right,bottom).
-
- Status: Working.
-
- Related Functions:
-
- bar3d rectangle setcolor setfillstyle setlinestyle
-
-
- ΓòÉΓòÉΓòÉ 9.3. bar3d ΓòÉΓòÉΓòÉ
-
- void bar3d(int left,int top,int right,int bottom,int depth,int topflag)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a 3-dimensional rectangular bar using the current linestyle and colour,
- then fills it using the current fill style and colour. The depth of the bar
- along the Z axis is given by depth. The topflag parameter determines whether a
- 3-dimensional top is put on the bar. It is useful to omit the top of the bar,
- when drawing a stacked 3-dimensional bar. The way depth is handled is that the
- 3-dimensional part of the bar is drawn to depth pixels to the right and up from
- the right corners of the bar.
-
- Status: Working.
-
- Related Functions:
-
- bar rectangle setcolor setfillstyle setlinestyle
-
-
- ΓòÉΓòÉΓòÉ 9.4. circle ΓòÉΓòÉΓòÉ
-
- void circle(int x,int y,int radius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a circle using the current line colour. The circle is centered on (x,y)
- with radius radius
-
- Note: In BGI the linestyle parameter does not affect arcs, circles, ellipses,
- or pie slices. Only the thicknessparameter is used. This behaviour is
- maintained in the emulation.
-
- Status: Working.
-
- Related Functions:
-
- arc ellipse fillellipse getaspectratio sector setaspectratio
-
-
- ΓòÉΓòÉΓòÉ 9.5. cleardevice ΓòÉΓòÉΓòÉ
-
- void cleardevice(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- In BGI this erases the entire graphics screen to the currently specified
- background colour, and moves the current position to (0,0). In BGIEM, the
- entire window is erased (the CP is also zeroed).
-
- Status: Working.
-
- Related Functions:
-
- clearviewport
-
-
- ΓòÉΓòÉΓòÉ 9.6. <clearviewport> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.7. closegraph ΓòÉΓòÉΓòÉ
-
- void closegraph(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Frees up various resources that have been allocated by initgraph. In BGI, ends
- graphics mode. Currently, the window containing the graphics remains on the
- screen until the user explicitly shuts down the program. Eventually, the
- programmer will have more complete behaviour over what initgraph and closegraph
- actually do.
-
- Status: Minimal functionality.
-
- Related Functions:
-
- initgraph setgraphbufsize
-
-
- ΓòÉΓòÉΓòÉ 9.8. <detectgraph> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.9. drawpoly ΓòÉΓòÉΓòÉ
-
- void drawpoly(int numpoints, int *polypoints)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a polygon specified by numpoints points (each point is a vertex).
- *polypoints points to a sequence of numpointsx 2 integers. Each pair of
- integers gives the x and y coordinates of a vertex on the polygon.
-
- Note: The polygon is not automatically closed. In order to close the polygon,
- the last vertex must be the same as the first.
-
- Status: Working
-
- Related Functions:
-
- fillpoly floodfill graphresult setwritemode
-
-
- ΓòÉΓòÉΓòÉ 9.10. ellipse ΓòÉΓòÉΓòÉ
-
- void ellipse(int x,int y,int stangle,int endangle,int xradius,int yradius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws an elliptical arc in the current drawing colour. The ellipse is centered
- on (x,y) and the lengths of the horizontal and vertical axes are given by
- xradius and yradius respectively. The ellipse travels from stangle to endangle
- (specified in degrees). The angle increases in a counterclockwise direction,
- with 0 degrees at 3 o'clock. If stangle=0 and endangle=360, then a complete
- ellipse is drawn.
-
- Note: In BGI the linestyle parameter does not affect arcs, circles, ellipses,
- or pie slices. Only the thicknessparameter is used. This behaviour is
- maintained in the emulation.
-
- Status: Working
-
- Related Functions:
-
- arc circle fillellipse sector
-
-
- ΓòÉΓòÉΓòÉ 9.11. fillellipse ΓòÉΓòÉΓòÉ
-
- void fillellipse(int x,int y,int xradius,int yradius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws an ellipse centered on (x,y) with a width of xradius and a height of
- yradius, and fills it with the current fill colour and fill pattern. The
- ellipse is outlined using the current line color and width.
-
- Status: Working
-
- Related Functions:
-
- arc circle ellipse pieslice
-
-
- ΓòÉΓòÉΓòÉ 9.12. fillpoly ΓòÉΓòÉΓòÉ
-
- void fillpoly(int numpoints,int *polypoints)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws the outline of a polygon using the current line style and colour, like
- drawpoly, then fills the polygon using the current fill pattern and fill
- colour.
-
- *polypoints points to a sequence of numpointsx 2 integers. Each pair of
- integers gives the x and y coordinates of a vertex on the polygon.
-
- Status: Working
-
- Related Functions:
-
- drawpoly floodfill graphresult setfillstyle
-
-
- ΓòÉΓòÉΓòÉ 9.13. floodfill ΓòÉΓòÉΓòÉ
-
- void floodfill(int x,int y,int border)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Fills an arbitrary enclosed area using the current fill pattern and colour.
- (x,y) must be a point somewhere inside the area to be filled. The area bounded
- by the colour border is filled.
-
- Status: Working
-
- Related Functions:
-
- drawpoly fillpoly graphresult setcolor setfillstyle
-
-
- ΓòÉΓòÉΓòÉ 9.14. getarccoords ΓòÉΓòÉΓòÉ
-
- void getarccoords(struct arccoordstype arccoords)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Fills in the arccoordstype structure pointed to by arccoords with information
- from the last call to
-
- arc. The arccoordstype structure is defined (in graphics.h) as:
-
- struct arccoordstype {
- int x,y;
- int xstart, ystart, xend, yend;
- };
-
- The information in this structure defines the center point (x,y), the start
- point (xstart,ystart), and the end point (xend,yend).
-
- Status: Complete.
-
- Related Functions:
-
- arc fillellipse sector
-
-
- ΓòÉΓòÉΓòÉ 9.15. <getaspectratio> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.16. getbkcolor ΓòÉΓòÉΓòÉ
-
- int getbkcolor(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the current background colour.
-
- Status: Complete.
-
- Related Functions:
-
- getcolor getmaxcolor getpalette setbkcolor
-
-
- ΓòÉΓòÉΓòÉ 9.17. getcolor ΓòÉΓòÉΓòÉ
-
- int getcolor(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the current line drawing color.
-
- Status: Complete.
-
- Related Functions:
-
- getbkcolor getmaxcolor getpalette setcolor
-
-
- ΓòÉΓòÉΓòÉ 9.18. <getdefaultpalette> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.19. <getdrivername> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.20. getfillpattern ΓòÉΓòÉΓòÉ
-
- void getfillpattern(char *pattern)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Copies the user-defined fill pattern, previously set by the routine
- setfillpattern into the 8 byte memory area pointed to by pattern. Each byte in
- pattern corresponds to 8 pixels in the pattern. Whenever a bit is 1, the pixel
- in the pattern will be set.
-
- Status: Complete, but inefficient. Requires a more efficient algorithm.
-
- Related Functions:
-
- getfillsettings setfillpattern
-
-
- ΓòÉΓòÉΓòÉ 9.21. getfillsettings ΓòÉΓòÉΓòÉ
-
- void getfillsettings(struct fillsettingstype *fillinfo)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Gets the current fill pattern and colour and puts them in the structure pointed
- to by fillinfo. The fillsettingstype structure is defined as:
-
- struct fillsettingstype {
- int pattern;
- int color;
- };
-
- If the current fill pattern is one of pre-defined fill patterns, its number
- will be stored in fillinfo->pattern. If the current fill pattern is a
- user-defined pattern, the USER_FILL will be stored in fillinfo->pattern.
-
- Status: Complete.
-
- Related Functions:
-
- getfillpattern setfillpattern setfillstyle
-
-
- ΓòÉΓòÉΓòÉ 9.22. getgraphmode ΓòÉΓòÉΓòÉ
-
- int getgraphmode(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Gets the current graph mode. A successful call to initgraph is required before
- valid results can be returned from this function.
-
- Status: Complete.
-
- Related Functions:
-
- getmoderange restorecrtmode setgraphmode
-
-
- ΓòÉΓòÉΓòÉ 9.23. <getimage> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.24. getlinesettings ΓòÉΓòÉΓòÉ
-
- void getlinesettings(struct linesettingstype *lineinfo)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Gets information about the current linestyle and thickness in the structure
- pointed to by lineinfo. The linesettingstype structure is defined as:
-
- struct linesettingstype {
- int linestyle;
- unsigned upattern;
- int thickness;
- };
-
- Currently, user-defined linestyles are not supported, so the value of the
- upattern field is not defined.
-
- Status: Complete.
-
- Related Functions:
-
- setlinestyle
-
-
- ΓòÉΓòÉΓòÉ 9.25. getmaxcolor ΓòÉΓòÉΓòÉ
-
- int getmaxcolor(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the maximum color value permitted for the mode currently being
- emulated. Does not necessarily relate to the maximum number of color values
- that the screen hardware can display. Note that if you pass a colour value
- higher than this to setcolor, the actual color will be calculated as
-
- requested_color % maximum_color
-
- Status: Complete.
-
- Related Functions:
-
- getbkcolor getcolor getpalette getpalettesize setcolor
-
-
- ΓòÉΓòÉΓòÉ 9.26. getmaxmode ΓòÉΓòÉΓòÉ
-
- int getmaxmode(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the maximum mode number that may be specified for the driver currently
- being emulated. The minimum value it will return is 0.
-
- Status: Complete.
-
- Related Functions:
-
- getmodename getmoderange
-
-
- ΓòÉΓòÉΓòÉ 9.27. getmaxx ΓòÉΓòÉΓòÉ
-
- int getmaxx(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the maximum permitted x-coordinate value for the graphics mode
- currently being emulated.
-
- Status: Complete.
-
- Related Functions:
-
- getmaxy getx gety
-
-
- ΓòÉΓòÉΓòÉ 9.28. getmaxy ΓòÉΓòÉΓòÉ
-
- int getmaxy(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the maximum permitted y-coordinate value for the graphics mode
- currently being emulated.
-
- Status: Complete.
-
- Related Functions:
-
- getmaxx getx gety
-
-
- ΓòÉΓòÉΓòÉ 9.29. <getmodename> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.30. getmoderange ΓòÉΓòÉΓòÉ
-
- void getmaxmode(int graphdriver,int *lomode,int *himode)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Gets the range of valid graphics modes for a given driver. The lowest allowed
- mode value is returned in lomode and the highest in himode. If a value of -1
- is specified for graphdriver the modes for the currently loaded driver are
- given. If any other negative value is specified, -1 is given for both lomode
- and himode. Currently, no checking is done to see if the value for graphdriver
- is too high.
-
- Status: Complete, except possibly for some error checking.
-
- Related Functions:
-
- getgraphmode getmaxmode getmodename initgraph setgraphmode
-
-
- ΓòÉΓòÉΓòÉ 9.31. <getpalette> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.32. <getpalettesize> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.33. <getpixel> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.34. gettextsettings ΓòÉΓòÉΓòÉ
-
- void gettextsettings(struct textsettingstype *texttypeinfo)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns information about the current font. The textsettingstype structure is
- defined as:
-
- struct textsettingstype {
- int font;
- int direction;
- int charsize;
- int horiz;
- int vert;
- }
-
- font is the currently selected font number, direction is the current text
- direction, charsize is the scaling factor, horiz is the horizontal alignment,
- and vert is the vertical alignment.
-
- Status: Complete.
-
- Related Functions:
-
- outtext outtextxy registerbgifont settextjustify settextstyle setusercharsize
- textheight textwidth
-
-
- ΓòÉΓòÉΓòÉ 9.35. <getviewsettings> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.36. getx ΓòÉΓòÉΓòÉ
-
- int getx(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the x coordinate of the graphics cursor current position.
-
- Status: Will need to be adapted when viewports are implemented.
-
- Related Functions:
-
- getmaxx getmaxy getviewsettings gety moveto
-
-
- ΓòÉΓòÉΓòÉ 9.37. gety ΓòÉΓòÉΓòÉ
-
- int getx(void)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Returns the y coordinate of the graphics cursor current position.
-
- Status: Will need to be adapted when viewports are implemented.
-
- Related Functions:
-
- getmaxx getmaxy getviewsettings getx moveto
-
-
- ΓòÉΓòÉΓòÉ 9.38. <graphdefaults> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.39. <grapherrormsg> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.40. <_graphfreemem> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.41. <_graphgetmem> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.42. <graphresult> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.43. <imagesize> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.44. initgraph ΓòÉΓòÉΓòÉ
-
- initgraph(int *driver,int *mode,int *pathtodriver)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- In BGI, initializes the graphics system by loading a driver and putting the
- system in graphics mode.
-
- In BGIEM, the initgraph/closegraph pair is not yet working as intended.
- Currently, a new window is created as soon as the program starts. Initgraph
- merely performs some initialization functions. Closegraph does not cause the
- window to disappear, and it does not yet fully clean up after initgraph.
-
- Eventually, the intention is to have initgraph open a new window. Closegraph
- will optionally destroy that window, or leave it until the user destroys it. A
- subsequent initgraph will open a new window, possibly emulating a different
- mode. However, some technical issues remain to be resolved before this can be
- done.
-
- BGIEM simulates the resolution and colour range of the mode selected. With the
- exception of the 8514 modes, all of the modes emulated are 16 color or less,
- which means that they can be accurately simulated on any of the hardware
- supported by OS/2. 256 color modes will be supported by dithering on 16 color
- hardware, or exactly on 16 color hardware. This has not been tested yet,
- however.
-
- Currently, the initial window size is determined by the operating system. When
- the window is created, if it is too small to display the entire emulated
- window, scroll bars are created to allow the user to see the entire emulated
- graphic area. This area of behaviour is only loosly implemented so far, so do
- not be surprised by strange behaviour.
-
- Note: The pathtodriver parameter is ignored, since no drivers are actually
- loaded. Also, because of this, you cannot use any custom drivers that may have
- been implemented. Some time in the future, BGIEM will allow user-defined modes
- to be created with custom pixel and colour resolution.
-
- Note: Autodetection is not yet supported.
-
- Status: Partially implemented. Major behaviour changes to come.
-
- Related Functions:
-
- closegraph detectgraph getdefaultpalette getdrivername getgraphmode
- getmoderange graphdefaults _graphgetmem graphresult installuserdriver
- registerbgidriver registerbgifont restorecrtmode setgraphbufsize setgraphmode
-
-
- ΓòÉΓòÉΓòÉ 9.45. <installuserdriver> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.46. <installuserfont> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.47. line ΓòÉΓòÉΓòÉ
-
- void line(int x1,int y1,int x2,int y2)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a line in the current colour and linestyle between (x1,y1) and (x2,y2).
- The current position is not updated.
-
- Status: Working.
-
- Related Functions:
-
- getlinesettings linerel lineto setcolor setlinestyle setwritemode
-
-
- ΓòÉΓòÉΓòÉ 9.48. linerel ΓòÉΓòÉΓòÉ
-
- void linerel(int dx,int dy)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a line from the current position to a relative position that is (dx,dy)
- away. Ie, if the current position is (x,y), then the line is drawn from (x,y)
- to (x+dx,y+dy). The current position is updated to the line end point.
-
- Status: Working.
-
- Related Functions:
-
- getlinesettings line lineto setcolor setlinestyle setwritemode
-
-
- ΓòÉΓòÉΓòÉ 9.49. lineto ΓòÉΓòÉΓòÉ
-
- void lineto(int x,int y)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a line from the current position to (x,y) and updates the current
- position to (x,y).
-
- Status: Working.
-
- Related Functions:
-
- getlinesettings line linerel setcolor setlinestyle setwritemode
-
-
- ΓòÉΓòÉΓòÉ 9.50. moverel ΓòÉΓòÉΓòÉ
-
- void moverel(int dx,int dy)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Moves the current position dx pixels in the x direction and dydy pixels in the
- y direction.
-
- Status: Working.
-
- Related Functions:
-
- moveto
-
-
- ΓòÉΓòÉΓòÉ 9.51. moveto ΓòÉΓòÉΓòÉ
-
- void moveto(int x,int y)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Moves the current position to (x,y).
-
- Status: Working.
-
- Related Functions:
-
- moverel
-
-
- ΓòÉΓòÉΓòÉ 9.52. outtext ΓòÉΓòÉΓòÉ
-
- void outtext(char *textstring)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Displays a text string using the current font, font direction, font size, and
- the current text justification settings. The text is output at the current
- position. If the horizontal justification is LEFT_TEXT and the text direction
- is HORIZ_DIR the x-coordinate of the current position is increased by
- textwidth(textstring) Otherwise, the current position is not changed.
-
- Status: Working.
-
- Related Functions:
-
- gettextsettings outtextxy settextjustify textheight textwidth
-
-
- ΓòÉΓòÉΓòÉ 9.53. outtextxy ΓòÉΓòÉΓòÉ
-
- void outtextxy(int x,int y,char *textstring)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Displays a text string using the current font, font direction, font size, and
- the current text justification settings at the position specified by (x,y).
-
- Status: Working.
-
- Related Functions:
-
- gettextsettings outtext settextjustify textheight textwidth
-
-
- ΓòÉΓòÉΓòÉ 9.54. pieslice ΓòÉΓòÉΓòÉ
-
- void pieslice(int x,int y,int stangle,int endangle, int radius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a pieslice (sector of a circle) centered at (x,y) with a radius of radius
- The pieslice is drawn in the current colour and font, and filled using the
- current fill pattern and colour. The slice travels from stangle to endangle The
- angle increases in a counterclockwise direction, with 0 degrees at 3 o'clock.
-
- Note: In BGI the linestyle parameter does not affect arcs, circles, ellipses,
- or pie slices. Only the thicknessparameter is used. This behaviour is
- maintained in the emulation.
-
- Status: Working.
-
- Related Functions:
-
- fillellipse graphresult sector setfillstyle
-
-
- ΓòÉΓòÉΓòÉ 9.55. <putimage> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.56. putpixel ΓòÉΓòÉΓòÉ
-
- void putpixel(int x,int y,int color)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the pixel at the specified (x,y) coordinates to the specified colour.
- Does not alter the current drawing color or the current position.
-
- Status: Complete except for error handling
-
- Related Functions:
-
- getpixel putimage
-
-
- ΓòÉΓòÉΓòÉ 9.57. rectangle ΓòÉΓòÉΓòÉ
-
- void rectangle(int left,int top,int right,int bottom)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws a rectangle using the current line style, thickness and colour.
- (left,top) is the upper left corner, and (right,bottom) is the lower right
- corner.
-
- Status: Complete except for error handling
-
- Related Functions:
-
- bar bar3d setcolor setlinestyle
-
-
- ΓòÉΓòÉΓòÉ 9.58. <registerbgidriver> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.59. <registerbgifont> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.60. <restorecrtmode> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.61. sector ΓòÉΓòÉΓòÉ
-
- void sector(int x,int y,int stangle,int endangle,int xradius,int yradius)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Draws and fills an elliptical pie slice. (x,y) is the center point, xradius is
- the width, yradius is the height, and the angle sweeps from stangle to
- endangle. The sector is outlined using the current line settings, and filled
- using the current fill pattern and colour. The angle increases in a
- counterclockwise direction, with 0 degrees at 3 o'clock.
-
- Note: In BGI the linestyle parameter does not affect arcs, circles, ellipses,
- or pie slices. Only the thicknessparameter is used. This behaviour is
- maintained in the emulation.
-
- Status: Complete except for error handling
-
- Related Functions:
-
- arc circle ellipse getarccoords getaspectratio graphresult pieslice
- setfillpattern setfillstyle setgraphbufsize
-
-
- ΓòÉΓòÉΓòÉ 9.62. <setactivepage> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.63. <setallpalette> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.64. <setaspectratio> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.65. setbkcolor ΓòÉΓòÉΓòÉ
-
- void setbkcolor(int color)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the background color to color.
-
- Status: Working
-
- Related Functions:
-
- getbkcolor setallpalette setcolor setpalette
-
-
- ΓòÉΓòÉΓòÉ 9.66. setcolor ΓòÉΓòÉΓòÉ
-
- void setcolor(int color)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the current colour to color, which can range from 0 to getmaxcolor().
-
- Status: Working
-
- Related Functions:
-
- getcolor getmaxcolor graphresult setallpalette setbkcolor setpalette
-
-
- ΓòÉΓòÉΓòÉ 9.67. setfillpattern ΓòÉΓòÉΓòÉ
-
- void setfillpattern(char *upattern,int color)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the current fillstyle to the user-defined pattern specified by upattern.
- upattern is a pointer to an array of 8 bytes. Each byte corresponds to one row
- in the pattern, with each pixel value of 1 representing a pixel that is on in
- the pattern. The fill pattern colour is set to color. To change the fillstyle
- back to one of the pre-defined styles, call setfillstyle.
-
- Status: Complete except for error handling and optimization. Currently the
- method being used to transfer the pattern from upattern to presentation
- manager format is very simplistic, and can be sped up considerably.
-
- Related Functions:
-
- bar getfillpattern getfillsettings graphresult sector setfillstyle
-
-
- ΓòÉΓòÉΓòÉ 9.68. setfillstyle ΓòÉΓòÉΓòÉ
-
- void setfillstyle(int pattern,int color)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the current fillstyle to the style specified by pattern, and the current
- fill color to color Currently, the pre-defined Borland fill styles are mapped
- on to the pre-defined PM fill styles in the default style set. The match is
- very close, the only exception being the WIDE_DOT_FILL style, which is
- currently the same as CLOSE_DOT_FILL. The USER_FILL pattern should not be used
- to specify a user-defined pattern, instead call setfillpattern.
-
- Status: Complete except for error handling
-
- Related Functions:
-
- bar bar3d fillpoly floodfill getfillsettings graphresult pieslice sector
- setfillpattern
-
-
- ΓòÉΓòÉΓòÉ 9.69. <setgraphbufsize> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.70. <setgraphmode> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.71. setlinestyle ΓòÉΓòÉΓòÉ
-
- void setlinestyle(int linestyle,unsigned upattern,int thickness)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the linestyle for all lines drawn. Linestyle may be one of the following:
-
- o SOLID_LINE*
-
- o DOTTED_LINE*
-
- o CENTER_LINE*
-
- o DASHED_LINE*
-
- o DOUBLEDOT_LINE
-
- o LONGDASH_LINE
-
- o DASHDOUBLEDOT_LINE
-
- o INVISIBLE_LINE
-
- o ALTERNATE_LINE
-
- Note: The linestyles marked with an asterix (*) are those defined by BGI.
- These were mapped onto the Presentation Manager pre-defined linestyles that
- most closely matched the BGI ones. The other linestyles are those in
- Presentation Manager that have no BGI analog. Do not use these in code that
- you want to be backwards compatible to DOS.
-
- thickness specifies the width of subsequent lines. It can be either NORM_WIDTH
- - 1 pixel wide, or THICK_WIDTH - 3 pixels wide. This parameter is currently
- not supported because Presentation Manager does not support thick lines and
- line patterns at the same time. Hopefully, a workaround for this will be found
- before final release.
-
- upattern is not supported in BGIEM, because OS/2 does not support user-defined
- linestyles.
-
- Status: Working. No error handling. Still need support for thickness
- parameter.
-
- Related Functions:
-
- arc bar3d circle drawpoly ellipse getlinesettings graphresult line linerel
- lineto pieslice rectangle
-
-
- ΓòÉΓòÉΓòÉ 9.72. <setpalette> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.73. <setrgbpalette> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.74. settextjustify ΓòÉΓòÉΓòÉ
-
- void settextjustify(int horiz,int vert)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets how text is justified with respect to the current position (for outtext)
- or the specified drawing position (for outtextxy). The default settings are
- LEFT_TEXT for horiz and TOP_TEXT for vert. The following are the valid values:
-
- Description Name Value Action
-
- ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
- Γöéhoriz ΓöéLEFT_TEXT Γöé0 Γöéleft-justify text Γöé
- Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
- Γöé ΓöéCENTER_TEXT Γöé1 Γöécenter text Γöé
- Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
- Γöé ΓöéRIGHT_TEXT Γöé2 Γöéright-justify text Γöé
- Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
- Γöévert ΓöéBOTTOM_TEXT Γöé0 Γöéjustify from bottom Γöé
- Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
- Γöé ΓöéCENTER_TEXT Γöé1 Γöécenter text Γöé
- Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
- Γöé ΓöéTOP_TEXT Γöé2 Γöéjustify from top Γöé
- ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
-
- Status: Working. No error handling.
-
- Related Functions:
-
- gettextsettings graphresult outtext settextstyle
-
-
- ΓòÉΓòÉΓòÉ 9.75. settextstyle ΓòÉΓòÉΓòÉ
-
- void settextstyle(int font,int direction,int charsize)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the font, direction, and scaling factors for text.
-
- The BGI implementation that came with BC++ 3.0 offered quite a few stroked
- fonts. For each of these, an attempt was made to match them with one of the
- fonts that comes with OS/2 version 2.1 that looks similar. Each of the OS/2
- fonts is scaled to look about the same size as the BGI font. Later, it will be
- possible to set up other fonts installed under OS/2 to be accessible with this
- function call, but this is not supported yet. For the DEFAULT_FONT, which is a
- bit-mapped font, the VIO 8x8 font was mapped to it. Currently, scaling is not
- supported for this font in BGIEM, but it is supported for all of the "stroked"
- fonts, which are emulated using the Adobe scalabale fonts.
-
- direction may be horizontal text (left to right) or vertical text (rotated 90
- degrees counterclockwise). These are specified as either HORIZ_DIR, or
- VERT_DIR.
-
- charsize specifies the scaling for each font. Scaling of bit-mapped fonts is
- not currently supported. For scaling of stroked or scalable fonts, only two
- values are valid: 0, and 1. A value of 1 specifies the default size for the
- font, while a value of 0 specifies that the scaling should be taken from
- setusercharsize.
-
- Note: Although it is not documented to work this way, it appears that when BGI
- uses a charsize of 0 the usercharsize defaults to 1/1 for both x and y, but
- when charsize is 0, the size is equivalent to a usercharsize of 3/2 for both x
- and y. The behaviour of BGIEM reflects the observed actual behaviour, rather
- than the documented behaviour.
-
- Status: Working. No error handling. Would like to figure out a way to scale
- the bitmap font.
-
- Related Functions:
-
- gettextsettings graphresult installuserfont settextjustify setusercharsize
- textheight textwidth
-
-
- ΓòÉΓòÉΓòÉ 9.76. setusercharsize ΓòÉΓòÉΓòÉ
-
- void setusercharsize(int multx,int divx,int multy,int divy)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Specify multiply and divide factors to scale the text font by. The default
- width is scaled by multx/divx and the default height is scaled by multy/divy
- These settings only take effect if charsize equals 0, as set by a call to
- settextstyle.
-
- Status: Working. No error handling.
-
- Related Functions:
-
- gettextsettings graphresult settextstyle
-
-
- ΓòÉΓòÉΓòÉ 9.77. <setviewport> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.78. <setvisualpage> ΓòÉΓòÉΓòÉ
-
- Note: This function is not currently supported
-
-
- ΓòÉΓòÉΓòÉ 9.79. setwritemode ΓòÉΓòÉΓòÉ
-
- void setwritemode(int mode)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Sets the write mode to mode. There are two styles defined:
-
- o COPY_PUT = 0
-
- o XOR_PUT = 1
-
- When the write mode is COPY_PUT, the line drawn overwrites whatever is on the
- screen. When the write mode is XOR_PUT, the line is exclusive or'd with
- whatever is on the screen. The write mode only affects the line, linerel,
- lineto, rectangle, and drawpoly functions.
-
- Status: Complete.
-
- Related Functions:
-
- drawpoly line linerel lineto rectangle
-
-
- ΓòÉΓòÉΓòÉ 9.80. textheight ΓòÉΓòÉΓòÉ
-
- int textheight(char *textstring)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Determines the height of textstring in pixels, based on the currently selected
- font and scaling factor.
-
- Status: Complete.
-
- Related Functions:
-
- gettextsettings outtext outtextxy settextstyle textwidth
-
-
- ΓòÉΓòÉΓòÉ 9.81. textwidth ΓòÉΓòÉΓòÉ
-
- int textwidth(char *textstring)
-
- ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
-
- Determines the width of textstring in pixels, based on the currently selected
- font and scaling factor.
-
- Status: Complete.
-
- Related Functions:
-
- gettextsettings outtext outtextxy settextstyle textheight