-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathUpdateDialog.cpp
executable file
·75 lines (57 loc) · 1.83 KB
/
UpdateDialog.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
// UpdateDialog.cpp : implementation file
//
#include "stdafx.h"
#include "MinakortControls.h"
#include ".\updatedialog.h"
#include ".\defines.h"
#include ".\Utility.h"
// UpdateDialog dialog
IMPLEMENT_DYNAMIC(UpdateDialog, CDialog)
UpdateDialog::UpdateDialog(CWnd* pParent /*=NULL*/)
: CDialog(UpdateDialog::IDD, pParent)
{
this->jobBytes = 0;
this->finishedBytes = 0;
}
UpdateDialog::~UpdateDialog()
{
}
void UpdateDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(UpdateDialog, CDialog)
END_MESSAGE_MAP()
BOOL UpdateDialog::OnInitDialog()
{
CDialog::OnInitDialog();
GetDlgItem(IDC_UPDATEPROGRESSTEXT)->SetWindowText(R2T(IDS_UPDATE_STARTING));
//static_cast<CProgressBar*>(GetDlgItem(IDC_UPDATEPROGRESS))->SetCurrentValue(0);
GetDlgItem(IDC_UPDATEPROGRESS)->SendMessage((UINT)PBM_SETPOS);
GetDlgItem(IDC_UPDATEPROGRESS)->SendMessage((UINT)PBM_SETPOS, 0);
GetDlgItem(IDC_UPDATEPROGRESS)->SendMessage((UINT)PBM_SETRANGE, 0, MAKELPARAM(0, 100));
if(!Utility::IsUserAdmin())
{
MessageBox(R2T(IDS_INSTALLNOADMIN), R2T(IDS_INSTALLNOADMINCAPTION), MB_OK|MB_ICONINFORMATION);
}
return TRUE; // return TRUE unless you set the focus to a control
}
void UpdateDialog::SetJobBytes(UINT bytes)
{
this->jobBytes = bytes;
UINT jobKBytes = bytes/1024;
GetDlgItem(IDC_UPDATEPROGRESS)->SendMessage((UINT)PBM_SETRANGE, 0, MAKELPARAM(0, jobKBytes));
UpdateTexts();
}
void UpdateDialog::SetFinishedBytes(UINT bytes)
{
this->finishedBytes = bytes;
GetDlgItem(IDC_UPDATEPROGRESS)->SendMessage((UINT)PBM_SETPOS, bytes/1024);
UpdateTexts();
}
void UpdateDialog::UpdateTexts()
{
CString text;
text.Format(_T("%ukB / %ukB"), this->finishedBytes/1024, this->jobBytes/1024);
GetDlgItem(IDC_UPDATEPROGRESSTEXT)->SetWindowText(text);
}