00001 /***************************************************************************** 00002 * \file <mgui/dlglogindb.h> 00003 * \brief MGUI::DLG_LOGIN_DB definitions. 00004 * 00005 * \if NODOC 00006 * $Id: dlglogindb.h_v 1.7 2011/11/21 21:26:16 mju Exp $ 00007 * 00008 * $Log: dlglogindb.h_v $ 00009 * Revision 1.7 2011/11/21 21:26:16 mju 00010 * Remove redundant hdr. 00011 * 00012 * Revision 1.6 2011/06/21 19:44:02 mju 00013 * Rename. 00014 * 00015 * Revision 1.5 2007/08/03 22:05:24 dwilliss 00016 * added support for databases that can't retrieve database list but require 00017 * you to specify it anyway (Oracle) 00018 * 00019 * Revision 1.3 2006/04/14 19:09:37 dwilliss 00020 * Added support for schema prompting 00021 * 00022 * Revision 1.1 2006/03/28 17:46:07 dwilliss 00023 * Initial revision 00024 * \endif 00025 ****************************************************************************/ 00026 00027 #ifndef INC_MGUI_DLGLOGINDB_H 00028 #define INC_MGUI_DLGLOGINDB_H 00029 00030 #ifndef INC_MGUI_DLGSHELL_H 00031 #include <mgui/dlgshell.h> 00032 #endif 00033 00034 #ifndef INC_MGUI_EDIT_H 00035 #include <mgui/edit.h> 00036 #endif 00037 00038 #ifndef INC_MGUI_COMBOBOX_H 00039 #include <mgui/combobox.h> 00040 #endif 00041 00042 #ifndef INC_MI32_MISTRINGLIST_H 00043 #include <mi32/mistringlist.h> 00044 #endif 00045 00046 namespace MGUI { 00047 00048 //===================================================================================================================== 00049 00051 class DLG_LOGIN_DB : public MGUI::DLGSHELL { 00052 public: 00053 00054 DLG_LOGIN_DB (); 00055 00056 virtual ~DLG_LOGIN_DB (); 00057 00058 void GetConnectionString ( 00059 MISTRING& mistr 00060 ); 00061 00062 protected: 00063 00064 void GetConnectionStringLow ( 00065 MISTRING& mistr, 00066 bool bForGettingDatabaseList 00067 ); 00068 00069 bool GetUseWindowsLogin ( 00070 ) const { return (m_CtrlWindowsLogin.GetValue()); } 00071 00072 private: 00073 #ifndef GENERATING_DOXYGEN_OUTPUT 00074 typedef DLG_LOGIN_DB THISCLASS; 00075 00076 FORM_EDIT_STRING m_CtrlHost; 00077 FORM_EDIT_NUMBER m_CtrlPort; 00078 FORM_EDIT_STRING m_CtrlUser; 00079 FORM_EDIT_STRING m_CtrlPassword; 00080 FORM_EDIT_STRING m_CtrlService; 00081 FORM_COMBOBOX m_CtrlDatabaseList; 00082 FORM_COMBOBOX m_CtrlSchemaList; 00083 CTRL_PUSHBUTTON m_CtrlGetDBList; 00084 CTRL_PUSHBUTTON m_CtrlGetSchemaList; 00085 CTRL_TOGGLEBUTTON m_CtrlWindowsLogin; 00086 MISTRINGLIST m_DatabaseList; 00087 MISTRINGLIST m_SchemaList; 00088 00089 void OnGetDBList(); 00090 void OnGetSchemaList(); 00091 void OnToggleWindowsLogin(); 00092 00093 virtual ERRVALUE v_CreateContent(); 00094 virtual void v_OnOK(); 00095 00096 #endif 00097 00098 // Overridables. 00099 00102 virtual bool v_CanUseWindowsLogin () const; 00103 00107 virtual void v_GetConnectionString ( 00108 MISTRING& ConnectionString, 00109 bool bForGettingDatabaseList, 00110 const MISTRING& Host, 00111 const MISTRING& User, 00112 const MISTRING& Password, 00113 const MISTRING& Database, 00114 const MISTRING& Schema, 00115 INT32 port 00116 ) = 0; 00117 00120 virtual ERRVALUE v_GetDatabaseList ( 00121 MISTRINGLIST& List 00122 ); 00123 00127 virtual const char* v_GetDefaultDatabaseName () const; 00128 00131 virtual INT32 v_GetDefaultPort () const; 00132 00135 virtual const char* v_GetDefaultSchemaName () const; 00136 00139 virtual const char* v_GetINIGroup () const = 0; 00140 00142 virtual ERRVALUE v_GetSchemaList ( 00143 MISTRINGLIST& List 00144 ); 00145 00146 virtual bool v_NeedServiceName () const; 00147 00149 virtual void v_SaveDefaults (); 00150 00153 virtual bool v_ShowSchemaSelection () const; 00154 00155 }; 00156 00157 //===================================================================================================================== 00158 00159 } // End namespace MGUI 00160 00161 #endif // INC_MGUI_DLGLOGINDB_H
1.6.1