/[H6]/h6-udlånssystemDlg.cpp
ViewVC logotype

Annotation of /h6-udlånssystemDlg.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 41 - (hide annotations) (download)
Tue Sep 5 12:50:38 2006 UTC (17 years, 7 months ago) by torben
File size: 4277 byte(s)
Made the system work on multiple database-systems (so far MS SQL and MySQL is supported)
1 torben 31 /*
2     * Developed by Torben H. Nielsen
3     */
4 torben 1
5 torben 31
6 torben 1 #include "stdafx.h"
7     #include "h6-udlånssystem.h"
8     #include "h6-udlånssystemDlg.h"
9 torben 3 #include ".\h6-udlånssystemdlg.h"
10 torben 1
11 torben 9 #include "commonstorage.h"
12     #include "databaselayer.h"
13 torben 41 #include "microsoftdblayer.h"
14     #include "mysqllayer.h"
15 torben 9
16 torben 1 #ifdef _DEBUG
17     #define new DEBUG_NEW
18     #endif
19    
20    
21     // CAboutDlg dialog used for App About
22    
23     class CAboutDlg : public CDialog
24     {
25     public:
26     CAboutDlg();
27    
28     // Dialog Data
29     enum { IDD = IDD_ABOUTBOX };
30    
31     protected:
32     virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
33    
34     // Implementation
35     protected:
36     DECLARE_MESSAGE_MAP()
37     };
38    
39     CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
40     {
41     }
42    
43     void CAboutDlg::DoDataExchange(CDataExchange* pDX)
44     {
45     CDialog::DoDataExchange(pDX);
46     }
47    
48     BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
49     END_MESSAGE_MAP()
50    
51    
52     // Ch6udlnssystemDlg dialog
53    
54    
55    
56     Ch6udlnssystemDlg::Ch6udlnssystemDlg(CWnd* pParent /*=NULL*/)
57     : CDialog(Ch6udlnssystemDlg::IDD, pParent)
58     {
59     m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
60     }
61    
62     void Ch6udlnssystemDlg::DoDataExchange(CDataExchange* pDX)
63     {
64     CDialog::DoDataExchange(pDX);
65 torben 4 DDX_Control(pDX, IDC_TAB, m_tabs);
66 torben 1 }
67    
68     BEGIN_MESSAGE_MAP(Ch6udlnssystemDlg, CDialog)
69     ON_WM_SYSCOMMAND()
70     ON_WM_PAINT()
71     ON_WM_QUERYDRAGICON()
72     //}}AFX_MSG_MAP
73 torben 3 ON_COMMAND(ID_HELP_ABOUT, OnHelpAbout)
74 torben 9 ON_COMMAND(ID_FILE_EXIT, OnFileExit)
75 torben 1 END_MESSAGE_MAP()
76    
77    
78     // Ch6udlnssystemDlg message handlers
79    
80     BOOL Ch6udlnssystemDlg::OnInitDialog()
81     {
82     CDialog::OnInitDialog();
83 torben 30 CWaitCursor wait;
84 torben 1
85     // Add "About..." menu item to system menu.
86    
87     // IDM_ABOUTBOX must be in the system command range.
88     ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
89     ASSERT(IDM_ABOUTBOX < 0xF000);
90    
91     CMenu* pSysMenu = GetSystemMenu(FALSE);
92     if (pSysMenu != NULL)
93     {
94     CString strAboutMenu;
95     strAboutMenu.LoadString(IDS_ABOUTBOX);
96     if (!strAboutMenu.IsEmpty())
97     {
98     pSysMenu->AppendMenu(MF_SEPARATOR);
99     pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
100     }
101     }
102    
103     // Set the icon for this dialog. The framework does this automatically
104     // when the application's main window is not a dialog
105     SetIcon(m_hIcon, TRUE); // Set big icon
106     SetIcon(m_hIcon, FALSE); // Set small icon
107    
108 torben 4 m_tabs.InsertItem(0,"Search");
109     m_tabs.InsertItem(1,"Result");
110     m_tabs.InsertItem(2,"Administration");
111     m_tabs.Init();
112     m_tabs.SetCurSel(0);
113    
114 torben 9
115 torben 23 try {
116 torben 41 //DatabaseLayer *dbl = new DatabaseLayer;
117     DatabaseLayer *dbl = new MySQLLayer;
118 torben 23 CommonStorage::Instance()->setDBLayer(dbl);
119     } catch (...) {
120     MessageBox(CString("Could not establish connection to the database server\r\n") +
121     "Please contact your network administrator\r\n" +
122     "(This application shuts down automatically)");
123     OnOK();
124     }
125 torben 9
126    
127 torben 1 // TODO: Add extra initialization here
128    
129     return TRUE; // return TRUE unless you set the focus to a control
130     }
131    
132     void Ch6udlnssystemDlg::OnSysCommand(UINT nID, LPARAM lParam)
133     {
134     if ((nID & 0xFFF0) == IDM_ABOUTBOX)
135     {
136     CAboutDlg dlgAbout;
137     dlgAbout.DoModal();
138     }
139     else
140     {
141     CDialog::OnSysCommand(nID, lParam);
142     }
143     }
144    
145     // If you add a minimize button to your dialog, you will need the code below
146     // to draw the icon. For MFC applications using the document/view model,
147     // this is automatically done for you by the framework.
148    
149     void Ch6udlnssystemDlg::OnPaint()
150     {
151     if (IsIconic())
152     {
153     CPaintDC dc(this); // device context for painting
154    
155     SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
156    
157     // Center icon in client rectangle
158     int cxIcon = GetSystemMetrics(SM_CXICON);
159     int cyIcon = GetSystemMetrics(SM_CYICON);
160     CRect rect;
161     GetClientRect(&rect);
162     int x = (rect.Width() - cxIcon + 1) / 2;
163     int y = (rect.Height() - cyIcon + 1) / 2;
164    
165     // Draw the icon
166     dc.DrawIcon(x, y, m_hIcon);
167     }
168     else
169     {
170     CDialog::OnPaint();
171     }
172     }
173    
174     // The system calls this function to obtain the cursor to display while the user drags
175     // the minimized window.
176     HCURSOR Ch6udlnssystemDlg::OnQueryDragIcon()
177     {
178     return static_cast<HCURSOR>(m_hIcon);
179     }
180 torben 3
181     void Ch6udlnssystemDlg::OnHelpAbout()
182     {
183 torben 34 CAboutDlg about;
184     about.DoModal();
185 torben 3 }
186 torben 9
187     void Ch6udlnssystemDlg::OnFileExit()
188     {
189     // TODO: Add your command handler code here
190     OnOK();
191     }

  ViewVC Help
Powered by ViewVC 1.1.20