Added a few #if wxUSE_XXX

Regrouped image format handlers
  Updated the rest accordingly
  Added changes.txt for wxGTK


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
1999-06-15 20:21:59 +00:00
parent dcf924a345
commit ce4169a4d1
88 changed files with 1125 additions and 698 deletions

View File

@@ -19,21 +19,24 @@
#include "wx/wxprec.h"
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#if wxUSE_CONFIG
#ifdef __BORLANDC__
#pragma hdrstop
#endif //__BORLANDC__
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_CONFIG && ((wxUSE_FILE && wxUSE_TEXTFILE) || defined(wxCONFIG_WIN32_NATIVE))
#include "wx/app.h"
#include "wx/file.h"
#include "wx/log.h"
#include "wx/textfile.h"
#include "wx/utils.h"
#include "wx/log.h"
#include "wx/utils.h"
#include "wx/intl.h"
#include "wx/config.h"

View File

@@ -23,10 +23,12 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#include "wx/setup.h"
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_TIMEDATE

View File

@@ -17,13 +17,15 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS
#include "wx/datstrm.h"
// ---------------------------------------------------------------------------
@@ -200,3 +202,7 @@ void wxDataOutputStream::WriteDouble(double d)
#endif
Write(buf, 10);
}
#endif
// wxUSE_STREAMS

View File

@@ -50,11 +50,14 @@
#include "wx/mdi.h"
#endif
#if wxUSE_PRINTING_ARCHITECTURE
#include "wx/prntbase.h"
#include "wx/printdlg.h"
#endif
#include "wx/msgdlg.h"
#include "wx/choicdlg.h"
#include "wx/docview.h"
#include "wx/prntbase.h"
#include "wx/printdlg.h"
#include "wx/confbase.h"
#include <stdio.h>
@@ -668,9 +671,11 @@ BEGIN_EVENT_TABLE(wxDocManager, wxEvtHandler)
EVT_MENU(wxID_SAVEAS, wxDocManager::OnFileSaveAs)
EVT_MENU(wxID_UNDO, wxDocManager::OnUndo)
EVT_MENU(wxID_REDO, wxDocManager::OnRedo)
#if wxUSE_PRINTING_ARCHITECTURE
EVT_MENU(wxID_PRINT, wxDocManager::OnPrint)
EVT_MENU(wxID_PRINT_SETUP, wxDocManager::OnPrintSetup)
EVT_MENU(wxID_PREVIEW, wxDocManager::OnPreview)
#endif
END_EVENT_TABLE()
wxDocManager::wxDocManager(long flags, bool initialize)
@@ -804,6 +809,7 @@ void wxDocManager::OnPrint(wxCommandEvent& WXUNUSED(event))
void wxDocManager::OnPrintSetup(wxCommandEvent& WXUNUSED(event))
{
#if wxUSE_PRINTING_ARCHITECTURE
wxWindow *parentWin = wxTheApp->GetTopWindow();
wxView *view = GetCurrentView();
if (view)
@@ -814,6 +820,7 @@ void wxDocManager::OnPrintSetup(wxCommandEvent& WXUNUSED(event))
wxPrintDialog printerDialog(parentWin, & data);
printerDialog.GetPrintDialogData().SetSetupDialog(TRUE);
printerDialog.ShowModal();
#endif // wxUSE_PRINTING_ARCHITECTURE
}
void wxDocManager::OnPreview(wxCommandEvent& WXUNUSED(event))

View File

@@ -591,26 +591,27 @@ void wxEvtHandler::ProcessPendingEvents()
bool wxEvtHandler::ProcessEvent(wxEvent& event)
{
// check that our flag corresponds to reality
/* check that our flag corresponds to reality */
wxASSERT( m_isWindow == IsKindOf(CLASSINFO(wxWindow)) );
// An event handler can be enabled or disabled
/* An event handler can be enabled or disabled */
if ( GetEvtHandlerEnabled() )
{
#if wxUSE_THREADS
// Check whether we are in a child thread.
/* Check whether we are in a child thread. */
if (!wxThread::IsMain())
return ProcessThreadEvent(event);
#endif
// Handle per-instance dynamic event tables first
/* Handle per-instance dynamic event tables first */
if ( m_dynamicEvents && SearchDynamicEventTable(event) )
return TRUE;
// Then static per-class event tables
/* Then static per-class event tables */
const wxEventTable *table = GetEventTable();
#if wxUSE_VALIDATORS
// Try the associated validator first, if this is a window.
// Problem: if the event handler of the window has been replaced,
// this wxEvtHandler may no longer be a window.
@@ -619,7 +620,7 @@ bool wxEvtHandler::ProcessEvent(wxEvent& event)
// THIS CAN BE CURED if PushEventHandler is used instead of
// SetEventHandler, and then processing will be passed down the
// chain of event handlers.
if ( m_isWindow )
if (m_isWindow)
{
wxWindow *win = (wxWindow *)this;
@@ -634,9 +635,10 @@ bool wxEvtHandler::ProcessEvent(wxEvent& event)
}
}
}
#endif
// Search upwards through the inheritance hierarchy
while ( table )
while (table)
{
if ( SearchEventTable((wxEventTable&)*table, event) )
return TRUE;

View File

@@ -20,12 +20,17 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#include "wx/defs.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_FILE
// standard
#if defined(__WXMSW__) && !defined(__GNUWIN32__) && !defined(__WXWINE__)
#include <io.h>
@@ -573,3 +578,5 @@ void wxTempFile::Discard()
if ( remove(m_strTemp.fn_str()) != 0 )
wxLogSysError(_("can't remove temporary file '%s'"), m_strTemp.c_str());
}
#endif

