private void ImportSong_Click(object sender, RoutedEventArgs e) { //select file string currentPath = OpenStuff.Files.GetPathFromDialog(null, Paths.Defaults.Music, OpenStuff.Files.Kinds.Music); TagLib.File newFile = TagProcessing.GetTagsFromFile(currentPath); //Cache Info Caching.currentFile = new Caching.CachedFile { fullPath = currentPath, Cover = newFile.GetCoverImage(), active = true }; TB_Interpret.Text = newFile.Tag.FirstPerformer; TB_Title.Text = newFile.Tag.Title; TB_Album.Text = newFile.Tag.Album; TB_Track.Text = newFile.Tag.Track.ToString(); TB_Year.Text = newFile.Tag.Year.ToString(); TB_Comment.Text = newFile.Tag.Comment; CB_Genre.SelectNewItem(newFile.Tag.FirstGenre); IMG_Cover.Source = Images.GetCoverForUI(Caching.currentFile.Cover); }
public void addUpdateDI(string operation, string id, string description, string address, int scantime, bool onoffscan, string driver) { lock (db.DIs) { if (operation == "add") { DI novi = new DI(id, description, address, scantime, onoffscan, driver); db.DIs.Add(novi); TagProcessing.DItags.Add(novi.Id, novi); TagProcessing.DIthreads.Add(novi.Id, new Thread(() => TagProcessing.readDI(novi.Id))); TagProcessing.DIthreads[novi.Id].Start(); db.SaveChanges(); DataManipulator.saveData(); return; } DI tag = getByIdDI(id); tag.Description = description; tag.Address = address; tag.ScanTime = scantime; tag.OnOffScan = onoffscan; tag.Driver = driver; db.SaveChanges(); DataManipulator.saveData(); TagProcessing.DItags.Remove(tag.Id); TagProcessing.DItags.Add(tag.Id, tag); TagProcessing.DIthreads.Remove(tag.Id); TagProcessing.DIthreads.Add(tag.Id, new Thread(() => TagProcessing.readAI(tag.Id))); TagProcessing.DIthreads[tag.Id].Start(); onChangeNotification.Invoke("Operation succesful."); } }
private void SaveTags_Click(object sender, RoutedEventArgs e) { if (saveable) { TagProcessing.SaveTags( new TagProcessing.SongFile { Interpret = TB_Interpret.Text, Title = TB_Title.Text, Album = TB_Album.Text, Comment = TB_Comment.Text, Track = int.Parse(TB_Track.Text), Year = int.Parse(TB_Year.Text), Genre = CB_Genre.GetSelectedContent() }); } else { //TODO return; } }
public void addUpdateAI(string operation, string id, string description, string address, int scantime, bool onoffscan, double lowlimit, double highlimit, string units, string driver) { lock (db.AIs) { if (operation == "add") { AI novi = new AI(id, description, address, scantime, onoffscan, lowlimit, highlimit, units, driver); db.AIs.Add(novi); TagProcessing.AItags.Add(novi.Id, novi); TagProcessing.AIthreads.Add(novi.Id, new Thread(() => TagProcessing.readAI(novi.Id))); TagProcessing.AIthreads[novi.Id].Start(); db.SaveChanges(); DataManipulator.saveData(); return; } AI tag = getByIdAI(id); tag.Description = description; tag.Address = address; tag.ScanTime = scantime; tag.OnOffScan = onoffscan; tag.LowLimit = lowlimit; tag.HighLimit = highlimit; tag.Units = units; tag.Driver = driver; db.SaveChanges(); DataManipulator.saveData(); TagProcessing.AItags.Remove(tag.Id); TagProcessing.AItags.Add(tag.Id, tag); TagProcessing.AIthreads.Remove(tag.Id); TagProcessing.AIthreads.Add(tag.Id, new Thread(() => TagProcessing.readAI(tag.Id))); TagProcessing.AIthreads[tag.Id].Start(); onChangeNotification.Invoke("Operation succesful."); } }
public string RemoveTag(string tagId) { return(TagProcessing.RemoveTag(tagId)); }
public TagProcessing(TagProcessing toClone) { tagName = toClone.tagName; tagValueOld = toClone.tagValueOld; tagValueNew = toClone.tagValueNew; }
public string AddDigitalOutputTag(string tagId, string description, string ioAddress, int initValue) { return(TagProcessing.AddDigitalOutputTag(tagId, description, ioAddress, initValue)); }
public string AddDigitalInputTag(string tagId, string description, string driver, string ioAddress, int ScanTime, bool onScan) { return(TagProcessing.AddDigitalInputTag(tagId, description, driver, ioAddress, ScanTime, onScan)); }
public string AddAnalogOutputTag(string tagId, string description, string ioAddress, int scanTime, int lowLimit, int highLimit) { return(TagProcessing.AddAnalogOutputTag(tagId, description, ioAddress, scanTime, lowLimit, highLimit)); }
public string AddAnalogInputTag(string tagId, string description, string driver, string ioAddress, int ScanTime, bool onScan, int lowLimit, int highLimit, string units) { return(TagProcessing.AddAnalogInputTag(tagId, description, driver, ioAddress, ScanTime, onScan, lowLimit, highLimit, units)); }
public string RemoveAlarm(string tagId) { return(TagProcessing.RemoveAlarm(tagId)); }
public string AddAlarmForAnalog(string tagId, string type, int priority) { return(TagProcessing.AddAlarm(tagId, type, priority)); }
public void LoadXml() { TagProcessing.Init(); }
public string ChangeOutputValue(string tagId, double newValue) { return(TagProcessing.ChangeOutputValue(tagId, newValue)); }
public string SwitchScanMode(string tagId) { return(TagProcessing.SwitchScanMode(tagId)); }