Annotation of mstools/samples/sdktools/windiff/windiff.h, revision 1.1.1.1

1.1       root        1: 
                      2: /******************************************************************************\
                      3: *       This is a part of the Microsoft Source Code Samples. 
                      4: *       Copyright (C) 1993 Microsoft Corporation.
                      5: *       All rights reserved. 
                      6: *       This source code is only intended as a supplement to 
                      7: *       Microsoft Development Tools and/or WinHelp documentation.
                      8: *       See these sources for detailed information regarding the 
                      9: *       Microsoft samples programs.
                     10: \******************************************************************************/
                     11: 
                     12: /*
                     13:  * WINDIFF.H
                     14:  */
                     15: 
                     16: /* application-wide variables -------------------------------------*/
                     17: 
                     18: /* This is the section name in the win.ini file to which we
                     19:  * write profile info
                     20:  */
                     21: #define APPNAME "WinDiff"
                     22: 
                     23: /* A gmem_init() heap shared by the app. call gmem_get to alloc. */
                     24: extern HANDLE hHeap;
                     25: 
                     26: /* The instance handle for this app. Needed by anyone who uses resources
                     27:  * such as dialogs
                     28:  */
                     29: extern HINSTANCE hInst;
                     30: 
                     31: extern HWND hwndClient;
                     32: extern HWND hwndRCD;
                     33: 
                     34: /* global option flags-------------------------------------------  */
                     35: 
                     36: /* Which files do we show in outline mode ? all, changed... */
                     37: extern int outline_include;
                     38: 
                     39: /* Outline_include is an OR of the following */
                     40: #define INCLUDE_SAME            1
                     41: #define INCLUDE_DIFFER          2
                     42: #define INCLUDE_LEFTONLY        4
                     43: #define INCLUDE_RIGHTONLY       8
                     44: 
                     45: 
                     46: /* Do we ignore blanks during the line-by-line diff ? */
                     47: extern BOOL ignore_blanks;
                     48: 
                     49: /* Which line numbers do we show - left original, right original or none ?*/
                     50: extern int line_numbers;
                     51: 
                     52: /* What lines do we show in expand mode - all, left only, right only ? */
                     53: extern int expand_mode;
                     54: 
                     55: /*--- colour scheme ----------------------------------------------  */
                     56: 
                     57: /* Outline */
                     58: extern DWORD rgb_outlinehi;
                     59: 
                     60: /* Expand view */
                     61: extern DWORD rgb_leftfore;
                     62: extern DWORD rgb_leftback;
                     63: extern DWORD rgb_rightfore;
                     64: extern DWORD rgb_rightback;
                     65: extern DWORD rgb_mleftfore;
                     66: extern DWORD rgb_mleftback;
                     67: extern DWORD rgb_mrightfore;
                     68: extern DWORD rgb_mrightback;
                     69: 
                     70: /* Bar window */
                     71: extern DWORD rgb_barleft;
                     72: extern DWORD rgb_barright;
                     73: extern DWORD rgb_barcurrent;
                     74: 
                     75: 
                     76: 
                     77: /* -- display layout constants---------------------------------------*/
                     78: 
                     79: /* Percentage of width of window taken by bar display (when visible) */
                     80: #define BAR_WIN_WIDTH   10
                     81: 
                     82: /* Following are horizontal positions within the bar window, expressed
                     83:  * in percent of the width of the bar window
                     84:  */
                     85: #define L_POS_START     10      /* start of left position marker */
                     86: #define L_POS_WIDTH     5       /* width of left position marker */
                     87: #define R_POS_START     80      /* start of right position marker */
                     88: #define R_POS_WIDTH     5       /* width of right position marker */
                     89: 
                     90: #define L_UNMATCH_START 30      /* start of left bar for unmatched section */
                     91: #define L_UNMATCH_WIDTH 10      /* width of above */
                     92: #define R_UNMATCH_START 60      /* start of right bar for unmatch section */
                     93: #define R_UNMATCH_WIDTH 10      /* width of right unmatched section marker */
                     94: #define L_MATCH_START   30      /* start of left bar for matched section */
                     95: #define L_MATCH_WIDTH   10      /* width of left bar for matched section */
                     96: #define R_MATCH_START   60      /* start of right bar for matched section */
                     97: #define R_MATCH_WIDTH   10      /* width of right bar for matched section */
                     98: 
                     99: 
                    100: 
                    101: 
                    102: /* windiff.c functions */
                    103: void windiff_UI(BOOL bAttach);
                    104: BOOL Poll(void);                /* true if abort pending */
                    105: void SetNames(LPSTR names);
                    106: void SetStatus(LPSTR state);
                    107: 
                    108: /* in bar.c */
                    109: BOOL InitBarClass(HINSTANCE hInstance);
                    110: void BarDrawPosition(HWND hwndBar, HDC hdcIn, BOOL bErase);
                    111: 
                    112: /*-- private messages -- */
                    113: /* Send this to the main window. Return value is the VIEW handle */
                    114: #define TM_CURRENTVIEW  WM_USER
                    115: 
                    116: 
                    117: /* --- synchronisation ----------------------------------------- */
                    118: /*
                    119:  * In WIN32 we spawn worker threads to do time-consuming actions.
                    120:  * This causes a possible conflict with the UI thread when accessing the
                    121:  * BUSY flag.
                    122:  *
                    123:  * To protect against this we have a critical section. The UI thread
                    124:  * will get this before checking/changing the Busy flag,
                    125:  * The worker thread will get this before Busy flag* changes.
                    126:  *
                    127:  */
                    128: 
                    129: CRITICAL_SECTION CSWindiff;
                    130: 
                    131: #define WDEnter()       EnterCriticalSection(&CSWindiff);
                    132: #define WDLeave()       LeaveCriticalSection(&CSWindiff);
                    133: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.