View File

@@ -17,14 +17,15 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_SOCKETS
#ifndef WX_PRECOMP
#endif
#include <stdio.h>
#include <stdlib.h>
#include "wx/string.h"

View File

@@ -577,363 +577,9 @@ bool wxImageHandler::SaveFile( wxImage *WXUNUSED(image), wxOutputStream& WXUNUSE
#endif // wxUSE_STREAMS
//-----------------------------------------------------------------------------
// wxBMPHandler
// MSW conversion routines
//-----------------------------------------------------------------------------
#if !USE_SHARED_LIBRARIES
IMPLEMENT_DYNAMIC_CLASS(wxBMPHandler,wxImageHandler)
#endif
#if wxUSE_STREAMS
#ifndef BI_RGB
#define BI_RGB 0
#define BI_RLE8 1
#define BI_RLE4 2
#endif
#ifndef BI_BITFIELDS
#define BI_BITFIELDS 3
#endif
#define poffset (line * width * 3 + column * 3)
bool wxBMPHandler::LoadFile( wxImage *image, wxInputStream& stream )
{
int rshift = 0, gshift = 0, bshift = 0;
wxUint8 aByte;
wxUint16 aWord;
wxInt32 dbuf[4], aDword,
rmask = 0, gmask = 0, bmask = 0;
wxInt8 bbuf[4];
struct _cmap {
unsigned char r, g, b;
} *cmap = NULL;
off_t start_offset = stream.TellI();
image->Destroy();
/*
* Read the BMP header
*/
stream.Read( &bbuf, 2 );
stream.Read( dbuf, 4 * 4 );
wxInt32 size = wxINT32_SWAP_ON_BE( dbuf[0] );
wxInt32 offset = wxINT32_SWAP_ON_BE( dbuf[2] );
stream.Read(dbuf, 4 * 2);
int width = (int)wxINT32_SWAP_ON_BE( dbuf[0] );
int height = (int)wxINT32_SWAP_ON_BE( dbuf[1] );
if (width > 32767)
{
wxLogError( _T("Image width > 32767 pixels for file.") );
return FALSE;
}
if (height > 32767)
{
wxLogError( _T("Image height > 32767 pixels for file.") );
return FALSE;
}
stream.Read( &aWord, 2 );
/*
TODO
int planes = (int)wxUINT16_SWAP_ON_BE( aWord );
*/
stream.Read( &aWord, 2 );
int bpp = (int)wxUINT16_SWAP_ON_BE( aWord );
if (bpp != 1 && bpp != 4 && bpp != 8 && bpp != 16 && bpp != 24 && bpp != 32)
{
wxLogError( _T("unknown bitdepth in file.") );
return FALSE;
}
stream.Read( dbuf, 4 * 4 );
int comp = (int)wxINT32_SWAP_ON_BE( dbuf[0] );
if (comp != BI_RGB && comp != BI_RLE4 && comp != BI_RLE8 && comp != BI_BITFIELDS)
{
wxLogError( _T("unknown encoding in Windows BMP file.") );
return FALSE;
}
stream.Read( dbuf, 4 * 2 );
int ncolors = (int)wxINT32_SWAP_ON_BE( dbuf[0] );
if (ncolors == 0)
ncolors = 1 << bpp;
/* some more sanity checks */
if (((comp == BI_RLE4) && (bpp != 4)) ||
((comp == BI_RLE8) && (bpp != 8)) ||
((comp == BI_BITFIELDS) && (bpp != 16 && bpp != 32)))
{
wxLogError( _T("encoding of BMP doesn't match bitdepth.") );
return FALSE;
}
if (bpp < 16)
{
cmap = (struct _cmap *)malloc(sizeof(struct _cmap) * ncolors);
if (!cmap)
{
wxLogError( _T("Cannot allocate RAM for color map in BMP file.") );
return FALSE;
}
}
else
cmap = NULL;
image->Create( width, height );
unsigned char *ptr = image->GetData();
if (!ptr)
{
wxLogError( _T("Cannot allocate RAM for RGB data in file.") );
if (cmap)
free(cmap);
return FALSE;
}
/*
* Reading the palette, if it exists.
*/
if (bpp < 16 && ncolors != 0)
{
for (int j = 0; j < ncolors; j++)
{
stream.Read( bbuf, 4 );
cmap[j].b = bbuf[0];
cmap[j].g = bbuf[1];
cmap[j].r = bbuf[2];
}
}
else if (bpp == 16 || bpp == 32)
{
if (comp == BI_BITFIELDS)
{
int bit = 0;
stream.Read( dbuf, 4 * 3 );
bmask = wxINT32_SWAP_ON_BE( dbuf[0] );
gmask = wxINT32_SWAP_ON_BE( dbuf[1] );
rmask = wxINT32_SWAP_ON_BE( dbuf[2] );
/* find shift amount.. ugly, but i can't think of a better way */
for (bit = 0; bit < bpp; bit++)
{
if (bmask & (1 << bit))
bshift = bit;
if (gmask & (1 << bit))
gshift = bit;
if (rmask & (1 << bit))
rshift = bit;
}
}
else if (bpp == 16)
{
rmask = 0x7C00;
gmask = 0x03E0;
bmask = 0x001F;
rshift = 10;
gshift = 5;
bshift = 0;
}
else if (bpp == 32)
{
rmask = 0x00FF0000;
gmask = 0x0000FF00;
bmask = 0x000000FF;
rshift = 16;
gshift = 8;
bshift = 0;
}
}
/*
* Reading the image data
*/
stream.SeekI( start_offset + offset );
unsigned char *data = ptr;
/* set the whole image to the background color */
if (bpp < 16 && (comp == BI_RLE4 || comp == BI_RLE8))
{
for (int i = 0; i < width * height; i++)
{
*ptr++ = cmap[0].r;
*ptr++ = cmap[0].g;
*ptr++ = cmap[0].b;
}
ptr = data;
}
int line = 0;
int column = 0;
int linesize = ((width * bpp + 31) / 32) * 4;
/* BMPs are stored upside down */
for (line = (height - 1); line >= 0; line--)
{
int linepos = 0;
for (column = 0; column < width;)
{
if (bpp < 16)
{
int index = 0;
linepos++;
aByte = stream.GetC();
if (bpp == 1)
{
int bit = 0;
for (bit = 0; bit < 8; bit++)
{
index = ((aByte & (0x80 >> bit)) ? 1 : 0);
ptr[poffset] = cmap[index].r;
ptr[poffset + 1] = cmap[index].g;
ptr[poffset + 2] = cmap[index].b;
column++;
}
}
else if (bpp == 4)
{
if (comp == BI_RLE4)
{
wxLogError( _T("Can't deal with 4bit encoded yet.") );
image->Destroy();
free(cmap);
return FALSE;
}
else
{
int nibble = 0;
for (nibble = 0; nibble < 2; nibble++)
{
index = ((aByte & (0xF0 >> nibble * 4)) >> (!nibble * 4));
if (index >= 16)
index = 15;
ptr[poffset] = cmap[index].r;
ptr[poffset + 1] = cmap[index].g;
ptr[poffset + 2] = cmap[index].b;
column++;
}
}
}
else if (bpp == 8)
{
if (comp == BI_RLE8)
{
unsigned char first;
first = aByte;
aByte = stream.GetC();
if (first == 0)
{
if (aByte == 0)
{
/* column = width; */
}
else if (aByte == 1)
{
column = width;
line = -1;
}
else if (aByte == 2)
{
aByte = stream.GetC();
column += aByte;
linepos = column * bpp / 8;
aByte = stream.GetC();
line += aByte;
}
else
{
int absolute = aByte;
for (int k = 0; k < absolute; k++)
{
linepos++;
aByte = stream.GetC();
ptr[poffset ] = cmap[aByte].r;
ptr[poffset + 1] = cmap[aByte].g;
ptr[poffset + 2] = cmap[aByte].b;
column++;
}
if (absolute & 0x01)
aByte = stream.GetC();
}
}
else
{
for (int l = 0; l < first; l++)
{
ptr[poffset ] = cmap[aByte].r;
ptr[poffset + 1] = cmap[aByte].g;
ptr[poffset + 2] = cmap[aByte].b;
column++;
linepos++;
}
}
}
else
{
ptr[poffset ] = cmap[aByte].r;
ptr[poffset + 1] = cmap[aByte].g;
ptr[poffset + 2] = cmap[aByte].b;
column++;
linepos += size;
}
}
}
else if (bpp == 24)
{
stream.Read( &bbuf, 3 );
linepos += 3;
ptr[poffset ] = (unsigned char)bbuf[2];
ptr[poffset + 1] = (unsigned char)bbuf[1];
ptr[poffset + 2] = (unsigned char)bbuf[0];
column++;
}
else if (bpp == 16)
{
unsigned char temp;
stream.Read( &aWord, 2 );
aWord = wxUINT16_SWAP_ON_BE( aWord );
linepos += 2;
temp = (aWord & rmask) >> rshift;
ptr[poffset] = temp;
temp = (aWord & gmask) >> gshift;
ptr[poffset + 1] = temp;
temp = (aWord & bmask) >> gshift;
ptr[poffset + 2] = temp;
column++;
}
else
{
unsigned char temp;
stream.Read( &aDword, 4 );
aDword = wxINT32_SWAP_ON_BE( aDword );
linepos += 4;
temp = (aDword & rmask) >> rshift;
ptr[poffset] = temp;
temp = (aDword & gmask) >> gshift;
ptr[poffset + 1] = temp;
temp = (aDword & bmask) >> bshift;
ptr[poffset + 2] = temp;
column++;
}
}
while ((linepos < linesize) && (comp != 1) && (comp != 2))
{
stream.Read( &aByte, 1 );
linepos += 1;
if (stream.LastError() != wxStream_NOERROR)
break;
}
}
if (cmap)
free(cmap);
image->SetMask( FALSE );
return TRUE;
}
#endif // wxUSE_STREAMS
#ifdef __WXMSW__
wxBitmap wxImage::ConvertToBitmap() const
@@ -1269,6 +915,10 @@ wxImage::wxImage( const wxBitmap &bitmap )
#endif
//-----------------------------------------------------------------------------
// GTK conversion routines
//-----------------------------------------------------------------------------
#ifdef __WXGTK__
#include "gtk/gtk.h"
@@ -1575,6 +1225,10 @@ wxImage::wxImage( const wxBitmap &bitmap )
#endif
//-----------------------------------------------------------------------------
// Motif conversion routines
//-----------------------------------------------------------------------------
#ifdef __WXMOTIF__
#include <Xm/Xm.h>

View File

@@ -6,24 +6,30 @@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "imaggif.h"
#endif
/*
We don't put pragma implement in this file because it is already present in
src/common/image.cpp
*/
// For compilers that support precompilation, includes "wx.h".
#include <wx/wxprec.h>
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#include <wx/wx.h>
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#include <wx/image.h>
#include <wx/wfstream.h>
#include <wx/module.h>
#include "wx/image.h"
#include "wx/wfstream.h"
#include "wx/module.h"
#include "wx/log.h"
#include <wx/imaggif.h>
IMPLEMENT_DYNAMIC_CLASS(wxGIFHandler,wxImageHandler)
#if wxUSE_STREAMS
/*
@@ -361,8 +367,6 @@ FOLLOWING CODE IS BY V.S. :
// wxGIFHandler
//-----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxGIFHandler,wxImageHandler)
bool wxGIFHandler::LoadFile( wxImage *image, wxInputStream& stream )
{
unsigned char *ptr, *src, *pal;
@@ -420,8 +424,4 @@ bool wxGIFHandler::SaveFile( wxImage * WXUNUSED(image),
return FALSE;
}
#endif

View File

@@ -10,10 +10,6 @@
/*
We don't put pragma implement in this file because it is already present in
src/common/image.cpp
#ifdef __GNUG__
#pragma implementation "image.h"
#endif
*/
// For compilers that support precompilation, includes "wx.h".
@@ -23,16 +19,18 @@
#pragma hdrstop
#endif
#include "wx/defs.h"
#if wxUSE_LIBJPEG
#include "wx/image.h"
#include "wx/bitmap.h"
#include "wx/debug.h"
#include "wx/log.h"
#include "wx/app.h"
#if wxUSE_LIBJPEG
extern "C" {
#include "../jpeg/jpeglib.h"
extern "C" {
#include "jpeglib.h"
}
#endif
#include "wx/filefn.h"
#include "wx/wfstream.h"
#include "wx/intl.h"
@@ -57,15 +55,12 @@ extern "C" {
// wxJPEGHandler
//-----------------------------------------------------------------------------
#if wxUSE_LIBJPEG
#if !USE_SHARED_LIBRARIES
IMPLEMENT_DYNAMIC_CLASS(wxJPEGHandler,wxImageHandler)
#endif
#if wxUSE_STREAMS
//------------- JPEG Data Source Manager
typedef struct {
@@ -310,12 +305,12 @@ bool wxJPEGHandler::SaveFile( wxImage *image, wxOutputStream& stream )
return TRUE;
}
#endif // wxUSE_STREAMS
#endif
// wxUSE_LIBJPEG
#endif
// wxUSE_STREAMS
#endif
// wxUSE_LIBJPEG

View File

@@ -10,27 +10,27 @@
/*
We don't put pragma implement in this file because it is already present in
src/common/image.cpp
#ifdef __GNUG__
#pragma implementation "image.h"
#endif
*/
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_LIBPNG
#include "wx/image.h"
#include "wx/bitmap.h"
#include "wx/debug.h"
#include "wx/log.h"
#include "wx/app.h"
#if wxUSE_LIBPNG
#include "../png/png.h"
#endif
#include "png.h"
#include "wx/filefn.h"
#include "wx/wfstream.h"
#include "wx/intl.h"
@@ -53,14 +53,12 @@
// wxPNGHandler
//-----------------------------------------------------------------------------
#if wxUSE_LIBPNG
#if !USE_SHARED_LIBRARIES
IMPLEMENT_DYNAMIC_CLASS(wxPNGHandler,wxImageHandler)
#endif
#if wxUSE_STREAMS
static void _PNG_stream_reader( png_structp png_ptr, png_bytep data, png_size_t length )
{
((wxInputStream*) png_get_io_ptr( png_ptr )) -> Read(data, length);
@@ -315,9 +313,10 @@ bool wxPNGHandler::SaveFile( wxImage *image, wxOutputStream& stream )
}
return TRUE;
}
#endif // wxUSE_STREAMS
#endif
#endif
// wxUSE_STREAMS
// wxUSE_LIBPNG
#endif
// wxUSE_LIBPNG

View File

@@ -25,19 +25,21 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#include "wx/defs.h"
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_CONSTRAINTS
#ifndef WX_PRECOMP
#include "wx/window.h"
#include "wx/utils.h"
#include "wx/dialog.h"
#include "wx/msgdlg.h"
#include "wx/intl.h"
#include "wx/window.h"
#include "wx/utils.h"
#include "wx/dialog.h"
#include "wx/msgdlg.h"
#include "wx/intl.h"
#endif
#include "wx/layout.h"

View File

@@ -10,34 +10,32 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "mimetype.h"
#pragma implementation "mimetype.h"
#endif
// ============================================================================
// declarations
// ============================================================================
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
// for compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
// wxWindows
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/icon.h"
#include "wx/defs.h"
#endif
#if (wxUSE_FILE && wxUSE_TEXTFILE) || defined(__WXMSW__)
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/icon.h"
#endif //WX_PRECOMP
// Doesn't compile in WIN16 mode
#ifndef __WIN16__
#include "wx/log.h"
#include "wx/file.h"
#include "wx/intl.h"
#include "wx/dynarray.h"
#include "wx/confbase.h"
@@ -1341,7 +1339,11 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
return TRUE;
}
#endif // OS type
#endif
// OS type
#endif
// wxUSE_FILE && wxUSE_TEXTFILE
#endif
// __WIN16__

View File

@@ -15,14 +15,21 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS
#include <stdlib.h>
#include <wx/stream.h>
#include <wx/mstream.h>
#ifdef __BORLANDC__
#pragma hdrstop
#endif
// ----------------------------------------------------------------------------
// wxMemoryInputStream
// ----------------------------------------------------------------------------
@@ -60,3 +67,5 @@ wxMemoryOutputStream::wxMemoryOutputStream(char *data, size_t len)
wxMemoryOutputStream::~wxMemoryOutputStream()
{
}
#endif

View File

@@ -16,15 +16,14 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#include "wx/setup.h"
#include "wx/defs.h"
#endif
#if wxUSE_SERIAL
#if wxUSE_SERIAL && wxUSE_STREAMS
#include "wx/object.h"
#include "wx/objstrm.h"

View File

@@ -16,14 +16,15 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_SOCKETS
#ifndef WX_PRECOMP
#endif
#include <stdio.h>
#include <wx/wfstream.h>
#include <wx/protocol/file.h>

View File

@@ -16,14 +16,15 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#if wxUSE_SOCKETS
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_SOCKETS && wxUSE_STREAMS
#include "wx/stream.h"
#include "wx/socket.h"
#include "wx/sckstrm.h"
@@ -90,3 +91,4 @@ wxSocketStream::~wxSocketStream()
}
#endif
// wxUSE_STREAMS && wxUSE_SOCKETS

