Massive cleanup of the code.

More Unicode support added (though untested).
Added TONS of comments
Changed code to demonstrate the new wxDbConnectInf class
ODBC environment handle now managed via the wxDbConnectInf class
Fixed bug where editing a displayed record would not save if the user name was changed.
Other minor bug fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
George Tasker
2001-02-03 17:52:58 +00:00
parent 5cf34cf07e
commit 049977d042
4 changed files with 385 additions and 241 deletions

View File

@@ -25,9 +25,6 @@
const int LOOKUP_COL_LEN = 250;
// Global database connection
extern wxDb *READONLY_DB;
// Clookup class
class Clookup : public wxDbTable
{
@@ -35,10 +32,11 @@ class Clookup : public wxDbTable
wxChar lookupCol[LOOKUP_COL_LEN+1];
Clookup(wxChar *tblName, wxChar *colName);
Clookup(wxChar *tblName, wxChar *colName, wxDb *pDb, const wxString &defDir="");
}; // Clookup
// Clookup2 class
class Clookup2 : public wxDbTable
{
@@ -47,10 +45,12 @@ class Clookup2 : public wxDbTable
wxChar lookupCol1[LOOKUP_COL_LEN+1];
wxChar lookupCol2[LOOKUP_COL_LEN+1];
Clookup2(wxChar *tblName, wxChar *colName1, wxChar *colName2, wxDb *pDb);
Clookup2(wxChar *tblName, wxChar *colName1, wxChar *colName2, wxDb *pDb, const wxString &defDir="");
}; // Clookup2
// ClookUpDlg class
class ClookUpDlg : public wxDialog
{
private:
@@ -73,14 +73,16 @@ class ClookUpDlg : public wxDialog
wxChar *tableName,
wxChar *colName,
wxChar *where,
wxChar *orderBy);
wxChar *orderBy,
wxDb *pDb,
const wxString &defDir);
//
// This is a generic lookup constructor that will work with any table and any column.
// It extends the capabilites of the lookup dialog in the following ways:
//
// 1) 2 columns rather than one
// 2) The ability to select DISTINCT column values
// 2) The ability to select DISTINCT column values
//
// Only set distinctValues equal to true if necessary. In many cases, the constraints
// of the index(es) will enforce this uniqueness. Selecting DISTINCT does require
@@ -95,8 +97,8 @@ class ClookUpDlg : public wxDialog
// since it cannot be derived when you query using your own sql statement.
//
// The optional database connection can be used if you'd like the lookup class
// to use a database pointer other than the global READONLY_DB. This is necessary if
// records are being saved, but not committed to the db, yet should be included
// to use a database pointer other than the READONLY_DB of the app. This is necessary
// if records are being saved, but not committed to the db, yet should be included
// in the lookup window.
//
ClookUpDlg(wxWindow *parent,
@@ -106,10 +108,11 @@ class ClookUpDlg : public wxDialog
wxChar *dispCol2, // Optional
wxChar *where,
wxChar *orderBy,
wxDb *pDb, // Database connection pointer
const wxString &defDir,
bool distinctValues, // e.g. SELECT DISTINCT ...
wxChar *selectStmt = 0, // If you wish to query by SQLstmt (complicated lookups)
int maxLenCol1 = 0, // Mandatory if querying by SQLstmt
wxDb *pDb = READONLY_DB, // Database connection pointer
bool allowOk = TRUE); // is the OK button enabled
void OnButton( wxCommandEvent &event );
@@ -118,7 +121,7 @@ class ClookUpDlg : public wxDialog
void OnActivate(bool) {}; // necessary for hot keys
DECLARE_EVENT_TABLE()
};
}; // class ClookUpDlg
#define LOOKUP_DIALOG 500