00001 00022 /* 00023 * $Id: vcongui.h,v 1.33 2006/06/11 04:16:14 weiym Exp $ 00024 * 00025 * MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks, 00026 * pSOS, ThreadX, NuCleus, OSE, and Win32. 00027 * 00028 * Copyright (C) 2002-2006 Feynman Software. 00029 * Copyright (C) 1998-2002 Wei Yongming. 00030 * 00031 * Some idea and source come from CCE (Console Chinese Environment) 00032 * Thank He Rui and Takashi MANABE for their great work and good license. 00033 * 00034 * The copyright statement of CCE and KON2: 00035 * 00036 * KON2 - Kanji ON Console - 00037 * Copyright (C) 1992-1996 Takashi MANABE (manabe@papilio.tutics.tut.ac.jp) 00038 * 00039 * CCE - Console Chinese Environment - 00040 * Copyright (C) 1998-1999 Rui He (herui@cs.duke.edu) 00041 * 00042 * Redistribution and use in source and binary forms, with or without 00043 * modification, are permitted provided that the following conditions 00044 * are met: 00045 * 00046 * 1. Redistributions of source code must retain the above copyright 00047 * notice, this list of conditions and the following disclaimer. 00048 * 2. Redistributions in binary form must reproduce the above copyright 00049 * notice, this list of conditions and the following disclaimer in the 00050 * documentation and/or other materials provided with the distribution. 00051 * 00052 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY 00053 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00054 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00055 * ARE DISCLAIMED. IN NO EVENT SHALL THE TERRENCE R. LAMBERT BE LIABLE 00056 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00057 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 00058 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00059 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00060 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00061 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00062 * SUCH DAMAGE. 00063 * 00064 */ 00065 00066 #ifndef _MGUI_VCONGUI_H 00067 #define _MGUI_VCONGUI_H 00068 00069 #ifdef __cplusplus 00070 extern "C" { 00071 #endif /* __cplusplus */ 00072 00081 #ifndef __cplusplus 00082 #ifndef __ECOS__ 00083 typedef enum {false, true} bool; 00084 #endif 00085 #endif 00086 00087 #define VCONGUI_VERSION "Version 0.5 (Nov. 2001)" 00088 00089 #define MIN_COLS 10 00090 #define MAX_COLS 100 00091 #define MIN_ROWS 10 00092 #define MAX_ROWS 60 00093 00094 #define GetCharWidth GetSysCharWidth 00095 #define GetCCharWidth GetSysCCharWidth 00096 #define GetCharHeight GetSysCharHeight 00097 00102 typedef struct _CHILDINFO 00103 { 00105 bool startupMessage; 00107 const char* startupStr; 00112 const char* execProg; 00114 const char* execArgs; 00115 00120 WNDPROC DefWinProc; 00122 bool fMenu; 00124 int left, top; 00126 int rows, cols; 00127 }CHILDINFO; 00129 typedef CHILDINFO* PCHILDINFO; 00130 00139 void* VCOnMiniGUI (void* data); 00140 00141 #ifndef _LITE_VERSION 00142 void* NewVirtualConsole (PCHILDINFO pChildInfo); 00143 #endif 00144 00147 #ifdef __cplusplus 00148 } 00149 #endif /* __cplusplus */ 00150 00151 #endif /* _MGUI_VCONGUI_H */ 00152 00153
1.4.2