View File

@@ -15,15 +15,22 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS
#include <ctype.h>
#include <wx/stream.h>
#include <wx/datstrm.h>
#include <wx/objstrm.h>
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#define BUF_TEMP_SIZE 10000
// ----------------------------------------------------------------------------
@@ -855,3 +862,6 @@ wxOutputStream& wxEndL(wxOutputStream& stream)
return stream.Write("\n", 1);
#endif
}
#endif
// wxUSE_STREAMS

View File

@@ -23,6 +23,12 @@
#pragma hdrstop
#endif //__BORLANDC__
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_TEXTFILE && wxUSE_FILE
#include <wx/string.h>
#include <wx/intl.h>
#include <wx/file.h>
@@ -250,7 +256,7 @@ bool wxTextFile::Write(wxTextFileType typeNew)
}
const wxChar *wxTextFile::GetEOL(wxTextFileType type)
{
{
switch ( type ) {
case wxTextFileType_None: return _T("");
case wxTextFileType_Unix: return _T("\n");
@@ -261,5 +267,6 @@ const wxChar *wxTextFile::GetEOL(wxTextFileType type)
wxFAIL_MSG(_T("bad file type in wxTextFile::GetEOL."));
return (const wxChar *) NULL;
}
}
}
#endif

View File

@@ -17,50 +17,66 @@
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/intl.h"
#include "wx/wx.h"
#include "wx/dynarray.h"
#include "wx/defs.h"
#endif
#if wxUSE_VALIDATORS
#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/intl.h"
#include "wx/dynarray.h"
#include "wx/choice.h"
#include "wx/combobox.h"
#include "wx/radiobox.h"
#include "wx/radiobut.h"
#include "wx/checkbox.h"
#include "wx/scrolbar.h"
#include "wx/gauge.h"
#include "wx/stattext.h"
#include "wx/textctrl.h"
#include "wx/button.h"
#include "wx/listbox.h"
#endif
#ifndef __WIN16__
#include "wx/spinbutt.h"
#include "wx/checklst.h"
#include "wx/spinbutt.h"
#include "wx/checklst.h"
#endif
#include "wx/valgen.h"
wxGenericValidator::wxGenericValidator(bool *val)
{
Initialize();
m_pBool = val;
Initialize();
m_pBool = val;
}
wxGenericValidator::wxGenericValidator(int *val)
{
Initialize();
m_pInt = val;
Initialize();
m_pInt = val;
}
wxGenericValidator::wxGenericValidator(wxString *val)
{
Initialize();
m_pString = val;
Initialize();
m_pString = val;
}
wxGenericValidator::wxGenericValidator(wxArrayInt *val)
{
Initialize();
m_pArrayInt = val;
Initialize();
m_pArrayInt = val;
}
wxGenericValidator::wxGenericValidator(const wxGenericValidator& val)
{
Copy(val);
Copy(val);
}
bool wxGenericValidator::Copy(const wxGenericValidator& val)
@@ -176,9 +192,10 @@ bool wxGenericValidator::TransferToWindow(void)
pControl->SetValue(*m_pString) ;
return TRUE;
}
}
} else
#endif
else if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
#if wxUSE_CHOICE
if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
{
wxChoice* pControl = (wxChoice*) m_validatorWindow;
if (m_pInt)
@@ -187,6 +204,7 @@ bool wxGenericValidator::TransferToWindow(void)
return TRUE;
}
}
#endif
else if (m_validatorWindow->IsKindOf(CLASSINFO(wxStaticText)) )
{
wxStaticText* pControl = (wxStaticText*) m_validatorWindow;
@@ -352,6 +370,7 @@ bool wxGenericValidator::TransferFromWindow(void)
}
} else
#endif
#if wxUSE_CHOICE
if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
{
wxChoice* pControl = (wxChoice*) m_validatorWindow;
@@ -361,6 +380,7 @@ bool wxGenericValidator::TransferFromWindow(void)
return TRUE;
}
} else
#endif
if (m_validatorWindow->IsKindOf(CLASSINFO(wxStaticText)) )
{
wxStaticText* pControl = (wxStaticText*) m_validatorWindow;
@@ -431,9 +451,12 @@ bool wxGenericValidator::TransferFromWindow(void)
*/
void wxGenericValidator::Initialize()
{
m_pBool = 0;
m_pInt = 0;
m_pString = 0;
m_pArrayInt = 0;
m_pBool = 0;
m_pInt = 0;
m_pString = 0;
m_pArrayInt = 0;
}
#endif
// wxUSE_VALIDATORS

View File

@@ -10,18 +10,24 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "validate.h"
#pragma implementation "validate.h"
#endif
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#include "wx/defs.h"
#endif
#if wxUSE_VALIDATORS
#ifndef WX_PRECOMP
#include "wx/window.h"
#endif
#include "wx/validate.h"
@@ -45,4 +51,5 @@ wxValidator::~wxValidator()
{
}
#endif
// wxUSE_VALIDATORS

View File

@@ -10,22 +10,28 @@
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "valtext.h"
#pragma implementation "valtext.h"
#endif
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include <stdio.h>
#include "wx/textctrl.h"
#include "wx/utils.h"
#include "wx/msgdlg.h"
#include "wx/intl.h"
#include "wx/defs.h"
#endif
#if wxUSE_VALIDATORS
#ifndef WX_PRECOMP
#include <stdio.h>
#include "wx/textctrl.h"
#include "wx/utils.h"
#include "wx/msgdlg.h"
#include "wx/intl.h"
#endif
#include "wx/valtext.h"
@@ -306,3 +312,6 @@ static bool wxIsNumeric(const wxString& val)
return TRUE;
}
#endif
// wxUSE_VALIDATORS

