-include/wx/wxchar.h
-include/wx/msw/setup.h
-samples/dnd/*.wxr
-src/unix/fontutil.cpp
-src/common/fontmap.cpp
-src/msw/statbox.cpp
-include/wx/msw/statbox.h
-utils/ogl/samples/ogledit/palette.cpp
-utils/ogl/samples/studio/shapes.cpp
-utils/ogl/samples/studio/shapes.h
-utils/ogl/samples/studio/studio.h
-utils/dialoged/src/dialoged.cpp
-utils/dialoged/src/dlghndlr.cpp
-utils/dialoged/src/reseditr.cpp
-utils/dialoged/src/dialoged.h
+include/wx/datetime.inl
+src/msw/treectrl.cpp
+samples/treectrl/TreectrlVC.dsp
rem Dialog Editor source and binary
erase %dest\dialoged_source.zip
zip32 -@ %dest\dialoged_source.zip < %src\distrib\msw\dialoged.rsp
-zip32 -j %dest\dialoged.zip %dest\dialoged_source.zip %src\bin\dialoged.exe %src\bin\dialoged.hlp %src\bin\dialoged.cnt
+zip32 -j %dest\dialoged.zip %dest\dialoged_source.zip %src\bin\dialoged.exe %src\docs\winhelp\dialoged.hlp %src\docs\winhelp\dialoged.cnt
erase %dest\dialoged_source.zip
rem Misc. utils not in the main distribution
erase /Y contrib\docs\winhelp\stc.*
erase /Y contrib\docs\pdf\*.*
deltree /Y contrib\docs\latex\ogl
+erase /Y src\mingegcs.bat
rem Now copy some binary files to 'bin'
if not isdir bin mkdir bin
</tr>
</table>
-<H3><a name="release2_1_14">March 19th, 2000</H3><P>
+<H3><a name="release2_1_14">March 21st, 2000</H3><P>
<ul>
<li><a href="download.htm" target=wxmain>wxWindows 2.1.14</a> is now available for Windows, Motif and GTK.
\subsection{Unicode support in wxWindows}
-In wxWindows, the code fragment froim above should be written instead:
+In wxWindows, the code fragment from above should be written instead:
\begin{verbatim}
wxChar ch = wxT('*');
A detailed 1100-page reference manual is supplied in HTML, PDF and
Windows Help form: see the docs hierarchy.
-For a quick start, point your Web browser at docs/html/index.htm for a list of
-important documents and samples.
+For a quick start, point your Web browser at docs/html/index.htm for a
+list of important documents and samples.
Changes in this release
-----------------------
As well as the core source, the Windows setup contains:
- Windows Help versions of the documentation (docs/winhelp);
-- wxGLCanvas (OpenGL integration, in utils/glcanvas);
-- OGL 3 (Object Graphics Library, in utils/ogl);
-- wxTreeLayout (for tree drawing, in utils/wxtree);
+- OGL 3 (Object Graphics Library, in contrib/src/ogl);
- a Dialog Editor binary;
-- the JPEG library.
+- a Tex2RTF binary;
+- Life! sample binary;
+- the JPEG library source;
+- the TIFF library source.
setup.exe Setup file (Windows 95/98, NT)
setup.* Other setup files
*****************************************************************************/
// needed to resolve the conflict between global T and macro parameter T
+
+// VC++ can't cope with string concatenation in Unicode mode
+#if defined(wxUSE_UNICODE) && wxUSE_UNICODE
+#define _WX_ERROR_REMOVE2(x) wxT("bad index in ::RemoveAt()")
+#else
#define _WX_ERROR_REMOVE2(x) wxT("bad index in " #x "::RemoveAt()")
+#endif
// macro implements remaining (not inline) methods of template list
// (it's private to this file)
wxCmdLineParam& param = m_data->m_paramDesc.Last();
wxASSERT_MSG( !(param.flags & wxCMD_LINE_PARAM_MULTIPLE),
- _T("all parameters after the one with "
- "wxCMD_LINE_PARAM_MULTIPLE style will be ignored") );
+ _T("all parameters after the one with wxCMD_LINE_PARAM_MULTIPLE style will be ignored") );
if ( !(flags & wxCMD_LINE_PARAM_OPTIONAL) )
{
wxASSERT_MSG( !(param.flags & wxCMD_LINE_PARAM_OPTIONAL),
- _T("a required parameter can't follow an "
- "optional one") );
+ _T("a required parameter can't follow an optional one") );
}
}
#endif // Debug
if ( *p++ != _T('=') )
{
- wxLogError(_("Option '%s' requires a value, '=' "
- "expected."), name.c_str());
+ wxLogError(_("Option '%s' requires a value, '=' expected."), name.c_str());
ok = FALSE;
}
}
else
{
- wxLogError(_("'%s' is not a correct "
- "numeric value for option "
- "'%s'."),
+ wxLogError(_("'%s' is not a correct numeric value for option '%s'."),
value.c_str(), name.c_str());
ok = FALSE;
const wxChar *res = dt.ParseDate(value);
if ( !res || *res )
{
- wxLogError(_("Option '%s': '%s' cannot "
- "be converted to a date."),
+ wxLogError(_("Option '%s': '%s' cannot be converted to a date."),
name.c_str(), value.c_str());
ok = FALSE;
else
{
wxASSERT_MSG( currentParam == countParam - 1,
- _T("all parameters after the one with "
- "wxCMD_LINE_PARAM_MULTIPLE style "
- "are ignored") );
+ _T("all parameters after the one with wxCMD_LINE_PARAM_MULTIPLE style are ignored") );
// remember that we did have this last repeatable parameter
hadRepeatableParam = TRUE;
void wxPageSetupDialogData::CalculateIdFromPaperSize()
{
wxASSERT_MSG( (wxThePrintPaperDatabase != (wxPrintPaperDatabase*) NULL),
- wxT("wxThePrintPaperDatabase should not be NULL. "
- "Do not create global print dialog data objects.") );
+ wxT("wxThePrintPaperDatabase should not be NULL. Do not create global print dialog data objects.") );
wxSize sz = GetPaperSize();
void wxPageSetupDialogData::CalculatePaperSizeFromId()
{
wxASSERT_MSG( (wxThePrintPaperDatabase != (wxPrintPaperDatabase*) NULL),
- wxT("wxThePrintPaperDatabase should not be NULL. "
- "Do not create global print dialog data objects.") );
+ wxT("wxThePrintPaperDatabase should not be NULL. Do not create global print dialog data objects.") );
wxSize sz = wxThePrintPaperDatabase->GetSize(m_printData.GetPaperId());
// check the closing bracket
if ( bracket != Bracket_None ) {
if ( m == str.Len() || str[m] != (char)bracket ) {
- wxLogWarning(_("Environment variables expansion failed: "
- "missing '%c' at position %d in '%s'."),
+ wxLogWarning(_("Environment variables expansion failed: missing '%c' at position %d in '%s'."),
(char)bracket, m + 1, str.c_str());
}
else {
i_Nation = Nation; // 0 = timestamp , 1=EU, 2=UK, 3=International, 4=US
i_dbDataType = dbDataType;
i_sqlDataType = sqlDataType;
- s_Field.Printf("%s%d",s_Menge[1].c_str(),i_Menge[1]); // OK for VARCHAR, INTEGER and FLOAT
+ s_Field.Printf(wxT("%s%d"),s_Menge[1].c_str(),i_Menge[1]); // OK for VARCHAR, INTEGER and FLOAT
if (i_dbDataType == 0) // Filter unsupported dbDataTypes
{
if ((i_sqlDataType == SQL_VARCHAR) || (i_sqlDataType == SQL_LONGVARCHAR))
if (decimalDigits == 0)
decimalDigits = 2;
Temp0 = "%";
- Temp0.Printf("%s%d.%d",Temp0.c_str(),columnSize,decimalDigits);
- s_Field.Printf("%sf",Temp0.c_str()); //
+ Temp0.Printf(wxT("%s%d.%d"),Temp0.c_str(),columnSize,decimalDigits);
+ s_Field.Printf(wxT("%sf"),Temp0.c_str()); //
break;
case DB_DATA_TYPE_DATE:
if (i_Nation == 0) // timestamp YYYY-MM-DD HH:MM:SS.SSS (tested for SYBASE)
}
break;
default:
- s_Field.Printf("-E-> unknown Format(%d)-sql(%d)",dbDataType,sqlDataType); //
+ s_Field.Printf(wxT("-E-> unknown Format(%d)-sql(%d)"),dbDataType,sqlDataType); //
break;
};
return TRUE;
sqlLogState = sqlLogOFF; // By default, logging is turned off
nTables = 0;
- wxStrcpy(sqlState,"");
- wxStrcpy(errorMsg,"");
+ wxStrcpy(sqlState,wxT(""));
+ wxStrcpy(errorMsg,wxT(""));
nativeError = cbErrorMsg = 0;
for (i = 0; i < DB_MAX_ERROR_HISTORY; i++)
- wxStrcpy(errorList[i], "");
+ wxStrcpy(errorList[i], wxT(""));
// Init typeInf structures
- wxStrcpy(typeInfVarchar.TypeName,"");
+ wxStrcpy(typeInfVarchar.TypeName,wxT(""));
typeInfVarchar.FsqlType = 0;
typeInfVarchar.Precision = 0;
typeInfVarchar.CaseSensitive = 0;
typeInfVarchar.MaximumScale = 0;
- wxStrcpy(typeInfInteger.TypeName,"");
+ wxStrcpy(typeInfInteger.TypeName,wxT(""));
typeInfInteger.FsqlType = 0;
typeInfInteger.Precision = 0;
typeInfInteger.CaseSensitive = 0;
typeInfInteger.MaximumScale = 0;
- wxStrcpy(typeInfFloat.TypeName,"");
+ wxStrcpy(typeInfFloat.TypeName,wxT(""));
typeInfFloat.FsqlType = 0;
typeInfFloat.Precision = 0;
typeInfFloat.CaseSensitive = 0;
typeInfFloat.MaximumScale = 0;
- wxStrcpy(typeInfDate.TypeName,"");
+ wxStrcpy(typeInfDate.TypeName,wxT(""));
typeInfDate.FsqlType = 0;
typeInfDate.Precision = 0;
typeInfDate.CaseSensitive = 0;
tiu = (wxTablesInUse *)pNode->Data();
if (tiu->pDb == this)
{
- s.sprintf("(%-20s) tableID:[%6lu] pDb:[%p]", tiu->tableName,tiu->tableID,tiu->pDb);
- s2.sprintf("Orphaned found using pDb:[%p]",this);
+ s.sprintf(wxT("(%-20s) tableID:[%6lu] pDb:[%p]"), tiu->tableName,tiu->tableID,tiu->pDb);
+ s2.sprintf(wxT("Orphaned found using pDb:[%p]"),this);
wxLogDebug (s.c_str(),s2.c_str());
}
pNode = pNode->Next();
void wxFontMapper::SetConfigPath(const wxString& prefix)
{
wxCHECK_RET( !prefix.IsEmpty() && prefix[0] == wxCONFIG_PATH_SEPARATOR,
- wxT("an absolute path should be given to "
- "wxFontMapper::SetConfigPath()") );
+ wxT("an absolute path should be given to wxFontMapper::SetConfigPath()") );
m_configRootPath = prefix;
}
!if "$(FINAL)" == "1"
D=Release
!else
+guilibsdll=msvcrtd.lib oldnames.lib kernel32.lib \
+ ws2_32.lib mswsock.lib advapi32.lib user32.lib \
+ gdi32.lib comdlg32.lib winspool.lib
D=Debug
LIBEXT=d
WXLIBNAME=$(WXLIBNAME)$(LIBEXT)
DUMMYOBJ=$D\dummy.obj
!endif
+USE_GLCANVAS=1
+
# Please set these according to the settings in setup.h, so we can include
# the appropriate libraries in wx.lib
if ( !MSWCreateControl(WC_TREEVIEW, wstyle) )
return FALSE;
+#if 0
SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW));
+#else
+ // This works around a bug in the Windows tree control whereby for some versions
+ // of comctrl32, setting any colour actually draws the background in black.
+ // This will initialise the background to the system colour.
+ ::SendMessage(GetHwnd(), TVM_SETBKCOLOR, 0,-1);
+ wxWindow::SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW));
+#endif
+
SetForegroundColour(wxWindow::GetParent()->GetForegroundColour());
// VZ: this is some experimental code which may be used to get the
GenerateSample("TextVC", "text", dir + wxString("/samples/text"), wxStringList("text.cpp", 0));
GenerateSample("ThreadVC", "thread", dir + wxString("/samples/thread"), wxStringList("thread.cpp", 0));
GenerateSample("ToolbarVC", "toolbar", dir + wxString("/samples/toolbar"), wxStringList("toolbar.cpp", 0));
- GenerateSample("TreectrlVC", "treectrl", dir + wxString("/samples/treectrl"), wxStringList("treectrl.cpp", "treetest.h", 0));
+ GenerateSample("TreectrlVC", "treectrl", dir + wxString("/samples/treectrl"), wxStringList("treectrl.cpp", "treectrl.h", 0));
GenerateSample("TypetestVC", "typetest", dir + wxString("/samples/typetest"), wxStringList("typetest.cpp", "typetest.h", 0));
GenerateSample("ValidateVC", "validate", dir + wxString("/samples/validate"), wxStringList("validate.cpp", "validate.h", 0));
GenerateSample("ClientVC", "client", dir + wxString("/samples/sockets"), wxStringList("client.cpp", 0));