For wxMSW, split XPM handler into separate file (please add handler explicitly in app);
doc changes espec. wxBitmap overview git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -115,8 +115,8 @@ samples/typetest/TypetestVC.dsw
|
||||
samples/validate/ValidateVC.dsp
|
||||
samples/validate/ValidateVC.dsw
|
||||
|
||||
samples/wxsocket/SocketVC.dsp
|
||||
samples/wxsocket/SocketVC.dsw
|
||||
samples/wxsocket/ClientVC.dsp
|
||||
samples/wxsocket/ServerVC.dsw
|
||||
|
||||
samples/wxpoem/PoemVC.dsp
|
||||
samples/wxpoem/PoemVC.dsw
|
||||
@@ -129,12 +129,17 @@ utils/wxprop/src/PropSampleVC.dsw
|
||||
utils/dialoged/src/DialogEdVC.dsp
|
||||
utils/dialoged/src/DialogEdVC.dsw
|
||||
|
||||
utils/tex2rtf/src/Tex2RTFVC.dsp
|
||||
utils/tex2rtf/src/Tex2RTFVC.dsw
|
||||
|
||||
utils/glcanvas/win/GlcanvasVC.dsp
|
||||
utils/glcanvas/win/GlcanvasVC.dsw
|
||||
utils/glcanvas/samples/cube/CubeVC.dsp
|
||||
utils/glcanvas/samples/cube/CubeVC.dsw
|
||||
utils/glcanvas/samples/isosurf/IsosurfVC.dsp
|
||||
utils/glcanvas/samples/isosurf/IsosurfVC.dsw
|
||||
utils/glcanvas/samples/penguin/PenguinVC.dsp
|
||||
utils/glcanvas/samples/penguin/PenguinVC.dsw
|
||||
|
||||
utils/ogl/src/OglVC.dsp
|
||||
utils/ogl/src/OglVC.dsw
|
||||
|
@@ -30,15 +30,13 @@ a reference to your application object) to be visible to other files.
|
||||
|
||||
\membersection{wxApp::wxApp}
|
||||
|
||||
\func{void}{wxApp}{\param{int}{ language = wxLANGUAGE\_ENGLISH}}
|
||||
\func{void}{wxApp}{\void}
|
||||
|
||||
Constructor. Called implicitly with a definition of a wxApp object.
|
||||
|
||||
The argument is a language identifier; this is an experimental
|
||||
feature and will be expanded and documented in future versions.
|
||||
|
||||
TODO: completely rewrite the language stuff.
|
||||
|
||||
\membersection{wxApp::\destruct{wxApp}}
|
||||
|
||||
\func{void}{\destruct{wxApp}}{\void}
|
||||
|
@@ -12,7 +12,11 @@ either monochrome or colour.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxBitmap overview}{wxbitmapoverview}, \helpref{wxDC::Blit}{wxdcblit}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxMemoryDC}{wxmemorydc}
|
||||
\helpref{wxBitmap overview}{wxbitmapoverview},
|
||||
\helpref{supported bitmap file formats}{supportedbitmapformats},
|
||||
\helpref{wxDC::Blit}{wxdcblit},
|
||||
\helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxBitmap}{wxbitmap},
|
||||
\helpref{wxMemoryDC}{wxmemorydc}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
@@ -74,8 +78,9 @@ Its meaning is determined by the {\it type} parameter.}
|
||||
\end{twocollist}
|
||||
|
||||
The validity of these flags depends on the platform and wxWindows configuration.
|
||||
If all possible wxWindows settings are used, the Windows platform supports BMP, BMP\_RESOURCE,
|
||||
XPM\_DATA, and XPM. Under X, the available formats are BMP, GIF, XBM, and XPM.}
|
||||
If all possible wxWindows settings are used, the Windows platform supports BMP file, BMP resource,
|
||||
XPM data, and XPM. Under wxGTK, the available formats are BMP file, XPM data, XPM file, and PNG file.
|
||||
Under wxMotif, the available formats are XBM data, XBM file, XPM data, XPM file.}
|
||||
|
||||
\wxheading{Remarks}
|
||||
|
||||
@@ -113,7 +118,7 @@ The eighth form constructs a bitmap from a file or resource. {\it name} can refe
|
||||
to a resource name under MS Windows, or a filename under MS Windows and X.
|
||||
|
||||
Under Windows, {\it type} defaults to wxBITMAP\_TYPE\_BMP\_RESOURCE.
|
||||
Under X, {\it type} defaults to wxBITMAP\_TYPE\_XBM.
|
||||
Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
|
@@ -1,41 +1,32 @@
|
||||
\section{\class{wxIcon}}\label{wxicon}
|
||||
|
||||
An icon is a small rectangular bitmap usually used for denoting a
|
||||
minimized application.
|
||||
minimized application. It differs from a wxBitmap in always
|
||||
having a mask associated with it for transparent drawing. On some platforms,
|
||||
icons and bitmaps are implemented identically, since there is no real distinction between
|
||||
a wxBitmap with a mask and an icon; and there is no specific icon format on
|
||||
some platforms (X-based applications usually standardize on XPMs for small bitmaps
|
||||
and icons). However, some platforms (such as Windows) make the distinction, so
|
||||
a separate class is provided.
|
||||
|
||||
\wxheading{Remarks}
|
||||
|
||||
It is optional (but desirable) to associate a
|
||||
pertinent icon with a frame. Obviously icons in X and MS Windows are
|
||||
created in a different manner, and colour icons in X are difficult
|
||||
to arrange. Therefore, separate icons will be created for the different
|
||||
It is usually desirable to associate a pertinent icon with a frame. Icons
|
||||
can also be used for other purposes, for example with \helpref{wxTreeCtrl}{wxtreectrl}
|
||||
and \helpref{wxListCtrl}{wxlistctrl}.
|
||||
|
||||
Icons have different formats on different platforms.
|
||||
Therefore, separate icons will usually be created for the different
|
||||
environments. Platform-specific methods for creating a {\bf wxIcon}\rtfsp
|
||||
structure are catered for, and this is an occasion where conditional
|
||||
compilation will probably be required.
|
||||
|
||||
Note that a new icon must be created for every time the icon is to be
|
||||
used for a new window. In X, this will ensure that fresh X resources
|
||||
are allocated for this frame. In MS Windows, the icon will not be
|
||||
used for a new window. In Windows, the icon will not be
|
||||
reloaded if it has already been used. An icon allocated to a frame will
|
||||
be deleted when the frame is deleted.
|
||||
|
||||
The following shows the conditional compilation required to define an
|
||||
icon in X and in MS Windows. The alternative is to use the string
|
||||
version of the icon constructor, which loads a file under X and a
|
||||
resource under MS Windows, but has the disadvantage of requiring the
|
||||
X icon file to be available at run-time.
|
||||
|
||||
\begin{verbatim}
|
||||
#ifdef wx_x
|
||||
#include "aiai.xbm"
|
||||
#endif
|
||||
#ifdef wx_msw
|
||||
wxIcon *icon = new wxIcon("aiai");
|
||||
#endif
|
||||
#ifdef wx_x
|
||||
wxIcon *icon = new wxIcon(aiai_bits, aiai_width, aiai_height);
|
||||
#endif
|
||||
\end{verbatim}
|
||||
For more information please see \helpref{Bitmap and icon overview}{wxbitmapoverview}.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
@@ -45,7 +36,8 @@ X icon file to be available at run-time.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxIcon overview}{wxiconoverview}, \helpref{wxDC::DrawIcon}{wxdcdrawicon}, \helpref{wxCursor}{wxcursor}
|
||||
\helpref{Bitmap and icon overview}{wxbitmapoverview}, \helpref{supported bitmap file formats}{supportedbitmapformats},
|
||||
\helpref{wxDC::DrawIcon}{wxdcdrawicon}, \helpref{wxCursor}{wxcursor}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
@@ -116,8 +108,9 @@ Its meaning is determined by the {\it flags} parameter.}
|
||||
\end{twocollist}
|
||||
|
||||
The validity of these flags depends on the platform and wxWindows configuration.
|
||||
If all possible wxWindows settings are used, the Windows platform supports ICO, ICO\_RESOURCE,
|
||||
XPM\_DATA, and XPM. Under X, the available formats are BMP, GIF, XBM, and XPM.}
|
||||
If all possible wxWindows settings are used, the Windows platform supports ICO file, ICO resource,
|
||||
XPM data, and XPM file. Under wxGTK, the available formats are BMP file, XPM data, XPM file, and PNG file.
|
||||
Under wxMotif, the available formats are XBM data, XBM file, XPM data, XPM file.}
|
||||
|
||||
\wxheading{Remarks}
|
||||
|
||||
@@ -151,11 +144,28 @@ of character pointers called mybitmap:
|
||||
wxIcon *icon = new wxIcon(mybitmap);
|
||||
\end{verbatim}
|
||||
|
||||
A macro, wxICON, is available which creates an icon using an XPM
|
||||
on the appropriate platform, or an icon resource on Windows.
|
||||
|
||||
\begin{verbatim}
|
||||
wxIcon icon(wxICON(mondrian));
|
||||
|
||||
// Equivalent to:
|
||||
|
||||
#if defined(__WXGTK__) || defined(__WXMOTIF__)
|
||||
wxIcon icon(mondrian_xpm);
|
||||
#endif
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
wxIcon icon("mondrian");
|
||||
#endif
|
||||
\end{verbatim}
|
||||
|
||||
The eighth form constructs an icon from a file or resource. {\it name} can refer
|
||||
to a resource name under MS Windows, or a filename under MS Windows and X.
|
||||
|
||||
Under Windows, {\it type} defaults to wxBITMAP\_TYPE\_ICO\_RESOURCE.
|
||||
Under X, {\it type} defaults to wxBITMAP\_TYPE\_XBM.
|
||||
Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
@@ -175,46 +185,6 @@ destroyed automatically by wxWindows when the application exits.
|
||||
|
||||
Do not delete an icon that is selected into a memory device context.
|
||||
|
||||
\begin{comment}
|
||||
\membersection{wxIcon::Create}\label{wxiconcreate}
|
||||
|
||||
\func{virtual bool}{Create}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
|
||||
|
||||
Creates a fresh icon. If the final argument is omitted, the display depth of
|
||||
the screen is used.
|
||||
|
||||
\func{virtual bool}{Create}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
|
||||
|
||||
Creates an icon from the given data, which can be of arbitrary type.
|
||||
|
||||
\wxheading{Parameters}
|
||||
|
||||
\docparam{width}{The width of the icon in pixels.}
|
||||
|
||||
\docparam{height}{The height of the icon in pixels.}
|
||||
|
||||
\docparam{depth}{The depth of the icon in pixels. If this is -1, the screen depth is used.}
|
||||
|
||||
\docparam{data}{Data whose type depends on the value of {\it type}.}
|
||||
|
||||
\docparam{type}{An icon type identifier - see \helpref{wxIcon::wxIcon}{wxiconconstr} for a list
|
||||
of possible values.}
|
||||
|
||||
\wxheading{Return value}
|
||||
|
||||
TRUE if the call succeeded, FALSE otherwise.
|
||||
|
||||
\wxheading{Remarks}
|
||||
|
||||
The first form works on all platforms. The portability of the second form depends on the
|
||||
type of data.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxIcon::wxIcon}{wxiconconstr}
|
||||
|
||||
\end{comment}
|
||||
|
||||
\membersection{wxIcon::GetDepth}
|
||||
|
||||
\constfunc{int}{GetDepth}{\void}
|
||||
|
@@ -1,4 +1,4 @@
|
||||
\section{Bitmaps overview}\label{wxbitmapoverview}
|
||||
\section{Bitmaps and icons overview}\label{wxbitmapoverview}
|
||||
|
||||
Classes: \helpref{wxBitmap}{wxbitmap}, \helpref{wxBitmapHandler}{wxbitmaphandler}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}.
|
||||
|
||||
@@ -19,40 +19,120 @@ version of the graphic which appears on the main window.
|
||||
See \helpref{wxMemoryDC}{wxmemorydc} for an example of drawing onto a bitmap.
|
||||
|
||||
The following shows the conditional compilation required to load a
|
||||
bitmap in X and in Windows 3. The alternative is to use the string
|
||||
version of the bitmap constructor, which loads a file under X and a
|
||||
resource under Windows 3, but has the disadvantage of requiring the
|
||||
X icon file to be available at run-time.
|
||||
bitmap under Unix and in Windows. The alternative is to use the string
|
||||
version of the bitmap constructor, which loads a file under Unix and a
|
||||
resource or file under Windows, but has the disadvantage of requiring the
|
||||
XPM icon file to be available at run-time.
|
||||
|
||||
\begin{verbatim}
|
||||
#ifdef wx_x
|
||||
#include "aiai.xbm"
|
||||
#endif
|
||||
#ifdef wx_msw
|
||||
wxIcon *icon = new wxBitmap("aiai");
|
||||
#endif
|
||||
#ifdef wx_x
|
||||
wxIcon *icon = new wxBitmap(aiai_bits, aiai_width, aiai_height);
|
||||
#if defined(__WXGTK__) || defined(__WXMOTIF__)
|
||||
#include "mondrian.xpm"
|
||||
#endif
|
||||
\end{verbatim}
|
||||
|
||||
\subsection{Loading bitmaps: further information}
|
||||
A macro, wxICON, is available which creates an icon using an XPM
|
||||
on the appropriate platform, or an icon resource on Windows.
|
||||
|
||||
There is provision for a number of bitmap
|
||||
formats via the standard wxBitmap class. These facilities can
|
||||
be enabled or disabled using settings in wx\_setup.h.
|
||||
\begin{verbatim}
|
||||
wxIcon icon(wxICON(mondrian));
|
||||
|
||||
XPM colour pixmaps may be loaded and saved under Windows and X, with
|
||||
some restrictions imposed by the lack of colourmap facility when
|
||||
using XPM files. The user may elect to use XPM files as a cross-platform
|
||||
stabdard, or translate between XPM and BMP files using a suitable
|
||||
utility.
|
||||
// Equivalent to:
|
||||
|
||||
Also, under Windows, DIBs (device independent bitmaps with extension BMP)
|
||||
may be dynamically loaded and saved. Under X, GIF and BMP files may be
|
||||
loaded but not saved.
|
||||
#if defined(__WXGTK__) || defined(__WXMOTIF__)
|
||||
wxIcon icon(mondrian_xpm);
|
||||
#endif
|
||||
|
||||
\subsection{Bitmap format handlers}
|
||||
#if defined(__WXMSW__)
|
||||
wxIcon icon("mondrian");
|
||||
#endif
|
||||
\end{verbatim}
|
||||
|
||||
\subsection{Supported bitmap file formats}\label{supportedbitmapformats}
|
||||
|
||||
The following lists the formats handled on different platforms. Note
|
||||
that missing or partially-implemented formats can be supplemented
|
||||
by using \helpref{wxImage}{wximage} to load the data, and then converting
|
||||
it to wxBitmap form.
|
||||
|
||||
\wxheading{wxBitmap}
|
||||
|
||||
Under Windows, wxBitmap may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Windows bitmap resource (wxBITMAP\_TYPE\_BMP\_RESOURCE)
|
||||
\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
|
||||
\item PNG file (wxBITMAP\_TYPE\_PNG). Currently 4-bit (16-colour) PNG files do not load properly.
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
Under wxGTK, wxBitmap may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
|
||||
\item PNG (wxBITMAP\_TYPE\_PNG).
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
Under wxMotif, wxBitmap may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
%\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
|
||||
%\item PNG (wxBITMAP\_TYPE\_PNG).
|
||||
\item XBM data and file (wxBITMAP\_TYPE\_XBM)
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
\wxheading{wxIcon}
|
||||
|
||||
Under Windows, wxIcon may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Windows icon resource (wxBITMAP\_TYPE\_ICO\_RESOURCE)
|
||||
\item Windows icon file (wxBITMAP\_TYPE\_ICO)
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
Under wxGTK, wxIcon may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item PNG (wxBITMAP\_TYPE\_PNG).
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
Under wxMotif, wxIcon may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
%\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
|
||||
%\item PNG (wxBITMAP\_TYPE\_PNG).
|
||||
\item XBM data and file (wxBITMAP\_TYPE\_XBM)
|
||||
\item XPM data and file (wxBITMAP\_TYPE\_XPM)
|
||||
\end{itemize}
|
||||
|
||||
\wxheading{wxCursor}
|
||||
|
||||
Under Windows, wxCursor may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Windows cursor resource (wxBITMAP\_TYPE\_CUR\_RESOURCE)
|
||||
\item Windows cursor file (wxBITMAP\_TYPE\_CUR)
|
||||
\item Windows icon file (wxBITMAP\_TYPE\_ICO)
|
||||
\item Windows bitmap file (wxBITMAP\_TYPE\_BMP)
|
||||
\end{itemize}
|
||||
|
||||
Under wxGTK, wxCursor may load the following formats (in additional
|
||||
to stock cursors):
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item None (stock cursors only).
|
||||
\end{itemize}
|
||||
|
||||
Under wxMotif, wxCursor may load the following formats:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item XBM data and file (wxBITMAP\_TYPE\_XBM)
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Bitmap format handlers}\label{bitmaphandlers}
|
||||
|
||||
To provide extensibility, the functionality for loading and saving bitmap formats
|
||||
is not implemented in the wxBitmap class, but in a number of handler classes,
|
||||
@@ -66,20 +146,21 @@ then call the static function \helpref{wxBitmap::AddHandler}{wxbitmapaddhandler}
|
||||
|
||||
{\small
|
||||
\begin{verbatim}
|
||||
#include "JPEGBitmapHandler.h"
|
||||
#include <wx/pnghand.h>
|
||||
#include <wx/xpmhand.h>
|
||||
...
|
||||
// Initialisation
|
||||
wxBitmap::AddHandler(new wxJPEGBitmapHandler);
|
||||
wxBitmap::AddHandler(new wxPNGFileHandler);
|
||||
wxBitmap::AddHandler(new wxXPMFileHandler);
|
||||
wxBitmap::AddHandler(new wxXPMDataHandler);
|
||||
...
|
||||
\end{verbatim}
|
||||
}
|
||||
|
||||
Assuming wxJPEGBitmapHandler has been written correctly, you should now be able to load and save JPEG files
|
||||
using the usual wxBitmap API.
|
||||
Assuming the handlers have been written correctly, you should now be able to load and save PNG files
|
||||
and XPM files using the usual wxBitmap API.
|
||||
|
||||
To see how bitmap handlers are implemented, please look at the files {\tt bitmap.h} and {\tt bitmap.cpp}.
|
||||
|
||||
\subsection{wxIcon overview}\label{wxiconoverview}
|
||||
|
||||
TODO.
|
||||
{\bf Note:} bitmap handlers are not implemented on all platforms. Currently, the above is only necessary on
|
||||
Windows, to save the extra overhead of formats that may not be necessary (if you don't use them, they
|
||||
are not linked into the executable). Unix platforms have PNG and XPM capability built-in (where supported).
|
||||
|
||||
|
@@ -110,9 +110,8 @@ dialog, using the EVT\_CLOSE macro. The event handler function might look like t
|
||||
|
||||
\wxheading{How do I exit the application gracefully?}
|
||||
|
||||
A wxWindows application automatically exits when the top frame (returned
|
||||
from \helpref{wxApp::OnInit}{wxapponinit}) is destroyed. This may be modified
|
||||
in later versions to exit only when the {\it last} top-level frame is destroyed.
|
||||
A wxWindows application automatically exits when the designated top window, or the
|
||||
last frame or dialog, is destroyed.
|
||||
|
||||
\wxheading{Do child windows get deleted automatically?}
|
||||
|
||||
|
@@ -41,6 +41,8 @@ High Priority
|
||||
|
||||
- Get wxGLCanvas from 1.68 working.
|
||||
|
||||
- Use wxImage to load other formats into wxBitmaps, such as PNG, BMP.
|
||||
|
||||
Low Priority
|
||||
------------
|
||||
|
||||
|
@@ -129,11 +129,9 @@ public:
|
||||
// Initialize with raw data
|
||||
wxBitmap(const char bits[], int width, int height, int depth = 1);
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
class wxItem;
|
||||
class WXDLLEXPORT wxItem;
|
||||
// Initialize with XPM data
|
||||
wxBitmap(char **data, wxItem *anItem = NULL);
|
||||
#endif
|
||||
|
||||
// Load a file or resource
|
||||
wxBitmap(const wxString& name, long type = wxBITMAP_TYPE_BMP_RESOURCE);
|
||||
|
@@ -13,6 +13,9 @@
|
||||
#pragma interface "pnghand.h"
|
||||
#endif
|
||||
|
||||
#ifndef _WX_PNGHAND_H_
|
||||
#define _WX_PNGHAND_H_
|
||||
|
||||
class WXDLLEXPORT wxPNGFileHandler: public wxBitmapHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxPNGFileHandler)
|
||||
@@ -29,3 +32,6 @@ public:
|
||||
virtual bool SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = NULL);
|
||||
};
|
||||
|
||||
#endif
|
||||
// _WX_PNGHAND_H_
|
||||
|
||||
|
@@ -79,7 +79,7 @@
|
||||
|
||||
#define wxUSE_SCROLLBAR 1
|
||||
// Define 1 to compile contributed wxScrollBar class
|
||||
#define wxUSE_XPM_IN_MSW 0
|
||||
#define wxUSE_XPM_IN_MSW 1
|
||||
// Define 1 to support the XPM package in wxBitmap.
|
||||
#define wxUSE_IMAGE_LOADING_IN_MSW 1
|
||||
// Use dynamic DIB loading/saving code in utils/dib under MSW.
|
||||
|
51
include/wx/msw/xpmhand.h
Normal file
51
include/wx/msw/xpmhand.h
Normal file
@@ -0,0 +1,51 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xpmhand.h
|
||||
// Purpose: XPM bitmap handler
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 04/01/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "xpmhand.h"
|
||||
#endif
|
||||
|
||||
#ifndef _WX_XPMHAND_H_
|
||||
#define _WX_XPMHAND_H_
|
||||
|
||||
class WXDLLEXPORT wxXPMFileHandler: public wxBitmapHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxXPMFileHandler)
|
||||
public:
|
||||
inline wxXPMFileHandler(void)
|
||||
{
|
||||
m_name = "XPM bitmap file";
|
||||
m_extension = "xpm";
|
||||
m_type = wxBITMAP_TYPE_XPM;
|
||||
};
|
||||
|
||||
virtual bool LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
|
||||
int desiredWidth = -1, int desiredHeight = -1);
|
||||
virtual bool SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = NULL);
|
||||
};
|
||||
|
||||
class WXDLLEXPORT wxXPMDataHandler: public wxBitmapHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxXPMDataHandler)
|
||||
public:
|
||||
inline wxXPMDataHandler(void)
|
||||
{
|
||||
m_name = "XPM bitmap data";
|
||||
m_extension = "xpm";
|
||||
m_type = wxBITMAP_TYPE_XPM_DATA;
|
||||
};
|
||||
|
||||
virtual bool Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth = 1);
|
||||
};
|
||||
|
||||
#endif
|
||||
// _WX_XPMHAND_H_
|
||||
|
11
include/wx/xpmhand.h
Normal file
11
include/wx/xpmhand.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef _WX_XPMHAND_H_BASE_
|
||||
#define _WX_XPMHAND_H_BASE_
|
||||
|
||||
// Only wxMSW currently defines a separate XPM handler, since
|
||||
// mostly Windows apps won't need XPMs.
|
||||
#if defined(__WXMSW__)
|
||||
#include "wx/msw/xpmhand.h"
|
||||
#endif
|
||||
|
||||
#endif
|
||||
// _WX_XPMHAND_H_BASE_
|
@@ -23,69 +23,73 @@ LINK_DEBUG_FLAGS="/RELEASE"
|
||||
|
||||
all:
|
||||
cd $(WXDIR)\samples\splitter
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\resource
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\controls
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\listctrl
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\treectrl
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\validate
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\mdi
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\minimal
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\layout
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\printing
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\toolbar
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\dialogs
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\docview
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\docvwmdi
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\controls
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\nativdlg
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\grid
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\internat
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\dnd
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\joytest
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\taskbar
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\sashtest
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
!if "$(FINAL)" == "0"
|
||||
cd $(WXDIR)\samples\memcheck
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
!endif
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\ownerdrw
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\checklst
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\minifram
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\bombs
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\fractal
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\wxpoem
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
cd $(WXDIR)\samples\types
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\typetest
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\proplist
|
||||
nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\samples\image
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
# cd $(WXDIR)\samples\regtest
|
||||
# nmake -f makefile.nt DEBUG_FLAGS=$(DEBUG_FLAGS) LINK_DEBUG_FLAGS=$(LINK_DEBUG_FLAGS)
|
||||
# nmake -f makefile.nt FINAL=$(FINAL)
|
||||
|
||||
clean:
|
||||
cd $(WXDIR)\samples\splitter
|
||||
@@ -146,8 +150,10 @@ clean:
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\samples\wxpoem
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\samples\types
|
||||
cd $(WXDIR)\samples\typetest
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\samples\proplist
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\samples\image
|
||||
nmake -f makefile.nt clean
|
||||
|
||||
|
@@ -22,6 +22,7 @@
|
||||
|
||||
#ifdef __WXMSW__
|
||||
#include <wx/pnghand.h>
|
||||
// #include <wx/xpmhand.h>
|
||||
#endif
|
||||
|
||||
#include "pngdemo.h"
|
||||
@@ -39,6 +40,8 @@ bool MyApp::OnInit(void)
|
||||
{
|
||||
#ifdef __WXMSW__
|
||||
wxBitmap::AddHandler(new wxPNGFileHandler);
|
||||
// wxBitmap::AddHandler(new wxXPMFileHandler);
|
||||
// wxBitmap::AddHandler(new wxXPMDataHandler);
|
||||
#endif
|
||||
|
||||
// Create the main frame window
|
||||
|
@@ -37,11 +37,6 @@
|
||||
|
||||
#include "assert.h"
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
#define FOR_MSW 1
|
||||
#include "../src/xpm/xpm34.h"
|
||||
#endif
|
||||
|
||||
#include "wx/msw/dib.h"
|
||||
|
||||
#if !USE_SHARED_LIBRARIES
|
||||
@@ -146,6 +141,12 @@ wxBitmap::wxBitmap(const char bits[], int the_width, int the_height, int no_bits
|
||||
wxTheBitmapList->AddBitmap(this);
|
||||
}
|
||||
|
||||
// Create from XPM data
|
||||
wxBitmap::wxBitmap(char **data, wxItem *WXUNUSED(anItem))
|
||||
{
|
||||
(void) Create((void *)data, wxBITMAP_TYPE_XPM_DATA, 0, 0, 0);
|
||||
}
|
||||
|
||||
wxBitmap::wxBitmap(int w, int h, int d)
|
||||
{
|
||||
(void)Create(w, h, d);
|
||||
@@ -170,14 +171,6 @@ wxBitmap::wxBitmap(const wxString& filename, long type)
|
||||
wxTheBitmapList->AddBitmap(this);
|
||||
}
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
// Create from data
|
||||
wxBitmap::wxBitmap(char **data, wxItem *WXUNUSED(anItem))
|
||||
{
|
||||
(void) Create((void *)data, wxBITMAP_TYPE_XPM_DATA, 0, 0, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
bool wxBitmap::Create(int w, int h, int d)
|
||||
{
|
||||
UnRef();
|
||||
@@ -696,169 +689,6 @@ bool wxBMPFileHandler::SaveFile(wxBitmap *bitmap, const wxString& name, int type
|
||||
#endif
|
||||
}
|
||||
|
||||
class WXDLLEXPORT wxXPMFileHandler: public wxBitmapHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxXPMFileHandler)
|
||||
public:
|
||||
inline wxXPMFileHandler(void)
|
||||
{
|
||||
m_name = "XPM bitmap file";
|
||||
m_extension = "xpm";
|
||||
m_type = wxBITMAP_TYPE_XPM;
|
||||
};
|
||||
|
||||
virtual bool LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
|
||||
int desiredWidth = -1, int desiredHeight = -1);
|
||||
virtual bool SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = NULL);
|
||||
};
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxXPMFileHandler, wxBitmapHandler)
|
||||
|
||||
bool wxXPMFileHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
|
||||
int desiredWidth, int desiredHeight)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
XImage *ximage;
|
||||
XpmAttributes xpmAttr;
|
||||
HDC dc;
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
dc = CreateCompatibleDC(NULL);
|
||||
if (dc)
|
||||
{
|
||||
xpmAttr.valuemask = XpmReturnPixels;
|
||||
int errorStatus = XpmReadFileToImage(&dc, WXSTRINGCAST name, &ximage, (XImage **) NULL, &xpmAttr);
|
||||
DeleteDC(dc);
|
||||
if (errorStatus == XpmSuccess)
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_hBitmap = (WXHBITMAP) ximage->bitmap;
|
||||
|
||||
BITMAP bm;
|
||||
GetObject((HBITMAP)M_BITMAPHANDLERDATA->m_hBitmap, sizeof(bm), (LPSTR) & bm);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_width = (bm.bmWidth);
|
||||
M_BITMAPHANDLERDATA->m_height = (bm.bmHeight);
|
||||
M_BITMAPHANDLERDATA->m_depth = (bm.bmPlanes * bm.bmBitsPixel);
|
||||
M_BITMAPHANDLERDATA->m_numColors = xpmAttr.npixels;
|
||||
XpmFreeAttributes(&xpmAttr);
|
||||
XImageFree(ximage);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool wxXPMFileHandler::SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
HDC dc = NULL;
|
||||
|
||||
XImage ximage;
|
||||
|
||||
dc = CreateCompatibleDC(NULL);
|
||||
if (dc)
|
||||
{
|
||||
if (SelectObject(dc, (HBITMAP) M_BITMAPHANDLERDATA->m_hBitmap))
|
||||
{
|
||||
/* for following SetPixel */
|
||||
/* fill the XImage struct 'by hand' */
|
||||
ximage.width = M_BITMAPHANDLERDATA->m_width;
|
||||
ximage.height = M_BITMAPHANDLERDATA->m_height;
|
||||
ximage.depth = M_BITMAPHANDLERDATA->m_depth;
|
||||
ximage.bitmap = (HBITMAP)M_BITMAPHANDLERDATA->m_hBitmap;
|
||||
int errorStatus = XpmWriteFileFromImage(&dc, WXSTRINGCAST name,
|
||||
&ximage, (XImage *) NULL, (XpmAttributes *) NULL);
|
||||
|
||||
if (dc)
|
||||
DeleteDC(dc);
|
||||
|
||||
if (errorStatus == XpmSuccess)
|
||||
return TRUE; /* no error */
|
||||
else
|
||||
return FALSE;
|
||||
} else return FALSE;
|
||||
} else return FALSE;
|
||||
#else
|
||||
return FALSE;
|
||||
#endif
|
||||
}
|
||||
|
||||
class WXDLLEXPORT wxXPMDataHandler: public wxBitmapHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxXPMDataHandler)
|
||||
public:
|
||||
inline wxXPMDataHandler(void)
|
||||
{
|
||||
m_name = "XPM bitmap data";
|
||||
m_extension = "xpm";
|
||||
m_type = wxBITMAP_TYPE_XPM_DATA;
|
||||
};
|
||||
|
||||
virtual bool Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth = 1);
|
||||
};
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxXPMDataHandler, wxBitmapHandler)
|
||||
|
||||
bool wxXPMDataHandler::Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
XImage *ximage;
|
||||
int ErrorStatus;
|
||||
XpmAttributes xpmAttr;
|
||||
HDC dc;
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
M_BITMAPHANDLERDATA->m_numColors = 0;
|
||||
|
||||
dc = CreateCompatibleDC(NULL); /* memory DC */
|
||||
|
||||
if (dc)
|
||||
{
|
||||
xpmAttr.valuemask = XpmReturnInfos; /* get infos back */
|
||||
ErrorStatus = XpmCreateImageFromData(&dc, (char **)data,
|
||||
&ximage, (XImage **) NULL, &xpmAttr);
|
||||
|
||||
if (ErrorStatus == XpmSuccess)
|
||||
{
|
||||
/* ximage is malloced and contains bitmap and attributes */
|
||||
M_BITMAPHANDLERDATA->m_hBitmap = (WXHBITMAP) ximage->bitmap;
|
||||
|
||||
BITMAP bm;
|
||||
GetObject((HBITMAP) M_BITMAPHANDLERDATA->m_hBitmap, sizeof(bm), (LPSTR) & bm);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_width = (bm.bmWidth);
|
||||
M_BITMAPHANDLERDATA->m_height = (bm.bmHeight);
|
||||
M_BITMAPHANDLERDATA->m_depth = (bm.bmPlanes * bm.bmBitsPixel);
|
||||
M_BITMAPHANDLERDATA->m_numColors = xpmAttr.npixels;
|
||||
XpmFreeAttributes(&xpmAttr);
|
||||
|
||||
XImageFree(ximage); // releases the malloc, but does not detroy
|
||||
// the bitmap
|
||||
M_BITMAPHANDLERDATA->m_ok = TRUE;
|
||||
DeleteDC(dc);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
// XpmDebugError(ErrorStatus, NULL);
|
||||
DeleteDC(dc);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void wxBitmap::CleanUpHandlers(void)
|
||||
{
|
||||
wxNode *node = sm_handlers.First();
|
||||
@@ -876,8 +706,12 @@ void wxBitmap::InitStandardHandlers(void)
|
||||
{
|
||||
AddHandler(new wxBMPResourceHandler);
|
||||
AddHandler(new wxBMPFileHandler);
|
||||
AddHandler(new wxXPMFileHandler);
|
||||
AddHandler(new wxXPMDataHandler);
|
||||
|
||||
// Not added by default: include xpmhand.h in your app
|
||||
// and call these in your wxApp::OnInit.
|
||||
// AddHandler(new wxXPMFileHandler);
|
||||
// AddHandler(new wxXPMDataHandler);
|
||||
|
||||
AddHandler(new wxICOResourceHandler);
|
||||
AddHandler(new wxICOFileHandler);
|
||||
}
|
||||
|
@@ -34,11 +34,6 @@
|
||||
|
||||
#include "assert.h"
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
#define FOR_MSW 1
|
||||
#include "../src/xpm/xpm34.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_RESOURCE_LOADING_IN_MSW
|
||||
#include "wx/msw/curico.h"
|
||||
#include "wx/msw/curicop.h"
|
||||
|
@@ -32,11 +32,6 @@
|
||||
#include "wx/msw/private.h"
|
||||
#include "assert.h"
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
#define FOR_MSW 1
|
||||
#include "../src/xpm/xpm34.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_RESOURCE_LOADING_IN_MSW
|
||||
#include "wx/msw/curico.h"
|
||||
#include "wx/msw/curicop.h"
|
||||
|
@@ -243,6 +243,7 @@ MSWOBJS = \
|
||||
$(MSWDIR)\utilsexc.obj \
|
||||
$(MSWDIR)\wave.obj \
|
||||
$(MSWDIR)\window.obj \
|
||||
$(MSWDIR)\xpmhand.obj \
|
||||
$(MSWDIR)\droptgt.obj \
|
||||
$(MSWDIR)\dropsrc.obj \
|
||||
$(MSWDIR)\oleutils.obj \
|
||||
|
@@ -233,6 +233,7 @@ MSWOBJS = \
|
||||
$(MSWDIR)\utilsexc.obj \
|
||||
$(MSWDIR)\wave.obj \
|
||||
$(MSWDIR)\window.obj \
|
||||
$(MSWDIR)\xpmhand.obj
|
||||
|
||||
# Unfortunately this causes a crash when the oleauto sample starts.
|
||||
# $(MSWDIR)\automtn.obj
|
||||
|
@@ -210,6 +210,10 @@ MSWOBJS = \
|
||||
# $(OLEDIR)\oleutils.obj \
|
||||
# $(OLEDIR)\uuid.obj
|
||||
|
||||
# TODO: Implement XPM and PNG targets in this makefile!
|
||||
# $(OLEDIR)\xpmhand \
|
||||
# $(OLEDIR)\pnghand \
|
||||
|
||||
# Not appropriate for 16-bit Windows
|
||||
# $(MSWDIR)\registry.obj \
|
||||
# $(MSWDIR)\dirdlg.obj \
|
||||
|
@@ -224,7 +224,8 @@ MSWOBJS = \
|
||||
utils.$(OBJSUFF) \
|
||||
utilsexc.$(OBJSUFF) \
|
||||
wave.$(OBJSUFF) \
|
||||
window.$(OBJSUFF)
|
||||
window.$(OBJSUFF) \
|
||||
xpmhand.$(OBJSUFF)
|
||||
|
||||
# Native wxDirDlg can't be compiled due to GnuWin32/OLE limitations
|
||||
# dirdlg.$(OBJSUFF) \
|
||||
|
@@ -180,7 +180,9 @@ MSWOBJS = \
|
||||
$(MSWDIR)\icon.obj \
|
||||
$(MSWDIR)\iniconf.obj \
|
||||
$(MSWDIR)\joystick.obj \
|
||||
$(MSWDIR)\imaglist.obj \
|
||||
$(MSWDIR)\listbox.obj \
|
||||
$(MSWDIR)\listctrl.obj \
|
||||
$(MSWDIR)\main.obj \
|
||||
$(MSWDIR)\mdi.obj \
|
||||
$(MSWDIR)\menu.obj \
|
||||
@@ -189,6 +191,7 @@ MSWOBJS = \
|
||||
$(MSWDIR)\minifram.obj \
|
||||
$(MSWDIR)\msgdlg.obj \
|
||||
$(MSWDIR)\nativdlg.obj \
|
||||
$(MSWDIR)\notebook.obj \
|
||||
$(MSWDIR)\ownerdrw.obj \
|
||||
$(MSWDIR)\palette.obj \
|
||||
$(MSWDIR)\pen.obj \
|
||||
@@ -217,38 +220,24 @@ MSWOBJS = \
|
||||
$(MSWDIR)\textctrl.obj \
|
||||
$(MSWDIR)\thread.obj \
|
||||
$(MSWDIR)\timer.obj \
|
||||
$(MSWDIR)\treectrl.obj \
|
||||
$(MSWDIR)\utils.obj \
|
||||
$(MSWDIR)\utilsexc.obj \
|
||||
$(OLEDIR)\uuid.obj \
|
||||
$(MSWDIR)\wave.obj \
|
||||
$(MSWDIR)\window.obj \
|
||||
$(MSWDIR)\notebook.obj \
|
||||
$(MSWDIR)\listctrl.obj \
|
||||
$(MSWDIR)\imaglist.obj \
|
||||
$(MSWDIR)\treectrl.obj \
|
||||
$(MSWDIR)\xpmhand.obj \
|
||||
$(OLEDIR)\dataobj.obj \
|
||||
$(OLEDIR)\automtn.obj \
|
||||
$(OLEDIR)\droptgt.obj \
|
||||
$(OLEDIR)\dropsrc.obj \
|
||||
$(OLEDIR)\dataobj.obj \
|
||||
$(OLEDIR)\oleutils.obj \
|
||||
$(OLEDIR)\uuid.obj \
|
||||
$(OLEDIR)\automtn.obj
|
||||
|
||||
XPMOBJECTS = $(XPMDIR)\crbuffri.obj\
|
||||
$(XPMDIR)\crdatfri.obj\
|
||||
$(XPMDIR)\create.obj $(XPMDIR)\crifrbuf.obj\
|
||||
$(XPMDIR)\crifrdat.obj\
|
||||
$(XPMDIR)\data.obj\
|
||||
$(XPMDIR)\hashtab.obj $(XPMDIR)\misc.obj\
|
||||
$(XPMDIR)\parse.obj $(XPMDIR)\rdftodat.obj\
|
||||
$(XPMDIR)\rdftoi.obj\
|
||||
$(XPMDIR)\rgb.obj $(XPMDIR)\scan.obj\
|
||||
$(XPMDIR)\simx.obj $(XPMDIR)\wrffrdat.obj\
|
||||
$(XPMDIR)\wrffrp.obj $(XPMDIR)\wrffri.obj
|
||||
$(OLEDIR)\oleutils.obj
|
||||
|
||||
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
|
||||
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) # $(XPMOBJECTS)
|
||||
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
|
||||
|
||||
# Normal, static library
|
||||
all: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib $(LIBTARGET)
|
||||
all: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib xpm $(LIBTARGET)
|
||||
|
||||
# wxWindows library as DLL
|
||||
dll:
|
||||
@@ -578,6 +567,11 @@ $(MSWDIR)/pnghand.obj: $*.$(SRCSUFF)
|
||||
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
|
||||
<<
|
||||
|
||||
$(MSWDIR)/xpmhand.obj: $*.$(SRCSUFF)
|
||||
cl @<<
|
||||
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
|
||||
<<
|
||||
|
||||
$(MSWDIR)/printdlg.obj: $*.$(SRCSUFF)
|
||||
cl @<<
|
||||
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
|
||||
@@ -1201,121 +1195,11 @@ $(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
|
||||
|
||||
$(OBJECTS): $(WXDIR)/include/wx/setup.h
|
||||
|
||||
$(XPMDIR)\crbuffri.obj: $(XPMDIR)\crbuffri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crbuffrp.obj: $(XPMDIR)\crbuffrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crdatfri.obj: $(XPMDIR)\crdatfri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crdatfrp.obj: $(XPMDIR)\crdatfrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\create.obj: $(XPMDIR)\create.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crifrbuf.obj: $(XPMDIR)\crifrbuf.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crifrdat.obj: $(XPMDIR)\crifrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crpfrdat.obj: $(XPMDIR)\crpfrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\data.obj: $(XPMDIR)\data.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\hashtab.obj: $(XPMDIR)\hashtab.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\misc.obj: $(XPMDIR)\misc.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\parse.obj: $(XPMDIR)\parse.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftodat.obj: $(XPMDIR)\rdftodat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftoi.obj: $(XPMDIR)\rdftoi.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftop.obj: $(XPMDIR)\rdftop.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rgb.obj: $(XPMDIR)\rgb.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\scan.obj: $(XPMDIR)\scan.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\simx.obj: $(XPMDIR)\simx.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffrdat.obj: $(XPMDIR)\wrffrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffri.obj: $(XPMDIR)\wrffri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffrp.obj: $(XPMDIR)\wrffrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
# Peripheral components
|
||||
|
||||
png:
|
||||
cd $(WXDIR)\src\png
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
nmake -f makefile.nt FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_png:
|
||||
@@ -1325,7 +1209,7 @@ clean_png:
|
||||
|
||||
zlib:
|
||||
cd $(WXDIR)\src\zlib
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
nmake -f makefile.nt FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_zlib:
|
||||
@@ -1334,12 +1218,12 @@ clean_zlib:
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
xpm:
|
||||
cd $(WXDIR)\src\wxxpm
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\src\xpm
|
||||
nmake -f makefile.nt FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_xpm:
|
||||
cd $(WXDIR)\src\wxxpm
|
||||
cd $(WXDIR)\src\xpm
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
@@ -1348,22 +1232,7 @@ rcparser:
|
||||
nmake -f makefile.nt FINAL=$(FINAL)
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
wxstring:
|
||||
cd $(WXDIR)\contrib\wxstring
|
||||
nmake -f makefile.nt OPTIONS="$(OPTIONS)" DEBUG="$(DEBUG)" FINAL=$(FINAL)
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_wxstring:
|
||||
cd $(WXDIR)\contrib\wxstring
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_rcp:
|
||||
cd $(WXDIR)\utils\rcparser\src
|
||||
nmake -f makefile.nt clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib
|
||||
clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib clean_xpm
|
||||
-erase *.obj
|
||||
-erase $(LIBTARGET)
|
||||
-erase $(WXDIR)\lib\*.pdb
|
||||
|
@@ -196,7 +196,8 @@ MSWOBJS = \
|
||||
$(MSWDIR)\utils.obj \
|
||||
$(MSWDIR)\utilsexc.obj \
|
||||
$(MSWDIR)\wave.obj \
|
||||
$(MSWDIR)\window.obj
|
||||
$(MSWDIR)\window.obj \
|
||||
$(MSWDIR)\xpmhand.obj
|
||||
|
||||
# Need Win95 support for these
|
||||
# $(MSWDIR)\notebook.obj \
|
||||
|
954
src/msw/makefile.sl
Normal file
954
src/msw/makefile.sl
Normal file
@@ -0,0 +1,954 @@
|
||||
#
|
||||
# File: makefile.wat
|
||||
# Author: Julian Smart
|
||||
# Created: 1998
|
||||
#
|
||||
# Makefile : Builds wxWindows library for Salford C++, WIN32
|
||||
|
||||
# include $(WXDIR)\src\makesl.env
|
||||
|
||||
FINAL=0
|
||||
SALFORDDIR=i:\salfordc
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .exe .obj .c .cc .cpp .res .rc .def .lib
|
||||
|
||||
#WXDIR = d:\wx2\wxwind~1
|
||||
WXDIR = $(WXWIN)
|
||||
WXINC = $(WXDIR)\include
|
||||
|
||||
# Suffixes
|
||||
OBJSUFF=obj
|
||||
SRCSUFF=cpp
|
||||
|
||||
DEBUGFLAGS = /DEFINE __WXDEBUG__
|
||||
|
||||
RC = src
|
||||
|
||||
CCC = scc
|
||||
CC = scc
|
||||
MODEL =
|
||||
# If you use win95, assumptions will be made about Win95 icon format etc.
|
||||
# so nt_win is probably better for simultaneous Win32s/Win95/NT operation.
|
||||
LINKOPTION = nt_win # win95
|
||||
BINDCOMMAND = wrc
|
||||
WATLIBDIR = $(WATCOMDIR)\lib386\nt
|
||||
MINDATA =
|
||||
MAXDATA =
|
||||
STACK =
|
||||
# EXTRALIBS = $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\png.lib $(WXDIR)\lib\xpm.lib &
|
||||
# $(WATLIBDIR)\odbc32.lib $(WATLIBDIR)\comctl32.lib $(WATLIBDIR)\comdlg32.lib &
|
||||
# $(WATLIBDIR)\ole32.lib $(WATLIBDIR)\oleaut32.lib $(WATLIBDIR)\uuid.lib
|
||||
IFLAGS = /INCLUDE $(WXINC) /INCLUDE $(SALFORDDIR)\include
|
||||
#RESFLAGS1 = -r -bt=nt /i$(WXDIR)\include
|
||||
#RESFLAGS2 = -R $(name) /i$(WXDIR)\include
|
||||
|
||||
OPTFLAGS=
|
||||
|
||||
# /d1 for line numbers only: anything else produces an enormous wx32.lib
|
||||
CPPFLAGS = /WINDOWS /ERROR_NUMBERS /DELETE_OBJ_ON_ERROR /DEFINE WIN32 /DEFINE __WIN32__ /DEFINE __WIN95__ /DEFINE __WINDOWS__ /DEFINE __WXMSW__ /DEFINE __SALFORDC__ $(OPTFLAGS) $(DEBUGFLAGS) $(EXTRACPPFLAGS)
|
||||
|
||||
#.cpp.obj:
|
||||
# echo Compiling!
|
||||
# $(CCC) $(CPPFLAGS) $(IFLAGS) $@ $*.cpp
|
||||
|
||||
#.c.obj: # $< # .AUTODEPEND
|
||||
# $(CC) $(CPPFLAGS) $(IFLAGS) $@ $*.cpp
|
||||
|
||||
|
||||
|
||||
WXLIB = $(WXDIR)\lib
|
||||
|
||||
LIBTARGET = $(WXLIB)\wx.lib
|
||||
DUMMY=dummydll
|
||||
# ODBCLIB = ..\..\contrib\odbc\odbc32.lib
|
||||
|
||||
EXTRATARGETS = xpm png zlib
|
||||
EXTRATARGETSCLEAN = clean_xpm clean_png clean_zlib
|
||||
GENDIR=$(WXDIR)\src\generic
|
||||
COMMDIR=$(WXDIR)\src\common
|
||||
XPMDIR=$(WXDIR)\src\xpm
|
||||
OLEDIR=ole
|
||||
MSWDIR=$(WXDIR)\src\msw
|
||||
|
||||
DOCDIR = $(WXDIR)\docs
|
||||
|
||||
GENERICOBJS= choicdgg.obj \
|
||||
gridg.obj \
|
||||
laywin.obj \
|
||||
panelg.obj \
|
||||
prop.obj \
|
||||
propform.obj \
|
||||
proplist.obj \
|
||||
sashwin.obj \
|
||||
scrolwin.obj \
|
||||
splitter.obj \
|
||||
statusbr.obj \
|
||||
tabg.obj \
|
||||
textdlgg.obj
|
||||
|
||||
# These are generic things that don't need to be compiled on MSW,
|
||||
# but sometimes it's useful to do so for testing purposes.
|
||||
NONESSENTIALOBJS= printps.obj \
|
||||
prntdlgg.obj \
|
||||
msgdlgg.obj \
|
||||
helpxlp.obj \
|
||||
colrdlgg.obj \
|
||||
fontdlgg.obj \
|
||||
postscrp.obj
|
||||
|
||||
COMMONOBJS = cmndata.obj \
|
||||
config.obj \
|
||||
docview.obj \
|
||||
docmdi.obj \
|
||||
dynarray.obj \
|
||||
dynlib.obj \
|
||||
event.obj \
|
||||
file.obj \
|
||||
filefn.obj \
|
||||
fileconf.obj \
|
||||
framecmn.obj \
|
||||
gdicmn.obj \
|
||||
image.obj \
|
||||
intl.obj \
|
||||
ipcbase.obj \
|
||||
helpbase.obj \
|
||||
layout.obj \
|
||||
log.obj \
|
||||
memory.obj \
|
||||
mimetype.obj \
|
||||
module.obj \
|
||||
object.obj \
|
||||
prntbase.obj \
|
||||
resource.obj \
|
||||
tbarbase.obj \
|
||||
tbarsmpl.obj \
|
||||
textfile.obj \
|
||||
timercmn.obj \
|
||||
utilscmn.obj \
|
||||
validate.obj \
|
||||
valtext.obj \
|
||||
date.obj \
|
||||
hash.obj \
|
||||
list.obj \
|
||||
string.obj \
|
||||
socket.obj \
|
||||
sckaddr.obj \
|
||||
sckfile.obj \
|
||||
sckipc.obj \
|
||||
sckstrm.obj \
|
||||
url.obj \
|
||||
http.obj \
|
||||
protocol.obj \
|
||||
time.obj \
|
||||
tokenzr.obj \
|
||||
wxexpr.obj \
|
||||
y_tab.obj \
|
||||
extended.obj \
|
||||
process.obj \
|
||||
wfstream.obj \
|
||||
mstream.obj \
|
||||
zstream.obj \
|
||||
stream.obj \
|
||||
datstrm.obj \
|
||||
objstrm.obj \
|
||||
variant.obj \
|
||||
wincmn.obj
|
||||
|
||||
# Can't compile these yet under Salford C++
|
||||
# odbc.obj \
|
||||
# db.obj \
|
||||
# dbtable.obj \
|
||||
|
||||
MSWOBJS = \
|
||||
accel.obj \
|
||||
app.obj \
|
||||
bitmap.obj \
|
||||
bmpbuttn.obj \
|
||||
brush.obj \
|
||||
button.obj \
|
||||
checkbox.obj \
|
||||
checklst.obj \
|
||||
choice.obj \
|
||||
clipbrd.obj \
|
||||
colordlg.obj \
|
||||
colour.obj \
|
||||
combobox.obj \
|
||||
control.obj \
|
||||
curico.obj \
|
||||
cursor.obj \
|
||||
data.obj \
|
||||
dc.obj \
|
||||
dcmemory.obj \
|
||||
dcclient.obj \
|
||||
dcprint.obj \
|
||||
dcscreen.obj \
|
||||
dde.obj \
|
||||
dialog.obj \
|
||||
dib.obj \
|
||||
dibutils.obj \
|
||||
dirdlg.obj \
|
||||
filedlg.obj \
|
||||
font.obj \
|
||||
fontdlg.obj \
|
||||
frame.obj \
|
||||
gauge95.obj \
|
||||
gaugemsw.obj \
|
||||
gdiobj.obj \
|
||||
helpwin.obj \
|
||||
icon.obj \
|
||||
imaglist.obj \
|
||||
iniconf.obj \
|
||||
joystick.obj \
|
||||
listbox.obj \
|
||||
listctrl.obj \
|
||||
main.obj \
|
||||
mdi.obj \
|
||||
menu.obj \
|
||||
menuitem.obj \
|
||||
metafile.obj \
|
||||
minifram.obj \
|
||||
msgdlg.obj \
|
||||
nativdlg.obj \
|
||||
notebook.obj \
|
||||
ownerdrw.obj \
|
||||
palette.obj \
|
||||
pen.obj \
|
||||
penwin.obj \
|
||||
printdlg.obj \
|
||||
printwin.obj \
|
||||
radiobox.obj \
|
||||
radiobut.obj \
|
||||
region.obj \
|
||||
registry.obj \
|
||||
regconf.obj \
|
||||
scrolbar.obj \
|
||||
settings.obj \
|
||||
slidrmsw.obj \
|
||||
slider95.obj \
|
||||
spinbutt.obj \
|
||||
statbmp.obj \
|
||||
statbox.obj \
|
||||
statbr95.obj \
|
||||
stattext.obj \
|
||||
tabctrl.obj \
|
||||
taskbar.obj \
|
||||
tbar95.obj \
|
||||
tbarmsw.obj \
|
||||
textctrl.obj \
|
||||
thread.obj \
|
||||
timer.obj \
|
||||
treectrl.obj \
|
||||
utils.obj \
|
||||
utilsexc.obj \
|
||||
wave.obj \
|
||||
window.obj \
|
||||
xpmhand.obj
|
||||
|
||||
# pnghand.obj \
|
||||
|
||||
OLEOBJS = \
|
||||
droptgt.obj \
|
||||
dropsrc.obj \
|
||||
dataobj.obj \
|
||||
oleutils.obj \
|
||||
uuid.obj \
|
||||
automtn.obj
|
||||
|
||||
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
|
||||
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(OLEOBJS)
|
||||
|
||||
all: $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS)
|
||||
|
||||
$(LIBTARGET) : $(OBJECTS)
|
||||
%create tmp.lnk
|
||||
@%append tmp.lnk archive $(LIBTARGET)
|
||||
@for %i in ( $(OBJECTS) ) do @%append tmp.lnk addobj %i
|
||||
@%append file
|
||||
slink @tmp.lnk
|
||||
|
||||
clean: $(EXTRATARGETSCLEAN)
|
||||
-erase *.obj
|
||||
-erase $(LIBTARGET)
|
||||
-erase *.pch
|
||||
-erase *.err
|
||||
-erase *.lnk
|
||||
|
||||
cleanall: clean
|
||||
|
||||
test: test.obj
|
||||
|
||||
test.obj: test.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) test.cpp
|
||||
|
||||
accel.obj: $(MSWDIR)\accel.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\accel.cpp /BINARY accel.obj
|
||||
|
||||
app.obj: $(MSWDIR)\app.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\app.cpp /BINARY app.obj
|
||||
|
||||
bitmap.obj: $(MSWDIR)\bitmap.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\bitmap.cpp /BINARY bitmap.obj
|
||||
|
||||
bmpbuttn.obj: $(MSWDIR)\bmpbuttn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\bmpbuttn.cpp /BINARY bmpbuttn.obj
|
||||
|
||||
brush.obj: $(MSWDIR)\brush.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\brush.cpp /BINARY brush.obj
|
||||
|
||||
button.obj: $(MSWDIR)\button.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\button.cpp /BINARY button.obj
|
||||
|
||||
choice.obj: $(MSWDIR)\choice.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\choice.cpp /BINARY choice.obj
|
||||
|
||||
checkbox.obj: $(MSWDIR)\checkbox.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\checkbox.cpp /BINARY checkbox.obj
|
||||
|
||||
checklst.obj: $(MSWDIR)\checklst.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\checklst.cpp /BINARY checklst.obj
|
||||
|
||||
clipbrd.obj: $(MSWDIR)\clipbrd.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\clipbrd.cpp /BINARY clipbrd.obj
|
||||
|
||||
colordlg.obj: $(MSWDIR)\colordlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\colordlg.cpp /BINARY colordlg.obj
|
||||
|
||||
colour.obj: $(MSWDIR)\colour.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\colour.cpp /BINARY colour.obj
|
||||
|
||||
combobox.obj: $(MSWDIR)\combobox.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\combobox.cpp /BINARY combobox.obj
|
||||
|
||||
control.obj: $(MSWDIR)\control.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\control.cpp /BINARY control.obj
|
||||
|
||||
curico.obj: $(MSWDIR)\curico.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\curico.cpp /BINARY curico.obj
|
||||
|
||||
cursor.obj: $(MSWDIR)\cursor.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\cursor.cpp /BINARY cursor.obj
|
||||
|
||||
data.obj: $(MSWDIR)\data.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\data.cpp /BINARY data.obj
|
||||
|
||||
dde.obj: $(MSWDIR)\dde.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dde.cpp /BINARY dde.obj
|
||||
|
||||
dc.obj: $(MSWDIR)\dc.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dc.cpp /BINARY dc.obj
|
||||
|
||||
dcmemory.obj: $(MSWDIR)\dcmemory.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dcmemory.cpp /BINARY dcmemory.obj
|
||||
|
||||
dcclient.obj: $(MSWDIR)\dcclient.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dcclient.cpp /BINARY dcclient.obj
|
||||
|
||||
dcprint.obj: $(MSWDIR)\dcprint.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dcprint.cpp /BINARY dcprint.obj
|
||||
|
||||
dcscreen.obj: $(MSWDIR)\dcscreen.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dcscreen.cpp /BINARY dcscreen.obj
|
||||
|
||||
dialog.obj: $(MSWDIR)\dialog.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dialog.cpp /BINARY dialog.obj
|
||||
|
||||
dib.obj: $(MSWDIR)\dib.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dib.cpp /BINARY dib.obj
|
||||
|
||||
dibutils.obj: $(MSWDIR)\dibutils.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dibutils.cpp /BINARY dibutils.obj
|
||||
|
||||
dirdlg.obj: $(MSWDIR)\dirdlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\dirdlg.cpp /BINARY dirdlg.obj
|
||||
|
||||
filedlg.obj: $(MSWDIR)\filedlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\filedlg.cpp /BINARY filedlg.obj
|
||||
|
||||
font.obj: $(MSWDIR)\font.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\font.cpp /BINARY font.obj
|
||||
|
||||
fontdlg.obj: $(MSWDIR)\fontdlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\fontdlg.cpp /BINARY fontdlg.obj
|
||||
|
||||
frame.obj: $(MSWDIR)\frame.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\frame.cpp /BINARY frame.obj
|
||||
|
||||
gauge95.obj: $(MSWDIR)\gauge95.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\gauge95.cpp /BINARY gauge95.obj
|
||||
|
||||
gaugemsw.obj: $(MSWDIR)\gaugemsw.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\gaugemsw.cpp /BINARY gaugemsw.obj
|
||||
|
||||
gdiobj.obj: $(MSWDIR)\gdiobj.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\gdiobj.cpp /BINARY gdiobj.obj
|
||||
|
||||
icon.obj: $(MSWDIR)\icon.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\icon.cpp /BINARY icon.obj
|
||||
|
||||
imaglist.obj: $(MSWDIR)\imaglist.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\imaglist.cpp /BINARY imaglist.obj
|
||||
|
||||
joystick.obj: $(MSWDIR)\joystick.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\joystick.cpp /BINARY joystick.obj
|
||||
|
||||
listbox.obj: $(MSWDIR)\listbox.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\listbox.cpp /BINARY listbox.obj
|
||||
|
||||
listctrl.obj: $(MSWDIR)\listctrl.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\listctrl.cpp /BINARY listctrl.obj
|
||||
|
||||
main.obj: $(MSWDIR)\main.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\main.cpp /BINARY main.obj
|
||||
|
||||
mdi.obj: $(MSWDIR)\mdi.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\mdi.cpp /BINARY mdi.obj
|
||||
|
||||
menu.obj: $(MSWDIR)\menu.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\menu.cpp /BINARY menu.obj
|
||||
|
||||
menuitem.obj: $(MSWDIR)\menuitem.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\menuitem.cpp /BINARY menuitem.obj
|
||||
|
||||
metafile.obj: $(MSWDIR)\metafile.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\metafile.cpp /BINARY metafile.obj
|
||||
|
||||
minifram.obj: $(MSWDIR)\minifram.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\minifram.cpp /BINARY minifram.obj
|
||||
|
||||
msgdlg.obj: $(MSWDIR)\msgdlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\msgdlg.cpp /BINARY mdgdlg.obj
|
||||
|
||||
nativdlg.obj: $(MSWDIR)\nativdlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\nativdlg.cpp /BINARY nativdlg.obj
|
||||
|
||||
notebook.obj: $(MSWDIR)\notebook.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\notebook.cpp /BINARY notebook.obj
|
||||
|
||||
ownerdrw.obj: $(MSWDIR)\ownerdrw.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\ownerdrw.cpp /BINARY ownerdrw.obj
|
||||
|
||||
palette.obj: $(MSWDIR)\palette.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\palette.cpp /BINARY palette.obj
|
||||
|
||||
pen.obj: $(MSWDIR)\pen.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\pen.cpp /BINARY pen.obj
|
||||
|
||||
penwin.obj: $(MSWDIR)\penwin.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\penwin.cpp /BINARY penwin.obj
|
||||
|
||||
pnghand.obj: $(MSWDIR)\pnghand.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\pnghand.cpp /BINARY pnghand.obj
|
||||
|
||||
printdlg.obj: $(MSWDIR)\printdlg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\printdlg.cpp /BINARY printdlg.obj
|
||||
|
||||
printwin.obj: $(MSWDIR)\printwin.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\printwin.cpp /BINARY printwin.obj
|
||||
|
||||
radiobox.obj: $(MSWDIR)\radiobox.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\radiobox.cpp /BINARY radiobox.obj
|
||||
|
||||
radiobut.obj: $(MSWDIR)\radiobut.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\radiobut.cpp /BINARY radiobut.obj
|
||||
|
||||
region.obj: $(MSWDIR)\region.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\region.cpp /BINARY region.obj
|
||||
|
||||
registry.obj: $(MSWDIR)\registry.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\registry.cpp /BINARY registry.obj
|
||||
|
||||
regconf.obj: $(MSWDIR)\regconf.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\regconf.cpp /BINARY regconf.obj
|
||||
|
||||
scrolbar.obj: $(MSWDIR)\scrolbar.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\scrolbar.cpp /BINARY scrolbar.obj
|
||||
|
||||
settings.obj: $(MSWDIR)\settings.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\settings.cpp /BINARY settings.obj
|
||||
|
||||
slidrmsw.obj: $(MSWDIR)\slidrmsw.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\slidrmsw.cpp /BINARY slidrmsw.obj
|
||||
|
||||
slider95.obj: $(MSWDIR)\slider95.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\slider95.cpp /BINARY slider.obj
|
||||
|
||||
spinbutt.obj: $(MSWDIR)\spinbutt.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\spinbutt.cpp /BINARY spinbutt.obj
|
||||
|
||||
statbmp.obj: $(MSWDIR)\statbmp.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\statbmp.cpp /BINARY statbmp.obj
|
||||
|
||||
statbox.obj: $(MSWDIR)\statbox.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\statbox.cpp /BINARY statbox.obj
|
||||
|
||||
statbr95.obj: $(MSWDIR)\statbr95.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\statbr95.cpp /BINARY statbr95.obj
|
||||
|
||||
stattext.obj: $(MSWDIR)\stattext.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\stattext.cpp /BINARY stattext.obj
|
||||
|
||||
tabctrl.obj: $(MSWDIR)\tabctrl.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\tabctrl.cpp /BINARY tabctrl.obj
|
||||
|
||||
taskbar.obj: $(MSWDIR)\taskbar.cpp
|
||||
cl @<<
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\taskbar.cpp /BINARY taskbar.obj
|
||||
|
||||
tbar95.obj: $(MSWDIR)\tbar95.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\tbar95.cpp /BINARY tbar95.obj
|
||||
|
||||
tbarmsw.obj: $(MSWDIR)\tbarmsw.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\tbarmsw.cpp /BINARY tbarmsw.obj
|
||||
|
||||
textctrl.obj: $(MSWDIR)\textctrl.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\textctrl.cpp /BINARY textctrl.obj
|
||||
|
||||
thread.obj: $(MSWDIR)\thread.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\thread.cpp /BINARY thread.obj
|
||||
|
||||
timer.obj: $(MSWDIR)\timer.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\timer.cpp /BINARY timer.obj
|
||||
|
||||
treectrl.obj: $(MSWDIR)\treectrl.cpp
|
||||
cl @<<
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\treectrl.cpp /BINARY treectrl.obj
|
||||
|
||||
utils.obj: $(MSWDIR)\utils.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\utils.cpp /BINARY utils.obj
|
||||
|
||||
utilsexc.obj: $(MSWDIR)\utilsexc.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\utilsexc.cpp /BINARY utilsexc.obj
|
||||
|
||||
wave.obj: $(MSWDIR)\wave.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\wave.cpp /BINARY wave.obj
|
||||
|
||||
window.obj: $(MSWDIR)\window.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\window.cpp /BINARY window.obj
|
||||
|
||||
xpmhand.obj: $(MSWDIR)\xpmhand.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(MSWDIR)\xpmhand.cpp /BINARY xpmhand.obj
|
||||
|
||||
droptgt.obj: $(OLEDIR)\droptgt.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\droptgt.cpp /BINARY droptgt.obj
|
||||
|
||||
dropsrc.obj: $(OLEDIR)\dropsrc.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\dropsrc.cpp /BINARY dropsrc.obj
|
||||
|
||||
dataobj.obj: $(OLEDIR)\dataobj.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\dataobj.cpp /BINARY dataobj.obj
|
||||
|
||||
oleutils.obj: $(OLEDIR)\oleutils.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\oleutils.cpp /BINARY oleutils.obj
|
||||
|
||||
uuid.obj: $(OLEDIR)\uuid.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\uuid.cpp /BINARY uuid.obj
|
||||
|
||||
automtn.obj: $(OLEDIR)\automtn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(OLEDIR)\automtn.cpp /BINARY automtn.obj
|
||||
|
||||
########################################################
|
||||
# Common objects (always compiled)
|
||||
|
||||
cmndata.obj: $(COMMDIR)\cmndata.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\cmndata.cpp /BINARY cmndata.obj
|
||||
|
||||
config.obj: $(COMMDIR)\config.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\config.cpp /BINARY config.obj
|
||||
|
||||
db.obj: $(COMMDIR)\db.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\db.cpp /BINARY db.obj
|
||||
|
||||
dbtable.obj: $(COMMDIR)\dbtable.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\dbtable.cpp /BINARY dbtable.obj
|
||||
|
||||
docview.obj: $(COMMDIR)\docview.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\docview.cpp /BINARY docview.obj
|
||||
|
||||
docmdi.obj: $(COMMDIR)\docmdi.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\docmdi.cpp /BINARY docmdi.obj
|
||||
|
||||
dynarray.obj: $(COMMDIR)\dynarray.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\dynarray.cpp /BINARY dynarray.obj
|
||||
|
||||
dynlib.obj: $(COMMDIR)\dynlib.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\dynlib.cpp /BINARY dynlib.obj
|
||||
|
||||
event.obj: $(COMMDIR)\event.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\event.cpp /BINARY event.obj
|
||||
|
||||
file.obj: $(COMMDIR)\file.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\file.cpp /BINARY file.obj
|
||||
|
||||
fileconf.obj: $(COMMDIR)\fileconf.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\fileconf.cpp /BINARY fileconf.obj
|
||||
|
||||
filefn.obj: $(COMMDIR)\filefn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\filefn.cpp /BINARY filefn.obj
|
||||
|
||||
framecmn.obj: $(COMMDIR)\framecmn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\framecmn.cpp /BINARY framecmn.obj
|
||||
|
||||
gdicmn.obj: $(COMMDIR)\gdicmn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\gdicmn.cpp /BINARY gdicmn.obj
|
||||
|
||||
image.obj: $(COMMDIR)\image.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\image.cpp /BINARY image.obj
|
||||
|
||||
intl.obj: $(COMMDIR)\intl.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\intl.cpp /BINARY intl.obj
|
||||
|
||||
ipcbase.obj: $(COMMDIR)\ipcbase.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\ipcbase.cpp /BINARY ipcbase.obj
|
||||
|
||||
helpbase.obj: $(COMMDIR)\helpbase.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\helpbase.cpp /BINARY helpbase.obj
|
||||
|
||||
layout.obj: $(COMMDIR)\layout.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\layout.cpp /BINARY layout.obj
|
||||
|
||||
log.obj: $(COMMDIR)\log.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\log.cpp /BINARY log.obj
|
||||
|
||||
memory.obj: $(COMMDIR)\memory.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\memory.cpp /BINARY memory.obj
|
||||
|
||||
mimetype.obj: $(COMMDIR)\mimetype.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\mimetype.cpp /BINARY mimetype.obj
|
||||
|
||||
module.obj: $(COMMDIR)\module.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\module.cpp /BINARY module.obj
|
||||
|
||||
object.obj: $(COMMDIR)\object.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\object.cpp /BINARY object.obj
|
||||
|
||||
odbc.obj: $(COMMDIR)\odbc.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\odbc.cpp /BINARY odbc.obj
|
||||
|
||||
postscrp.obj: $(COMMDIR)\postcrp.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\postcrp.cpp /BINARY postscrp.obj
|
||||
|
||||
prntbase.obj: $(COMMDIR)\prntbase.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\prntbase.cpp /BINARY prntbase.obj
|
||||
|
||||
resource.obj: $(COMMDIR)\resource.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\resource.cpp /BINARY resource.obj
|
||||
|
||||
tbarbase.obj: $(COMMDIR)\tbarbase.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\tbarbase.cpp /BINARY tbarbase.obj
|
||||
|
||||
tbarsmpl.obj: $(COMMDIR)\tbarsmpl.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\tbarsmpl.cpp /BINARY tbarsmpl.obj
|
||||
|
||||
textfile.obj: $(COMMDIR)\textfile.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\textfile.cpp /BINARY textfile.obj
|
||||
|
||||
timercmn.obj: $(COMMDIR)\timercmn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\timercmn.cpp /BINARY timercmn.obj
|
||||
|
||||
utilscmn.obj: $(COMMDIR)\utilscmn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\utilscmn.cpp /BINARY utilscmn.obj
|
||||
|
||||
validate.obj: $(COMMDIR)\validate.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\validate.cpp /BINARY validate.obj
|
||||
|
||||
valtext.obj: $(COMMDIR)\valtext.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\valtext.cpp /BINARY valtext.obj
|
||||
|
||||
date.obj: $(COMMDIR)\date.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\date.cpp /BINARY date.obj
|
||||
|
||||
wxexpr.obj: $(COMMDIR)\wxexpr.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\wxexpr.cpp /BINARY wxexpr.obj
|
||||
|
||||
hash.obj: $(COMMDIR)\hash.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\hash.cpp /BINARY hash.obj
|
||||
|
||||
list.obj: $(COMMDIR)\list.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\list.cpp /BINARY list.obj
|
||||
|
||||
string.obj: $(COMMDIR)\string.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\string.cpp /BINARY string.obj
|
||||
|
||||
socket.obj: $(COMMDIR)\socket.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\socket.cpp /BINARY socket.obj
|
||||
|
||||
sckaddr.obj: $(COMMDIR)\sckaddr.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\sckaddr.cpp /BINARY sckaddr.obj
|
||||
|
||||
sckfile.obj: $(COMMDIR)\sckfile.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\sckfile.cpp /BINARY sckfile.obj
|
||||
|
||||
sckipc.obj: $(COMMDIR)\sckipc.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\sckipc.cpp /BINARY sckipc.obj
|
||||
|
||||
sckstrm.obj: $(COMMDIR)\sckstrm.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\sckstrm.cpp /BINARY sockstrm.obj
|
||||
|
||||
url.obj: $(COMMDIR)\url.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\url.cpp /BINARY url.obj
|
||||
|
||||
http.obj: $(COMMDIR)\http.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\http.cpp /BINARY http.obj
|
||||
|
||||
protocol.obj: $(COMMDIR)\protocol.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\protocol.cpp /BINARY protocol.obj
|
||||
|
||||
tokenzr.obj: $(COMMDIR)\tokenzr.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\tokenzr.cpp /BINARY tokenzr.obj
|
||||
|
||||
matrix.obj: $(COMMDIR)\matrix.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\matrix.cpp /BINARY matrix.obj
|
||||
|
||||
time.obj: $(COMMDIR)\time.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\time.cpp /BINARY timer.obj
|
||||
|
||||
stream.obj: $(COMMDIR)\stream.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\stream.cpp /BINARY stream.obj
|
||||
|
||||
wfstream.obj: $(COMMDIR)\wfstream.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\wfstream.cpp /BINARY wfstream.obj
|
||||
|
||||
mstream.obj: $(COMMDIR)\mstream.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\mstream.cpp /BINARY mstream.obj
|
||||
|
||||
zstream.obj: $(COMMDIR)\zstream.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\zstream.cpp /BINARY zstream.obj
|
||||
|
||||
datstrm.obj: $(COMMDIR)\datstrm.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\datstrm.cpp /BINARY datstrm.obj
|
||||
|
||||
objstrm.obj: $(COMMDIR)\objstrm.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\objstrm.cpp /BINARY objstrm.obj
|
||||
|
||||
extended.obj: $(COMMDIR)\extended.c
|
||||
$(CC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\extended.c /BINARY extended.obj
|
||||
|
||||
process.obj: $(COMMDIR)\process.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\process.cpp /BINARY process.obj
|
||||
|
||||
variant.obj: $(COMMDIR)\variant.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\variant.cpp /BINARY variant.obj
|
||||
|
||||
wincmn.obj: $(COMMDIR)\wincmn.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\wincmn.cpp /BINARY wincmn.obj
|
||||
|
||||
########################################################
|
||||
# Generic objects (not always compiled, depending on
|
||||
# whether platforms have native implementations)
|
||||
|
||||
choicdgg.obj: $(GENDIR)\choicdgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\choicdgg.cpp /BINARY choicdgg.obj
|
||||
|
||||
colrdlgg.obj: $(GENDIR)\colrdgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\colrdgg.cpp /BINARY colordgg.obj
|
||||
|
||||
fontdlgg.obj: $(GENDIR)\fontdlgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\fontdlgg.cpp /BINARY fontdlgg.obj
|
||||
|
||||
gridg.obj: $(GENDIR)\gridg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\gridg.cpp /BINARY gridg.obj
|
||||
|
||||
helpxlp.obj: $(GENDIR)\helpxlp.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\helpxlp.cpp /BINARY helpxlp.obj
|
||||
|
||||
laywin.obj: $(GENDIR)\laywin.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\laywin.cpp /BINARY laywin.obj
|
||||
|
||||
msgdlgg.obj: $(GENDIR)\msgdlgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\msgdlgg.cpp /BINARY msgdlgg.obj
|
||||
|
||||
panelg.obj: $(GENDIR)\panelg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\panelg.cpp /BINARY panelg.obj
|
||||
|
||||
printps.obj: $(GENDIR)\printps.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\printps.cpp /BINARY printps.obj
|
||||
|
||||
prop.obj: $(GENDIR)\prop.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\prop.cpp /BINARY prop.obj
|
||||
|
||||
propform.obj: $(GENDIR)\propform.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\propform.cpp /BINARY propform.obj
|
||||
|
||||
proplist.obj: $(GENDIR)\proplist.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\proplist.cpp /BINARY proplist.obj
|
||||
|
||||
prntdlgg.obj: $(GENDIR)\prntdlgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\prntdlgg.cpp /BINARY prntdlgg.obj
|
||||
|
||||
sashwin.obj: $(GENDIR)\sashwin.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\sashwin.cpp /BINARY sashwin.obj
|
||||
|
||||
scrolwin.obj: $(GENDIR)\scrolwin.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\scrolwin.cpp /BINARY scrolwin.obj
|
||||
|
||||
splitter.obj: $(GENDIR)\splitter.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\splitter.cpp /BINARY splitter.obj
|
||||
|
||||
statusbr.obj: $(GENDIR)\statusbr.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\statusbr.cpp /BINARY statusbr.obj
|
||||
|
||||
tabg.obj: $(GENDIR)\tabg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\tabg.cpp /BINARY tabg.obj
|
||||
|
||||
textdlgg.obj: $(GENDIR)\textdlgg.cpp
|
||||
$(CCC) $(CPPFLAGS) $(IFLAGS) $(GENDIR)\textdlgg.cpp /BINARY textdlgg.obj
|
||||
|
||||
crbuffri.obj: $(XPMDIR)\crbuffri.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crbuffri.c
|
||||
|
||||
crbuffrp.obj: $(XPMDIR)\crbuffrp.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crbuffrp.c
|
||||
|
||||
crdatfri.obj: $(XPMDIR)\crdatfri.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crdatfri.c
|
||||
|
||||
crdatfrp.obj: $(XPMDIR)\crdatfrp.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crdatfrp.c
|
||||
|
||||
create.obj: $(XPMDIR)\create.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\create.c
|
||||
|
||||
crifrbuf.obj: $(XPMDIR)\crifrbuf.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crifrbuf.c
|
||||
|
||||
crifrdat.obj: $(XPMDIR)\crifrdat.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crifrdat.c
|
||||
|
||||
crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crpfrbuf.c
|
||||
|
||||
crpfrdat.obj: $(XPMDIR)\crpfrdat.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\crpfrdat.c
|
||||
|
||||
dataxpm.obj: $(XPMDIR)\data.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\data.c /BINARY dataxpm.obj
|
||||
|
||||
hashtab.obj: $(XPMDIR)\hashtab.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\hashtab.c
|
||||
|
||||
misc.obj: $(XPMDIR)\misc.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\misc.c
|
||||
|
||||
parse.obj: $(XPMDIR)\parse.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\parse.c
|
||||
|
||||
rdftodat.obj: $(XPMDIR)\rdftodat.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\rdftodat.c
|
||||
|
||||
rdftoi.obj: $(XPMDIR)\rdftoi.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\rdftoi.c
|
||||
|
||||
rdftop.obj: $(XPMDIR)\rdftop.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\rdftop.c
|
||||
|
||||
rgb.obj: $(XPMDIR)\rgb.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\rgb.c
|
||||
|
||||
scan.obj: $(XPMDIR)\scan.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\scan.c
|
||||
|
||||
simx.obj: $(XPMDIR)\simx.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\simx.c
|
||||
|
||||
wrffrdat.obj: $(XPMDIR)\wrffrdat.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\wrffrdat.c
|
||||
|
||||
wrffri.obj: $(XPMDIR)\wrffri.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\wrffri.c
|
||||
|
||||
wrffrp.obj: $(XPMDIR)\wrffrp.c
|
||||
*$(CC) $(CPPFLAGS) $(IFLAGS) $(XPMDIR)\wrffrp.c
|
||||
|
||||
OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) \
|
||||
trees$(O)
|
||||
OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) \
|
||||
infutil$(O) inffast$(O)
|
||||
|
||||
adler32.obj: adler32.c zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
compress.obj: compress.c zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
crc32.obj: crc32.c zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
gzio.obj: gzio.c zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\
|
||||
infcodes.h infutil.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\
|
||||
infcodes.h inffast.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
uncompr.obj: uncompr.c zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
zutil.obj: zutil.c zutil.h zlib.h zconf.h
|
||||
$(CC) -c $(CFLAGS) $*.c
|
||||
|
||||
|
||||
y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
|
||||
$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE $(COMMDIR)\y_tab.c
|
||||
|
||||
# *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS $(COMMDIR)\y_tab.c
|
||||
|
||||
$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
|
||||
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
|
||||
|
||||
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
|
||||
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
|
||||
|
||||
xpm: .SYMBOLIC
|
||||
cd $(WXDIR)\src\xpm
|
||||
wmake -f makefile.wat all
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_xpm: .SYMBOLIC
|
||||
cd $(WXDIR)\src\xpm
|
||||
wmake -f makefile.wat clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
png: .SYMBOLIC
|
||||
cd $(WXDIR)\src\png
|
||||
wmake -f makefile.wat all
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_png: .SYMBOLIC
|
||||
cd $(WXDIR)\src\png
|
||||
wmake -f makefile.wat clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
zlib: .SYMBOLIC
|
||||
cd $(WXDIR)\src\zlib
|
||||
wmake -f makefile.wat all
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
clean_zlib: .SYMBOLIC
|
||||
cd $(WXDIR)\src\zlib
|
||||
wmake -f makefile.wat clean
|
||||
cd $(WXDIR)\src\msw
|
||||
|
||||
|
@@ -196,6 +196,7 @@ MSWOBJS = &
|
||||
utilsexc.obj &
|
||||
wave.obj &
|
||||
window.obj &
|
||||
xpmhand.obj
|
||||
|
||||
# pnghand.obj &
|
||||
|
||||
@@ -477,6 +478,9 @@ wave.obj: $(MSWDIR)\wave.cpp
|
||||
window.obj: $(MSWDIR)\window.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
xpmhand.obj: $(MSWDIR)\xpmhand.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
droptgt.obj: $(OLEDIR)\droptgt.cpp
|
||||
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
|
||||
|
||||
|
182
src/msw/xpmhand.cpp
Normal file
182
src/msw/xpmhand.cpp
Normal file
@@ -0,0 +1,182 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xpmhand.cpp
|
||||
// Purpose: wxBitmap: XPM handler and constructors
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 04/01/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "xpmhand.h"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include <stdio.h>
|
||||
#include "wx/setup.h"
|
||||
#include "wx/list.h"
|
||||
#include "wx/utils.h"
|
||||
#include "wx/app.h"
|
||||
#include "wx/palette.h"
|
||||
#include "wx/dcmemory.h"
|
||||
#include "wx/bitmap.h"
|
||||
#include "wx/icon.h"
|
||||
#endif
|
||||
|
||||
#include "wx/msw/private.h"
|
||||
#include "wx/log.h"
|
||||
|
||||
#include "assert.h"
|
||||
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
#define FOR_MSW 1
|
||||
#include "../src/xpm/xpm34.h"
|
||||
#endif
|
||||
|
||||
#include "wx/xpmhand.h"
|
||||
#include "wx/msw/dib.h"
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxXPMFileHandler, wxBitmapHandler)
|
||||
|
||||
bool wxXPMFileHandler::LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
|
||||
int desiredWidth, int desiredHeight)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
XImage *ximage;
|
||||
XpmAttributes xpmAttr;
|
||||
HDC dc;
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
dc = CreateCompatibleDC(NULL);
|
||||
if (dc)
|
||||
{
|
||||
xpmAttr.valuemask = XpmReturnPixels;
|
||||
int errorStatus = XpmReadFileToImage(&dc, WXSTRINGCAST name, &ximage, (XImage **) NULL, &xpmAttr);
|
||||
DeleteDC(dc);
|
||||
if (errorStatus == XpmSuccess)
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_hBitmap = (WXHBITMAP) ximage->bitmap;
|
||||
|
||||
BITMAP bm;
|
||||
GetObject((HBITMAP)M_BITMAPHANDLERDATA->m_hBitmap, sizeof(bm), (LPSTR) & bm);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_width = (bm.bmWidth);
|
||||
M_BITMAPHANDLERDATA->m_height = (bm.bmHeight);
|
||||
M_BITMAPHANDLERDATA->m_depth = (bm.bmPlanes * bm.bmBitsPixel);
|
||||
M_BITMAPHANDLERDATA->m_numColors = xpmAttr.npixels;
|
||||
XpmFreeAttributes(&xpmAttr);
|
||||
XImageFree(ximage);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool wxXPMFileHandler::SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
HDC dc = NULL;
|
||||
|
||||
XImage ximage;
|
||||
|
||||
dc = CreateCompatibleDC(NULL);
|
||||
if (dc)
|
||||
{
|
||||
if (SelectObject(dc, (HBITMAP) M_BITMAPHANDLERDATA->m_hBitmap))
|
||||
{
|
||||
/* for following SetPixel */
|
||||
/* fill the XImage struct 'by hand' */
|
||||
ximage.width = M_BITMAPHANDLERDATA->m_width;
|
||||
ximage.height = M_BITMAPHANDLERDATA->m_height;
|
||||
ximage.depth = M_BITMAPHANDLERDATA->m_depth;
|
||||
ximage.bitmap = (HBITMAP)M_BITMAPHANDLERDATA->m_hBitmap;
|
||||
int errorStatus = XpmWriteFileFromImage(&dc, WXSTRINGCAST name,
|
||||
&ximage, (XImage *) NULL, (XpmAttributes *) NULL);
|
||||
|
||||
if (dc)
|
||||
DeleteDC(dc);
|
||||
|
||||
if (errorStatus == XpmSuccess)
|
||||
return TRUE; /* no error */
|
||||
else
|
||||
return FALSE;
|
||||
} else return FALSE;
|
||||
} else return FALSE;
|
||||
#else
|
||||
return FALSE;
|
||||
#endif
|
||||
}
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxXPMDataHandler, wxBitmapHandler)
|
||||
|
||||
bool wxXPMDataHandler::Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth)
|
||||
{
|
||||
#if wxUSE_XPM_IN_MSW
|
||||
XImage *ximage;
|
||||
int ErrorStatus;
|
||||
XpmAttributes xpmAttr;
|
||||
HDC dc;
|
||||
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
M_BITMAPHANDLERDATA->m_numColors = 0;
|
||||
|
||||
dc = CreateCompatibleDC(NULL); /* memory DC */
|
||||
|
||||
if (dc)
|
||||
{
|
||||
xpmAttr.valuemask = XpmReturnInfos; /* get infos back */
|
||||
ErrorStatus = XpmCreateImageFromData(&dc, (char **)data,
|
||||
&ximage, (XImage **) NULL, &xpmAttr);
|
||||
|
||||
if (ErrorStatus == XpmSuccess)
|
||||
{
|
||||
/* ximage is malloced and contains bitmap and attributes */
|
||||
M_BITMAPHANDLERDATA->m_hBitmap = (WXHBITMAP) ximage->bitmap;
|
||||
|
||||
BITMAP bm;
|
||||
GetObject((HBITMAP) M_BITMAPHANDLERDATA->m_hBitmap, sizeof(bm), (LPSTR) & bm);
|
||||
|
||||
M_BITMAPHANDLERDATA->m_width = (bm.bmWidth);
|
||||
M_BITMAPHANDLERDATA->m_height = (bm.bmHeight);
|
||||
M_BITMAPHANDLERDATA->m_depth = (bm.bmPlanes * bm.bmBitsPixel);
|
||||
M_BITMAPHANDLERDATA->m_numColors = xpmAttr.npixels;
|
||||
XpmFreeAttributes(&xpmAttr);
|
||||
|
||||
XImageFree(ximage); // releases the malloc, but does not detroy
|
||||
// the bitmap
|
||||
M_BITMAPHANDLERDATA->m_ok = TRUE;
|
||||
DeleteDC(dc);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
M_BITMAPHANDLERDATA->m_ok = FALSE;
|
||||
// XpmDebugError(ErrorStatus, NULL);
|
||||
DeleteDC(dc);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
@@ -100,7 +100,7 @@ EXTRADLLFLAGS=$(EXTRADLLFLAGS) /DNOMAIN
|
||||
!endif
|
||||
|
||||
INC=-I$(WXINC) -I$(WXDIR)/src/png -I$(WXDIR)/src/zlib $(EXTRAINC)
|
||||
LIBS = $(EXTRALIBS) $(WXLIB) $(WINLIBS) $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\zlib.lib
|
||||
LIBS = $(EXTRALIBS) $(WXLIB) $(WINLIBS) $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\xpm.lib
|
||||
|
||||
!ifndef FINAL
|
||||
FINAL=0
|
||||
|
170
src/xpm/makefile.nt
Normal file
170
src/xpm/makefile.nt
Normal file
@@ -0,0 +1,170 @@
|
||||
#
|
||||
# File: makefile.nt
|
||||
# Author: Julian Smart
|
||||
# Created: 1997
|
||||
# Updated:
|
||||
# Copyright: (c) 1997, Julian Smart
|
||||
#
|
||||
# "%W% %G%"
|
||||
#
|
||||
# Makefile : Builds xpm.lib for VC++ (32-bit)
|
||||
#
|
||||
!include <..\ntwxwin.mak>
|
||||
|
||||
THISDIR=$(WXWIN)\src\xpm
|
||||
|
||||
LIBTARGET=$(WXDIR)\lib\xpm.lib
|
||||
|
||||
# Please set these according to the settings in wx_setup.h, so we can include
|
||||
# the appropriate libraries in wx.lib
|
||||
|
||||
# This one overrides the others, to be consistent with the settings in wx_setup.h
|
||||
MINIMAL_WXWINDOWS_SETUP=0
|
||||
|
||||
PERIPH_LIBS=
|
||||
PERIPH_TARGET=
|
||||
PERIPH_CLEAN_TARGET=
|
||||
|
||||
XPMDIR=$(WXDIR)\src\xpm
|
||||
|
||||
OBJECTS = $(XPMDIR)\crbuffri.obj\
|
||||
$(XPMDIR)\crdatfri.obj\
|
||||
$(XPMDIR)\create.obj $(XPMDIR)\crifrbuf.obj\
|
||||
$(XPMDIR)\crifrdat.obj\
|
||||
$(XPMDIR)\data.obj\
|
||||
$(XPMDIR)\hashtab.obj $(XPMDIR)\misc.obj\
|
||||
$(XPMDIR)\parse.obj $(XPMDIR)\rdftodat.obj\
|
||||
$(XPMDIR)\rdftoi.obj\
|
||||
$(XPMDIR)\rgb.obj $(XPMDIR)\scan.obj\
|
||||
$(XPMDIR)\simx.obj $(XPMDIR)\wrffrdat.obj\
|
||||
$(XPMDIR)\wrffrp.obj $(XPMDIR)\wrffri.obj
|
||||
|
||||
all: $(LIBTARGET)
|
||||
|
||||
$(LIBTARGET): $(OBJECTS)
|
||||
-erase $(LIBTARGET)
|
||||
$(implib) @<<
|
||||
-out:$@
|
||||
-machine:$(CPU)
|
||||
$(OBJECTS) $(PERIPH_LIBS)
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crbuffri.obj: $(XPMDIR)\crbuffri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crbuffrp.obj: $(XPMDIR)\crbuffrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crdatfri.obj: $(XPMDIR)\crdatfri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crdatfrp.obj: $(XPMDIR)\crdatfrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\create.obj: $(XPMDIR)\create.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crifrbuf.obj: $(XPMDIR)\crifrbuf.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crifrdat.obj: $(XPMDIR)\crifrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\crpfrdat.obj: $(XPMDIR)\crpfrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\data.obj: $(XPMDIR)\data.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\hashtab.obj: $(XPMDIR)\hashtab.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\misc.obj: $(XPMDIR)\misc.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\parse.obj: $(XPMDIR)\parse.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftodat.obj: $(XPMDIR)\rdftodat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftoi.obj: $(XPMDIR)\rdftoi.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rdftop.obj: $(XPMDIR)\rdftop.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\rgb.obj: $(XPMDIR)\rgb.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\scan.obj: $(XPMDIR)\scan.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\simx.obj: $(XPMDIR)\simx.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffrdat.obj: $(XPMDIR)\wrffrdat.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffri.obj: $(XPMDIR)\wrffri.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
$(XPMDIR)\wrffrp.obj: $(XPMDIR)\wrffrp.c
|
||||
cl @<<
|
||||
$(CPPFLAGS2) /c $*.c /Fo$@
|
||||
<<
|
||||
|
||||
clean:
|
||||
-erase *.obj
|
||||
-erase $(LIBTARGET)
|
||||
-erase *.pdb
|
||||
-erase *.sbr
|
||||
-erase *.pch
|
||||
|
||||
cleanall: clean
|
||||
|
Reference in New Issue
Block a user