Module: wine Branch: refs/heads/master Commit: 188365e2f02fb7c1572aa21689d94eba46d60136 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=188365e2f02fb7c1572aa216...
Author: Mike McCormack mike@codeweavers.com Date: Tue Jan 3 12:12:09 2006 +0100
msi: Implement the Reset control event.
---
dlls/msi/dialog.c | 6 ++++++ dlls/msi/events.c | 8 ++++++++ dlls/msi/msipriv.h | 1 + 3 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c index c4f9d2c..ac10dc9 100644 --- a/dlls/msi/dialog.c +++ b/dlls/msi/dialog.c @@ -1512,6 +1512,12 @@ static UINT msi_dialog_evaluate_control_ return r; }
+UINT msi_dialog_reset( msi_dialog *dialog ) +{ + /* FIXME: should restore the original values of any properties we changed */ + return msi_dialog_evaluate_control_conditions( dialog ); +} + /* figure out the height of 10 point MS Sans Serif */ static INT msi_dialog_get_sans_serif_height( HWND hwnd ) { diff --git a/dlls/msi/events.c b/dlls/msi/events.c index 08a85c6..393154a 100644 --- a/dlls/msi/events.c +++ b/dlls/msi/events.c @@ -243,6 +243,13 @@ static UINT ControlEvent_SetTargetPath(M return r; }
+static UINT ControlEvent_Reset(MSIPACKAGE* package, LPCWSTR argument, + msi_dialog* dialog) +{ + msi_dialog_reset(dialog); + return ERROR_SUCCESS; +} + /* * Subscribed events */ @@ -371,6 +378,7 @@ struct _events Events[] = { { "Remove",ControlEvent_Remove }, { "AddSource",ControlEvent_AddSource }, { "SetTargetPath",ControlEvent_SetTargetPath }, + { "Reset",ControlEvent_Reset }, { NULL,NULL }, };
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h index 7649d39..cb64897 100644 --- a/dlls/msi/msipriv.h +++ b/dlls/msi/msipriv.h @@ -414,6 +414,7 @@ extern void msi_dialog_destroy( msi_dial extern BOOL msi_dialog_register_class( void ); extern void msi_dialog_unregister_class( void ); extern void msi_dialog_handle_event( msi_dialog*, LPCWSTR, LPCWSTR, MSIRECORD * ); +extern UINT msi_dialog_reset( msi_dialog *dialog );
/* preview */ extern MSIPREVIEW *MSI_EnableUIPreview( MSIDATABASE * );