public static CustomUI InjectPostLicenseClrDialog(string showAction, string clrDialogGoNextCondition = null) { var customUI = new CommomDialogsUI(); var prevDialog = NativeDialogs.LicenseAgreementDlg; var nextDialog = NativeDialogs.InstallDirDlg; //disconnect prev and next dialogs customUI.UISequence.RemoveAll(x => (x.Dialog == prevDialog && x.Control == Buttons.Next) || (x.Dialog == nextDialog && x.Control == Buttons.Back)); //create new dialogs connection with showAction in between customUI.On(prevDialog, Buttons.Next, new ExecuteCustomAction(showAction)); customUI.On(prevDialog, Buttons.Next, new ShowDialog(nextDialog, Condition.ClrDialog_NextPressed + " AND " + (clrDialogGoNextCondition ?? "\"1\""))); customUI.On(prevDialog, Buttons.Next, new CloseDialog("Exit", Condition.ClrDialog_CancelPressed) { Order = 2 }); customUI.On(nextDialog, Buttons.Back, new ExecuteCustomAction(showAction)); customUI.On(nextDialog, Buttons.Back, new ShowDialog(prevDialog, Condition.ClrDialog_BackPressed)); return(customUI); }
public static CustomUI InjectPostLicenseClrDialog(string showAction, string clrDialogGoNextCondition = null) { var customUI = new CommomDialogsUI(); var prevDialog = NativeDialogs.LicenseAgreementDlg; var nextDialog = NativeDialogs.InstallDirDlg; //disconnect prev and next dialogs customUI.UISequence.RemoveAll(x => (x.Dialog == prevDialog && x.Control == Buttons.Next) || (x.Dialog == nextDialog && x.Control == Buttons.Back)); //create new dialogs connection with showAction in between customUI.On(prevDialog, Buttons.Next, new ExecuteCustomAction(showAction)); customUI.On(prevDialog, Buttons.Next, new ShowDialog(nextDialog, Condition.ClrDialog_NextPressed + " AND " + (clrDialogGoNextCondition ?? "\"1\""))); customUI.On(prevDialog, Buttons.Next, new CloseDialog("Exit", Condition.ClrDialog_CancelPressed) { Order = 2 }); customUI.On(nextDialog, Buttons.Back, new ExecuteCustomAction(showAction)); customUI.On(nextDialog, Buttons.Back, new ShowDialog(prevDialog, Condition.ClrDialog_BackPressed)); return customUI; }