home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / patches / 7.3 / 7.3.639 < prev    next >
Encoding:
Internet Message Format  |  2012-11-20  |  30.7 KB

  1. To: vim_dev@googlegroups.com
  2. Subject: Patch 7.3.639
  3. Fcc: outbox
  4. From: Bram Moolenaar <Bram@moolenaar.net>
  5. Mime-Version: 1.0
  6. Content-Type: text/plain; charset=UTF-8
  7. Content-Transfer-Encoding: 8bit
  8. ------------
  9.  
  10. Patch 7.3.639
  11. Problem:    It's not easy to build Vim on Windows with XPM support.
  12. Solution:   Include the required files, they are quite small.  Update the
  13.         MSVC makefile to use them.  Binary files are in the next patch.
  14.         (Sergey Khorev)
  15. Files:        src/xpm/COPYRIGHT, src/xpm/README.txt, src/xpm/include/simx.h,
  16.         src/xpm/include/xpm.h, src/Make_mvc.mak, src/bigvim.bat,
  17.         src/bigvim64.bat, Filelist
  18.  
  19.  
  20. *** ../vim-7.3.638/src/xpm/COPYRIGHT    1970-01-01 01:00:00.000000000 +0100
  21. --- src/xpm/COPYRIGHT    1998-03-19 23:51:00.000000000 +0100
  22. ***************
  23. *** 0 ****
  24. --- 1,31 ----
  25. + /*
  26. +  * Copyright (C) 1989-95 GROUPE BULL
  27. +  *
  28. +  * Permission is hereby granted, free of charge, to any person obtaining a copy
  29. +  * of this software and associated documentation files (the "Software"), to
  30. +  * deal in the Software without restriction, including without limitation the
  31. +  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  32. +  * sell copies of the Software, and to permit persons to whom the Software is
  33. +  * furnished to do so, subject to the following conditions:
  34. +  *
  35. +  * The above copyright notice and this permission notice shall be included in
  36. +  * all copies or substantial portions of the Software.
  37. +  *
  38. +  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  39. +  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  40. +  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  41. +  * GROUPE BULL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  42. +  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  43. +  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  44. +  *
  45. +  * Except as contained in this notice, the name of GROUPE BULL shall not be
  46. +  * used in advertising or otherwise to promote the sale, use or other dealings
  47. +  * in this Software without prior written authorization from GROUPE BULL.
  48. +  */
  49. + Arnaud LE HORS      BULL Research FRANCE -- Koala Project 
  50. +                     (XPM - X PixMap format version 2 & 3)
  51. +     Internet:       lehors@sophia.inria.fr
  52. + Surface Mail:       Arnaud LE HORS, INRIA - Sophia Antipolis, 
  53. +                     2004, route des Lucioles, 06565 Valbonne Cedex -- FRANCE
  54. +  Voice phone:       (33) 93.65.77.71, Fax: (33) 93 65 77 66, Telex: 97 00 50 F
  55. *** ../vim-7.3.638/src/xpm/README.txt    1970-01-01 01:00:00.000000000 +0100
  56. --- src/xpm/README.txt    2012-08-29 13:29:17.000000000 +0200
  57. ***************
  58. *** 0 ****
  59. --- 1,23 ----
  60. + This is XPM library compiled for Windows which is intended for use with Vim
  61. + 'signs' feature.
  62. + Libraries in x86 directory were compiled with MSVC6 and MinGW. Proposed
  63. + commands to compile Vim are:
  64. + Any version of MSVC starting from version 6.0:
  65. + nmake -f Make_mvc.mak GUI=yes CSCOPE=yes NETBEANS=yes XPM=e:\hg\xpm\x86
  66. + MinGW:
  67. + mingw32-make -f Make_ming.mak GUI=yes CSCOPE=yes XPM=e:/hg/xpm/x86
  68. + Microsoft Visual C++ on x64 (tested with versions 2008 and 2010):
  69. + nmake -f Make_mvc.mak GUI=yes CSCOPE=yes XPM=E:\HG\xpm\x64
  70. + To test, open some file in Vim and execute commands below:
  71. + :exe 'sign define vimxpm icon='.$VIMRUNTIME.'\\vim32x32.xpm'
  72. + :exe 'sign place 1 line=1 name=vimxpm file='.expand('%:p')
  73. + See COPYRIGHT for XPM licence.
  74. + If you have questions please email sergey.khorev@gmail.com.
  75. *** ../vim-7.3.638/src/xpm/include/simx.h    1970-01-01 01:00:00.000000000 +0100
  76. --- src/xpm/include/simx.h    1998-03-19 23:51:00.000000000 +0100
  77. ***************
  78. *** 0 ****
  79. --- 1,139 ----
  80. + /*
  81. +  * Copyright (C) 1989-95 GROUPE BULL
  82. +  *
  83. +  * Permission is hereby granted, free of charge, to any person obtaining a copy
  84. +  * of this software and associated documentation files (the "Software"), to
  85. +  * deal in the Software without restriction, including without limitation the
  86. +  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  87. +  * sell copies of the Software, and to permit persons to whom the Software is
  88. +  * furnished to do so, subject to the following conditions:
  89. +  *
  90. +  * The above copyright notice and this permission notice shall be included in
  91. +  * all copies or substantial portions of the Software.
  92. +  *
  93. +  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  94. +  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  95. +  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  96. +  * GROUPE BULL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  97. +  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  98. +  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  99. +  *
  100. +  * Except as contained in this notice, the name of GROUPE BULL shall not be
  101. +  * used in advertising or otherwise to promote the sale, use or other dealings
  102. +  * in this Software without prior written authorization from GROUPE BULL.
  103. +  */
  104. + /*****************************************************************************\
  105. + * simx.h: 0.1a                                                                *
  106. + *                                                                             *
  107. + * This emulates some Xlib functionality for MSW. It's not a general solution, *
  108. + * it is close related to XPM-lib. It is only intended to satisfy what is need *
  109. + * there. Thus allowing to read XPM files under MS windows.                    *
  110. + *                                                                             *
  111. + * Developed by HeDu 3/94 (hedu@cul-ipn.uni-kiel.de)                           *
  112. + \*****************************************************************************/
  113. + #ifndef _SIMX_H
  114. + #define _SIMX_H
  115. + #ifdef FOR_MSW
  116. + #include "windows.h"            /* MS windows GDI types */
  117. + /*
  118. +  * minimal portability layer between ansi and KR C
  119. +  */
  120. + /* this comes from xpm.h, and is here again, to avoid complicated
  121. +     includes, since this is included from xpm.h */
  122. + /* these defines get undefed at the end of this file */
  123. + #if __STDC__ || defined(__cplusplus) || defined(c_plusplus)
  124. +  /* ANSI || C++ */
  125. + #define FUNC(f, t, p) extern t f p
  126. + #define LFUNC(f, t, p) static t f p
  127. + #else /* k&R */
  128. + #define FUNC(f, t, p) extern t f()
  129. + #define LFUNC(f, t, p) static t f()
  130. + #endif
  131. + FUNC(boundCheckingMalloc, void *, (long s));
  132. + FUNC(boundCheckingCalloc, void *, (long num, long s));
  133. + FUNC(boundCheckingRealloc, void *, (void *p, long s));
  134. + /* define MSW types for X window types,
  135. +    I don't know much about MSW, but the following defines do the job */
  136. + typedef HDC Display;            /* this should be similar */
  137. + typedef void *Screen;            /* not used */
  138. + typedef void *Visual;            /* not used yet, is for GRAY, COLOR,
  139. +                      * MONO */
  140. + typedef void *Colormap;            /* should be COLORPALETTE, not done
  141. +                      * yet */
  142. + typedef COLORREF Pixel;
  143. + #define PIXEL_ALREADY_TYPEDEFED        /* to let xpm.h know about it */
  144. + typedef struct {
  145. +     Pixel pixel;
  146. +     BYTE red, green, blue;
  147. + }      XColor;
  148. + typedef struct {
  149. +     HBITMAP bitmap;
  150. +     unsigned int width;
  151. +     unsigned int height;
  152. +     unsigned int depth;
  153. + }      XImage;
  154. + #if defined(__cplusplus) || defined(c_plusplus)
  155. + extern "C" {
  156. + #endif
  157. + /* some replacements for X... functions */
  158. + /* XDefaultXXX */
  159. +     FUNC(XDefaultVisual, Visual *, (Display *display, Screen *screen));
  160. +     FUNC(XDefaultScreen, Screen *, (Display *d));
  161. +     FUNC(XDefaultColormap, Colormap *, (Display *display, Screen *screen));
  162. +     FUNC(XDefaultDepth, int, (Display *d, Screen *s));
  163. + /* color related */
  164. +     FUNC(XParseColor, int, (Display *, Colormap *, char *, XColor *));
  165. +     FUNC(XAllocColor, int, (Display *, Colormap *, XColor *));
  166. +     FUNC(XQueryColors, void, (Display *display, Colormap *colormap,
  167. +                   XColor *xcolors, int ncolors));
  168. +     FUNC(XFreeColors, int, (Display *d, Colormap cmap,
  169. +                 unsigned long pixels[],
  170. +                 int npixels, unsigned long planes));
  171. + /* XImage */
  172. +     FUNC(XCreateImage, XImage *, (Display *, Visual *, int depth, int format,
  173. +                   int x, int y, int width, int height,
  174. +                   int pad, int foo));
  175. + /* free and destroy bitmap */
  176. +     FUNC(XDestroyImage, void /* ? */ , (XImage *));
  177. + /* free only, bitmap remains */
  178. +     FUNC(XImageFree, void, (XImage *));
  179. + #if defined(__cplusplus) || defined(c_plusplus)
  180. + } /* end of extern "C" */
  181. + #endif /* cplusplus */
  182. + #define ZPixmap 1            /* not really used */
  183. + #define XYBitmap 1            /* not really used */
  184. + #ifndef True
  185. + #define True 1
  186. + #define False 0
  187. + #endif
  188. + #ifndef Bool
  189. + typedef BOOL Bool;        /* take MSW bool */
  190. + #endif
  191. + /* make these local here, simx.c gets the same from xpm.h */
  192. + #undef LFUNC
  193. + #undef FUNC
  194. + #endif /* def FOR_MSW */
  195. + #endif /* _SIMX_H */
  196. *** ../vim-7.3.638/src/xpm/include/xpm.h    1970-01-01 01:00:00.000000000 +0100
  197. --- src/xpm/include/xpm.h    1998-03-19 23:51:00.000000000 +0100
  198. ***************
  199. *** 0 ****
  200. --- 1,501 ----
  201. + /*
  202. +  * Copyright (C) 1989-95 GROUPE BULL
  203. +  *
  204. +  * Permission is hereby granted, free of charge, to any person obtaining a copy
  205. +  * of this software and associated documentation files (the "Software"), to
  206. +  * deal in the Software without restriction, including without limitation the
  207. +  * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  208. +  * sell copies of the Software, and to permit persons to whom the Software is
  209. +  * furnished to do so, subject to the following conditions:
  210. +  *
  211. +  * The above copyright notice and this permission notice shall be included in
  212. +  * all copies or substantial portions of the Software.
  213. +  *
  214. +  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  215. +  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  216. +  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  217. +  * GROUPE BULL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  218. +  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  219. +  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  220. +  *
  221. +  * Except as contained in this notice, the name of GROUPE BULL shall not be
  222. +  * used in advertising or otherwise to promote the sale, use or other dealings
  223. +  * in this Software without prior written authorization from GROUPE BULL.
  224. +  */
  225. + /*****************************************************************************\
  226. + * xpm.h:                                                                      *
  227. + *                                                                             *
  228. + *  XPM library                                                                *
  229. + *  Include file                                                               *
  230. + *                                                                             *
  231. + *  Developed by Arnaud Le Hors                                                *
  232. + \*****************************************************************************/
  233. + /*
  234. +  * The code related to FOR_MSW has been added by
  235. +  * HeDu (hedu@cul-ipn.uni-kiel.de) 4/94
  236. +  */
  237. + /*
  238. +  * The code related to AMIGA has been added by
  239. +  * Lorens Younes (d93-hyo@nada.kth.se) 4/96
  240. +  */
  241. + #ifndef XPM_h
  242. + #define XPM_h
  243. + /*
  244. +  * first some identification numbers:
  245. +  * the version and revision numbers are determined with the following rule:
  246. +  * SO Major number = LIB minor version number.
  247. +  * SO Minor number = LIB sub-minor version number.
  248. +  * e.g: Xpm version 3.2f
  249. +  *      we forget the 3 which is the format number, 2 gives 2, and f gives 6.
  250. +  *      thus we have XpmVersion = 2 and XpmRevision = 6
  251. +  *      which gives  SOXPMLIBREV = 2.6
  252. +  *
  253. +  * Then the XpmIncludeVersion number is built from these numbers.
  254. +  */
  255. + #define XpmFormat 3
  256. + #define XpmVersion 4
  257. + #define XpmRevision 11
  258. + #define XpmIncludeVersion ((XpmFormat * 100 + XpmVersion) * 100 + XpmRevision)
  259. + #ifndef XPM_NUMBERS
  260. + #ifdef FOR_MSW
  261. + # define SYSV            /* uses memcpy string.h etc. */
  262. + # include <malloc.h>
  263. + # include "simx.h"        /* defines some X stuff using MSW types */
  264. + #define NEED_STRCASECMP        /* at least for MSVC++ */
  265. + #else /* FOR_MSW */
  266. + # ifdef AMIGA
  267. + #  include "amigax.h"
  268. + # else /* not AMIGA */
  269. + #  include <X11/Xlib.h>
  270. + #  include <X11/Xutil.h>
  271. + # endif /* not AMIGA */
  272. + #endif /* FOR_MSW */
  273. + /* let's define Pixel if it is not done yet */
  274. + #if ! defined(_XtIntrinsic_h) && ! defined(PIXEL_ALREADY_TYPEDEFED)
  275. + typedef unsigned long Pixel;    /* Index into colormap */
  276. + # define PIXEL_ALREADY_TYPEDEFED
  277. + #endif
  278. + /* make sure we know whether function prototypes are needed or not */
  279. + #ifndef NeedFunctionPrototypes
  280. + # if defined(__STDC__) || defined(__cplusplus) || defined(c_plusplus)
  281. + #  define NeedFunctionPrototypes 1
  282. + # else
  283. + #  define NeedFunctionPrototypes 0
  284. + # endif
  285. + #endif
  286. + /* Return ErrorStatus codes:
  287. +  * null     if full success
  288. +  * positive if partial success
  289. +  * negative if failure
  290. +  */
  291. + #define XpmColorError    1
  292. + #define XpmSuccess       0
  293. + #define XpmOpenFailed   -1
  294. + #define XpmFileInvalid  -2
  295. + #define XpmNoMemory     -3
  296. + #define XpmColorFailed  -4
  297. + typedef struct {
  298. +     char *name;            /* Symbolic color name */
  299. +     char *value;        /* Color value */
  300. +     Pixel pixel;        /* Color pixel */
  301. + }      XpmColorSymbol;
  302. + typedef struct {
  303. +     char *name;            /* name of the extension */
  304. +     unsigned int nlines;    /* number of lines in this extension */
  305. +     char **lines;        /* pointer to the extension array of strings */
  306. + }      XpmExtension;
  307. + typedef struct {
  308. +     char *string;        /* characters string */
  309. +     char *symbolic;        /* symbolic name */
  310. +     char *m_color;        /* monochrom default */
  311. +     char *g4_color;        /* 4 level grayscale default */
  312. +     char *g_color;        /* other level grayscale default */
  313. +     char *c_color;        /* color default */
  314. + }      XpmColor;
  315. + typedef struct {
  316. +     unsigned int width;        /* image width */
  317. +     unsigned int height;    /* image height */
  318. +     unsigned int cpp;        /* number of characters per pixel */
  319. +     unsigned int ncolors;    /* number of colors */
  320. +     XpmColor *colorTable;    /* list of related colors */
  321. +     unsigned int *data;        /* image data */
  322. + }      XpmImage;
  323. + typedef struct {
  324. +     unsigned long valuemask;    /* Specifies which attributes are defined */
  325. +     char *hints_cmt;        /* Comment of the hints section */
  326. +     char *colors_cmt;        /* Comment of the colors section */
  327. +     char *pixels_cmt;        /* Comment of the pixels section */
  328. +     unsigned int x_hotspot;    /* Returns the x hotspot's coordinate */
  329. +     unsigned int y_hotspot;    /* Returns the y hotspot's coordinate */
  330. +     unsigned int nextensions;    /* number of extensions */
  331. +     XpmExtension *extensions;    /* pointer to array of extensions */
  332. + }      XpmInfo;
  333. + typedef int (*XpmAllocColorFunc)(
  334. + #if NeedFunctionPrototypes
  335. +     Display*            /* display */,
  336. +     Colormap            /* colormap */,
  337. +     char*            /* colorname */,
  338. +     XColor*            /* xcolor */,
  339. +     void*            /* closure */
  340. + #endif
  341. + );
  342. + typedef int (*XpmFreeColorsFunc)(
  343. + #if NeedFunctionPrototypes
  344. +     Display*            /* display */,
  345. +     Colormap            /* colormap */,
  346. +     Pixel*            /* pixels */,
  347. +     int                /* npixels */,
  348. +     void*            /* closure */
  349. + #endif
  350. + );
  351. + typedef struct {
  352. +     unsigned long valuemask;        /* Specifies which attributes are
  353. +                        defined */
  354. +     Visual *visual;            /* Specifies the visual to use */
  355. +     Colormap colormap;            /* Specifies the colormap to use */
  356. +     unsigned int depth;            /* Specifies the depth */
  357. +     unsigned int width;            /* Returns the width of the created
  358. +                        pixmap */
  359. +     unsigned int height;        /* Returns the height of the created
  360. +                        pixmap */
  361. +     unsigned int x_hotspot;        /* Returns the x hotspot's
  362. +                        coordinate */
  363. +     unsigned int y_hotspot;        /* Returns the y hotspot's
  364. +                        coordinate */
  365. +     unsigned int cpp;            /* Specifies the number of char per
  366. +                        pixel */
  367. +     Pixel *pixels;            /* List of used color pixels */
  368. +     unsigned int npixels;        /* Number of used pixels */
  369. +     XpmColorSymbol *colorsymbols;    /* List of color symbols to override */
  370. +     unsigned int numsymbols;        /* Number of symbols */
  371. +     char *rgb_fname;            /* RGB text file name */
  372. +     unsigned int nextensions;        /* Number of extensions */
  373. +     XpmExtension *extensions;        /* List of extensions */
  374. +     unsigned int ncolors;               /* Number of colors */
  375. +     XpmColor *colorTable;               /* List of colors */
  376. + /* 3.2 backward compatibility code */
  377. +     char *hints_cmt;                    /* Comment of the hints section */
  378. +     char *colors_cmt;                   /* Comment of the colors section */
  379. +     char *pixels_cmt;                   /* Comment of the pixels section */
  380. + /* end 3.2 bc */
  381. +     unsigned int mask_pixel;            /* Color table index of transparent
  382. +                                            color */
  383. +     /* Color Allocation Directives */
  384. +     Bool exactColors;            /* Only use exact colors for visual */
  385. +     unsigned int closeness;        /* Allowable RGB deviation */
  386. +     unsigned int red_closeness;        /* Allowable red deviation */
  387. +     unsigned int green_closeness;    /* Allowable green deviation */
  388. +     unsigned int blue_closeness;    /* Allowable blue deviation */
  389. +     int color_key;            /* Use colors from this color set */
  390. +     Pixel *alloc_pixels;        /* Returns the list of alloc'ed color
  391. +                        pixels */
  392. +     int nalloc_pixels;            /* Returns the number of alloc'ed
  393. +                        color pixels */
  394. +     Bool alloc_close_colors;        /* Specify whether close colors should
  395. +                        be allocated using XAllocColor
  396. +                        or not */
  397. +     int bitmap_format;            /* Specify the format of 1bit depth
  398. +                        images: ZPixmap or XYBitmap */
  399. +     /* Color functions */
  400. +     XpmAllocColorFunc alloc_color;    /* Application color allocator */
  401. +     XpmFreeColorsFunc free_colors;    /* Application color de-allocator */
  402. +     void *color_closure;        /* Application private data to pass to
  403. +                        alloc_color and free_colors */
  404. + }      XpmAttributes;
  405. + /* XpmAttributes value masks bits */
  406. + #define XpmVisual       (1L<<0)
  407. + #define XpmColormap       (1L<<1)
  408. + #define XpmDepth       (1L<<2)
  409. + #define XpmSize           (1L<<3)    /* width & height */
  410. + #define XpmHotspot       (1L<<4)    /* x_hotspot & y_hotspot */
  411. + #define XpmCharsPerPixel   (1L<<5)
  412. + #define XpmColorSymbols       (1L<<6)
  413. + #define XpmRgbFilename       (1L<<7)
  414. + /* 3.2 backward compatibility code */
  415. + #define XpmInfos       (1L<<8)
  416. + #define XpmReturnInfos       XpmInfos
  417. + /* end 3.2 bc */
  418. + #define XpmReturnPixels       (1L<<9)
  419. + #define XpmExtensions      (1L<<10)
  420. + #define XpmReturnExtensions XpmExtensions
  421. + #define XpmExactColors     (1L<<11)
  422. + #define XpmCloseness       (1L<<12)
  423. + #define XpmRGBCloseness       (1L<<13)
  424. + #define XpmColorKey       (1L<<14)
  425. + #define XpmColorTable      (1L<<15)
  426. + #define XpmReturnColorTable XpmColorTable
  427. + #define XpmReturnAllocPixels (1L<<16)
  428. + #define XpmAllocCloseColors (1L<<17)
  429. + #define XpmBitmapFormat    (1L<<18)
  430. + #define XpmAllocColor      (1L<<19)
  431. + #define XpmFreeColors      (1L<<20)
  432. + #define XpmColorClosure    (1L<<21)
  433. + /* XpmInfo value masks bits */
  434. + #define XpmComments        XpmInfos
  435. + #define XpmReturnComments  XpmComments
  436. + /* XpmAttributes mask_pixel value when there is no mask */
  437. + #ifndef FOR_MSW
  438. + #define XpmUndefPixel 0x80000000
  439. + #else
  440. + /* int is only 16 bit for MSW */
  441. + #define XpmUndefPixel 0x8000
  442. + #endif
  443. + /*
  444. +  * color keys for visual type, they must fit along with the number key of
  445. +  * each related element in xpmColorKeys[] defined in XpmI.h
  446. +  */
  447. + #define XPM_MONO    2
  448. + #define XPM_GREY4    3
  449. + #define XPM_GRAY4    3
  450. + #define XPM_GREY     4
  451. + #define XPM_GRAY     4
  452. + #define XPM_COLOR    5
  453. + /* macros for forward declarations of functions with prototypes */
  454. + #if NeedFunctionPrototypes
  455. + #define FUNC(f, t, p) extern t f p
  456. + #define LFUNC(f, t, p) static t f p
  457. + #else
  458. + #define FUNC(f, t, p) extern t f()
  459. + #define LFUNC(f, t, p) static t f()
  460. + #endif
  461. + /*
  462. +  * functions declarations
  463. +  */
  464. + #ifdef __cplusplus
  465. + extern "C" {
  466. + #endif
  467. + /* FOR_MSW, all ..Pixmap.. are excluded, only the ..XImage.. are used */
  468. + /* Same for Amiga! */
  469. + #if !defined(FOR_MSW) && !defined(AMIGA)
  470. +     FUNC(XpmCreatePixmapFromData, int, (Display *display,
  471. +                     Drawable d,
  472. +                     char **data,
  473. +                     Pixmap *pixmap_return,
  474. +                     Pixmap *shapemask_return,
  475. +                     XpmAttributes *attributes));
  476. +     FUNC(XpmCreateDataFromPixmap, int, (Display *display,
  477. +                     char ***data_return,
  478. +                     Pixmap pixmap,
  479. +                     Pixmap shapemask,
  480. +                     XpmAttributes *attributes));
  481. +     FUNC(XpmReadFileToPixmap, int, (Display *display,
  482. +                     Drawable d,
  483. +                     char *filename,
  484. +                     Pixmap *pixmap_return,
  485. +                     Pixmap *shapemask_return,
  486. +                     XpmAttributes *attributes));
  487. +     FUNC(XpmWriteFileFromPixmap, int, (Display *display,
  488. +                        char *filename,
  489. +                        Pixmap pixmap,
  490. +                        Pixmap shapemask,
  491. +                        XpmAttributes *attributes));
  492. + #endif
  493. +     FUNC(XpmCreateImageFromData, int, (Display *display,
  494. +                        char **data,
  495. +                        XImage **image_return,
  496. +                        XImage **shapemask_return,
  497. +                        XpmAttributes *attributes));
  498. +     FUNC(XpmCreateDataFromImage, int, (Display *display,
  499. +                        char ***data_return,
  500. +                        XImage *image,
  501. +                        XImage *shapeimage,
  502. +                        XpmAttributes *attributes));
  503. +     FUNC(XpmReadFileToImage, int, (Display *display,
  504. +                    char *filename,
  505. +                    XImage **image_return,
  506. +                    XImage **shapeimage_return,
  507. +                    XpmAttributes *attributes));
  508. +     FUNC(XpmWriteFileFromImage, int, (Display *display,
  509. +                       char *filename,
  510. +                       XImage *image,
  511. +                       XImage *shapeimage,
  512. +                       XpmAttributes *attributes));
  513. +     FUNC(XpmCreateImageFromBuffer, int, (Display *display,
  514. +                      char *buffer,
  515. +                      XImage **image_return,
  516. +                      XImage **shapemask_return,
  517. +                      XpmAttributes *attributes));
  518. + #if !defined(FOR_MSW) && !defined(AMIGA)
  519. +     FUNC(XpmCreatePixmapFromBuffer, int, (Display *display,
  520. +                       Drawable d,
  521. +                       char *buffer,
  522. +                       Pixmap *pixmap_return,
  523. +                       Pixmap *shapemask_return,
  524. +                       XpmAttributes *attributes));
  525. +     FUNC(XpmCreateBufferFromImage, int, (Display *display,
  526. +                      char **buffer_return,
  527. +                      XImage *image,
  528. +                      XImage *shapeimage,
  529. +                      XpmAttributes *attributes));
  530. +     FUNC(XpmCreateBufferFromPixmap, int, (Display *display,
  531. +                       char **buffer_return,
  532. +                       Pixmap pixmap,
  533. +                       Pixmap shapemask,
  534. +                       XpmAttributes *attributes));
  535. + #endif
  536. +     FUNC(XpmReadFileToBuffer, int, (char *filename, char **buffer_return));
  537. +     FUNC(XpmWriteFileFromBuffer, int, (char *filename, char *buffer));
  538. +     FUNC(XpmReadFileToData, int, (char *filename, char ***data_return));
  539. +     FUNC(XpmWriteFileFromData, int, (char *filename, char **data));
  540. +     FUNC(XpmAttributesSize, int, ());
  541. +     FUNC(XpmFreeAttributes, void, (XpmAttributes *attributes));
  542. +     FUNC(XpmFreeExtensions, void, (XpmExtension *extensions,
  543. +                    int nextensions));
  544. +     FUNC(XpmFreeXpmImage, void, (XpmImage *image));
  545. +     FUNC(XpmFreeXpmInfo, void, (XpmInfo *info));
  546. +     FUNC(XpmGetErrorString, char *, (int errcode));
  547. +     FUNC(XpmLibraryVersion, int, ());
  548. +     /* XpmImage functions */
  549. +     FUNC(XpmReadFileToXpmImage, int, (char *filename,
  550. +                       XpmImage *image,
  551. +                       XpmInfo *info));
  552. +     FUNC(XpmWriteFileFromXpmImage, int, (char *filename,
  553. +                      XpmImage *image,
  554. +                      XpmInfo *info));
  555. + #if !defined(FOR_MSW) && !defined(AMIGA)
  556. +     FUNC(XpmCreatePixmapFromXpmImage, int, (Display *display,
  557. +                         Drawable d,
  558. +                         XpmImage *image,
  559. +                         Pixmap *pixmap_return,
  560. +                         Pixmap *shapemask_return,
  561. +                         XpmAttributes *attributes));
  562. + #endif
  563. +     FUNC(XpmCreateImageFromXpmImage, int, (Display *display,
  564. +                        XpmImage *image,
  565. +                        XImage **image_return,
  566. +                        XImage **shapeimage_return,
  567. +                        XpmAttributes *attributes));
  568. +     FUNC(XpmCreateXpmImageFromImage, int, (Display *display,
  569. +                        XImage *image,
  570. +                        XImage *shapeimage,
  571. +                        XpmImage *xpmimage,
  572. +                        XpmAttributes *attributes));
  573. + #if !defined(FOR_MSW) && !defined(AMIGA)
  574. +     FUNC(XpmCreateXpmImageFromPixmap, int, (Display *display,
  575. +                         Pixmap pixmap,
  576. +                         Pixmap shapemask,
  577. +                         XpmImage *xpmimage,
  578. +                         XpmAttributes *attributes));
  579. + #endif
  580. +     FUNC(XpmCreateDataFromXpmImage, int, (char ***data_return,
  581. +                       XpmImage *image,
  582. +                       XpmInfo *info));
  583. +     FUNC(XpmCreateXpmImageFromData, int, (char **data,
  584. +                       XpmImage *image,
  585. +                       XpmInfo *info));
  586. +     FUNC(XpmCreateXpmImageFromBuffer, int, (char *buffer,
  587. +                         XpmImage *image,
  588. +                         XpmInfo *info));
  589. +     FUNC(XpmCreateBufferFromXpmImage, int, (char **buffer_return,
  590. +                         XpmImage *image,
  591. +                         XpmInfo *info));
  592. +     FUNC(XpmGetParseError, int, (char *filename,
  593. +                  int *linenum_return,
  594. +                  int *charnum_return));
  595. +     FUNC(XpmFree, void, (void *ptr));
  596. + #ifdef __cplusplus
  597. + } /* for C++ V2.0 */
  598. + #endif
  599. + /* backward compatibility */
  600. + /* for version 3.0c */
  601. + #define XpmPixmapColorError  XpmColorError
  602. + #define XpmPixmapSuccess     XpmSuccess
  603. + #define XpmPixmapOpenFailed  XpmOpenFailed
  604. + #define XpmPixmapFileInvalid XpmFileInvalid
  605. + #define XpmPixmapNoMemory    XpmNoMemory
  606. + #define XpmPixmapColorFailed XpmColorFailed
  607. + #define XpmReadPixmapFile(dpy, d, file, pix, mask, att) \
  608. +     XpmReadFileToPixmap(dpy, d, file, pix, mask, att)
  609. + #define XpmWritePixmapFile(dpy, file, pix, mask, att) \
  610. +     XpmWriteFileFromPixmap(dpy, file, pix, mask, att)
  611. + /* for version 3.0b */
  612. + #define PixmapColorError  XpmColorError
  613. + #define PixmapSuccess     XpmSuccess
  614. + #define PixmapOpenFailed  XpmOpenFailed
  615. + #define PixmapFileInvalid XpmFileInvalid
  616. + #define PixmapNoMemory    XpmNoMemory
  617. + #define PixmapColorFailed XpmColorFailed
  618. + #define ColorSymbol XpmColorSymbol
  619. + #define XReadPixmapFile(dpy, d, file, pix, mask, att) \
  620. +     XpmReadFileToPixmap(dpy, d, file, pix, mask, att)
  621. + #define XWritePixmapFile(dpy, file, pix, mask, att) \
  622. +     XpmWriteFileFromPixmap(dpy, file, pix, mask, att)
  623. + #define XCreatePixmapFromData(dpy, d, data, pix, mask, att) \
  624. +     XpmCreatePixmapFromData(dpy, d, data, pix, mask, att)
  625. + #define XCreateDataFromPixmap(dpy, data, pix, mask, att) \
  626. +     XpmCreateDataFromPixmap(dpy, data, pix, mask, att)
  627. + #endif /* XPM_NUMBERS */
  628. + #endif
  629. *** ../vim-7.3.638/src/Make_mvc.mak    2012-08-02 21:48:20.000000000 +0200
  630. --- src/Make_mvc.mak    2012-08-29 13:46:05.000000000 +0200
  631. ***************
  632. *** 89,94 ****
  633. --- 89,96 ----
  634.   #       Netbeans Support: NETBEANS=[yes or no] (default is yes if GUI is yes)
  635.   #
  636.   #       XPM Image Support: XPM=[path to XPM directory]
  637. + #       Default is "xpm", using the files included in the distribution.
  638. + #       Use "no" to disable this feature.
  639.   #
  640.   #       Optimization: OPTIMIZE=[SPACE, SPEED, MAXSPEED] (default is MAXSPEED)
  641.   #
  642. ***************
  643. *** 279,295 ****
  644.   NETBEANS_LIB    = WSock32.lib
  645.   !endif
  646.   
  647. ! !ifdef XPM
  648.   # XPM - Include support for XPM signs
  649. ! # You need to download or build  xpm.lib somehow.
  650. ! # You can get the most recent version of libXpm-*.zip from
  651. ! #   http://cgit.freedesktop.org/xorg/lib/libXpm
  652. ! # from which you must build xpm.lib yourself
  653. ! #   OR get and unpack: ftp://ftp.vim.org/pub/vim/pcextra/xpm.zip
  654.   XPM_OBJ   = $(OBJDIR)/xpm_w32.obj
  655.   XPM_DEFS  = -DFEAT_XPM_W32
  656.   XPM_LIB   = $(XPM)\lib\libXpm.lib
  657. ! XPM_INC      = -I $(XPM)\include
  658.   !endif
  659.   !endif
  660.   
  661. --- 281,301 ----
  662.   NETBEANS_LIB    = WSock32.lib
  663.   !endif
  664.   
  665. ! !ifndef XPM
  666. ! # XPM is not set, use the included xpm files, depending on the architecture.
  667. ! !if ("$(CPU)" == "AMD64") || ("$(CPU)" == "IA64")
  668. ! XPM = xpm\x64
  669. ! !else
  670. ! XPM = xpm\x86
  671. ! !endif
  672. ! !endif
  673. ! !if "$(XPM)" != "no"
  674.   # XPM - Include support for XPM signs
  675. ! # See the xpm directory for more information.
  676.   XPM_OBJ   = $(OBJDIR)/xpm_w32.obj
  677.   XPM_DEFS  = -DFEAT_XPM_W32
  678.   XPM_LIB   = $(XPM)\lib\libXpm.lib
  679. ! XPM_INC      = -I $(XPM)\include -I $(XPM)\..\include
  680.   !endif
  681.   !endif
  682.   
  683. *** ../vim-7.3.638/src/bigvim.bat    2010-08-15 21:57:29.000000000 +0200
  684. --- src/bigvim.bat    2012-08-29 13:46:18.000000000 +0200
  685. ***************
  686. *** 1,3 ****
  687.   :: command to build big Vim with OLE, Perl, Python, Ruby and Tcl
  688. ! nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl512 DYNAMIC_PERL=yes PERL_VER=512 PYTHON=e:\python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=e:\python31 DYNAMIC_PYTHON3=yes PYTHON3_VER=31 RUBY=e:\ruby191 DYNAMIC_RUBY=yes RUBY_VER=191 RUBY_VER_LONG=1.9.1 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes XPM=e:\xpm
  689.   
  690. --- 1,5 ----
  691.   :: command to build big Vim with OLE, Perl, Python, Ruby and Tcl
  692. ! SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\"
  693. ! SET TOOLDIR=E:\
  694. ! %VCDIR%nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=192 RUBY_VER_LONG=1.9.2 TCL=%TOOLDIR%tcl TCL_VER=85 TCL_VER_LONG=8.5 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
  695.   
  696. *** ../vim-7.3.638/src/bigvim64.bat    2012-08-29 14:16:38.000000000 +0200
  697. --- src/bigvim64.bat    2012-08-29 13:46:35.000000000 +0200
  698. ***************
  699. *** 0 ****
  700. --- 1,6 ----
  701. + :: command to build big Vim 64 bit with OLE, Perl, Python, Ruby and Tcl
  702. + :: First run: %VCDIR%\vcvarsall.bat x86_amd64
  703. + SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\"
  704. + SET TOOLDIR=E:\
  705. + %VCDIR%\bin\nmake -f Make_mvc.mak CPU=AMD64 GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=192 RUBY_VER_LONG=1.9.2 TCL=%TOOLDIR%tcl TCL_VER=85 TCL_VER_LONG=8.5 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
  706. *** ../vim-7.3.638/Filelist    2012-07-16 17:27:57.000000000 +0200
  707. --- Filelist    2012-08-29 13:53:52.000000000 +0200
  708. ***************
  709. *** 349,354 ****
  710. --- 349,360 ----
  711.           src/vim*.ico \
  712.           src/vim.tlb \
  713.           src/vimtbar.lib \
  714. +         src/xpm/COPYRIGHT \
  715. +         src/xpm/README.txt \
  716. +         src/xpm/include/*.h \
  717. +         src/xpm/x64/lib/libXpm.lib \
  718. +         src/xpm/x86/lib/libXpm.a \
  719. +         src/xpm/x86/lib/libXpm.lib \
  720.           src/vimtbar.dll \
  721.           nsis/icons/*.bmp \
  722.           nsis/icons/*.ico \
  723. *** ../vim-7.3.638/src/version.c    2012-08-29 14:17:51.000000000 +0200
  724. --- src/version.c    2012-08-29 14:14:19.000000000 +0200
  725. ***************
  726. *** 721,722 ****
  727. --- 721,724 ----
  728.   {   /* Add new patch number below this line */
  729. + /**/
  730. +     639,
  731.   /**/
  732.  
  733. -- 
  734. A successful man is one who makes more money than his wife can spend.
  735. A successful woman is one who can find such a man.
  736.  
  737.  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
  738. ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
  739. \\\  an exciting new programming language -- http://www.Zimbu.org        ///
  740.  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
  741.