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