git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1532
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
25 files changed:
include/wx_cw.pch++
include/wx_cw_d.pch
include/wx_cw_d.pch++
include/wx_cw.pch++
include/wx_cw_d.pch
include/wx_cw_d.pch++
+include/wx_x86++_d.mch
+include/wx_x86_d.mch
samples/bombs/make_cw.mcp
samples/bombs/make_cw.mcp
Further project files for samples will be available in due
course.
Further project files for samples will be available in due
course.
+NOTES:
+
+(a) Unfortunately CodeWarrior support is broken in this
+release. Stefan Csomor (csomor@advancedconcepts.ch) will rectify this shortly.
+(b) You need CodeWarrior Pro 4 plus the patches to 4.1 from the
+Metrowerks Web site.
+
Symantec C++ compilation
------------------------
Symantec C++ compilation
------------------------
Supply correct ctl3d/odbc lib files for BC++, Watcom (corrupt?)
Supply correct ctl3d/odbc lib files for BC++, Watcom (corrupt?)
-16-bit compilation: replace small icons in treectrl/listctrl
-samples that also have a 32x32 icon, with icons with only one
-image, using Borland Image Editor. WIN16 doesn't have a function
-for specifying which image to use, so the larger one gets used
-erroneously.
+Implement new wxClipboard and DnD (Vadim)
-Add headers to VC++ project files.
-
-Implement Robert's wxClipboard.
-
-Distribution naming?
-
-wxToolTip
LOW PRIORITY (MEDIUM TERM)
--------------------------
LOW PRIORITY (MEDIUM TERM)
--------------------------
-OpenGL integration: check that wxGLCanvas works cross-platform.
-
Menu bitmaps - document Vadim's enhancements.
wxCreateDynamicObject is apparently slow: ~ 2000 calls to strcmp. Need to
Menu bitmaps - document Vadim's enhancements.
wxCreateDynamicObject is apparently slow: ~ 2000 calls to strcmp. Need to
// Not all args will always be used by derived classes, but
// including them all in each class ensures compatibility.
// If appName is empty, uses wxApp name
// Not all args will always be used by derived classes, but
// including them all in each class ensures compatibility.
// If appName is empty, uses wxApp name
- wxConfigBase(const wxString& appName = "", const wxString& vendorName = "",
- const wxString& localFilename = "", const wxString& globalFilename = "",
+ wxConfigBase(const wxString& appName = wxEmptyString, const wxString& vendorName = wxEmptyString,
+ const wxString& localFilename = wxEmptyString, const wxString& globalFilename = wxEmptyString,
long style = 0);
// empty but ensures that dtor of all derived classes is virtual
long style = 0);
// empty but ensures that dtor of all derived classes is virtual
virtual bool Read(const wxString& key, wxString *pStr) const = 0;
virtual bool Read(const wxString& key, wxString *pStr, const wxString& defVal) const;
virtual bool Read(const wxString& key, wxString *pStr) const = 0;
virtual bool Read(const wxString& key, wxString *pStr, const wxString& defVal) const;
- virtual wxString Read(const wxString& key, const wxString& defVal = "") const;
+ virtual wxString Read(const wxString& key, const wxString& defVal = wxEmptyString) const;
virtual bool Read(const wxString& key, long *pl) const = 0;
virtual bool Read(const wxString& key, long *pl, long defVal) const;
virtual bool Read(const wxString& key, long *pl) const = 0;
virtual bool Read(const wxString& key, long *pl, long defVal) const;
// and make (if under the home tree) relative to home
// [caller must copy-- volatile]
WXDLLEXPORT char* wxContractPath(const wxString& filename,
// and make (if under the home tree) relative to home
// [caller must copy-- volatile]
WXDLLEXPORT char* wxContractPath(const wxString& filename,
- const wxString& envname = "",
- const wxString& user = "");
+ const wxString& envname = wxEmptyString,
+ const wxString& user = wxEmptyString);
// Destructive removal of /./ and /../ stuff
WXDLLEXPORT char* wxRealPath(char *path);
// Destructive removal of /./ and /../ stuff
WXDLLEXPORT char* wxRealPath(char *path);
- wxRectangle m_bound_all;
- wxRectangle m_bound_label;
- wxRectangle m_bound_icon;
- wxRectangle m_bound_hilight;
+ wxRect m_bound_all;
+ wxRect m_bound_label;
+ wxRect m_bound_icon;
+ wxRect m_bound_hilight;
int m_mode;
bool m_hilighted;
wxBrush *m_hilightBrush;
int m_mode;
bool m_hilighted;
wxBrush *m_hilightBrush;
void GetText( int index, wxString &s );
void SetText( int index, const wxString s );
int GetImage( int index );
void GetText( int index, wxString &s );
void SetText( int index, const wxString s );
int GetImage( int index );
- void GetRect( wxRectangle &rect );
+ void GetRect( wxRect &rect );
void Hilight( bool on );
void ReverseHilight( void );
void DrawRubberBand( wxDC *dc, bool on );
void Draw( wxDC *dc );
void Hilight( bool on );
void ReverseHilight( void );
void DrawRubberBand( wxDC *dc, bool on );
void Draw( wxDC *dc );
- bool IsInRect( int x, int y, const wxRectangle &rect );
+ bool IsInRect( int x, int y, const wxRect &rect );
bool IsHilighted( void );
bool IsHilighted( void );
- void AssignRect( wxRectangle &dest, int x, int y, int width, int height );
- void AssignRect( wxRectangle &dest, const wxRectangle &source );
+ void AssignRect( wxRect &dest, int x, int y, int width, int height );
+ void AssignRect( wxRect &dest, const wxRect &source );
};
//-----------------------------------------------------------------------------
};
//-----------------------------------------------------------------------------
void SetItemState( long item, long state, long stateMask );
int GetItemState( long item, long stateMask );
int GetItemCount( void );
void SetItemState( long item, long state, long stateMask );
int GetItemState( long item, long stateMask );
int GetItemCount( void );
- void GetItemRect( long index, wxRectangle &rect );
+ void GetItemRect( long index, wxRect &rect );
bool GetItemPosition(long item, wxPoint& pos);
int GetSelectedItemCount( void );
void SetMode( long mode );
bool GetItemPosition(long item, wxPoint& pos);
int GetSelectedItemCount( void );
void SetMode( long mode );
void SetItemText( long item, const wxString& str );
long GetItemData( long item ) const;
bool SetItemData( long item, long data );
void SetItemText( long item, const wxString& str );
long GetItemData( long item ) const;
bool SetItemData( long item, long data );
- bool GetItemRect( long item, wxRectangle& rect, int code = wxLIST_RECT_BOUNDS ) const;
+ bool GetItemRect( long item, wxRect& rect, int code = wxLIST_RECT_BOUNDS ) const;
bool GetItemPosition( long item, wxPoint& pos ) const;
bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC
int GetItemCount(void) const;
bool GetItemPosition( long item, wxPoint& pos ) const;
bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC
int GetItemCount(void) const;
+#if defined(__WXMSW__) && !defined(__WIN32__)
+
+#undef wxUSE_THREADS
+#define wxUSE_THREADS 0
+
+#endif
+
// Minimal setup e.g. for compiling small utilities
#define MINIMAL_WXWINDOWS_SETUP 0
// Minimal setup e.g. for compiling small utilities
#define MINIMAL_WXWINDOWS_SETUP 0
--- /dev/null
+NAME Conftest
+DESCRIPTION 'wxWindows Config Sample'
+EXETYPE WINDOWS
+CODE PRELOAD MOVEABLE DISCARDABLE
+DATA PRELOAD MOVEABLE MULTIPLE
+HEAPSIZE 4048
+STACKSIZE 16000
// should correspond to TreeCtrlIcon_xxx enum
#if defined(__WXMSW__) && defined(__WIN16__)
// This is required in 16-bit Windows mode only because we can't load a specific (16x16)
// should correspond to TreeCtrlIcon_xxx enum
#if defined(__WXMSW__) && defined(__WIN16__)
// This is required in 16-bit Windows mode only because we can't load a specific (16x16)
- // icon image, so it comes out blank (using the empty 32x32 icon).
+ // icon image, so it comes out stretched
m_imageListNormal->Add(wxBitmap("bitmap1", wxBITMAP_TYPE_BMP_RESOURCE));
m_imageListNormal->Add(wxBitmap("bitmap2", wxBITMAP_TYPE_BMP_RESOURCE));
#else
m_imageListNormal->Add(wxBitmap("bitmap1", wxBITMAP_TYPE_BMP_RESOURCE));
m_imageListNormal->Add(wxBitmap("bitmap2", wxBITMAP_TYPE_BMP_RESOURCE));
#else
bool wxFile::Flush()
{
if ( IsOpened() ) {
bool wxFile::Flush()
{
if ( IsOpened() ) {
- #if defined(_MSC_VER) || wxHAVE_FSYNC
+ #if (defined(_MSC_VER) && !defined(__MWERKS__)) || wxHAVE_FSYNC
if ( fsync(m_fd) == -1 )
{
wxLogSysError(_("can't flush file descriptor %d"), m_fd);
if ( fsync(m_fd) == -1 )
{
wxLogSysError(_("can't flush file descriptor %d"), m_fd);
height = m_bound_label.height;
}
height = m_bound_label.height;
}
-void wxListLineData::GetRect( wxRectangle &rect )
+void wxListLineData::GetRect( wxRect &rect )
{
AssignRect( rect, m_bound_all );
}
{
AssignRect( rect, m_bound_all );
}
DoDraw( dc, m_hilighted, m_hilighted );
}
DoDraw( dc, m_hilighted, m_hilighted );
}
-bool wxListLineData::IsInRect( int x, int y, const wxRectangle &rect )
+bool wxListLineData::IsInRect( int x, int y, const wxRect &rect )
{
return ((x >= rect.x) && (x <= rect.x+rect.width) &&
(y >= rect.y) && (y <= rect.y+rect.height));
{
return ((x >= rect.x) && (x <= rect.x+rect.width) &&
(y >= rect.y) && (y <= rect.y+rect.height));
-void wxListLineData::AssignRect( wxRectangle &dest, int x, int y, int width, int height )
+void wxListLineData::AssignRect( wxRect &dest, int x, int y, int width, int height )
{
dest.x = x;
dest.y = y;
{
dest.x = x;
dest.y = y;
-void wxListLineData::AssignRect( wxRectangle &dest, const wxRectangle &source )
+void wxListLineData::AssignRect( wxRect &dest, const wxRect &source )
{
dest.x = source.x;
dest.y = source.y;
{
dest.x = source.x;
dest.y = source.y;
wxClientDC dc(this);
PrepareDC( dc );
line->GetExtent( x, y, w, h );
wxClientDC dc(this);
PrepareDC( dc );
line->GetExtent( x, y, w, h );
dc.LogicalToDeviceX(x-3),
dc.LogicalToDeviceY(y-3),
dc.LogicalToDeviceXRel(w+6),
dc.LogicalToDeviceX(x-3),
dc.LogicalToDeviceY(y-3),
dc.LogicalToDeviceXRel(w+6),
return m_lines.Number();
}
return m_lines.Number();
}
-void wxListMainWindow::GetItemRect( long index, wxRectangle &rect )
+void wxListMainWindow::GetItemRect( long index, wxRect &rect )
{
wxNode *node = m_lines.Nth( index );
if (node)
{
wxNode *node = m_lines.Nth( index );
if (node)
wxNode *node = m_lines.Nth( item );
if (node)
{
wxNode *node = m_lines.Nth( item );
if (node)
{
wxListLineData *line = (wxListLineData*)node->Data();
line->GetRect( rect );
pos.x = rect.x;
wxListLineData *line = (wxListLineData*)node->Data();
line->GetRect( rect );
pos.x = rect.x;
-bool wxListCtrl::GetItemRect( long item, wxRectangle &rect, int WXUNUSED(code) ) const
+bool wxListCtrl::GetItemRect( long item, wxRect &rect, int WXUNUSED(code) ) const
{
m_mainWin->GetItemRect( item, rect );
return TRUE;
{
m_mainWin->GetItemRect( item, rect );
return TRUE;
wxProperty* prop = GetProperty(name);
if(prop){
prop->SetValue(value);
wxProperty* prop = GetProperty(name);
if(prop){
prop->SetValue(value);
}
}
void wxPropertySheet::RemoveProperty(wxString name)
}
}
void wxPropertySheet::RemoveProperty(wxString name)
}
bool wxPropertySheet::HasProperty(wxString name)
{
}
bool wxPropertySheet::HasProperty(wxString name)
{
- return (GetProperty(name)?true:false);
+ return (GetProperty(name)?TRUE:FALSE);
}
// Clear all properties
void wxPropertySheet::Clear(void)
}
// Clear all properties
void wxPropertySheet::Clear(void)
wxCHECK_MSG( item.IsOk(), wxTreeItemId(), "invalid tree item" );
wxArrayTreeItems& children = item.m_pItem->GetChildren();
wxCHECK_MSG( item.IsOk(), wxTreeItemId(), "invalid tree item" );
wxArrayTreeItems& children = item.m_pItem->GetChildren();
- return children.IsEmpty() ? wxTreeItemId() : children.Last();
+ return (children.IsEmpty() ? wxTreeItemId() : wxTreeItemId(children.Last()));
}
wxTreeItemId wxTreeCtrl::GetNextSibling(const wxTreeItemId& item) const
}
wxTreeItemId wxTreeCtrl::GetNextSibling(const wxTreeItemId& item) const
.$(SRCSUFF).obj:
bcc $(CPPFLAGS) -c {$< }
$(TARGET).res : $(TARGET).rc $(WXDIR)\include\wx\msw\wx.rc
.$(SRCSUFF).obj:
bcc $(CPPFLAGS) -c {$< }
$(TARGET).res : $(TARGET).rc $(WXDIR)\include\wx\msw\wx.rc
- rc -r /i$(BCCDIR)\include /i$(WXDIR)\include $(TARGET)
+ brc -r /i$(BCCDIR)\include /i$(WXDIR)\include $(TARGET)
MAXDATA =
STACK = option stack=64k
EXTRALIBS = $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\png.lib $(WXDIR)\lib\xpm.lib &
MAXDATA =
STACK = option stack=64k
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
+ $(WATLIBDIR)\comctl32.lib $(WATLIBDIR)\comdlg32.lib &
+ $(WATLIBDIR)\ole32.lib $(WATLIBDIR)\oleaut32.lib &
+ $(WATLIBDIR)\uuid.lib # $(WATLIBDIR)\odbc32.lib
IFLAGS = -i=$(WXINC) -i=$(%watcom)\h;$(%watcom)\h\nt # -i=$(WXDIR)\include\wx\msw\gnuwin32
RESFLAGS1 = -r -bt=nt /i$(WXDIR)\include
RESFLAGS2 = -R $(name) /i$(WXDIR)\include
IFLAGS = -i=$(WXINC) -i=$(%watcom)\h;$(%watcom)\h\nt # -i=$(WXDIR)\include\wx\msw\gnuwin32
RESFLAGS1 = -r -bt=nt /i$(WXDIR)\include
RESFLAGS2 = -R $(name) /i$(WXDIR)\include
// is it really nMagic?
lVal = GetPrivateProfileInt(m_strGroup, strKey, nMagic2, m_strLocalFilename);
// is it really nMagic?
lVal = GetPrivateProfileInt(m_strGroup, strKey, nMagic2, m_strLocalFilename);
- if ( lVal == nMagic ) {
+ if ( lVal == nMagic2 ) {
// the nMagic it returned was indeed read from the file
*pl = lVal;
return TRUE;
// the nMagic it returned was indeed read from the file
*pl = lVal;
return TRUE;
$(MSWDIR)\helpxlp.obj \
$(MSWDIR)\laywin.obj \
$(MSWDIR)\listctrl.obj \
$(MSWDIR)\helpxlp.obj \
$(MSWDIR)\laywin.obj \
$(MSWDIR)\listctrl.obj \
- $(MSWDIR)\msgdlgg.obj \
$(MSWDIR)\notebook.obj \
$(MSWDIR)\panelg.obj \
$(MSWDIR)\prop.obj \
$(MSWDIR)\notebook.obj \
$(MSWDIR)\panelg.obj \
$(MSWDIR)\prop.obj \
$(MSWDIR)\textdlgg.obj \
$(MSWDIR)\treectrl.obj
$(MSWDIR)\textdlgg.obj \
$(MSWDIR)\treectrl.obj
+# $(MSWDIR)\msgdlgg.obj \
# $(MSWDIR)\printps.obj \
# $(MSWDIR)\prntdlgg.obj \
# $(MSWDIR)\printps.obj \
# $(MSWDIR)\prntdlgg.obj \
$(MSWDIR)\memory.obj \
$(MSWDIR)\module.obj \
$(MSWDIR)\object.obj \
$(MSWDIR)\memory.obj \
$(MSWDIR)\module.obj \
$(MSWDIR)\object.obj \
- $(MSWDIR)\postscrp.obj \
$(MSWDIR)\prntbase.obj \
$(MSWDIR)\resource.obj \
$(MSWDIR)\resourc2.obj \
$(MSWDIR)\prntbase.obj \
$(MSWDIR)\resource.obj \
$(MSWDIR)\resourc2.obj \
$(MSWDIR)\odbc.obj: $(COMMDIR)\odbc.$(SRCSUFF)
$(MSWDIR)\odbc.obj: $(COMMDIR)\odbc.$(SRCSUFF)
-$(MSWDIR)\postscrp.obj: $(COMMDIR)\postscrp.$(SRCSUFF)
-
$(MSWDIR)\prntbase.obj: $(COMMDIR)\prntbase.$(SRCSUFF)
$(MSWDIR)\resource.obj: $(COMMDIR)\resource.$(SRCSUFF)
$(MSWDIR)\prntbase.obj: $(COMMDIR)\prntbase.$(SRCSUFF)
$(MSWDIR)\resource.obj: $(COMMDIR)\resource.$(SRCSUFF)
--I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/zlib
+-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
-I$(WXDIR)\include\wx\msw\gnuwin32
-L$(BCCDIR)\lib
-D__WXWIN__
-I$(WXDIR)\include\wx\msw\gnuwin32
-L$(BCCDIR)\lib
-D__WXWIN__
$(COMMDIR)/extended.$(OBJSUFF) \
$(COMMDIR)/wincmn.$(OBJSUFF)
$(COMMDIR)/extended.$(OBJSUFF) \
$(COMMDIR)/wincmn.$(OBJSUFF)
-# $(COMMDIR)/postscrp.$(OBJSUFF) \
-
# NOTE: if the socket-related files fail with a syntax error in Sockets.h,
# remove the files (probably all GnuWin32 releases < b20). Cygwin b20 is OK,
# Mingw32 may still have problems.
# NOTE: if the socket-related files fail with a syntax error in Sockets.h,
# remove the files (probably all GnuWin32 releases < b20). Cygwin b20 is OK,
# Mingw32 may still have problems.
odbc.obj: $(COMMDIR)\odbc.cpp
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\odbc.cpp /BINARY odbc.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
prntbase.obj: $(COMMDIR)\prntbase.cpp
$(CCC) $(CPPFLAGS) $(IFLAGS) $(COMMDIR)\prntbase.cpp /BINARY prntbase.obj
$(GENDIR)\msgdlgg.obj \
$(GENDIR)\helpxlp.obj \
$(GENDIR)\colrdlgg.obj \
$(GENDIR)\msgdlgg.obj \
$(GENDIR)\helpxlp.obj \
$(GENDIR)\colrdlgg.obj \
- $(GENDIR)\fontdlgg.obj \
- $(COMMDIR)\postscrp.obj
COMMONOBJS = \
$(COMMDIR)\cmndata.obj \
COMMONOBJS = \
$(COMMDIR)\cmndata.obj \
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
-$(COMMDIR)/postscrp.obj: $*.$(SRCSUFF)
- cl @<<
-$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
-<<
-
$(COMMDIR)/prntbase.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(COMMDIR)/prntbase.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
# wlib /b /c /n /p=512 $^@ @tmp.lbc
# wlib /b /c /n /p=512 $^@ @tmp.lbc
-clean: $(EXTRATARGETSCLEAN)
+clean: .SYMBOLIC $(EXTRATARGETSCLEAN)
-erase *.obj
-erase $(LIBTARGET)
-erase *.pch
-erase *.obj
-erase $(LIBTARGET)
-erase *.pch
odbc.obj: $(COMMDIR)\odbc.cpp
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
odbc.obj: $(COMMDIR)\odbc.cpp
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
-postscrp.obj: $(COMMDIR)\postcrp.cpp
- *$(CCC) $(CPPFLAGS) $(IFLAGS) $<
-
prntbase.obj: $(COMMDIR)\prntbase.cpp
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
prntbase.obj: $(COMMDIR)\prntbase.cpp
*$(CCC) $(CPPFLAGS) $(IFLAGS) $<
#ifndef XPM_h
#define XPM_h
#ifndef XPM_h
#define XPM_h
-#if defined(_WINDOWS) || defined(__WXMSW__) || defined(WIN32)
+#if (defined(_WINDOWS) || defined(__WXMSW__) || defined(WIN32)) && !defined(FOR_MSW)