public string GetExample(string res, PhotoSession session, ICameraDevice device, string fileName) { Regex regPattern = new Regex(@"\[(.*?)\]", RegexOptions.Singleline); MatchCollection matchX = regPattern.Matches(res); foreach (Match match in matchX) { if (ServiceProvider.FilenameTemplateManager.Templates.ContainsKey(match.Value)) { res = res.Replace(match.Value, ServiceProvider.FilenameTemplateManager.Templates[match.Value].Pharse(match.Value, session, device, fileName)); } } //prevent multiple \ if a tag is empty while (res.Contains(@"\\")) { res = res.Replace(@"\\", @"\"); } // if the file name start with \ the Path.Combine isn't work right if (res.StartsWith("\\")) { res = res.Substring(1); } return(res); }
/// <summary> /// Load files attached to a session /// </summary> /// <param name="session"></param> public void LoadData(PhotoSession session) { if (session == null) { return; } FileItem[] fileItems = new FileItem[session.Files.Count]; session.Files.CopyTo(fileItems, 0); //session.Files.Clear(); if (!Directory.Exists(session.Folder)) { Directory.CreateDirectory(session.Folder); } string[] files = Directory.GetFiles(session.Folder); foreach (string file in files) { if (session.SupportedExtensions.Contains(Path.GetExtension(file).ToLower())) { if (!session.ContainFile(file)) { session.AddFile(file); // TODO: Check if this is exploding session with proshots.jar running } } } // remove files which was deleted or not exist List <FileItem> removedItems = session.Files.Where(fileItem => !File.Exists(fileItem.FileName)).ToList(); foreach (FileItem removedItem in removedItems) { session.Files.Remove(removedItem); } //session.Files = new AsyncObservableCollection<FileItem>(session.Files.OrderBy(x => x.FileDate)); }
public void AddTemplates(ICameraDevice device, PhotoSession session) { string[] skipItems = { "[Session Name]", "[Counter 3 digit]", "[Counter 4 digit]", "[Counter 5 digit]", "[Counter 6 digit]", "[Counter 7 digit]", "[Counter 8 digit]", "[Counter 9 digit]", "[Camera Counter 3 digit]", "[Camera Counter 4 digit]", "[Camera Counter 5 digit]", "[Camera Counter 6 digit]", "[Camera Counter 7 digit]", "[Camera Counter 8 digit]", "[Camera Counter 9 digit]" }; foreach (var template in ServiceProvider.FilenameTemplateManager.Templates) { if (skipItems.Contains(template.Key)) { continue; } var val = template.Value.Pharse(template.Key, session, device, FileName); if (!string.IsNullOrWhiteSpace(val)) { FileNameTemplates.Add(new ValuePair() { Name = template.Key, Value = val }); } } }
public void ExecuteCommand(string cmd, object param) { switch (cmd) { case WindowsCmdConsts.BrowseWnd_Show: ServiceProvider.Settings.PropertyChanged += Settings_PropertyChanged; Dispatcher.Invoke(new Action(delegate { SelectedPhotoSession = ServiceProvider.Settings.DefaultSession; Show(); Activate(); Topmost = true; Focus(); })); break; case WindowsCmdConsts.BrowseWnd_Hide: { ServiceProvider.Settings.PropertyChanged -= Settings_PropertyChanged; Dispatcher.Invoke(new Action(Hide)); } break; case CmdConsts.All_Close: Dispatcher.Invoke(new Action(delegate { Hide(); Close(); })); break; } }
public EditSession(PhotoSession session) { Session = session; Session.BeginEdit(); InitializeComponent(); DataContext = Session; ServiceProvider.Settings.ApplyTheme(this); }
public void SaveSession(PhotoSession session, string filename) { XmlSerializer serializer = new XmlSerializer(typeof(PhotoSession)); // Create a FileStream to write with. Stream writer = new FileStream(filename, FileMode.Create); // Serialize the object, and close the TextWriter serializer.Serialize(writer, session); writer.Close(); }
public string Pharse(string template, PhotoSession session, ICameraDevice device, string fileName, string tempfileName) { if (!File.Exists(tempfileName)) return ""; FileItem item = new FileItem(tempfileName); BitmapLoader.Instance.GetMetadata(item); string tag = template.Replace("[", "").Replace("]", ""); if (item.FileInfo.ExifTags.ContainName(tag)) return item.FileInfo.ExifTags[tag].Replace(":", "_").Replace("?", "_").Replace("*", "_").Replace("\\", "_"); ; return template; }
public Settings() { ConfigFile = Path.Combine(DataFolder, "settings.xml"); CameraPresets = new AsyncObservableCollection <CameraPreset>(); DefaultSession = new PhotoSession(); PhotoSessions = new ObservableCollection <PhotoSession>(); SelectedBitmap = new BitmapFile(); ImageLoading = false; CameraProperties = new CameraPropertyEnumerator(); DeviceConfigs = new CustomConfigEnumerator(); ResetSettings(); }
public BraketingWnd(ICameraDevice device, PhotoSession session) { InitializeComponent(); _device = device; _photoSession = session; _photoSession.Braketing.IsBusy = false; backgroundWorker.DoWork += delegate { _photoSession.Braketing.TakePhoto(ServiceProvider.DeviceManager.SelectedCameraDevice); }; _photoSession.Braketing.IsBusyChanged += Braketing_IsBusyChanged; _photoSession.Braketing.PhotoCaptured += Braketing_PhotoCaptured; _photoSession.Braketing.BracketingDone += Braketing_BracketingDone; ServiceProvider.Settings.ApplyTheme(this); }
public Settings() { ConfigFile = Path.Combine(DataFolder, "settings.json"); CameraPresets = new AsyncObservableCollection <CameraPreset>(); DefaultSession = new PhotoSession(true, TranslationStrings.MenuSessionName); SelectedSession = new PhotoSession(true, "History"); PhotoSessions = new ObservableCollection <PhotoSession>(); SelectedBitmap = new BitmapFile(); ImageLoading = false; CameraProperties = new CameraPropertyEnumerator(); DeviceConfigs = new CustomConfigEnumerator(); PluginSettings = new ObservableCollection <PluginSetting>(); ResetSettings(); }
public PhotoSession LoadSession(string filename) { PhotoSession photoSession = new PhotoSession(); try { if (File.Exists(filename)) { if (Path.GetExtension(filename) == ".json") { photoSession = JsonConvert.DeserializeObject <PhotoSession>(File.ReadAllText(filename)); } else { XmlSerializer mySerializer = new XmlSerializer(typeof(PhotoSession)); FileStream myFileStream = new FileStream(filename, FileMode.Open); photoSession = (PhotoSession)mySerializer.Deserialize(myFileStream); myFileStream.Close(); photoSession.ConfigFile = filename; // upgrade to new fie template var s = photoSession.FileNameTemplate; s = s.Replace("$C", "[Counter 4 digit]"); s = s.Replace("$N", "[Session Name]"); s = s.Replace("$E", "[Exposure Compensation]"); s = s.Replace("$D", "[Date yyyy-MM-dd]"); s = s.Replace("$B", "[Barcode]"); s = s.Replace("$Type", "[File format]"); s = s.Replace("$X", "[Camera Name]"); s = s.Replace("$Tag1", "[Selected Tag1]"); s = s.Replace("$Tag2", "[Selected Tag2]"); s = s.Replace("$Tag3", "[Selected Tag3]"); s = s.Replace("$Tag4", "[Selected Tag4]"); photoSession.FileNameTemplate = s; } } } catch (Exception e) { Log.Error(e); } if (photoSession == null) { photoSession = new PhotoSession(); } return(photoSession); }
public EditSession(PhotoSession session) { try { Session = session; Session.BeginEdit(); InitializeComponent(); DataContext = Session; ServiceProvider.Settings.ApplyTheme(this); } catch (Exception ex) { Log.Error("EditSession init", ex); } }
/// <summary> /// Load files attached to a session /// </summary> /// <param name="session"></param> public void LoadData(PhotoSession session) { try { if (session == null) { return; } if (!Directory.Exists(session.Folder)) { return; } if (session.AlowFolderChange && session.ReloadOnFolderChange) { session.Files.Clear(); } FileItem[] fileItems = new FileItem[session.Files.Count]; session.Files.CopyTo(fileItems, 0); ////session.Files.Clear(); //if (!Directory.Exists(session.Folder)) //{ // Directory.CreateDirectory(session.Folder); //} string[] files = Directory.GetFiles(session.Folder); foreach (string file in files) { if (session.SupportedExtensions.Contains(Path.GetExtension(file).ToLower())) { if (!string.IsNullOrEmpty(file) && !session.ContainFile(file)) { session.AddFile(file); } } } // remove files which was deleted or not exist List <FileItem> removedItems = session.Files.Where(fileItem => !File.Exists(fileItem.FileName)).ToList(); foreach (FileItem removedItem in removedItems) { session.Files.Remove(removedItem); } //session.Files = new AsyncObservableCollection<FileItem>(session.Files.OrderBy(x => x.FileDate)); } catch (Exception exception) { Log.Error("Error loading session ", exception); } }
public void Save(PhotoSession session) { if (session == null) { return; } try { string filename = Path.Combine(SessionFolder, session.Name + ".json"); SaveSession(session, filename); session.ConfigFile = filename; } catch (Exception exception) { Log.Error("Unable to save session " + session.Name, exception); } }
public Settings() { ConfigFile = Path.Combine(DataFolder, "settings.xml"); CameraPresets = new AsyncObservableCollection <CameraPreset>(); DefaultSession = new PhotoSession(); PhotoSessions = new ObservableCollection <PhotoSession>(); SelectedBitmap = new BitmapFile(); ImageLoading = false; VideoTypes = new ObservableCollection <VideoType> { new VideoType("HD 1080 16:9", 1920, 1080), new VideoType("UXGA 4:3", 1600, 1200), new VideoType("HD 720 16:9", 1280, 720), new VideoType("Super VGA 4:3", 800, 600), }; CameraProperties = new CameraPropertyEnumerator(); DeviceConfigs = new CustomConfigEnumerator(); ResetSettings(); }
public Settings() { ConfigFile = Path.Combine(DataFolder, "settings.xml"); CameraPresets = new AsyncObservableCollection<CameraPreset>(); DefaultSession = new PhotoSession(); PhotoSessions = new ObservableCollection<PhotoSession>(); SelectedBitmap = new BitmapFile(); ImageLoading = false; VideoTypes = new ObservableCollection<VideoType> { new VideoType("HD 1080 16:9", 1920, 1080), new VideoType("UXGA 4:3", 1600, 1200), new VideoType("HD 720 16:9", 1280, 720), new VideoType("Super VGA 4:3", 800, 600), }; CameraProperties = new CameraPropertyEnumerator(); DeviceConfigs = new CustomConfigEnumerator(); ResetSettings(); }
public PhotoSession Load(string filename) { PhotoSession photoSession = new PhotoSession(); try { if (File.Exists(filename)) { XmlSerializer mySerializer = new XmlSerializer(typeof(PhotoSession)); FileStream myFileStream = new FileStream(filename, FileMode.Open); photoSession = (PhotoSession)mySerializer.Deserialize(myFileStream); myFileStream.Close(); photoSession.ConfigFile = filename; } } catch (Exception e) { Log.Error(e); } return(photoSession); }
public void Save(PhotoSession session) { if (session == null) { return; } try { string filename = Path.Combine(SessionFolder, session.Name + ".xml"); XmlSerializer serializer = new XmlSerializer(typeof(PhotoSession)); // Create a FileStream to write with. Stream writer = new FileStream(filename, FileMode.Create); // Serialize the object, and close the TextWriter serializer.Serialize(writer, session); writer.Close(); session.ConfigFile = filename; } catch (Exception exception) { Log.Error("Unable to save session " + session.Name, exception); } }
public void Save(PhotoSession session) { if (session == null) { return; } try { string filename = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), AppName, "Sessions", session.Name + ".xml"); XmlSerializer serializer = new XmlSerializer(typeof(PhotoSession)); // Create a FileStream to write with. Stream writer = new FileStream(filename, FileMode.Create); // Serialize the object, and close the TextWriter serializer.Serialize(writer, session); writer.Close(); } catch (Exception exception) { Log.Error("Unable to save session " + session.Name, exception); } }
public string GetExample(string res, PhotoSession session, ICameraDevice device, string fileName) { Regex regPattern = new Regex(@"\[(.*?)\]", RegexOptions.Singleline); MatchCollection matchX = regPattern.Matches(res); foreach (Match match in matchX) { if (ServiceProvider.FilenameTemplateManager.Templates.ContainsKey(match.Value)) { res = res.Replace(match.Value, ServiceProvider.FilenameTemplateManager.Templates[match.Value].Pharse(match.Value, session, device, fileName)); } } //prevent multiple \ if a tag is empty while (res.Contains(@"\\")) { res = res.Replace(@"\\", @"\"); } // if the file name start with \ the Path.Combine isn't work right if (res.StartsWith("\\")) res = res.Substring(1); return res; }
public void Save(PhotoSession session) { if (session == null) return; try { string filename = Path.Combine(SessionFolder, session.Name + ".xml"); SaveSession(session, filename); session.ConfigFile = filename; } catch (Exception exception) { Log.Error("Unable to save session " + session.Name, exception); } }
private void NewSession() { try { var defaultsessionfile = Path.Combine(Core.Classes.Settings.SessionFolder, "Default.xml"); var session = new PhotoSession(); // copy session with default name if (File.Exists(defaultsessionfile)) { session = ServiceProvider.Settings.LoadSession(defaultsessionfile); session.Files.Clear(); } var editSession = new EditSession(session); editSession.Owner = ServiceProvider.PluginManager.SelectedWindow as Window; ServiceProvider.Settings.ApplyTheme(editSession); if (editSession.ShowDialog() == true) { ServiceProvider.Settings.Add(editSession.Session); ServiceProvider.Settings.DefaultSession = editSession.Session; } } catch (Exception ex) { Log.Error("Error create session ", ex); ServiceProvider.WindowsManager.ExecuteCommand(WindowsCmdConsts.MainWnd_Message, "Error create session " + ex.Message); } }
public string Pharse(string template, PhotoSession session, ICameraDevice device, string fileName) { CameraProperty property = device.LoadProperties(); switch (template) { case "[Counter 3 digit]": case "[Counter 4 digit]": case "[Counter 5 digit]": case "[Counter 6 digit]": case "[Counter 7 digit]": case "[Counter 8 digit]": case "[Counter 9 digit]": return session.Counter.ToString(new string('0', Convert.ToInt16(template.Substring(9, 1)))); case "[Series 4 digit]": return session.Series.ToString(new string('0', 4)); case "[Camera Counter 3 digit]": case "[Camera Counter 4 digit]": case "[Camera Counter 5 digit]": case "[Camera Counter 6 digit]": case "[Camera Counter 7 digit]": case "[Camera Counter 8 digit]": case "[Camera Counter 9 digit]": return property.Counter.ToString(new string('0', Convert.ToInt16(template.Substring(16, 1)))); case "[Session Name]": return session.Name; case "[Capture Name]": return session.CaptureName; case "[Exposure Compensation]": if (device!=null && device.ExposureCompensation != null) return device.ExposureCompensation.Value != "0" ? device.ExposureCompensation.Value : ""; return ""; case "[FNumber]": if (device != null && device.FNumber != null) return device.FNumber.Value ?? ""; return ""; case "[Date yyyy-MM-dd]": return DateTime.Now.ToString("yyyy-MM-dd"); case "[Date yyyy]": return DateTime.Now.ToString("yyyy"); case "[Date yyyy-MM]": return DateTime.Now.ToString("yyyy-MM"); case "[Date MMM]": return DateTime.Now.ToString("MMM"); case "[Date yyyy-MM-dd-hh-mm-ss]": return DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss"); case "[Time hh-mm-ss]": return DateTime.Now.ToString("hh-mm-ss"); case "[Time hh-mm]": return DateTime.Now.ToString("hh-mm"); case "[Time hh]": return DateTime.Now.ToString("hh"); case "[Barcode]": return session.Barcode; case "[File format]": return GetType(fileName); case "[Original Filename]": return Path.GetFileNameWithoutExtension(fileName); case "[Camera Name]": return property.DeviceName.Replace(":", "_").Replace("?", "_").Replace("*", "_"); case "[Selected Tag1]": return session.SelectedTag1 != null ? session.SelectedTag1.Value.Trim() : ""; case "[Selected Tag2]": return session.SelectedTag2 != null ? session.SelectedTag2.Value.Trim() : ""; case "[Selected Tag3]": return session.SelectedTag3 != null ? session.SelectedTag3.Value.Trim() : ""; case "[Selected Tag4]": return session.SelectedTag4 != null ? session.SelectedTag4.Value.Trim() : ""; case "[Unix Time]": var date = new DateTime(1970, 1, 1, 0, 0, 0, DateTime.Now.Kind); var unixTimestamp = System.Convert.ToInt64((DateTime.Now - date).TotalSeconds); return unixTimestamp.ToString(); case "[DB Row 1]": return (session.ExternalData != null && session.ExternalData.Row1 != null) ? session.ExternalData.Row1 : ""; case "[DB Row 2]": return (session.ExternalData != null && session.ExternalData.Row2 != null) ? session.ExternalData.Row2 : ""; case "[DB Row 3]": return (session.ExternalData != null && session.ExternalData.Row3 != null) ? session.ExternalData.Row3 : ""; case "[DB Row 4]": return (session.ExternalData != null && session.ExternalData.Row4 != null) ? session.ExternalData.Row4 : ""; case "[DB Row 5]": return (session.ExternalData != null && session.ExternalData.Row5 != null) ? session.ExternalData.Row5 : ""; case "[DB Row 6]": return (session.ExternalData != null && session.ExternalData.Row6 != null) ? session.ExternalData.Row6 : ""; case "[DB Row 7]": return (session.ExternalData != null && session.ExternalData.Row7 != null) ? session.ExternalData.Row7 : ""; case "[DB Row 8]": return (session.ExternalData != null && session.ExternalData.Row8 != null) ? session.ExternalData.Row8 : ""; case "[DB Row 9]": return (session.ExternalData != null && session.ExternalData.Row9 != null) ? session.ExternalData.Row9 : ""; } return ""; }
public void Add(PhotoSession session) { Save(session); PhotoSessions.Add(session); }
private void Settings_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "DefaultSession") { SelectedPhotoSession = ServiceProvider.Settings.DefaultSession; } }
public void Save(PhotoSession session) { if (session == null) return; try { string filename = Path.Combine(DataFolder, "Sessions", session.Name + ".xml"); XmlSerializer serializer = new XmlSerializer(typeof(PhotoSession)); // Create a FileStream to write with. Stream writer = new FileStream(filename, FileMode.Create); // Serialize the object, and close the TextWriter serializer.Serialize(writer, session); writer.Close(); session.ConfigFile = filename; } catch (Exception exception) { Log.Error("Unable to save session " + session.Name, exception); } }
public PhotoSession Load(string filename) { PhotoSession photoSession = new PhotoSession(); try { if (File.Exists(filename)) { XmlSerializer mySerializer = new XmlSerializer(typeof (PhotoSession)); FileStream myFileStream = new FileStream(filename, FileMode.Open); photoSession = (PhotoSession) mySerializer.Deserialize(myFileStream); myFileStream.Close(); photoSession.ConfigFile = filename; // upgrade to new fie template var s = photoSession.FileNameTemplate; s = s.Replace("$C", "[Counter 4 digit]"); s = s.Replace("$N", "[Session Name]"); s = s.Replace("$E", "[Exposure Compensation]"); s = s.Replace("$D", "[Date yyyy-MM-dd]"); s = s.Replace("$B", "[Barcode]"); s = s.Replace("$Type", "[File format]"); s = s.Replace("$X", "[Camera Name]"); s = s.Replace("$Tag1", "[Selected Tag1]"); s = s.Replace("$Tag2", "[Selected Tag2]"); s = s.Replace("$Tag3", "[Selected Tag3]"); s = s.Replace("$Tag4", "[Selected Tag4]"); photoSession.FileNameTemplate = s; } } catch (Exception e) { Log.Error(e); } return photoSession; }
/// <summary> /// Load files attached to a session /// </summary> /// <param name="session"></param> public void LoadData(PhotoSession session) { try { if (session == null) return; FileItem[] fileItems = new FileItem[session.Files.Count]; session.Files.CopyTo(fileItems, 0); //session.Files.Clear(); if (!Directory.Exists(session.Folder)) { Directory.CreateDirectory(session.Folder); } string[] files = Directory.GetFiles(session.Folder); foreach (string file in files) { if (session.SupportedExtensions.Contains(Path.GetExtension(file).ToLower())) { if (!string.IsNullOrEmpty(file) && !session.ContainFile(file)) session.AddFile(file); } } // remove files which was deleted or not exist List<FileItem> removedItems = session.Files.Where(fileItem => !File.Exists(fileItem.FileName)).ToList(); foreach (FileItem removedItem in removedItems) { session.Files.Remove(removedItem); } //session.Files = new AsyncObservableCollection<FileItem>(session.Files.OrderBy(x => x.FileDate)); } catch (Exception exception) { Log.Error("Error loading session ", exception); } }
public BraketingWnd(ICameraDevice device, PhotoSession session) { InitializeComponent(); ServiceProvider.Settings.ApplyTheme(this); }
public PhotoSession Load(string filename) { PhotoSession photoSession = new PhotoSession(); try { if (File.Exists(filename)) { XmlSerializer mySerializer = new XmlSerializer(typeof(PhotoSession)); FileStream myFileStream = new FileStream(filename, FileMode.Open); photoSession = (PhotoSession)mySerializer.Deserialize(myFileStream); myFileStream.Close(); photoSession.ConfigFile = filename; } } catch (Exception e) { Log.Error(e); } return photoSession; }
public string Pharse(string template, PhotoSession session, ICameraDevice device, string fileName, string tempfileName) { CameraProperty property = device.LoadProperties(); switch (template) { case "[Counter 3 digit]": case "[Counter 4 digit]": case "[Counter 5 digit]": case "[Counter 6 digit]": case "[Counter 7 digit]": case "[Counter 8 digit]": case "[Counter 9 digit]": return(session.Counter.ToString(new string('0', Convert.ToInt16(template.Substring(9, 1))))); case "[Series 4 digit]": return(session.Series.ToString(new string('0', 4))); case "[Camera Counter 3 digit]": case "[Camera Counter 4 digit]": case "[Camera Counter 5 digit]": case "[Camera Counter 6 digit]": case "[Camera Counter 7 digit]": case "[Camera Counter 8 digit]": case "[Camera Counter 9 digit]": return(property.Counter.ToString(new string('0', Convert.ToInt16(template.Substring(16, 1))))); case "[Session Name]": return(session.Name); case "[Capture Name]": return(session.CaptureName); case "[Exposure Compensation]": if (device != null && device.ExposureCompensation != null) { return(device.ExposureCompensation.Value != "0" ? device.ExposureCompensation.Value : ""); } return(""); case "[FNumber]": if (device != null && device.FNumber != null) { return(device.FNumber.Value ?? ""); } return(""); case "[Date yyyy-MM-dd]": return(DateTime.Now.ToString("yyyy-MM-dd")); case "[Date yyyy]": return(DateTime.Now.ToString("yyyy")); case "[Date yyyy-MM]": return(DateTime.Now.ToString("yyyy-MM")); case "[Date MMM]": return(DateTime.Now.ToString("MMM")); case "[Date yyyy-MM-dd-hh-mm-ss]": return(DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss")); case "[Time hh-mm-ss]": return(DateTime.Now.ToString("HH-mm-ss")); case "[Time hh-mm]": return(DateTime.Now.ToString("HH-mm")); case "[Time hh]": return(DateTime.Now.ToString("HH")); case "[Barcode]": return(session.Barcode); case "[File format]": return(GetType(fileName)); case "[Original Filename]": return(Path.GetFileNameWithoutExtension(fileName)); case "[Camera Order]": return(property.SortOrder.ToString("D3")); case "[Camera Name]": return(property.DeviceName.Replace(":", "_").Replace("?", "_").Replace("*", "_")); case "[Selected Tag1]": return(session.SelectedTag1 != null?session.SelectedTag1.Value.Trim() : ""); case "[Selected Tag2]": return(session.SelectedTag2 != null?session.SelectedTag2.Value.Trim() : ""); case "[Selected Tag3]": return(session.SelectedTag3 != null?session.SelectedTag3.Value.Trim() : ""); case "[Selected Tag4]": return(session.SelectedTag4 != null?session.SelectedTag4.Value.Trim() : ""); case "[Unix Time]": var date = new DateTime(1970, 1, 1, 0, 0, 0, DateTime.Now.Kind); var unixTimestamp = System.Convert.ToInt64((DateTime.Now - date).TotalSeconds); return(unixTimestamp.ToString()); case "[DB Row 1]": return((session.ExternalData != null && session.ExternalData.Row1 != null) ? session.ExternalData.Row1 : ""); case "[DB Row 2]": return((session.ExternalData != null && session.ExternalData.Row2 != null) ? session.ExternalData.Row2 : ""); case "[DB Row 3]": return((session.ExternalData != null && session.ExternalData.Row3 != null) ? session.ExternalData.Row3 : ""); case "[DB Row 4]": return((session.ExternalData != null && session.ExternalData.Row4 != null) ? session.ExternalData.Row4 : ""); case "[DB Row 5]": return((session.ExternalData != null && session.ExternalData.Row5 != null) ? session.ExternalData.Row5 : ""); case "[DB Row 6]": return((session.ExternalData != null && session.ExternalData.Row6 != null) ? session.ExternalData.Row6 : ""); case "[DB Row 7]": return((session.ExternalData != null && session.ExternalData.Row7 != null) ? session.ExternalData.Row7 : ""); case "[DB Row 8]": return((session.ExternalData != null && session.ExternalData.Row8 != null) ? session.ExternalData.Row8 : ""); case "[DB Row 9]": return((session.ExternalData != null && session.ExternalData.Row9 != null) ? session.ExternalData.Row9 : ""); } return(""); }
private void Settings_SessionSelected(PhotoSession oldvalue, PhotoSession newvalue) { if (oldvalue != null) ServiceProvider.Settings.Save(oldvalue); ServiceProvider.QueueManager.Clear(); if (ServiceProvider.DeviceManager.SelectedCameraDevice != null) { ServiceProvider.DeviceManager.SelectedCameraDevice.AttachedPhotoSession = newvalue; } }
public Settings() { ConfigFile = Path.Combine(DataFolder, "settings.xml"); CameraPresets = new AsyncObservableCollection<CameraPreset>(); DefaultSession = new PhotoSession(); PhotoSessions = new ObservableCollection<PhotoSession>(); SelectedBitmap = new BitmapFile(); ImageLoading = false; CameraProperties = new CameraPropertyEnumerator(); DeviceConfigs = new CustomConfigEnumerator(); ResetSettings(); }
public void SaveSession(PhotoSession session, string filename) { var json = JsonConvert.SerializeObject(session); File.WriteAllText(filename, json); }
/// <summary> /// Called when default session is assigned or changed /// </summary> /// <param name="oldvalue">The oldvalue.</param> /// <param name="newvalue">The newvalue.</param> private void Settings_SessionSelected(PhotoSession oldvalue, PhotoSession newvalue) { // check if same session is used if (oldvalue == newvalue) return; if (oldvalue != null && ServiceProvider.Settings.PhotoSessions.Contains(oldvalue)) ServiceProvider.Settings.Save(oldvalue); ServiceProvider.QueueManager.Clear(); if (ServiceProvider.DeviceManager.SelectedCameraDevice != null) ServiceProvider.DeviceManager.SelectedCameraDevice.AttachedPhotoSession = newvalue; }
public void AddTemplates(ICameraDevice device,PhotoSession session) { string[] skipItems = { "[Session Name]", "[Counter 3 digit]", "[Counter 4 digit]", "[Counter 5 digit]", "[Counter 6 digit]", "[Counter 7 digit]", "[Counter 8 digit]", "[Counter 9 digit]", "[Camera Counter 3 digit]","[Camera Counter 4 digit]","[Camera Counter 5 digit]","[Camera Counter 6 digit]", "[Camera Counter 7 digit]","[Camera Counter 8 digit]","[Camera Counter 9 digit]" }; foreach (var template in ServiceProvider.FilenameTemplateManager.Templates) { if(skipItems.Contains(template.Key)) continue; var val = template.Value.Pharse(template.Key, session, device, FileName); if (!string.IsNullOrWhiteSpace(val)) FileNameTemplates.Add(new ValuePair() {Name = template.Key, Value = val}); } }