public void setProgressValue(int _value) { if (this.InvokeRequired) { SetProgressValue SetProgress = new SetProgressValue(setProgressValue); this.Invoke(SetProgress, new object[] { _value % Maximum }); } else { progressBar1.Value = _value % Maximum; } }
public void setProgressStep(int step) { if (this.InvokeRequired) { SetProgressValue SetProgressStep = new SetProgressValue(setProgressStep); this.Invoke(SetProgressStep, new object[] { step }); } else { progressBar1.Step = step; } }
public void setProgressMax(int max) { if (this.InvokeRequired) { SetProgressValue SetProgressMax = new SetProgressValue(setProgressMax); this.Invoke(SetProgressMax, new object[] { max }); } else { Maximum = max; progressBar1.Maximum = max; } }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { SetProgressValue locdel = new SetProgressValue(SetLocationsProgressValue); SetProgressValue yrdel = new SetProgressValue(SetYearsProgressvalue); List <FileRec> files = new List <FileRec>(); HashSet <string> countries = new HashSet <string>(); GCDisplaySettings stateDetailedText = new GCDisplaySettings("Detailed Calendar"); GCDisplaySettings stateText = new GCDisplaySettings("Brief Calendar"); GCDisplaySettings stateOrig = GCDisplaySettings.Current; try { // stateText.Clear(); stateText.setValue(GCDS.CAL_DST_CHANGE, 1); stateText.setValue(GCDS.CAL_EKADASI_PARANA, 1); stateText.setValue(GCDS.CAL_FEST_0, 1); stateText.CalHeaderType = 1; stateText.setValue(GCDS.CAL_MASA_CHANGE, 1); stateText.setValue(GCDS.CAL_MOON_LONG, 0); stateText.setValue(GCDS.CAL_MOON_RISE, 0); stateText.setValue(GCDS.CAL_MOON_SET, 0); stateText.setValue(GCDS.CAL_SANKRANTI, 0); stateText.setValue(GCDS.CAL_SUN_LONG, 0); stateText.setValue(GCDS.CAL_SUN_RISE, 0); stateText.setValue(GCDS.CAL_SUN_SANDHYA, 0); stateText.setValue(GCDS.CAL_VRDDHI, 0); stateText.setValue(GCDS.COREEVENTS_ABHIJIT_MUHURTA, 0); stateText.setValue(GCDS.COREEVENTS_ASCENDENT, 0); stateText.setValue(GCDS.COREEVENTS_CONJUNCTION, 0); stateText.setValue(GCDS.COREEVENTS_GULIKALAM, 0); stateText.setValue(GCDS.COREEVENTS_MOON, 0); stateText.setValue(GCDS.COREEVENTS_MOONRASI, 0); stateText.setValue(GCDS.COREEVENTS_NAKSATRA, 0); stateText.setValue(GCDS.COREEVENTS_RAHUKALAM, 0); stateText.setValue(GCDS.COREEVENTS_SANKRANTI, 0); stateText.setValue(GCDS.COREEVENTS_SUN, 0); stateText.setValue(GCDS.COREEVENTS_TITHI, 0); stateText.setValue(GCDS.COREEVENTS_YAMAGHANTI, 0); stateText.setValue(GCDS.COREEVENTS_YOGA, 0); stateDetailedText.setValue(GCDS.CAL_ARUN_TIME, 0); stateDetailedText.setValue(GCDS.CAL_ARUN_TITHI, 0); stateDetailedText.setValue(GCDS.CAL_AYANAMSHA, 0); stateDetailedText.setValue(GCDS.CAL_BRAHMA_MUHURTA, 1); stateDetailedText.setValue(GCDS.CAL_COREEVENTS, 1); stateDetailedText.setValue(GCDS.CAL_DST_CHANGE, 1); stateDetailedText.setValue(GCDS.CAL_EKADASI_PARANA, 1); stateDetailedText.setValue(GCDS.CAL_FEST_0, 1); stateDetailedText.CalHeaderType = 1; stateDetailedText.setValue(GCDS.CAL_JULIAN, 0); stateDetailedText.setValue(GCDS.CAL_KSAYA, 0); stateDetailedText.setValue(GCDS.CAL_MASA_CHANGE, 1); stateDetailedText.setValue(GCDS.CAL_SUN_RISE, 1); stateDetailedText.setValue(GCDS.CAL_SUN_SANDHYA, 1); stateDetailedText.setValue(GCDS.COREEVENTS_CONJUNCTION, 1); stateDetailedText.setValue(GCDS.COREEVENTS_GULIKALAM, 0); stateDetailedText.setValue(GCDS.COREEVENTS_MOON, 1); stateDetailedText.setValue(GCDS.COREEVENTS_MOONRASI, 1); stateDetailedText.setValue(GCDS.COREEVENTS_NAKSATRA, 1); stateDetailedText.setValue(GCDS.COREEVENTS_TITHI, 1); stateDetailedText.setValue(GCDS.COREEVENTS_YAMAGHANTI, 0); stateDetailedText.setValue(GCDS.COREEVENTS_YOGA, 1); stateDetailedText.setValue(GCDS.GENERAL_FIRST_DOW, stateOrig.getValue(GCDS.GENERAL_FIRST_DOW)); string content; FileRec currentFileRec; for (int locIndex = 0; locIndex < SelectedLocations.Count; locIndex++) { TLocation loc = SelectedLocations[locIndex]; if (!countries.Contains(loc.Country.Name)) { countries.Add(loc.Country.Name); } progressBar1.Invoke(locdel, locIndex); for (int year = StartYear; year <= EndYear; year++) { if (backgroundWorker1.CancellationPending) { return; } if (CancelRequested) { return; } progressBar2.Invoke(yrdel, year); // Thread.Sleep(1000); TResultCalendar calendar; GCLocation locRef = loc.GetLocationRef(); currentFileRec = new FileRec() { filename = year.ToString() + "_" + ToFilePart(loc.CityName) + ".html", filenameDetail = year.ToString() + "_" + ToFilePart(loc.CityName) + "_d.html", filenamePdf = year.ToString() + "_" + ToFilePart(loc.CityName) + ".pdf", city = loc.CityName, country = loc.Country.Name, year = year }; files.Add(currentFileRec); GCDisplaySettings.Current = stateText; calendar = new TResultCalendar(loc.GetLocationRef(), year); content = calendar.formatText(GCDataFormat.HTML); // print plain TXT File.WriteAllText(Path.Combine(OutputDir, currentFileRec.filename), content); // print PDF PrintPdfYear(calendar, year, Path.Combine(OutputDir, currentFileRec.filenamePdf)); GCDisplaySettings.Current = stateDetailedText; calendar = new TResultCalendar(loc.GetLocationRef(), year); content = calendar.formatText(GCDataFormat.HTML); // print detailed TXT File.WriteAllText(Path.Combine(OutputDir, currentFileRec.filenameDetail), content); } // write location index file if (StartYear != EndYear) { File.WriteAllText(Path.Combine(OutputDir, ToFilePart(loc.CityName) + ".html"), GenerateYearIndex(loc, StartYear, EndYear)); } } for (int year = StartYear; year <= EndYear; year++) { // write main index file File.WriteAllText(Path.Combine(OutputDir, "y" + year.ToString() + ".html"), GenerateMainIndex(countries, year, year)); } // write main index file File.WriteAllText(Path.Combine(OutputDir, "index.html"), GenerateMainIndex(countries, StartYear, EndYear)); // write main years file //File.WriteAllText(Path.Combine(OutputDir, "years.html"), GenerateYearsOverview(StartYear, EndYear)); progressBar1.Invoke(new SetProgressValue(SetDialogCompleted), 0); } catch (Exception ex) { Debugger.Log(0, "", "Error: " + ex.Message + "\n" + ex.StackTrace + "\n"); } finally { GCDisplaySettings.Current = stateOrig; } }
/// <summary> /// Sets value of a progress-bar /// </summary> /// <param name="pForm">The calling form</param> /// <param name="pBar"></param> /// <param name="pText"></param> public static void SetValue(Form pForm, ProgressBar pBar, int pValue) { // InvokeRequired required compares the thread ID of the // calling thread to the thread ID of the creating thread. // If these threads are different, it returns true. if (pBar.InvokeRequired) { SetProgressValue d = new SetProgressValue(SetValue); pForm.Invoke(d, new object[] { pForm, pBar, pValue }); } else { /* Sanity */ int fVal = pValue; if (fVal > 100) fVal = 100; if (fVal < 0) fVal = 0; pBar.Value = pValue; } }