private void ButtonLangs_OnClick(object sender, RoutedEventArgs e) { if (e.OriginalSource is Button button && button.Tag is string tag) { PopupConfig.IsOpen = false; if (tag.Equals(GlobalData.Config.Lang)) { return; } Growl.Ask(new GrowlInfo { Message = Properties.Langs.Lang.ChangeLangAsk, ShowDateTime = false, CancelStr = Properties.Langs.Lang.Cancel, ConfirmStr = Properties.Langs.Lang.Confirm, ActionBeforeClose = isConfirm => { if (isConfirm) { GlobalData.Config.Lang = tag; GlobalData.Save(); System.Diagnostics.Process.Start(Assembly.GetExecutingAssembly().Location); Environment.Exit(0); } return(true); } }); } }
private void ButtonLangs_OnClick(object sender, RoutedEventArgs e) { if (e.OriginalSource is Button button && button.Tag is string tag) { PopupConfig.IsOpen = false; if (tag.Equals(GlobalDataHelper <AppConfig> .Config.Lang)) { return; } Growl.Ask(Lang.ResourceManager.GetString("ChangeLanguage"), b => { if (!b) { return(true); } GlobalDataHelper <AppConfig> .Config.Lang = tag; GlobalDataHelper <AppConfig> .Save(); LocalizationManager.Instance.CurrentCulture = new System.Globalization.CultureInfo(tag); ConfigHelper.Instance.SetLang(GlobalDataHelper <AppConfig> .Config.Lang); return(true); }); } }
private void ButtonLangs_OnClick(object sender, RoutedEventArgs e) { if (e.OriginalSource is Button button && button.Tag is string tag) { PopupConfig.IsOpen = false; if (tag.Equals(GlobalData.Config.Lang)) { return; } Growl.Ask(Lang.ResourceManager.GetString("ChangeLanguage"), b => { if (!b) { return(true); } GlobalData.Config.Lang = tag; GlobalData.Save(); TranslationSource.Instance.Language = tag; ((MainWindowViewModel)(DataContext)).SetFlowDirection(); return(true); }); } }
private void Button_Click(object sender, RoutedEventArgs e) { if (File.Exists(ProcedurePath + "Book/" + Novel.Name + ".txt")) { Growl.Error(new GrowlInfo { Message = "小说已存在,请勿重复操作!", WaitTime = 3, Token = "InfoMsg" }); Btn.IsChecked = false; return; } Btn.IsEnabled = false; new Task(() => { string Url = $"http://www.biqudu.tv/modules/article/txtarticle.php?id={Novel.NovelId.Split('_')[1]}"; var status = biqudu.Download(Url, Novel.Name + ".txt", ProcedurePath + "Book/"); Dispatcher.Invoke(() => { Btn.IsEnabled = true; Btn.IsChecked = false; if (status) { Growl.Ask("下载成功,是否打开文件夹?", isConfirmed => { if (isConfirmed) { //打开文件夹 System.Diagnostics.Process.Start(ProcedurePath + "Book/"); } return(true); }, "InfoMsg"); } else { Growl.Error(new GrowlInfo { Message = "很遗憾,你的网络太差了,失败了!", WaitTime = 3, Token = "InfoMsg" }); } }); }).Start(); }
public Task <bool> Ask(string msg) { return(Task.Run(() => { WaitForTokenLoaded(); bool?result = null; App.Current.Dispatcher.Invoke(() => { Growl.Ask(ParseMsg(msg), (_result) => { result = _result; return true; }, Token); }); while (result == null) { Thread.Sleep(STATE_CHECK_INTERVAL); } return result == true; })); }
public static void DoAsk(RemoteVersionInfoGetter.Result result) { GrowlInfo gInfo = new GrowlInfo { WaitTime = int.MaxValue, ConfirmStr = App.Current.Resources["Update.UpdateNow"].ToString(), CancelStr = App.Current.Resources["Update.Cancel"].ToString(), Message = $"{App.Current.Resources["Update.HaveAUpdate"]} v{result.Version}\n{result.Message}", Token = MainWindowBus.TOKEN_PANEL_MAIN, ActionBeforeClose = (isConfirmed) => { if (isConfirmed) { try { Process.Start(result.UpdateUrl); } catch { } } return(true); } }; Growl.Ask(gInfo); }
public async Task Do(APIIndex index) { var result = await new NetReader().Read(index.MotdUrl) .ContinueWith(task => task.Result.ToJson <Result>()); SLogger <MOTDHandler> .Info(result.Message); if (result.ClickUrl != null) { Growl.Ask(new GrowlInfo() { Message = result.Message, ShowCloseButton = true, ConfirmStr = result.GoBtnStr ?? "Go", Token = MainWindowBus.TOKEN_PANEL_MAIN }); } else { MainWindowBus.Info(result.Message); } }
private void ChangeLanguageMenu(object sender, RoutedEventArgs e) { MenuItem item = sender as MenuItem; Growl.Ask(new GrowlInfo { Message = Properties.Langs.Lang.ChangeLangAsk, ShowDateTime = false, CancelStr = Properties.Langs.Lang.Cancel, ConfirmStr = Properties.Langs.Lang.Confirm, ActionBeforeClose = isConfirm => { if (isConfirm) { GlobalData.Config.Lang = item.Tag.ToString(); GlobalData.Save(); System.Diagnostics.Process.Start(Assembly.GetExecutingAssembly().Location); Environment.Exit(0); } return(true); } }); }
public static void Ask(string message, Func <bool, bool> callback) { Growl.Ask(App.Current.Resources[message]?.ToString() ?? message, callback, TOKEN_PANEL_MAIN); }
public static void Ask(string message, Func <bool, bool> callback) { Growl.Ask(message, callback); }
public void AskInApp(string message, Func<bool, bool> func) => Growl.Ask(message, func);
public void showGrowlNotification(string NotificationKEY, bool isAvailableOrSuccess = false, params string[] param) { //Delete Confirm if (NotificationKEY.Equals(AppVariable.Delete_Confirm_KEY)) { Growl.Warning(new GrowlInfo { Message = $"آیا برای حذف {param[1]} {param[0]} اطمینان دارید؟", CancelStr = "انصراف", ConfirmStr = "بله", ShowDateTime = false, ActionBeforeClose = isConfirm => { if (isConfirm) { switch (param[1]) { case "مدرسه": AddSchoolView.main.deleteSchool(); break; case "دانش آموز": AddStudentView.main.deleteStudent(); break; case "کاربر": AddUserView.main.deleteUser(); break; case "حضورغیاب": AttendancelistView.main.deleteAttendance(); break; case "نمره": QuestionsListView.main.deleteScore(); break; case "گروه": AddAzmonGroupView.main.deleteGroup(); break; case "سوال": AddQuestionsView.main.deleteGroup(); break; } } return(true); } }); } //Reset Data Confirm else if (NotificationKEY.Equals(AppVariable.Reset_Data_Confirm_KEY)) { Growl.Warning(new GrowlInfo { Message = $"آیا برای بازیابی {param[0]} اطمینان دارید؟", CancelStr = "انصراف", ConfirmStr = "بله", ShowDateTime = false, ActionBeforeClose = isConfirm => { if (isConfirm) { if (param[0] == "تنظیمات برنامه") { SettingsView.main.resetConfig(); } else { SettingsView.main.resetDatabase(); } } return(true); } }); } //Reset Data Deleted else if (NotificationKEY.Equals(AppVariable.Data_Reset_Deleted_KEY)) { Growl.Ask(new GrowlInfo { Message = $"{param[0]} به حالت پیشفرض تغییر یافت، برنامه را دوباره راه اندازی کنید", CancelStr = "انصراف", ConfirmStr = "راه اندازی", ShowDateTime = false, ActionBeforeClose = isConfirm => { if (isConfirm) { Application.Current.Shutdown(); System.Windows.Forms.Application.Restart(); } return(true); } }); } //Password Same else if (NotificationKEY.Equals(AppVariable.Same_Password_KEY)) { Growl.Warning(new GrowlInfo { Message = "رمز های عبور باید یکسان باشند", ShowDateTime = false }); } //Delete Exist else if (NotificationKEY.Equals(AppVariable.Delete_Exist_KEY)) { Growl.Warning(new GrowlInfo { Message = $"نمی توان این {param[0]} را حذف کرد، ابتدا {param[1]} این {param[0]} را حذف کنید", ShowDateTime = false }); } //Azmon else if (NotificationKEY.Equals(AppVariable.Azmon_KEY)) { Growl.Warning(new GrowlInfo { Message = "تعداد سوالات وارد شده بیشتر از سوالات موجود است", ShowDateTime = false }); } //Fill All Data else if (NotificationKEY.Equals(AppVariable.Fill_All_Data_KEY)) { Growl.Warning(new GrowlInfo { Message = "لطفا تمام فیلدها را پر کنید", ShowDateTime = false }); } //No Data else if (NotificationKEY.Equals(AppVariable.No_Data_KEY)) { var navigationService = NavigationServiceProvider.GetNavigationServiceInstance(); Growl.Error(new GrowlInfo { Message = "اطلاعاتی در پایگاه داده یافت نشد", CancelStr = "انصراف", ConfirmStr = "ثبت اطلاعات جدید", ShowDateTime = false, ActionBeforeClose = isConfirm => { if (isConfirm) { switch (param[0]) { case "School": AddSchoolView.main.tabc.SelectedIndex = 0; break; case "User": AddUserView.main.tabc.SelectedIndex = 0; break; case "Student": AddStudentView.main.tabc.SelectedIndex = 0; break; case "Attendance": AttendancelistView.main.tabc.SelectedIndex = 0; break; case "Question": navigationService.GetController <UserControls.UserControlsController>().AddStudent(); break; case "Score": QuestionsListView.main.tabc.SelectedIndex = 0; break; case "TopStudent": navigationService.GetController <UserControls.UserControlsController>().Questionslist(); break; case "Group": AddAzmonGroupView.main.tabc.SelectedIndex = 0; break; case "AQuestions": AddQuestionsView.main.tabc.SelectedIndex = 0; break; } } return(true); } }); } //Backup else if (NotificationKEY.Equals(AppVariable.Backup_KEY)) { if (isAvailableOrSuccess) { Growl.Success(new GrowlInfo { Message = $"{param[0]} با موفقیت انجام شد", ShowDateTime = false }); } else { Growl.Error(new GrowlInfo { Message = $"{param[0]} با مشکل مواجه شد", ShowDateTime = false }); } } //Circular else if (NotificationKEY.Equals(AppVariable.Recived_Circular_KEY)) { if (isAvailableOrSuccess) { Growl.Success(new GrowlInfo { Message = "تمامی بخشنامه ها با موفقیت دریافت شد", ShowDateTime = false }); } else { Growl.Error(new GrowlInfo { Message = "درحال حاظر سرور در دسترس نیست! لطفا در صورت فعال بودن، VPN خود را غیرفعال کنید", ShowDateTime = false }); } } //Update Data else if (NotificationKEY.Equals(AppVariable.Update_Data_KEY)) { if (isAvailableOrSuccess) { Growl.Success(new GrowlInfo { Message = $"{param[1]} {param[0]} با موفقیت ویرایش شد", ShowDateTime = false }); } else { Growl.Error(new GrowlInfo { Message = $"ویرایش {param[1]} {param[0]} با خطا مواجه شد", ShowDateTime = false }); } } //Deleted else if (NotificationKEY.Equals(AppVariable.Deleted_KEY)) { if (isAvailableOrSuccess) { Growl.Success(new GrowlInfo { Message = $"{param[1]} {param[0]} با موفقیت حذف شد", ShowDateTime = false }); } else { Growl.Error(new GrowlInfo { Message = $"حذف {param[1]} {param[0]} با خطا مواجه شد", ShowDateTime = false }); } } //Add Data else if (NotificationKEY.Equals(AppVariable.Add_Data_KEY)) { if (isAvailableOrSuccess) { Growl.Success(new GrowlInfo { Message = $"{param[1]} {param[0]} با موفقیت ثبت شد", ShowDateTime = false }); } else { Growl.Error(new GrowlInfo { Message = $"ثبت {param[1]} {param[0]} با خطا مواجه شد", ShowDateTime = false }); } } //Update else if (NotificationKEY.Equals(AppVariable.Update_KEY)) { if (isAvailableOrSuccess) { Growl.Info(new GrowlInfo { Message = $"نسخه جدید {param[0]} پیدا شد،همین حالا به آخرین نسخه بروزرسانی کنید", CancelStr = "انصراف", ConfirmStr = "دانلود", ShowDateTime = false, ActionBeforeClose = isConfirm => { if (isConfirm) { System.Diagnostics.Process.Start(param[1]); } return(true); } }); } else { Growl.Error(new GrowlInfo { Message = $"شما از آخرین نسخه {AppVariable.getAppVersion} استفاده می کنید", ShowDateTime = false }); } } }