X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5151c7af137a1b6f3c8f656048cf7d13524f040e..a9b4774c0502f29e0f8eb6757a944420d02d5274:/demos/dbbrowse/doc.cpp diff --git a/demos/dbbrowse/doc.cpp b/demos/dbbrowse/doc.cpp index b16d76bd01..d2ef781bd6 100644 --- a/demos/dbbrowse/doc.cpp +++ b/demos/dbbrowse/doc.cpp @@ -9,13 +9,7 @@ // Licence: wxWindows license // RCS-ID: $Id$ //---------------------------------------------------------------------------------------- -//-- all #ifdefs that the whole Project needs. ------------------------------------------- -//---------------------------------------------------------------------------------------- -#ifdef __GNUG__ -#pragma implementation -#pragma interface -#endif -//---------------------------------------------------------------------------------------- + // For compilers that support precompilation, includes "wx/wx.h". #include "wx/wxprec.h" //---------------------------------------------------------------------------------------- @@ -102,7 +96,7 @@ bool MainDoc::OnInitView() // create "workplace" window //--------------------------------------------------------------------------------------- p_TabArea = new wxTabbedWindow(); // Init the Pointer - p_TabArea->Create(p_Splitter, wxID_ANY); + p_TabArea->Create(p_Splitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxFULL_REPAINT_ON_RESIZE); //--------------------------------------------------------------------------------------- p_PgmCtrl = new PgmCtrl(p_TabArea, TREE_CTRL_PGM,wxDefaultPosition, wxDefaultSize, wxTR_HAS_BUTTONS | wxSUNKEN_BORDER); @@ -119,7 +113,7 @@ bool MainDoc::OnInitView() // now create "output" window //--------------------------------------------------------------------------------------- p_PageArea = new wxPagedWindow(); // Init the Pointer - p_PageArea->Create(p_Splitter, wxID_ANY); + p_PageArea->Create(p_Splitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxFULL_REPAINT_ON_RESIZE); //--------------------------------------------------------------------------------------- p_LogWin = new wxTextCtrl(p_PageArea,wxID_ANY,wxEmptyString, wxDefaultPosition, wxDefaultSize,wxTE_MULTILINE ); @@ -144,18 +138,20 @@ bool MainDoc::OnInitView() // return false; OnInitODBC(); //--------------------------------------------------------------------------------------- +#if wxUSE_STATUSBAR Temp0.Printf(_("-I-> MainDoc::OnInitView() - End - %d DSN's found"),i_DSN); p_MainFrame->SetStatusText(Temp0, 0); wxLogMessage(Temp0); +#endif // wxUSE_STATUSBAR return true; } //---------------------------------------------------------------------------------------- bool MainDoc::OnInitODBC() { - wxChar Dsn[SQL_MAX_DSN_LENGTH + 1]; - wxChar DsDesc[255]; // BJO20002501 instead of 512 - Temp0 = _T(""); + wxChar Dsn[SQL_MAX_DSN_LENGTH+1]; + wxChar DsDesc[254+1]; // BJO20002501 instead of 512 + Temp0 = wxEmptyString; i_DSN = 0; // Counter int i; //--------------------------------------------------------------------------------------- @@ -167,45 +163,40 @@ bool MainDoc::OnInitODBC() } //--------------------------------------------------------------------------------------- - const char sep = 3; // separator character used in string between DSN ans DsDesc - wxStringList s_SortDSNList, s_SortDsDescList; + const wxChar sep = 3; // separator character used in string between DSN and DsDesc + wxSortedArrayString s_SortDSNList, s_SortDsDescList; // BJO-20000127 // In order to have same sort result on both Dsn and DsDesc, create a 'keyed' string. // The key will be removed after sorting wxString KeyString; //--------------------------------------------------------------------------------------- - while(wxDbGetDataSource(DbConnectInf.GetHenv(), Dsn, sizeof(Dsn), DsDesc, sizeof(DsDesc))) + while (wxDbGetDataSource(DbConnectInf.GetHenv(), Dsn, SQL_MAX_DSN_LENGTH, DsDesc, 254)) { i_DSN++; // How many Dsn have we ? KeyString.Printf(_T("%s%c%s"),Dsn, sep, DsDesc); s_SortDSNList.Add(Dsn); s_SortDsDescList.Add(KeyString); } - s_SortDSNList.Sort(); //BJO - s_SortDsDescList.Sort(); //BJO - - wxChar ** s_SortDSN = s_SortDSNList.ListToArray(); //BJO - wxChar ** s_SortDsDesc = s_SortDsDescList.ListToArray(); //BJO + //--------------------------------------------------------------------------------------- // Allocate n ODBC-DSN objects to hold the information + // Allocate n wxDatabase objects to hold the column information p_DSN = new DSN[i_DSN]; //BJO + db_Br = new BrowserDB[i_DSN]; for (i=0;iDsn = s_SortDSN[i]; - (p_DSN+i)->Drv = s_SortDsDesc[i]; - (p_DSN+i)->Usr = _T(""); - (p_DSN+i)->Pas = _T(""); + + // ODBC-DSN object + (p_DSN+i)->Dsn = s_SortDSNList[i]; + (p_DSN+i)->Drv = KeyString; + (p_DSN+i)->Usr = wxEmptyString; + (p_DSN+i)->Pas = wxEmptyString; Temp0.Printf(_T("%02d) Dsn(%s) DsDesc(%s)"),i,(p_DSN+i)->Dsn.c_str(),(p_DSN+i)->Drv.c_str()); wxLogMessage(Temp0); - } - //--------------------------------------------------------------------------------------- - // Allocate n wxDatabase objects to hold the column information - db_Br = new BrowserDB[i_DSN]; - for (i=0;ip_LogWindow = p_LogWin; (db_Br+i)->ODBCSource = (p_DSN+i)->Dsn; (db_Br+i)->UserName = (p_DSN+i)->Usr; @@ -216,8 +207,6 @@ bool MainDoc::OnInitODBC() DbConnectInf.FreeHenv(); - delete [] s_SortDSN; - delete [] s_SortDsDesc; //--------------------------------------------------------------------------------------- if (!i_DSN) { @@ -241,7 +230,7 @@ bool MainDoc::OnChosenDSN(int Which) p_TabArea->Show(false); // Deactivate the Window p_TabArea->RemoveTab(p_DBTree->i_ViewNr); p_TabArea->Show(true); // Activate the Window - OnChosenTbl(77,_T("")); + OnChosenTbl(77,wxEmptyString); } //------------------------- p_TabArea->Show(false); // Deactivate the Window @@ -291,7 +280,7 @@ bool MainDoc::OnChosenTbl(int Tab,wxString Table) p_TabArea->Show(false); // Deactivate the Window p_DBGrid = new DBGrid(p_TabArea,GRID_CTRL_DB,wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER); - p_TabArea->AddTab(p_DBGrid, Table, _T("")); + p_TabArea->AddTab(p_DBGrid, Table, wxEmptyString); p_DBGrid->i_ViewNr = p_TabArea->GetTabCount()-1; p_DBGrid->pDoc = this; p_DBGrid->db_Br = db_Br; @@ -304,7 +293,7 @@ bool MainDoc::OnChosenTbl(int Tab,wxString Table) p_PageArea->Show(false); // Deactivate the Window p_DBGrid = new DBGrid(p_PageArea,GRID_CTRL_DB,wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER); - p_PageArea->AddTab(p_DBGrid, Table, _T("")); + p_PageArea->AddTab(p_DBGrid, Table, wxEmptyString); p_DBGrid->i_ViewNr = p_PageArea->GetTabCount()-1; p_DBGrid->pDoc = this; p_DBGrid->db_Br = db_Br;