View File

@@ -15,14 +15,21 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_STREAMS && wxUSE_FILE
#include <stdio.h>
#include <wx/stream.h>
#include <wx/wfstream.h>
#ifdef __BORLANDC__
#pragma hdrstop
#endif
// ----------------------------------------------------------------------------
// wxFileInputStream
// ----------------------------------------------------------------------------
@@ -163,3 +170,6 @@ wxFileStream::wxFileStream(const wxString& fileName)
: wxFileInputStream(fileName), wxFileOutputStream(*wxFileInputStream::m_file)
{
}
#endif
// wxUSE_STREAMS && wxUSE_FILE

View File

@@ -8,6 +8,7 @@
// Copyright: (c) Guilhem Lavaux
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "zstream.h"
#endif
@@ -15,18 +16,21 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/defs.h"
#endif
#if wxUSE_ZLIB && wxUSE_STREAMS
#include "wx/zstream.h"
#if wxUSE_ZLIB
#include "wx/utils.h"
#include "wx/intl.h"
#include "wx/log.h"
#include "../zlib/zlib.h" // don't change this, Robert
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#include "zlib.h"
#define ZSTREAM_BUFFER_SIZE 1024
@@ -186,6 +190,5 @@ size_t wxZlibOutputStream::OnSysWrite(const void *buffer, size_t size)
}
#endif
// wxUSE_ZLIB
// wxUSE_ZLIB && wxUSE_STREAMS

