static void Main() { if (mutex.WaitOne(TimeSpan.Zero, true)) { try { using (var etw = SearchTagEditor.MakeSearchEtw()) { var tagEditor = new SearchTagEditor(etw); tagEditor.StartExifTool(); XmlConfigurator.Configure(); Console.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)); Core.Initialize(); InitDatabase(tagEditor); var monitor = WatcherMonitor.InitMonitorFromDB(); var libVLC = new LibVLC(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MainForm(monitor, libVLC, tagEditor)); } } finally { mutex.ReleaseMutex(); } } else { Helpers.DoShowMe(); } }
public static void InitDatabase(SearchTagEditor editor) { FilesContext.videoThumbnailExtractor = new VideoThumbnailExtractor(); FilesContext.searchTagEditor = editor; using (var ctx = new FilesContext()) { ctx.Database.Migrate(); } }
public MultiXMPEditForm(List <File> files, SearchTagEditor searchTagEditor, WatcherMonitor watcherMonitor) { InitializeComponent(); _files = files; _searchTagEditor = searchTagEditor; _watcherMonitor = watcherMonitor; using (var ctx = new FilesContext()) { _watchers = ctx.Watchers.ToList(); } RefreshView(); }
public EditXMPTagsForm(File file, SearchTagEditor searchTagEditor) { InitializeComponent(); EditedFile = file; var currentTags = EditedFile.XMPTags_fts; if (currentTags != null) { tagsBox.Text = Helpers.HashToTagString(EditedFile.XMPTags_fts); } tagsBox.SelectionStart = tagsBox.Text.Length; tagsBox.SelectionLength = 0; FilenameLabel.Text = $"Filename: {file.FullName}"; _searchTagEditor = searchTagEditor; }
private static void updateXMPTagsFromFile(File file) { if (!SearchTagEditor.usableExtension(file.FullName)) { return; } var tag = searchTagEditor.getSearchTag(file.FullName); if (tag == null) { file.XMPTags_fts = null; } else { file.XMPTags_fts = File.TagStringToHash(tag); } }