Removed WXWIN_COMPATIBILITY_2_2 together with code guarded by it.

Changed default for WXWIN_COMPATIBILITY_2_4 to 0.
  Added WXWIN_COMPATIBILITY_2_6 (defaults to 1).
  Ran build/update-setup-h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Mattia Barbon
2005-10-09 15:48:42 +00:00
parent 92b0cd9eb0
commit dee1a63ff5
59 changed files with 990 additions and 1678 deletions

View File

@@ -286,10 +286,6 @@ public:
static wxString GetPluginsDirectory();
#if WXWIN_COMPATIBILITY_2_2
operator bool() const { return IsLoaded(); }
#endif
protected:
// common part of GetSymbol() and HasSymbol()
void *DoGetSymbol(const wxString& name, bool *success = 0) const;
@@ -312,122 +308,6 @@ protected:
};
// ----------------------------------------------------------------------------
// wxDllLoader: low level DLL functions, use wxDynamicLibrary in your code
// ----------------------------------------------------------------------------
#if WXWIN_COMPATIBILITY_2_2 && wxUSE_DYNAMIC_LOADER
#include "wx/object.h"
/*
wxDllLoader is a class providing an interface similar to unix's dlopen().
It is used by wxDynamicLibrary wxLibrary and manages the actual loading of
DLLs and the resolving of symbols in them. There are no instances of this
class, it simply serves as a namespace for its static member functions.
*/
class WXDLLIMPEXP_BASE wxDllLoader
{
public:
/*
This function loads the shared library libname into memory.
libname may be either the full path to the file or just the filename in
which case the library is searched for in all standard locations
(use GetDllExt() to construct the filename)
if success pointer is not NULL, it will be filled with true if everything
went ok and false otherwise
*/
static wxDllType LoadLibrary(const wxString& name, bool *success = NULL);
/*
This function unloads the shared library previously loaded with
LoadLibrary
*/
static void UnloadLibrary(wxDllType dll);
/*
This function returns a valid handle for the main program
itself or NULL if back linking is not supported by the current platform
(e.g. Win32).
*/
static wxDllType GetProgramHandle() { return wxDynamicLibrary::GetProgramHandle(); }
/*
This function resolves a symbol in a loaded DLL, such as a
variable or function name.
dllHandle Handle of the DLL, as returned by LoadDll().
name Name of the symbol.
Returns the pointer to the symbol or NULL on error.
*/
static void *GetSymbol(wxDllType dllHandle, const wxString &name, bool *success = 0);
// return the standard DLL extension (with leading dot) for this platform
static wxString GetDllExt() { return wxDynamicLibrary::GetDllExt(); }
private:
wxDllLoader(); // forbid construction of objects
};
// ----------------------------------------------------------------------------
// wxLibrary
// ----------------------------------------------------------------------------
#include "wx/hash.h"
class WXDLLIMPEXP_BASE wxLibrary : public wxObject
{
public:
wxLibrary(wxDllType handle);
virtual ~wxLibrary();
// Get a symbol from the dynamic library
void *GetSymbol(const wxString& symbname);
// Create the object whose classname is "name"
wxObject *CreateObject(const wxString& name);
protected:
void PrepareClasses(wxClassInfo *first);
wxDllType m_handle;
public:
wxHashTable classTable;
};
// ----------------------------------------------------------------------------
// wxLibraries
// ----------------------------------------------------------------------------
class WXDLLIMPEXP_BASE wxLibraries
{
public:
wxLibraries();
~wxLibraries();
// caller is responsible for deleting the returned pointer if !NULL
wxLibrary *LoadLibrary(const wxString& basename);
wxObject *CreateObject(const wxString& name);
protected:
wxList m_loaded;
};
// ----------------------------------------------------------------------------
// Global variables
// ----------------------------------------------------------------------------
extern WXDLLIMPEXP_DATA_BASE(wxLibraries) wxTheLibraries;
#endif // WXWIN_COMPATIBILITY_2_2 && wxUSE_DYNAMIC_LOADER
// ----------------------------------------------------------------------------
// Interesting defines
// ----------------------------------------------------------------------------