View File

@@ -25,6 +25,8 @@
#include "wx/defs.h"
#endif // WX_PRECOMP
#if wxUSE_PRINTING_ARCHITECTURE
#if wxUSE_POSTSCRIPT
#include "wx/dcmemory.h"
@@ -2267,3 +2269,6 @@ void wxPostScriptModule::OnExit()
#endif
// wxUSE_POSTSCRIPT
#endif
// wxUSE_PRINTING_ARCHITECTURE

View File

@@ -20,6 +20,9 @@
#endif
#include "wx/defs.h"
#if wxUSE_DIRDLG
#include "wx/utils.h"
#include "wx/dialog.h"
#include "wx/button.h"
@@ -501,3 +504,5 @@ void wxDirDialog::OnCheck( wxCommandEvent& WXUNUSED(event) )
printf("Checkbox clicked: %s\n", ( m_check->GetValue() ? "on" : "off" ) );
}
*/
#endif

View File

@@ -104,6 +104,7 @@ wxHTMLHelpControllerBase::LoadFile(const wxString& ifile)
else
file = ifile;
#if wxUSE_INTL
// If a locale is set, look in file/localename, i.e.
// If passed "/usr/local/myapp/help" and the current wxLocale is
// set to be "de", then look in "/usr/local/myapp/help/de/"
@@ -125,6 +126,7 @@ wxHTMLHelpControllerBase::LoadFile(const wxString& ifile)
file = newfile;
}
}
#endif
if(! wxDirExists(file))
return FALSE;

