~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Wine Cross Reference
wine/programs/oleview/main.h

Version: ~ [ wine-1.1.33 ] ~ [ wine-1.1.32 ] ~ [ wine-1.1.31 ] ~ [ wine-1.1.30 ] ~ [ wine-1.1.29 ] ~ [ wine-1.1.28 ] ~ [ wine-1.1.27 ] ~ [ wine-1.1.26 ] ~ [ wine-1.1.25 ] ~ [ wine-1.1.24 ] ~ [ wine-1.1.23 ] ~ [ wine-1.1.22 ] ~ [ wine-1.1.21 ] ~ [ wine-1.1.20 ] ~ [ wine-1.1.19 ] ~ [ wine-1.1.18 ] ~ [ wine-1.1.17 ] ~ [ wine-1.1.16 ] ~ [ wine-1.1.15 ] ~ [ wine-1.1.14 ] ~ [ wine-1.1.13 ] ~ [ wine-1.1.12 ] ~ [ wine-1.1.11 ] ~ [ wine-1.1.10 ] ~ [ wine-1.1.9 ] ~ [ wine-1.1.8 ] ~ [ wine-1.1.7 ] ~ [ wine-1.0.1 ] ~ [ wine-1.1.6 ] ~ [ wine-1.1.5 ] ~ [ wine-1.1.4 ] ~ [ wine-1.1.3 ] ~ [ wine-1.1.2 ] ~ [ wine-1.1.1 ] ~ [ wine-1.1.0 ] ~ [ wine-1.0 ] ~

  1 /*
  2  * OleView (main.h)
  3  *
  4  * Copyright 2006 Piotr Caban
  5  *
  6  * This library is free software; you can redistribute it and/or
  7  * modify it under the terms of the GNU Lesser General Public
  8  * License as published by the Free Software Foundation; either
  9  * version 2.1 of the License, or (at your option) any later version.
 10  *
 11  * This library is distributed in the hope that it will be useful,
 12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 14  * Lesser General Public License for more details.
 15  *
 16  * You should have received a copy of the GNU Lesser General Public
 17  * License along with this library; if not, write to the Free Software
 18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 19  */
 20 
 21 #define COBJMACROS
 22 
 23 #include <windows.h>
 24 #include <winreg.h>
 25 #include <commctrl.h>
 26 #include <unknwn.h>
 27 
 28 #ifdef NONAMELESSUNION
 29 # define U(x)  (x).u
 30 #else
 31 # define U(x)  (x)
 32 #endif
 33 
 34 #include "resource.h"
 35 
 36 #define MAX_LOAD_STRING 256
 37 #define MAX_WINDOW_WIDTH 30000
 38 #define MIN_FUNC_ID 0x60000000
 39 #define MIN_VAR_ID 0x40000000
 40 #define TAB_SIZE 4
 41 
 42 #define STATUS_WINDOW 2000
 43 #define TREE_WINDOW 2001
 44 #define TAB_WINDOW 2002
 45 #define TYPELIB_TREE 2003
 46 
 47 /*ItemInfo flags */
 48 #define REGTOP 1
 49 #define REGPATH 2
 50 #define SHOWALL 4
 51 #define INTERFACE 8
 52 
 53 typedef struct
 54 {
 55     HWND hMainWnd;
 56     HWND hPaneWnd;
 57     HWND hStatusBar;
 58     HWND hToolBar;
 59     HWND hTree;
 60     HWND hDetails;
 61     HWND hTypeLibWnd;
 62     HINSTANCE hMainInst;
 63     BOOL bExpert;
 64     DWORD dwClsCtx;
 65     WCHAR wszMachineName[MAX_LOAD_STRING];
 66 }GLOBALS;
 67 
 68 typedef struct
 69 {
 70     HWND left;
 71     HWND right;
 72     INT pos;
 73     INT size;
 74     INT width;
 75     INT height;
 76     INT last;
 77 }PANE;
 78 
 79 typedef struct
 80 {
 81     /* Main TreeView entries: */
 82     HTREEITEM hOC;    /* Object Classes */
 83     HTREEITEM hGBCC;  /* Grouped by Component Category */
 84     HTREEITEM hO1O;   /* OLE 1.0 Objects */
 85     HTREEITEM hCLO;   /* COM Library Objects */
 86     HTREEITEM hAO;    /* All Objects */
 87     HTREEITEM hAID;   /* Application IDs */
 88     HTREEITEM hTL;    /* Type Libraries */
 89     HTREEITEM hI;     /* Interfaces */
 90 }TREE;
 91 
 92 typedef struct
 93 {
 94     CHAR cFlag;
 95     WCHAR info[MAX_LOAD_STRING];
 96     WCHAR clsid[MAX_LOAD_STRING];
 97     WCHAR path[MAX_LOAD_STRING];
 98     BOOL loaded;
 99     IUnknown *pU;
100 }ITEM_INFO;
101 
102 typedef struct
103 {
104     HWND hStatic;
105     HWND hTab;
106     HWND hReg;
107 }DETAILS;
108 
109 typedef struct
110 {
111     HWND hPaneWnd;
112     HWND hTree;
113     HWND hEdit;
114     HWND hStatusBar;
115     WCHAR wszFileName[MAX_LOAD_STRING];
116 }TYPELIB;
117 
118 typedef struct
119 {
120     WCHAR *idl;
121     WCHAR wszInsertAfter[MAX_LOAD_STRING];
122     INT idlLen;
123     BOOL bPredefine;
124     BOOL bHide;
125 }TYPELIB_DATA;
126 
127 extern GLOBALS globals;
128 extern TREE tree;
129 extern TYPELIB typelib;
130 
131 /* Predefinitions: */
132 /* details.c */
133 HWND CreateDetailsWindow(HINSTANCE hInst);
134 void RefreshDetails(HTREEITEM item);
135 
136 /* oleview.c */
137 void RefreshMenu(HTREEITEM item);
138 
139 /* pane.c */
140 BOOL CreatePanedWindow(HWND hWnd, HWND *hWndCreated, HINSTANCE hInst);
141 BOOL PaneRegisterClass(void);
142 void SetLeft(HWND hParent, HWND hWnd);
143 void SetRight(HWND hParent, HWND hWnd);
144 
145 /* tree.c */
146 void EmptyTree(void);
147 void AddTreeEx(void);
148 void AddTree(void);
149 HWND CreateTreeWindow(HINSTANCE hInst);
150 BOOL CreateRegPath(HTREEITEM item, WCHAR *buffer, int bufSize);
151 void CreateInst(HTREEITEM item, WCHAR *wszMachineName);
152 void ReleaseInst(HTREEITEM item);
153 
154 /* typelib.c */
155 BOOL CreateTypeLibWindow(HINSTANCE hInst, WCHAR *wszFileName);
156 BOOL TypeLibRegisterClass(void);
157 void UpdateData(HTREEITEM item);
158 
159 /* interface.c */
160 BOOL IsInterface(HTREEITEM item);
161 void InterfaceViewer(HTREEITEM item);
162 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.