00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef SCI_WCOMMON
00025 #define SCI_WCOMMON
00026
00027 #include <stdio.h>
00028 #include "core_math.h"
00029 #include "../../../../graphics/includes/bcg.h"
00030 #include "sciprint.h"
00031
00032
00033 #define MAX_LINE_LEN 512
00034 #define MAX_ID_LEN 50
00035 #define NO_CARET (-1)
00036 #define GBUFSIZE 512
00037
00038 typedef struct tagGFILE {
00039 HFILE hfile;
00040 char getbuf[GBUFSIZE];
00041 int getnext;
00042 int getleft;
00043 } GFILE;
00044
00045
00046 extern void WinExit(void);
00047 extern void Scistring(char *str);
00048 extern int C2F(clearexit)(integer *n);
00049
00050
00051 extern void TextSelectFont (LPTW lptw);
00052 extern void TextCopyClip (LPTW lptw);
00053 extern int CtrlCHit(LPTW lptw);
00054 extern void UpdateText(LPTW, int);
00055 extern void NewLine(LPTW);
00056 extern void TextPutStr(LPTW lptw, LPSTR str);
00057 extern void WriteRegistryTxt(LPTW lptw);
00058 extern void ReadRegistryTxt(LPTW lptw);
00059 extern void DragFunc(LPTW lptw, HDROP hdrop);
00060 extern int C2F(sxevents)();
00061
00062
00063 extern void SendMacro(LPTW lptw, UINT m);
00064 extern void LoadMacros(LPTW lptw);
00065 extern void CloseMacros(LPTW lptw);
00066 extern void MenuFixCurrentWin(int ivalue);
00067 extern BOOL SciOpenSave(HWND hWndParent, BYTE **s,BOOL save, char **d,int *ierr);
00068 extern int GetLine(char * buffer, int len, GFILE *gfile);
00069 extern void LeftJustify(char *d, char *s);
00070 extern GFILE * Gfopen(LPSTR lpszFileName, int fnOpenMode);
00071 extern void Gfclose(GFILE * gfile);
00072 extern int Gfgets(LPSTR lp, int size, GFILE *gfile);
00073
00074
00075 extern BOOL PrintSize(HDC printer, HWND hwnd, LPRECT lprect);
00076 extern void PrintRegister(LP_PRINT lpr);
00077 extern void PrintUnregister(LP_PRINT lpr);
00078 extern EXPORT BOOL CALLBACK PrintAbortProc(HDC hdcPrn, int code);
00079 extern EXPORT BOOL CALLBACK PrintDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
00080
00081
00082 extern HWND InitStatusBar (HWND hwndParent);
00083
00084
00085 extern int com_line(void);
00086 extern void switch_rlgets(int);
00087 extern int read_line (char *prompt, int interrupt);
00088
00089
00090 extern int InteractiveMode(void);
00091 extern void sciprint(char *fmt, ...);
00092 extern void sciprint_nd(char *fmt, ...);
00093 extern int sciprint2(int v,char *fmt,...);
00094 extern int Pause(LPSTR mess);
00095 extern void WinExit(void);
00096 extern void Scistring(char *str);
00097 extern int C2F(clearexit)(integer *n);
00098
00099
00100 extern BOOL DialogWindow();
00101
00102
00103 extern void add_history_nw();
00104 extern char * readline_nw (char *prompt, int interrupt);
00105
00106
00107 extern void add_history_win();
00108 extern char * readline_win (char *prompt,int interrupt);
00109
00110
00111 extern int WGFindMenuPos( BYTE **macros);
00112 extern void ScilabMenuAction(char *buf);
00113 extern void SendGraphMacro(struct BCG *ScilabGC, UINT m);
00114 extern void write_scilab(char *buf);
00115 extern void LoadGraphMacros(struct BCG *ScilabGC);
00116 extern void CloseGraphMacros(struct BCG *ScilabGC);
00117 extern int C2F(setmen)(integer *,char *,integer *,integer *,integer *,
00118 integer *);
00119 extern int C2F(unsmen)(integer *,char *,integer *,integer *,integer *,
00120 integer *);
00121 extern int C2F(chmenu)(integer *,char *,char *);
00122 extern int C2F(delbtn)(integer *,char *);
00123 extern int C2F(addmen)(integer *,char *,integer *,integer *,integer *,
00124 integer *,
00125 char *, integer *);
00126 extern void AddMenu(integer *win_num,char * button_name,char ** entries,
00127 integer * ne,integer *typ,char * fname, integer * ierr);
00128
00129
00130 extern int gp_printfile(HINSTANCE hInstance,HWND hwnd,char *filename, char *port);
00131
00132
00133 extern void SetXsciOn();
00134 extern int C2F(xscion)(int *i);
00135 extern int C2F(getmen)(char *,integer *,integer *);
00136 extern integer C2F(ismenu)(void);
00137 extern int GetCommand(char *);
00138 extern int StoreCommand1(char *,int);
00139 extern int StoreCommand(char *);
00140
00141
00142 extern char *alloc(unsigned long size,char * message);
00143 extern void squash_spaces(char *s);
00144 extern void lower_case(char *s);
00145 extern void os_error(char *str,int t_num);
00146 extern void int_error(char *str,int t_num);
00147 extern int instring(char *str,char c);
00148
00149
00150 extern void sci_windows_main(int,int *,char *,int,int *,int);
00151 extern void SciMenuSelect(char *Name);
00152 extern void C2F(setfbutn)(char *buf,int *rep);
00153 extern void C2F(fbutn)(char *buf,int *win,int *ent);
00154 extern void SignalCtrC(void);
00155
00157 extern void DebugGW (char *fmt, ...);
00158 extern int C2F(deletewin)(integer *number) ;
00159 extern void CopyToClipboardEMF(struct BCG *ScilabGC);
00160 extern void CopyToClipboardBitmap(struct BCG *ScilabGC);
00161 extern int CopyPrint(struct BCG *ScilabGC);
00162 extern void WriteRegistryGraph(struct BCG *ScilabGC);
00163 extern void ReadRegistryGraph(struct BCG *ScilabGC);
00164 extern int PushClickQueue(int win,int x,int y,int ibut,int motion,int release);
00165 extern int CheckClickQueue(int *win,int *x,int *y,int *ibut,int *motion,int *release);
00166 extern int ClearClickQueue(int win);
00167
00169 extern void Tape_Replay(char *,integer *,integer *,integer *,integer *,integer *,integer *,double *,double *,double *,double *);
00170 extern void C2F(SetDriver)();
00171 extern int C2F(dr)();
00172
00173
00174 extern int ScilabPsToEps(char orientation,char *filenamein,char *filenameout);
00175
00176
00177 extern int ScilabPsToTeX(char orientation,char *filenamein,char *filenameout,double xs,double ys);
00178
00179
00180 extern int C2F(mainsci)(int *, char *, int *, integer);
00181 extern void set_is_reading(int);
00182 extern int get_is_reading(void);
00183 extern int C2F(timer)(double *);
00184 extern int C2F(stimer)(void);
00185 extern int C2F(sigbas)(integer *);
00186
00187
00188 extern void reset_scig_click_handler __PARAMS((void));
00189 extern void reset_scig_deletegwin_handler __PARAMS((void));
00190 extern void reset_scig_command_handler __PARAMS((void));
00191 typedef int (*Scig_command_handler) __PARAMS((char *));
00192 extern Scig_command_handler set_scig_command_handler __PARAMS((Scig_command_handler f));
00193 typedef int (*Scig_click_handler) __PARAMS((int,int,int,int,int,int));
00194 extern Scig_click_handler set_scig_click_handler __PARAMS((Scig_click_handler f));
00195 typedef void (*Scig_deletegwin_handler) __PARAMS((int));
00196 extern Scig_deletegwin_handler set_scig_deletegwin_handler __PARAMS((Scig_deletegwin_handler f));
00197
00198 #endif
00199