2 ===========================================================================
3 Copyright (C) 1997-2006 Id Software, Inc.
5 This file is part of Quake 2 Tools source code.
7 Quake 2 Tools source code is free software; you can redistribute it
8 and/or modify it under the terms of the GNU General Public License as
9 published by the Free Software Foundation; either version 2 of the License,
10 or (at your option) any later version.
12 Quake 2 Tools source code is distributed in the hope that it will be
13 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with Quake 2 Tools source code; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 ===========================================================================
23 //*************************************************************
28 // Header for MRU support
32 // Gilles Vollant (100144.2636@compuserve.com)
34 //*************************************************************
39 #include "globaldefs.h"
41 #define NBMRUMENUSHOW 6 // Default number of MRU showed in the menu File
42 #define NBMRUMENU 9 // Default number of MRU stored
43 #define IDMRU 8000 // Default First ID of MRU
44 #ifdef OFS_MAXPATHNAME
45 #define MAXSIZEMRUITEM OFS_MAXPATHNAME
47 #define MAXSIZEMRUITEM 128 // Default max size of an entry
60 typedef MRUMENU FAR * LPMRUMENU;
63 LPMRUMENU CreateMruMenu (WORD wNbLruShowInit=NBMRUMENUSHOW,
64 WORD wNbLruMenuInit=NBMRUMENU,
65 WORD wMaxSizeLruItemInit=MAXSIZEMRUITEM,
66 WORD wIdMruInit=IDMRU);
68 LPMRUMENU CreateMruMenu (WORD wNbLruShowInit,
70 WORD wMaxSizeLruItemInit,
74 LPMRUMENU CreateMruMenuDefault();
75 void DeleteMruMenu (LPMRUMENU lpMruMenu);
77 void SetNbLruShow (LPMRUMENU lpMruMenu,WORD wNbLruShowInit);
78 BOOL SetMenuItem (LPMRUMENU lpMruMenu,WORD wItem,
80 BOOL GetMenuItem (LPMRUMENU lpMruMenu,WORD wItem,
81 BOOL fIDMBased,LPSTR lpItem,UINT uiSize);
82 BOOL DelMenuItem (LPMRUMENU lpMruMenu,WORD wItem,BOOL fIDMBased);
83 void AddNewItem (LPMRUMENU lpMruMenu,LPSTR lpItem);
84 void PlaceMenuMRUItem(LPMRUMENU lpMruMenu,HMENU hMenu,UINT uiItem);
86 BOOL SaveMruInIni (LPMRUMENU lpMruMenu,LPSTR lpszSection,LPSTR lpszFile);
87 BOOL LoadMruInIni (LPMRUMENU lpMruMenu,LPSTR lpszSection,LPSTR lpszFile);
89 BOOL SaveMruInReg (LPMRUMENU lpMruMenu,LPSTR lpszKey);
90 BOOL LoadMruInReg (LPMRUMENU lpMruMenu,LPSTR lpszKey);
98 WIN32KIND GetWin32Kind();
102 //////////////////////////////////////////////////////////////