1/* 2 * Author: William Chia-Wei Cheng (bill.cheng@acm.org) 3 * 4 * Copyright (C) 2001-2009, William Chia-Wei Cheng. 5 * 6 * This file may be distributed under the terms of the Q Public License 7 * as defined by Trolltech AS of Norway and appearing in the file 8 * LICENSE.QPL included in the packaging of this file. 9 * 10 * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING 11 * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 12 * PURPOSE. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, 13 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 14 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 15 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 16 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 * 18 * @(#)$Header: /mm2/home/cvs/bc-src/tgif/drawing.e,v 1.11 2011/05/16 16:21:57 william Exp $ 19 */ 20 21#ifndef _DRAWING_E_ 22#define _DRAWING_E_ 23 24extern int disableRedraw; 25extern int intrCheckInterval; 26extern int pasteInDrawTextMode; 27extern int pasteFromFileInDrawTextMode; 28extern int pasteCompoundTextInDrawTextMode; 29extern char pasteFromFileName[]; 30extern int copyInDrawTextMode; 31extern int copyDoubleByteStringInDrawTextMode; 32extern int numRedrawBBox; 33extern int numClipRecs; 34extern int clipOrdering; 35extern XRectangle clipRecs[]; 36extern int checkBBox; 37 38extern int btn1Warp; 39 40extern int userDisableRedraw; 41extern int executingCommands; 42extern int escPressedWhileExecutingCommands; 43extern int gnDisableShortcuts; /* used by ExecCmdsFromFile() */ 44extern int enableMouseWheel; 45extern int btn2PopupMainMenu; 46 47#ifdef _INCLUDE_FROM_DRAWING_C_ 48#undef extern 49#define extern 50#endif /*_INCLUDE_FROM_DRAWING_C_*/ 51 52extern void SetXorDrawGC ARGS_DECL((int xor_pixel)); 53extern void SetDefaultDrawWinClipRecs ARGS_DECL((void)); 54extern void SetDefaultIconWinClipRecs ARGS_DECL((void)); 55extern void ShowInterrupt ARGS_DECL((int)); 56extern int HideInterrupt ARGS_DECL((void)); 57extern void RedrawDummyWindow1 ARGS_DECL((void)); 58extern void RedrawDummyWindow2 ARGS_DECL((void)); 59extern void DummiesEventHandler ARGS_DECL((XEvent*)); 60extern int KeyPressEventIsEscape ARGS_DECL((XKeyEvent*)); 61extern int ESCPressed ARGS_DECL((void)); 62extern int CheckInterrupt ARGS_DECL((int check_esc)); 63extern void DrawClippedPixmap ARGS_DECL((Pixmap, Window, GC, int PixmapW, 64 int PixmapH, int LtX, int LtY)); 65extern void FillClippedRectangle ARGS_DECL((Window, GC, int LtX, int LtY, 66 int OrigW, int OrigH)); 67extern int ObjInVisibleLayer ARGS_DECL((struct ObjRec *)); 68extern int DrawObj ARGS_DECL((Window, struct ObjRec *)); 69extern void DrawPaperBoundary ARGS_DECL((Window)); 70extern void RedrawAnArea ARGS_DECL((struct ObjRec *BotObj, int LtX, 71 int LtY, int RbX, int RbY)); 72extern void RedrawAreas ARGS_DECL((struct ObjRec *BotObj, int LtX1, 73 int LtY1, int RbX1, int RbY1, 74 int LtX2, int LtY2, int RbX2, 75 int RbY2)); 76extern int RedrawDuringScrolling ARGS_DECL((void)); 77extern void RedrawAreaFromCache ARGS_DECL((double start_frac, 78 int scroll_all_the_way)); 79extern void RedrawDrawWindow ARGS_DECL((struct ObjRec *BotObj)); 80extern Pixmap DrawAllOnPixmap ARGS_DECL((int *LtX, int *LtY, int *W, int *H, 81 int nRedraw)); 82extern void ClearAndRedrawDrawWindow ARGS_DECL((void)); 83extern void ClearAndRedrawDrawWindowNoCurT ARGS_DECL((void)); 84 /* use to be ClearAndRedrawDrawWindowDontDrawCurText */ 85extern int BeginExecAnimate ARGS_DECL((void)); 86extern void EndExecAnimate ARGS_DECL((void)); 87extern void CleanUpDrawingWindow ARGS_DECL((void)); 88extern int ShortHand ARGS_DECL((XEvent *)); 89extern int ExecuteCmdById ARGS_DECL((int nCmdId, int nIndex)); 90extern int CallShortCut ARGS_DECL((char *Name, int argc, char *argv[], 91 char *Code, unsigned int State)); 92extern int SomethingDirty ARGS_DECL((void)); 93extern void EditIndexedAttrInEditor ARGS_DECL((int index)); 94extern void EditIndexedAttrGroupInEditor ARGS_DECL((int index)); 95extern TgMenu *CreateEditAttrInEditorMenu ARGS_DECL((TgMenu*, int X, int Y, 96 TgMenuInfo*, 97 int status_str_xlated)); 98extern TgMenu *CreateEditAttrGroupInEditorMenu ARGS_DECL((TgMenu*, int X, 99 int Y, TgMenuInfo*, int status_str_xlated)); 100extern void GetProperty ARGS_DECL((int index)); 101extern TgMenu *CreateGetPropertyMenu ARGS_DECL((TgMenu*, int X, int Y, 102 TgMenuInfo*, 103 int status_str_xlated)); 104extern void PeekDimension ARGS_DECL((int index)); 105extern TgMenu *CreatePeekDimensionMenu ARGS_DECL((TgMenu*, int X, int Y, 106 TgMenuInfo*, 107 int status_str_xlated)); 108extern int RefreshContextMenu ARGS_DECL((TgMenu*)); 109extern TgMenu *CreateContextMenu ARGS_DECL((TgMenu*, int X, int Y, 110 TgMenuInfo*, 111 int status_str_xlated)); 112extern int RefreshEditTextContextMenu ARGS_DECL((TgMenu*)); 113extern TgMenu *CreateEditTextContextMenu ARGS_DECL((TgMenu*, int X, int Y, 114 TgMenuInfo*, 115 int status_str_xlated)); 116extern int ContextMenu ARGS_DECL((int X, int Y, int TrackMenubar)); 117extern void HandleMotionForPortInDrawWindow ARGS_DECL((int mouse_x, 118 int mouse_y)); 119extern int HandlePressForPortInDrawWindow ARGS_DECL((int cancel)); 120extern int DrawingEventHandler ARGS_DECL((XEvent *)); 121 122#ifdef _INCLUDE_FROM_DRAWING_C_ 123#undef extern 124#ifndef _NO_RECURSIVE_EXTERN 125#define extern extern 126#endif /* ~_NO_RECURSIVE_EXTERN */ 127#endif /*_INCLUDE_FROM_DRAWING_C_*/ 128 129#endif /*_DRAWING_E_*/ 130