Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: installer/src/installer-lib/interaction.h

Issue 5219280069066752: Issue #1186 - Change names that appear in the custom action (Closed)
Patch Set: Created Oct. 20, 2014, 1:42 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 /** 1 /**
2 * \file interaction.h User interaction classes. Message boxes and translations. 2 * \file interaction.h User interaction classes. Message boxes and translations.
3 */ 3 */
4 4
5 #ifndef INTERACTION_H 5 #ifndef INTERACTION_H
6 #define INTERACTION_H 6 #define INTERACTION_H
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "session.h" 10 #include "session.h"
11 11
12 #include <Windows.h> 12 #include <Windows.h>
13 #include <Msi.h> 13 #include <Msi.h>
14 #include <MsiQuery.h> 14 #include <MsiQuery.h>
15 15
16 /** 16 /**
17 * A modal dialog box as displayable from within a custom action. 17 * A modal dialog box as displayable from within a custom action.
18 * 18 *
19 * The only fully user interface element that the Windows Installer supports for use within custom actions is a small set of modal dialog boxes. 19 * The only fully user interface element that the Windows Installer supports for use within custom actions is a small set of modal dialog boxes.
20 * The Windows Installer provides the call MsiProcessMessage, overloaded by a set of message type constants. 20 * The Windows Installer provides the call MsiProcessMessage, overloaded by a se t of message type constants.
21 * This class represents those messages with user-provided messages; these ultima tely call MessageBox. 21 * This class represents those messages with user-provided messages; these ultim ately call MessageBox.
22 * 22 *
23 * \sa 23 * \sa
24 * * MSDN [MsiProcessMessage function](http://msdn.microsoft.com/en-us/library /windows/desktop/aa370354%28v=vs.85%29.aspx) 24 * * MSDN [MsiProcessMessage function](http://msdn.microsoft.com/en-us/librar y/windows/desktop/aa370354%28v=vs.85%29.aspx)
25 * * MSDN [Sending Messages to Windows Installer Using MsiProcessMessage](http ://msdn.microsoft.com/en-us/library/windows/desktop/aa371614%28v=vs.85%29.aspx) 25 * * MSDN [Sending Messages to Windows Installer Using MsiProcessMessage](htt p://msdn.microsoft.com/en-us/library/windows/desktop/aa371614%28v=vs.85%29.aspx)
26 */ 26 */
27 class Installer_Message_Box 27 class InstallerMessageBox
28 : public Message 28 : public Message
29 { 29 {
30 public: 30 public:
31 typedef enum 31 enum class Box : long
32 { 32 {
33 default_box = 0, 33 defaultBox = 0,
34 error_box = INSTALLMESSAGE::INSTALLMESSAGE_ERROR, 34 error = INSTALLMESSAGE::INSTALLMESSAGE_ERROR,
35 warning_box = INSTALLMESSAGE::INSTALLMESSAGE_WARNING, 35 warning = INSTALLMESSAGE::INSTALLMESSAGE_WARNING,
36 user_box = INSTALLMESSAGE::INSTALLMESSAGE_USER 36 user = INSTALLMESSAGE::INSTALLMESSAGE_USER
37 } 37 } ;
38 box_type ;
39 38
40 typedef enum 39 enum class ButtonSet : long
41 { 40 {
42 default_buttonset = 0, 41 defaultButtonSet = 0,
43 ok = MB_OK, 42 ok = MB_OK,
44 ok_cancel = MB_OKCANCEL, 43 okCancel = MB_OKCANCEL,
45 abort_retry_ignore = MB_ABORTRETRYIGNORE, 44 abortRetryIgnore = MB_ABORTRETRYIGNORE,
46 yes_no_cancel = MB_YESNOCANCEL, 45 yesNoCancel = MB_YESNOCANCEL,
47 yes_no = MB_YESNO, 46 yesNo = MB_YESNO,
48 retry_cancel = MB_RETRYCANCEL 47 retryCancel = MB_RETRYCANCEL
49 } 48 } ;
50 buttonset_type ;
51 49
52 typedef enum 50 enum class DefaultButton : long
53 { 51 {
54 default_default_button = 0,» ///< use the default button 52 defaultButton = 0, ///< use the default button
55 default_button_one = MB_DEFBUTTON1, 53 one = MB_DEFBUTTON1,
56 default_button_two = MB_DEFBUTTON2, 54 two = MB_DEFBUTTON2,
57 default_button_three = MB_DEFBUTTON3 55 three = MB_DEFBUTTON3
58 } 56 } ;
59 default_button_type ;
60 57
61 typedef enum 58 enum class Icon : long
62 { 59 {
63 default_icon = 0,» » » ///< use the default icon associated with the box_type 60 defaultIcon = 0, ///< use the default icon associated with the box_type
64 warning_icon = MB_ICONWARNING,» ///< exclamation point 61 warningIcon = MB_ICONWARNING, ///< exclamation point
65 information_icon = MB_ICONINFORMATION, ///< lowercase letter "i" in a circl e 62 informationIcon = MB_ICONINFORMATION, ///< lowercase letter "i" in a circl e
66 error_icon = MB_ICONERROR» » ///< stop sign 63 errorIcon = MB_ICONERROR ///< stop sign
67 } 64 } ;
68 icon_type ;
69 65
70 /** 66 /**
71 * Ordinary constructor, wide string 67 * Ordinary constructor, wide string
72 */ 68 */
73 Installer_Message_Box( 69 InstallerMessageBox(
74 std::wstring message, 70 std::wstring message,
75 box_type box = box_type::user_box, 71 Box box = Box::user,
76 buttonset_type buttonset = buttonset_type::default_buttonset, 72 ButtonSet buttonset = ButtonSet::defaultButtonSet,
77 default_button_type default_button = default_button_type::default_default_bu tton, 73 DefaultButton defaultButton = DefaultButton::defaultButton,
78 icon_type icon = icon_type::default_icon 74 Icon icon = Icon::defaultIcon
79 ) ; 75 ) ;
80 76
81 /** 77 /**
82 * Ordinary constructor, regular string 78 * Ordinary constructor, regular string
83 */ 79 */
84 Installer_Message_Box( 80 InstallerMessageBox(
85 std::string message, 81 std::string message,
86 box_type box = box_type::user_box, 82 Box box = Box::user,
87 buttonset_type buttonset = buttonset_type::default_buttonset, 83 ButtonSet buttonset = ButtonSet::defaultButtonSet,
88 default_button_type default_button = default_button_type::default_default_bu tton, 84 DefaultButton defaultButton = DefaultButton::defaultButton,
89 icon_type icon = icon_type::default_icon 85 Icon icon = Icon::defaultIcon
90 ) ; 86 ) ;
91 } ; 87 } ;
92 88
93 /** 89 /**
94 * Error for any non-handled return value from Session.write_message(). 90 * Error for any non-handled return value from Session.write_message().
95 */ 91 */
96 struct unexpected_return_value_from_message_box 92 struct UnexpectedReturnValueFromMessageBox
97 : std::logic_error 93 : std::logic_error
98 { 94 {
99 unexpected_return_value_from_message_box() 95 UnexpectedReturnValueFromMessageBox()
100 : std::logic_error( "Unexpected return value from message box." ) 96 : std::logic_error( "Unexpected return value from message box." )
101 {} 97 {}
102 } ; 98 } ;
103 99
104 #endif 100 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld