From 5b7f1aab47f7560046f8e5f7f9dc34b468f9200f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 15 Oct 1999 16:14:01 +0000 Subject: [PATCH] compile fix git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/odbc.h | 199 +++++++++++++++++++------------------- samples/html/zip/zip.cpp | 25 +++-- src/common/extended.c | 201 +++++++++++++++++++-------------------- 3 files changed, 212 insertions(+), 213 deletions(-) diff --git a/include/wx/odbc.h b/include/wx/odbc.h index 2ade1bae75..08587be677 100644 --- a/include/wx/odbc.h +++ b/include/wx/odbc.h @@ -6,7 +6,7 @@ // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/setup.h" @@ -25,19 +25,22 @@ #endif -#ifdef __WXGTK__ -extern "C" { -#include "../../src/iodbc/isql.h" -#include "../../src/iodbc/isqlext.h" -#include "../../src/iodbc/odbc_funcs.h" -#include "../../src/iodbc/odbc_types.h" -typedef float SFLOAT; -typedef double SDOUBLE; -#define ULONG UDWORD +#ifdef __UNIX__ +extern "C" +{ + #include "../../src/iodbc/isql.h" + #include "../../src/iodbc/isqlext.h" + #include "../../src/iodbc/odbc_funcs.h" + #include "../../src/iodbc/odbc_types.h" + + typedef float SFLOAT; + typedef double SDOUBLE; + + #define ULONG UDWORD } -#else -#include -#endif +#else // !Unix + #include +#endif // Unix/!Unix #include "wx/defs.h" #include "wx/list.h" @@ -60,13 +63,11 @@ class WXDLLEXPORT wxRecordSet; class WXDLLEXPORT wxDatabase: public wxObject { - // JACS DECLARE_DYNAMIC_CLASS(wxDatabase) - private: protected: static HENV hEnv; static int refCount; - + HDBC hDBC; char* username; char* password; @@ -83,19 +84,19 @@ class WXDLLEXPORT wxDatabase: public wxObject bool err_occured; wxList recordSets; // Record sets: Added by JACS - + public: - wxDatabase(void); - ~wxDatabase(void); - + wxDatabase(); + ~wxDatabase(); + bool Open(char *, bool exclusive =FALSE, bool readOnly =TRUE, char *username ="ODBC", char *password =""); - bool Close(void); + bool Close(); // Cleanup operations, added by JACS void DeleteRecordSets(void); // Called when the database is deleted void ResetRecordSets(void); // Required if the database is closed inline wxList& GetRecordSets(void) { return recordSets; } - + inline char *GetUsername(void) { return username; } inline char *GetPassword(void) { return password; } inline char *GetDataSource(void) { return datasource; } @@ -103,31 +104,31 @@ class WXDLLEXPORT wxDatabase: public wxObject inline wxRETCODE GetErrorCode(void) { return retcode; } inline HDBC GetHDBC(void) { return hDBC; } inline HENV GetHENV(void) { return hEnv; } - + void SetPassword(char *s); void SetUsername(char *s); void SetDataSource(char *s); - + // Database attributes - char *GetDatabaseName(void); - bool CanUpdate(void); - bool CanTransact(void); - bool InWaitForDataSource(void); + char *GetDatabaseName(); + bool CanUpdate(); + bool CanTransact(); + bool InWaitForDataSource(); void SetLoginTimeout(long seconds); void SetQueryTimeout(long seconds); void SetSynchronousMode(bool synchronous); // Database operations - bool BeginTrans(void); - bool CommitTrans(void); - bool RollbackTrans(void); - void Cancel(void); + bool BeginTrans(); + bool CommitTrans(); + bool RollbackTrans(); + void Cancel(); // Error handling - bool ErrorOccured(void); - char* GetErrorMessage(void); - long GetErrorNumber(void); - char* GetErrorClass(void); + bool ErrorOccured(); + char* GetErrorMessage(); + long GetErrorNumber(); + char* GetErrorClass(); inline void ErrorSnapshot(HSTMT =SQL_NULL_HSTMT); // Overridables @@ -154,23 +155,23 @@ class WXDLLEXPORT wxQueryField: public wxObject long size; bool dirty; - bool AllocData(void); + bool AllocData(); public: - wxQueryField(void); - ~wxQueryField(void); - + wxQueryField(); + ~wxQueryField(); + bool SetData(void*, long); void SetDirty(bool =TRUE); - void ClearData(void); + void ClearData(); void SetType(short); void SetSize(long); - - void* GetData(void); - short GetType(void); - long GetSize(void); - - bool IsDirty(void); + + void* GetData(); + short GetType(); + long GetSize(); + + bool IsDirty(); }; // Represents a column description @@ -184,13 +185,13 @@ class WXDLLEXPORT wxQueryCol: public wxObject bool nullable; long varsize; void* var; - + public: wxList fields; - - wxQueryCol(void); - ~wxQueryCol(void); - + + wxQueryCol(); + ~wxQueryCol(); + void* BindVar(void*, long); void FillVar(int); void AppendField(void*, long); @@ -199,10 +200,10 @@ class WXDLLEXPORT wxQueryCol: public wxObject void SetNullable(bool); void SetFieldDirty(int, bool =TRUE); void SetType(short); - - char* GetName(void); - short GetType(void); - bool IsNullable(void); + + char* GetName(); + short GetType(); + bool IsNullable(); void* GetData(int); long GetSize(int); @@ -217,7 +218,7 @@ class WXDLLEXPORT wxRecordSet: public wxObject int cursor; int type; int options; - + protected: HSTMT hStmt; int nFields; @@ -232,48 +233,50 @@ class WXDLLEXPORT wxRecordSet: public wxObject wxRETCODE retcode; wxList cols; wxList fetchbuf; - + void FillVars(int); public: // JACS gave parent a default value for benefit of IMPLEMENT_DYNAMIC_CLASS - wxRecordSet(wxDatabase *parent = NULL, int =wxOPEN_TYPE_DYNASET, int =wxOPTION_DEFAULT); - ~wxRecordSet(void); - + wxRecordSet(wxDatabase *parent = NULL, + int = wxOPEN_TYPE_DYNASET, + int = wxOPTION_DEFAULT); + ~wxRecordSet(); + // My own, lower-level functions. bool BeginQuery(int openType, char *sql = NULL, int options = wxOPTION_DEFAULT); - bool EndQuery(void); + bool EndQuery(); bool Query(char* columns, char* table =NULL, char *filter =NULL); // Attributes inline int GetNumberFields(void) { return nFields; } inline int GetNumberParams(void) { return nParams; } - long GetNumberRecords(void); - long GetNumberCols(void); + long GetNumberRecords(); + long GetNumberCols(); inline char *GetFilter(void) { return recordFilter; } inline char *GetSortString(void) { return sortString; } inline wxDatabase *GetDatabase(void) { return parentdb; } inline wxRETCODE GetErrorCode(void) { return retcode; } - bool CanAppend(void); - bool CanRestart(void); - bool CanScroll(void); - bool CanTransact(void); - bool CanUpdate(void); - long GetCurrentRecord(void); - bool RecordCountFinal(void); - bool GetResultSet(void); + bool CanAppend(); + bool CanRestart(); + bool CanScroll(); + bool CanTransact(); + bool CanUpdate(); + long GetCurrentRecord(); + bool RecordCountFinal(); + bool GetResultSet(); bool ExecuteSQL(char*); - bool GetTables(void); + bool GetTables(); bool GetColumns(char* =NULL); bool GetPrimaryKeys(char* =NULL); bool GetForeignKeys(char* , char * ); - char *GetTableName(void); + char *GetTableName(); void SetTableName(char*); - char *GetSQL(void); - bool IsOpen(void); - bool IsBOF(void); - bool IsEOF(void); - bool IsDeleted(void); + char *GetSQL(); + bool IsOpen(); + bool IsBOF(); + bool IsEOF(); + bool IsDeleted(); bool GetFieldData(int colPos, int dataType, void *dataPtr); bool GetFieldData(const char*, int dataType, void *dataPtr); @@ -286,50 +289,50 @@ class WXDLLEXPORT wxRecordSet: public wxObject void* BindVar(const char*, void*, long); void SetType(int); - int GetType(void); + int GetType(); void SetOptions(int); - int GetOptions(void); - + int GetOptions(); + // Update operations - void AddNew(void); - bool Delete(void); - void Edit(void); - bool Update(void); + void AddNew(); + bool Delete(); + void Edit(); + bool Update(); // Record navigation virtual bool Move(long rows); - virtual bool MoveFirst(void); - virtual bool MoveLast(void); - virtual bool MoveNext(void); - virtual bool MovePrev(void); + virtual bool MoveFirst(); + virtual bool MoveLast(); + virtual bool MoveNext(); + virtual bool MovePrev(); virtual bool GoTo(long); // Others - bool GetDataSources(void); + bool GetDataSources(); // Associate a column name/position with a data location // bool BindColumn(int colPos, int dataType, void *dataPtr); - void Cancel(void); + void Cancel(); bool IsFieldDirty(int); bool IsFieldDirty(const char*); bool IsFieldNull(int); bool IsFieldNull(const char*); bool IsColNullable(int); bool IsColNullable(const char*); - virtual bool Requery(void); + virtual bool Requery(); virtual void SetFieldDirty(int, bool dirty = TRUE); virtual void SetFieldDirty(const char*, bool dirty = TRUE); void SetFieldNull(void *p, bool isNull = TRUE); // Overridables - virtual char *GetDefaultConnect(void); - virtual char *GetDefaultSQL(void); - + virtual char *GetDefaultConnect(); + virtual char *GetDefaultSQL(); + // Internal - + // Build SQL query from column specification - bool ConstructDefaultSQL(void); + bool ConstructDefaultSQL(); void SetDefaultSQL(char *s); bool ReleaseHandle(void); // Added JACS }; diff --git a/samples/html/zip/zip.cpp b/samples/html/zip/zip.cpp index 3f518da664..2b0fa15f98 100644 --- a/samples/html/zip/zip.cpp +++ b/samples/html/zip/zip.cpp @@ -35,7 +35,7 @@ public: // override base class virtuals // ---------------------------- - + // this one is called on application startup and is a good place for the app // initialization (doing it here and not in the ctor allows to have an error // return: if OnInit() returns false, the application terminates) @@ -48,7 +48,7 @@ public: // ctor(s) MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size); - + // event handlers (these functions should _not_ be virtual) void OnQuit(wxCommandEvent& event); void OnAbout(wxCommandEvent& event); @@ -71,10 +71,7 @@ Minimal_Quit = 1, Minimal_About, Minimal_Back, - Minimal_Forward, - - // controls start here (the numbers are, of course, arbitrary) - Minimal_Text = 1000, + Minimal_Forward }; // ---------------------------------------------------------------------------- @@ -90,18 +87,18 @@ EVT_MENU(Minimal_Back, MyFrame::OnBack) EVT_MENU(Minimal_Forward, MyFrame::OnForward) END_EVENT_TABLE() - + // Create a new application object: this macro will allow wxWindows to create // the application object during program execution (it's better than using a // static object for many reasons) and also declares the accessor function // wxGetApp() which will return the reference of the right type (i.e. MyApp and // not wxApp) IMPLEMENT_APP(MyApp) - + // ============================================================================ // implementation // ============================================================================ - + // ---------------------------------------------------------------------------- // the application class // ---------------------------------------------------------------------------- @@ -114,18 +111,18 @@ #if wxUSE_LIBJPEG wxImage::AddHandler(new wxJPEGHandler); #endif - + wxFileSystem::AddHandler(new wxZipFSHandler); - + // Create the main application window MyFrame *frame = new MyFrame("wxHtmlWindow testing application", wxPoint(50, 50), wxSize(640, 480)); - + // Show it and tell the application that it's our main window // @@@ what does it do exactly, in fact? is it necessary here? frame->Show(TRUE); SetTopWindow(frame); - + // success: wxApp::OnRun() will be called which will enter the main message // loop and the application will run. If we returned FALSE here, the // application would exit immediately. @@ -157,7 +154,7 @@ wxHtmlWindow *html; // ... and attach this menu bar to the frame SetMenuBar(menuBar); - + CreateStatusBar(1); { diff --git a/src/common/extended.c b/src/common/extended.c index c691e6b1a5..cf9f95fd2f 100644 --- a/src/common/extended.c +++ b/src/common/extended.c @@ -1,13 +1,11 @@ -#if !defined(__VISAGECPP__) -# pragma warning(disable:4001) /* non standard extension used: single line comment */ -#endif #include "wx/setup.h" + #include #if wxUSE_APPLE_IEEE /* - * C O N V E R T T O I E E E E X T E N D E D + * C O N V E R T T O I E E E E X T E N D E D */ /* Copyright (C) 1988-1991 Apple Computer, Inc. @@ -16,7 +14,7 @@ * Machine-independent I/O routines for IEEE floating-point numbers. * * NaN's and infinities are converted to HUGE_VAL or HUGE, which - * happens to be infinity on IEEE machines. Unfortunately, it is + * happens to be infinity on IEEE machines. Unfortunately, it is * impossible to preserve NaN's in a machine-independent way. * Infinities are, however, preserved on IEEE machines. * @@ -49,67 +47,68 @@ void ConvertToIeeeExtended(double num, unsigned char *bytes) { - int sign; - int expon; - double fMant, fsMant; - unsigned long hiMant, loMant; - - if (num < 0) { - sign = 0x8000; - num *= -1; - } else { - sign = 0; - } - - if (num == 0) { - expon = 0; hiMant = 0; loMant = 0; - } - else { - fMant = frexp(num, &expon); - if ((expon > 16384) || !(fMant < 1)) { /* Infinity or NaN */ - expon = sign|0x7FFF; hiMant = 0; loMant = 0; /* infinity */ - } - else { /* Finite */ - expon += 16382; - if (expon < 0) { /* denormalized */ - fMant = ldexp(fMant, expon); - expon = 0; - } - expon |= sign; - fMant = ldexp(fMant, 32); - fsMant = floor(fMant); - hiMant = FloatToUnsigned(fsMant); - fMant = ldexp(fMant - fsMant, 32); - fsMant = floor(fMant); - loMant = FloatToUnsigned(fsMant); - } - } - - /* disable the warning about 'possible loss of data' & 'conversion between diff types' */ - #ifdef _MSC_VER - #pragma warning(disable: 4244) - #pragma warning(disable: 4135) - #endif /* Visual C++ */ - - bytes[0] = (expon >> 8) & 0xff; - bytes[1] = expon & 0xff; - bytes[2] = (unsigned char) ((hiMant >> 24) & 0xff); - bytes[3] = (unsigned char) ((hiMant >> 16) & 0xff); - bytes[4] = (unsigned char) ((hiMant >> 8) & 0xff); - bytes[5] = (unsigned char) (hiMant & 0xff); - bytes[6] = (unsigned char) ((loMant >> 24) & 0xff); - bytes[7] = (unsigned char) ((loMant >> 16) & 0xff); - bytes[8] = (unsigned char) ((loMant >> 8) & 0xff); - bytes[9] = (unsigned char) (loMant & 0xff); - - #ifdef _MSC_VER - #pragma warning(default: 4244) - #pragma warning(default: 4135) - #endif /* Visual C++ */ + int sign; + int expon; + double fMant, fsMant; + unsigned long hiMant, loMant; + + if (num < 0) { + sign = 0x8000; + num *= -1; + } else { + sign = 0; + } + + if (num == 0) { + expon = 0; hiMant = 0; loMant = 0; + } + else { + fMant = frexp(num, &expon); + if ((expon > 16384) || !(fMant < 1)) { /* Infinity or NaN */ + expon = sign|0x7FFF; hiMant = 0; loMant = 0; /* infinity */ + } + else { /* Finite */ + expon += 16382; + if (expon < 0) { /* denormalized */ + fMant = ldexp(fMant, expon); + expon = 0; + } + expon |= sign; + fMant = ldexp(fMant, 32); + fsMant = floor(fMant); + hiMant = FloatToUnsigned(fsMant); + fMant = ldexp(fMant - fsMant, 32); + fsMant = floor(fMant); + loMant = FloatToUnsigned(fsMant); + } + } + + /* disable the warning about 'possible loss of data' & 'conversion between + * diff types' */ +#ifdef _MSC_VER +#pragma warning(disable: 4244) +#pragma warning(disable: 4135) +#endif /* Visual C++ */ + + bytes[0] = (expon >> 8) & 0xff; + bytes[1] = expon & 0xff; + bytes[2] = (unsigned char) ((hiMant >> 24) & 0xff); + bytes[3] = (unsigned char) ((hiMant >> 16) & 0xff); + bytes[4] = (unsigned char) ((hiMant >> 8) & 0xff); + bytes[5] = (unsigned char) (hiMant & 0xff); + bytes[6] = (unsigned char) ((loMant >> 24) & 0xff); + bytes[7] = (unsigned char) ((loMant >> 16) & 0xff); + bytes[8] = (unsigned char) ((loMant >> 8) & 0xff); + bytes[9] = (unsigned char) (loMant & 0xff); + +#ifdef _MSC_VER +#pragma warning(default: 4244) +#pragma warning(default: 4135) +#endif /* Visual C++ */ } /* - * C O N V E R T F R O M I E E E E X T E N D E D + * C O N V E R T F R O M I E E E E X T E N D E D */ /* @@ -119,16 +118,16 @@ void ConvertToIeeeExtended(double num, unsigned char *bytes) * Machine-independent I/O routines for IEEE floating-point numbers. * * NaN's and infinities are converted to HUGE_VAL or HUGE, which - * happens to be infinity on IEEE machines. Unfortunately, it is + * happens to be infinity on IEEE machines. Unfortunately, it is * impossible to preserve NaN's in a machine-independent way. * Infinities are, however, preserved on IEEE machines. * * These routines have been tested on the following machines: - * Apple Macintosh, MPW 3.1 C compiler - * Apple Macintosh, THINK C compiler - * Silicon Graphics IRIS, MIPS compiler - * Cray X/MP and Y/MP - * Digital Equipment VAX + * Apple Macintosh, MPW 3.1 C compiler + * Apple Macintosh, THINK C compiler + * Silicon Graphics IRIS, MIPS compiler + * Cray X/MP and Y/MP + * Digital Equipment VAX * * * Implemented by Malcolm Slaney and Ken Turkowski. @@ -156,38 +155,38 @@ void ConvertToIeeeExtended(double num, unsigned char *bytes) double ConvertFromIeeeExtended(const unsigned char *bytes) { - double f; - int expon; - unsigned long hiMant, loMant; - - expon = ((bytes[0] & 0x7F) << 8) | (bytes[1] & 0xFF); - hiMant = ((unsigned long)(bytes[2] & 0xFF) << 24) - | ((unsigned long) (bytes[3] & 0xFF) << 16) - | ((unsigned long) (bytes[4] & 0xFF) << 8) - | ((unsigned long) (bytes[5] & 0xFF)); - loMant = ((unsigned long) (bytes[6] & 0xFF) << 24) - | ((unsigned long) (bytes[7] & 0xFF) << 16) - | ((unsigned long) (bytes[8] & 0xFF) << 8) - | ((unsigned long) (bytes[9] & 0xFF)); - - if (expon == 0 && hiMant == 0 && loMant == 0) { - f = 0; - } - else { - if (expon == 0x7FFF) { /* Infinity or NaN */ - f = HUGE_VAL; - } - else { - expon -= 16383; - f = ldexp(UnsignedToFloat(hiMant), expon-=31); - f += ldexp(UnsignedToFloat(loMant), expon-=32); - } - } - - if (bytes[0] & 0x80) - return -f; - else - return f; + double f; + int expon; + unsigned long hiMant, loMant; + + expon = ((bytes[0] & 0x7F) << 8) | (bytes[1] & 0xFF); + hiMant = ((unsigned long)(bytes[2] & 0xFF) << 24) + | ((unsigned long) (bytes[3] & 0xFF) << 16) + | ((unsigned long) (bytes[4] & 0xFF) << 8) + | ((unsigned long) (bytes[5] & 0xFF)); + loMant = ((unsigned long) (bytes[6] & 0xFF) << 24) + | ((unsigned long) (bytes[7] & 0xFF) << 16) + | ((unsigned long) (bytes[8] & 0xFF) << 8) + | ((unsigned long) (bytes[9] & 0xFF)); + + if (expon == 0 && hiMant == 0 && loMant == 0) { + f = 0; + } + else { + if (expon == 0x7FFF) { /* Infinity or NaN */ + f = HUGE_VAL; + } + else { + expon -= 16383; + f = ldexp(UnsignedToFloat(hiMant), expon-=31); + f += ldexp(UnsignedToFloat(loMant), expon-=32); + } + } + + if (bytes[0] & 0x80) + return -f; + else + return f; } #endif /* wxUSE_APPLE_IEEE */ -- 2.45.2