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

Contents of /h6-udlånssystemDlg.cpp

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.20