View File

@@ -2390,7 +2390,9 @@ bool wxListCtrl::Create( wxWindow *parent, wxWindowID id,
bool ret = wxControl::Create( parent, id, pos, size, s, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
if (s & wxSUNKEN_BORDER) s -= wxSUNKEN_BORDER;

View File

@@ -30,6 +30,8 @@
#include "wx/defs.h"
#if wxUSE_PRINTING_ARCHITECTURE
#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/dc.h"
@@ -345,3 +347,4 @@ void wxPostScriptPrintPreview::DetermineScaling()
}
}
#endif

View File

@@ -30,6 +30,8 @@
#include "wx/defs.h"
#if wxUSE_PRINTING_ARCHITECTURE
#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/dc.h"
@@ -770,3 +772,4 @@ wxChoice *wxGenericPageSetupDialog::CreatePaperTypeChoice(int *x, int *y)
return choice;
}
#endif

View File

@@ -31,6 +31,8 @@
#include "wx/intl.h"
#endif
#if wxUSE_PROGRESSDLG
#include "wx/generic/progdlgg.h"
#define LAYOUT_X_MARGIN 8
@@ -172,3 +174,5 @@ wxProgressDialog::~wxProgressDialog()
else
wxEnableTopLevelWindows(TRUE);
}
#endif

