]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/data.cpp
wxCriticalSection changes undone - should work now
[wxWidgets.git] / src / msw / data.cpp
index 7354a35f1ac6650a575a83e6d03c17844015c753..e7e0283111655d21a2c116aea01d210f81e52a60 100644 (file)
@@ -10,7 +10,7 @@
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
-#pragma implementation
+#pragma implementation "data.h"
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
@@ -24,6 +24,8 @@
 #include "wx/wx.h"
 #endif
 
+#include "wx/prntbase.h"
+
 #define _MAXPATHLEN 500
 
 // Useful buffer, initialized in wxCommonInit
@@ -33,7 +35,7 @@ char *wxBuffer = NULL;
 wxList wxTopLevelWindows;
 
 // List of windows pending deletion
-wxList wxPendingDelete;
+wxList WXDLLEXPORT wxPendingDelete;
 
 // Current cursor, in order to hang on to
 // cursor handle when setting the cursor globally
@@ -99,6 +101,7 @@ wxCursor *wxHOURGLASS_CURSOR = NULL;
 wxCursor *wxCROSS_CURSOR = NULL;
 
 // 'Null' objects
+wxAcceleratorTable wxNullAcceleratorTable;
 wxBitmap wxNullBitmap;
 wxIcon   wxNullIcon;
 wxCursor wxNullCursor;
@@ -143,6 +146,7 @@ const char *wxFileSelectorPromptStr = "Select a file";
 const char *wxFileSelectorDefaultWildcardStr = "*.*";
 const char *wxInternalErrorStr = "wxWindows Internal Error";
 const char *wxFatalErrorStr = "wxWindows Fatal Error";
+const char *wxTreeCtrlNameStr = "treeCtrl";
 
 // See wx/utils.h
 const char *wxFloatToStringStr = "%.2f";
@@ -152,11 +156,7 @@ const char *wxDoubleToStringStr = "%.2f";
 const char *wxUserResourceStr = "TEXT";
 #endif
 