View File

@@ -403,7 +403,9 @@ bool wxTreeCtrl::Create(wxWindow *parent, wxWindowID id,
wxScrolledWindow::Create( parent, id, pos, size, style|wxHSCROLL|wxVSCROLL, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
SetBackgroundColour( *wxWHITE );
m_dottedPen = wxPen( *wxBLACK, 0, 0 );

View File

@@ -57,6 +57,7 @@ libwx_gtk_la_SOURCES = \
helpbase.cpp \
http.cpp \
image.cpp \
imagbmp.cpp \
imaggif.cpp \
imagjpeg.cpp \
imagpng.cpp \

View File

@@ -122,7 +122,9 @@ bool wxBitmapButton::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi
PreCreation( parent, id, pos, newSize, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_bitmap = bitmap;
m_disabled = bitmap;

View File

@@ -82,7 +82,10 @@ bool wxCheckBox::Create(wxWindow *parent,
m_blockFirstEvent = FALSE;
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
wxControl::SetLabel( label );
if ( style & wxALIGN_RIGHT )

View File

@@ -14,6 +14,8 @@
#include "wx/choice.h"
#if wxUSE_CHOICE
#include "gdk/gdk.h"
#include "gtk/gtk.h"
@@ -71,7 +73,9 @@ bool wxChoice::Create( wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_option_menu_new();
@@ -388,3 +392,4 @@ void wxChoice::ApplyWidgetStyle()
}
}
#endif

View File

@@ -104,7 +104,9 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_combo_new();

View File

@@ -32,7 +32,9 @@ bool wxGauge::Create( wxWindow *parent, wxWindowID id, int range,
PreCreation( parent, id, pos, size, style, name );
SetValidator( validator );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_rangeMax = range;
m_gaugePos = 0;

View File

@@ -246,7 +246,9 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_scrolled_window_new( (GtkAdjustment*) NULL, (GtkAdjustment*) NULL );
if (style & wxLB_ALWAYS_SB)

View File

@@ -87,7 +87,9 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_frame_new( title.mbc_str() );

View File

@@ -74,7 +74,9 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab
PreCreation( parent, id, pos, newSize, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_radio_button_new_with_label( (GSList *) NULL, label.mbc_str() );

View File

@@ -139,7 +139,9 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_oldPos = 0.0;

View File

@@ -100,7 +100,9 @@ bool wxSlider::Create(wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_oldPos = 0.0;

View File

@@ -57,6 +57,7 @@ libwx_gtk_la_SOURCES = \
helpbase.cpp \
http.cpp \
image.cpp \
imagbmp.cpp \
imaggif.cpp \
imagjpeg.cpp \
imagpng.cpp \

View File

@@ -122,7 +122,9 @@ bool wxBitmapButton::Create( wxWindow *parent, wxWindowID id, const wxBitmap &bi
PreCreation( parent, id, pos, newSize, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_bitmap = bitmap;
m_disabled = bitmap;

View File

@@ -82,7 +82,10 @@ bool wxCheckBox::Create(wxWindow *parent,
m_blockFirstEvent = FALSE;
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
wxControl::SetLabel( label );
if ( style & wxALIGN_RIGHT )

View File

@@ -14,6 +14,8 @@
#include "wx/choice.h"
#if wxUSE_CHOICE
#include "gdk/gdk.h"
#include "gtk/gtk.h"
@@ -71,7 +73,9 @@ bool wxChoice::Create( wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_option_menu_new();
@@ -388,3 +392,4 @@ void wxChoice::ApplyWidgetStyle()
}
}
#endif

View File

@@ -104,7 +104,9 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_combo_new();

View File

@@ -32,7 +32,9 @@ bool wxGauge::Create( wxWindow *parent, wxWindowID id, int range,
PreCreation( parent, id, pos, size, style, name );
SetValidator( validator );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_rangeMax = range;
m_gaugePos = 0;

View File

@@ -246,7 +246,9 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_scrolled_window_new( (GtkAdjustment*) NULL, (GtkAdjustment*) NULL );
if (style & wxLB_ALWAYS_SB)

View File

@@ -87,7 +87,9 @@ bool wxRadioBox::Create( wxWindow *parent, wxWindowID id, const wxString& title,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_frame_new( title.mbc_str() );

View File

@@ -74,7 +74,9 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab
PreCreation( parent, id, pos, newSize, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_widget = gtk_radio_button_new_with_label( (GSList *) NULL, label.mbc_str() );

View File

@@ -139,7 +139,9 @@ bool wxScrollBar::Create(wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_oldPos = 0.0;

View File

@@ -100,7 +100,9 @@ bool wxSlider::Create(wxWindow *parent, wxWindowID id,
PreCreation( parent, id, pos, size, style, name );
#if wxUSE_VALIDATORS
SetValidator( validator );
#endif
m_oldPos = 0.0;

View File

@@ -56,6 +56,7 @@ libwx_motif_la_SOURCES = \
helpbase.cpp \
http.cpp \
image.cpp \
imagbmp.cpp \
imaggif.cpp \
imagjpeg.cpp \
imagpng.cpp \

View File

@@ -54,6 +54,7 @@ libwx_msw_la_SOURCES = \
helpbase.cpp \
http.cpp \
image.cpp \
imagbmp.cpp \
imaggif.cpp \
imagjpeg.cpp \
imagpng.cpp \

View File

@@ -113,6 +113,7 @@ COMMONOBJS = \
$(MSWDIR)\gdicmn.obj \
$(MSWDIR)\helpbase.obj \
$(MSWDIR)\image.obj \
$(MSWDIR)\imagbmp.obj \
$(MSWDIR)\imagpng.obj \
$(MSWDIR)\imagjpeg.obj \
$(MSWDIR)\imaggif.obj \
@@ -517,6 +518,8 @@ $(MSWDIR)\gdicmn.obj: $(COMMDIR)\gdicmn.$(SRCSUFF)
$(MSWDIR)\image.obj: $(COMMDIR)\image.$(SRCSUFF)
$(MSWDIR)\imagbmp.obj: $(COMMDIR)\imagbmp.$(SRCSUFF)
$(MSWDIR)\imagpng.obj: $(COMMDIR)\imagpng.$(SRCSUFF)
$(MSWDIR)\imagjpeg.obj: $(COMMDIR)\imagjpeg.$(SRCSUFF)

View File

@@ -91,6 +91,7 @@ COMMONOBJS = \
$(COMMDIR)/gdicmn.$(OBJSUFF) \
$(COMMDIR)/helpbase.$(OBJSUFF) \
$(COMMDIR)/image.$(OBJSUFF) \
$(COMMDIR)/imagebmp.$(OBJSUFF) \
$(COMMDIR)/imagpng.$(OBJSUFF) \
$(COMMDIR)/imagjpeg.$(OBJSUFF) \
$(COMMDIR)/intl.$(OBJSUFF) \

View File

@@ -93,6 +93,7 @@ COMMONOBJS = \
$(COMMDIR)/gdicmn.$(OBJSUFF) \
$(COMMDIR)/helpbase.$(OBJSUFF) \
$(COMMDIR)/image.$(OBJSUFF) \
$(COMMDIR)/imagbmp.$(OBJSUFF) \
$(COMMDIR)/imagpng.$(OBJSUFF) \
$(COMMDIR)/imagjpeg.$(OBJSUFF) \
$(COMMDIR)/intl.$(OBJSUFF) \

View File

@@ -114,6 +114,7 @@ COMMONOBJS = \
..\common\$D\ftp.obj \
..\common\$D\gdicmn.obj \
..\common\$D\image.obj \
..\common\$D\imagbmp.obj \
..\common\$D\imagjpeg.obj \
..\common\$D\imagpng.obj \
..\common\$D\imaggif.obj \

View File

@@ -64,6 +64,7 @@ COMMONOBJS = cmndata.obj &
framecmn.obj &
gdicmn.obj &
image.obj &
imagbmp.obj &
imagpng.obj &
intl.obj &
ipcbase.obj &
@@ -569,6 +570,9 @@ gdicmn.obj: $(COMMDIR)\gdicmn.cpp
image.obj: $(COMMDIR)\image.cpp
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
imagbmp.obj: $(COMMDIR)\imagbmp.cpp
*$(CCC) $(CPPFLAGS) -i=..\png -i=..\zlib $(IFLAGS) $<
imagpng.obj: $(COMMDIR)\imagpng.cpp
*$(CCC) $(CPPFLAGS) -i=..\png -i=..\zlib $(IFLAGS) $<