-#if USE_POSTSCRIPT
-wxPrintPaperDatabase* wxThePrintPaperDatabase = NULL;
-#endif
-
-#if USE_SHARED_LIBRARY
+#if wxUSE_SHARED_LIBRARY
 /*
  * For wxWindows to be made into a dynamic library (e.g. Sun),
  * all IMPLEMENT_... macros must be in one place.
@@ -166,6 +166,7 @@ wxPrintPaperDatabase* wxThePrintPaperDatabase = NULL;
 // Hand-coded IMPLEMENT... macro for wxObject (define static data)
 wxClassInfo wxObject::classwxObject("wxObject", NULL, NULL, sizeof(wxObject), NULL);
 wxClassInfo *wxClassInfo::first = NULL;
+wxClassInfo wxClassInfo::classTable(wxKEY_STRING);
 
 #include "wx/button.h"
 #include "wx/bmpbuttn.h"
@@ -179,13 +180,13 @@ IMPLEMENT_DYNAMIC_CLASS(wxBitmapCheckBox, wxCheckBox)
 #include "wx/choice.h"
 IMPLEMENT_DYNAMIC_CLASS(wxChoice, wxControl)
 
-#if USE_CLIPBOARD
+#if wxUSE_CLIPBOARD
 #include "wx/clipbrd.h"
 IMPLEMENT_DYNAMIC_CLASS(wxClipboard, wxObject)
 IMPLEMENT_ABSTRACT_CLASS(wxClipboardClient, wxObject)
 #endif
 
-#if USE_COMBOBOX
+#if wxUSE_COMBOBOX
 #include "wx/combobox.h"
 IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl)
 #endif
@@ -195,11 +196,11 @@ IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl)
 #include "wx/dcclient.h"
 #include "wx/dcscreen.h"
 IMPLEMENT_ABSTRACT_CLASS(wxDC, wxObject)
-IMPLEMENT_DYNAMIC_CLASS(wxClientDC, wxDC)
 IMPLEMENT_DYNAMIC_CLASS(wxWindowDC, wxDC)
-IMPLEMENT_DYNAMIC_CLASS(wxPaintDC, wxDC)
-IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC, wxDC)
+IMPLEMENT_DYNAMIC_CLASS(wxPaintDC, wxWindowDC)
+IMPLEMENT_DYNAMIC_CLASS(wxClientDC, wxWindowDC)
 IMPLEMENT_DYNAMIC_CLASS(wxScreenDC, wxWindowDC)
+IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC, wxDC)
 
 #if defined(__WXMSW__)
 #include "wx/dcprint.h"
@@ -225,7 +226,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxPrintData, wxObject)
 #include "wx/colordlg.h"
 #include "wx/fontdlg.h"
 
-#if !defined(__WXMSW__) || USE_GENERIC_DIALOGS_IN_MSW
+#if !defined(__WXMSW__) || wxUSE_GENERIC_DIALOGS_IN_MSW
 #include "wx/generic/colordlg.h"
 #include "wx/generic/fontdlg.h"
 IMPLEMENT_DYNAMIC_CLASS(wxGenericColourDialog, wxDialog)
@@ -266,7 +267,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxHashTable, wxObject)
 #include "wx/helpbase.h"
 IMPLEMENT_CLASS(wxHelpControllerBase, wxObject)
 
-#if USE_HELP
+#if wxUSE_HELP
 
 #ifdef __WXMSW__
 #include "wx/msw/helpwin.h"
@@ -293,7 +294,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxNode, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxList, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxStringList, wxList)
 
-#if USE_PRINTING_ARCHITECTURE
+#if wxUSE_PRINTING_ARCHITECTURE
 #include "wx/print.h"
 IMPLEMENT_DYNAMIC_CLASS(wxPrintDialog, wxDialog)
 IMPLEMENT_DYNAMIC_CLASS(wxPrinterBase, wxObject)
@@ -310,16 +311,17 @@ IMPLEMENT_CLASS(wxGenericPrintDialog, wxDialog)
 IMPLEMENT_CLASS(wxGenericPrintSetupDialog, wxDialog)
 #endif
 
-#if USE_POSTSCRIPT
-#include "wx/postscrp.h"
+#if wxUSE_POSTSCRIPT
+#include "wx/dcps.h"
 IMPLEMENT_DYNAMIC_CLASS(wxPostScriptDC, wxDC)
 IMPLEMENT_DYNAMIC_CLASS(wxPrintSetupData, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxPageSetupData, wxObject)
+#endif
+
 IMPLEMENT_DYNAMIC_CLASS(wxPrintPaperType, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxPrintPaperDatabase, wxList)
-#endif
 
-#if USE_WX_RESOURCES
+#if wxUSE_WX_RESOURCES
 #include "wx/resource.h"
 IMPLEMENT_DYNAMIC_CLASS(wxItemResource, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxResourceTable, wxHashTable)
@@ -329,6 +331,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxResourceTable, wxHashTable)
 IMPLEMENT_DYNAMIC_CLASS(wxEvtHandler, wxObject)
 IMPLEMENT_ABSTRACT_CLASS(wxEvent, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxCommandEvent, wxEvent)
+IMPLEMENT_DYNAMIC_CLASS(wxNotifyEvent, wxCommandEvent)
 IMPLEMENT_DYNAMIC_CLASS(wxScrollEvent, wxCommandEvent)
 IMPLEMENT_DYNAMIC_CLASS(wxMouseEvent, wxEvent)
 IMPLEMENT_DYNAMIC_CLASS(wxKeyEvent, wxEvent)
@@ -359,34 +362,12 @@ IMPLEMENT_DYNAMIC_CLASS(wxPathList, wxList)
 #include "wx/process.h"
 IMPLEMENT_DYNAMIC_CLASS(wxProcess, wxEvtHandler)
 
-#include "wx/stream.h"
-#include "wx/fstream.h"
-#include "wx/mstream.h"
-#include "wx/datstrm.h"
-IMPLEMENT_ABSTRACT_CLASS(wxInputStream, wxObject)
-IMPLEMENT_ABSTRACT_CLASS(wxOutputStream, wxObject)
-IMPLEMENT_ABSTRACT_CLASS2(wxStream, wxInputStream, wxOutputStream)
-IMPLEMENT_CLASS(wxFilterInputStream, wxInputStream)
-IMPLEMENT_CLASS(wxFilterOutputStream, wxOutputStream)
-
-IMPLEMENT_CLASS(wxFileStreamBase, wxStream)
-IMPLEMENT_CLASS(wxFileInputStream, wxFileStreamBase)
-IMPLEMENT_CLASS(wxFileOutputStream, wxFileStreamBase)
-
-IMPLEMENT_CLASS(wxMemoryStreamBase, wxStream)
-IMPLEMENT_CLASS(wxMemoryInputStream, wxMemoryStreamBase)
-IMPLEMENT_DYNAMIC_CLASS(wxMemoryOutputStream, wxMemoryStreamBase)
-IMPLEMENT_DYNAMIC_CLASS(wxMemoryStream, wxMemoryStreamBase)
-
-IMPLEMENT_CLASS(wxDataInputStream, wxFilterInputStream)
-IMPLEMENT_CLASS(wxDataOutputStream, wxFilterInputStream)
-
-#if USE_TIMEDATE
+#if wxUSE_TIMEDATE
 #include "wx/date.h"
 IMPLEMENT_DYNAMIC_CLASS(wxDate, wxObject)
 #endif
 
-#if USE_DOC_VIEW_ARCHITECTURE
+#if wxUSE_DOC_VIEW_ARCHITECTURE
 #include "wx/docview.h"
 //IMPLEMENT_ABSTRACT_CLASS(wxDocItem, wxObject)
 IMPLEMENT_ABSTRACT_CLASS(wxDocument, wxEvtHandler)
@@ -395,7 +376,7 @@ IMPLEMENT_ABSTRACT_CLASS(wxDocTemplate, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxDocManager, wxEvtHandler)
 IMPLEMENT_CLASS(wxDocChildFrame, wxFrame)
 IMPLEMENT_CLASS(wxDocParentFrame, wxFrame)
-#if USE_PRINTING_ARCHITECTURE
+#if wxUSE_PRINTING_ARCHITECTURE
 IMPLEMENT_DYNAMIC_CLASS(wxDocPrintout, wxPrintout)
 #endif
 IMPLEMENT_CLASS(wxCommand, wxObject)
@@ -403,7 +384,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxCommandProcessor, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxFileHistory, wxObject)
 #endif
 
-#if USE_CONSTRAINTS
+#if wxUSE_CONSTRAINTS
 #include "wx/layout.h"
 IMPLEMENT_DYNAMIC_CLASS(wxIndividualLayoutConstraint, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxLayoutConstraints, wxObject)
@@ -411,7 +392,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxSizer, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxRowColSizer, wxSizer)
 #endif
 
-#if USE_TOOLBAR
+#if wxUSE_TOOLBAR
 #include "wx/tbarbase.h"
 IMPLEMENT_DYNAMIC_CLASS(wxToolBarTool, wxObject)
 IMPLEMENT_DYNAMIC_CLASS(wxToolBarBase, wxControl)
@@ -429,6 +410,54 @@ IMPLEMENT_DYNAMIC_CLASS(wxToolBar95, wxToolBarBase)
 
 #endif
 
+#if wxUSE_SOCKETS
+
+#include "wx/sckaddr.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxIPV4address, wxSockAddress)
+#ifdef ENABLE_IPV6
+IMPLEMENT_DYNAMIC_CLASS(wxIPV6address, wxSockAddress)
+#endif
+#ifndef __UNIX__
+IMPLEMENT_DYNAMIC_CLASS(wxUNIXaddress, wxSockAddress)
+#endif
+
+#include "wx/socket.h"
+
+IMPLEMENT_CLASS(wxSocketBase, wxEvtHandler)
+IMPLEMENT_CLASS(wxSocketClient, wxSocketBase)
+IMPLEMENT_CLASS(wxSocketServer, wxSocketBase)
+IMPLEMENT_CLASS(wxSocketHandler, wxObject)
+IMPLEMENT_DYNAMIC_CLASS(wxSocketEvent, wxEvent)
+
+#include "wx/url.h"
+
+IMPLEMENT_CLASS(wxProtoInfo, wxObject)
+IMPLEMENT_CLASS(wxURL, wxObject)
+
+#include "wx/protocol/http.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxHTTP, wxProtocol)
+IMPLEMENT_PROTOCOL(wxHTTP, "http", "80", TRUE)
+
+#include "wx/protocol/ftp.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxFTP, wxProtocol)
+IMPLEMENT_PROTOCOL(wxFTP, "ftp", "21", TRUE)
+
+#include "wx/protocol/sckfile.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol)
+IMPLEMENT_PROTOCOL(wxFileProto, "file", NULL, FALSE)
+
+#include "wx/sckipc.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxTCPServer, wxServerBase)
+IMPLEMENT_DYNAMIC_CLASS(wxTCPClient, wxClientBase)
+IMPLEMENT_DYNAMIC_CLASS(wxTCPConnection, wxConnectionBase)
+
+#endif
+
 #include "wx/statusbr.h"
 
 IMPLEMENT_DYNAMIC_CLASS(wxStatusBar, wxWindow)
@@ -438,7 +467,7 @@ BEGIN_EVENT_TABLE(wxStatusBar, wxWindow)
     EVT_SYS_COLOUR_CHANGED(wxStatusBar::OnSysColourChanged)
 END_EVENT_TABLE()
 
-#if USE_TIMEDATE
+#if wxUSE_TIMEDATE
 #include "wx/time.h"
 IMPLEMENT_DYNAMIC_CLASS(wxTime, wxObject)
 #endif
@@ -476,7 +505,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxICOResourceHandler, wxBitmapHandler)
 #include "wx/statbox.h"
 IMPLEMENT_DYNAMIC_CLASS(wxStaticBox, wxControl)
 
-#if USE_IPC
+#if wxUSE_IPC
 #include "wx/dde.h"
 IMPLEMENT_CLASS(wxServerBase, wxObject)
 IMPLEMENT_CLASS(wxClientBase, wxObject)
@@ -507,7 +536,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxMenuBar, wxEvtHandler)
 IMPLEMENT_DYNAMIC_CLASS(wxStaticText, wxControl)
 IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl)
 
-#if USE_METAFILE
+#if wxUSE_METAFILE
 #include "wx/metafile.h"
 IMPLEMENT_DYNAMIC_CLASS(wxMetaFile, wxObject)
 IMPLEMENT_ABSTRACT_CLASS(wxMetaFileDC, wxDC)
@@ -559,7 +588,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxPanel, wxWindow)
 #include "wx/dirdlg.h"
 #include "wx/choicdlg.h"
 
-#if !defined(__WXMSW__) || USE_GENERIC_DIALOGS_IN_MSW
+#if !defined(__WXMSW__) || wxUSE_GENERIC_DIALOGS_IN_MSW
 #include "wx/generic/msgdlgg.h"
 IMPLEMENT_CLASS(wxGenericMessageDialog, wxDialog)
 #endif
@@ -573,7 +602,7 @@ IMPLEMENT_CLASS(wxDirDialog, wxDialog)
 IMPLEMENT_CLASS(wxMessageDialog)
 #endif
 
-#if USE_GAUGE
+#if wxUSE_GAUGE
 #ifdef __WXMOTIF__
 #include "../../contrib/xmgauge/gauge.h"
 #endif
@@ -691,7 +720,7 @@ BEGIN_EVENT_TABLE(wxControl, wxWindow)
   EVT_ERASE_BACKGROUND(wxControl::OnEraseBackground)
 END_EVENT_TABLE()
 
-#if !defined(__WXMSW__) || USE_GENERIC_DIALOGS_IN_MSW
+#if !defined(__WXMSW__) || wxUSE_GENERIC_DIALOGS_IN_MSW
 BEGIN_EVENT_TABLE(wxGenericMessageDialog, wxDialog)
        EVT_BUTTON(wxID_YES, wxGenericMessageDialog::OnYes)
        EVT_BUTTON(wxID_NO, wxGenericMessageDialog::OnNo)