コード例 #1
0
ファイル: ImportExportForm.cs プロジェクト: npuBug/fb2epub
 private void buttonLoad_Click(object sender, EventArgs e)
 {
     OpenFileDialog fileOpenDialog = new OpenFileDialog();
     fileOpenDialog.Multiselect = false;
     fileOpenDialog.ShowReadOnly = false;
     fileOpenDialog.SupportMultiDottedExtensions = true;
     fileOpenDialog.Title = Resources.Fb2epubSettings.SelectFileToLoadFrom;
     fileOpenDialog.AddExtension = true;
     fileOpenDialog.AutoUpgradeEnabled = true;
     fileOpenDialog.CheckFileExists = true;
     fileOpenDialog.CheckPathExists = true;
     fileOpenDialog.DefaultExt = "*.xml";
     fileOpenDialog.Filter = "XML file | *.xml|Any file | *.*";
     DialogResult result = fileOpenDialog.ShowDialog();
     if (result == DialogResult.OK)
     {
         ConverterSettingsFile settingsFile = new ConverterSettingsFile();
         try
         {
             settingsFile.Load(fileOpenDialog.FileName);
             _settings.CopyFrom(settingsFile.Settings);
             result = DialogResult.OK;
             Close();
         }
         catch (Exception ex)
         {               
             MessageBox.Show(string.Format("Error loading file {0} : {1}", fileOpenDialog.FileName,ex.Message),"Load file error",MessageBoxButtons.OK,MessageBoxIcon.Error);
             Log.Error( ex);
         }
     }
 }
コード例 #2
0
ファイル: ImportExportForm.cs プロジェクト: npuBug/fb2epub
 private void buttonSave_Click(object sender, EventArgs e)
 {
     SaveFileDialog fileSaveDialog = new SaveFileDialog();
     fileSaveDialog.AddExtension = true;
     fileSaveDialog.AutoUpgradeEnabled = true;
     fileSaveDialog.CheckPathExists = true;
     fileSaveDialog.DefaultExt = "*.xml";
     fileSaveDialog.FileName = "settings.xml";
     fileSaveDialog.Filter = "XML file | *.xml|Any file | *.*";
     fileSaveDialog.OverwritePrompt = true;
     fileSaveDialog.SupportMultiDottedExtensions = true;
     fileSaveDialog.Title = Resources.Fb2epubSettings.SelectFileNameSaveTo;
     fileSaveDialog.ValidateNames = true;
     DialogResult result = fileSaveDialog.ShowDialog();
     if (result == DialogResult.OK)
     {
         ConverterSettingsFile settingsFile = new ConverterSettingsFile();
         try
         {
             settingsFile.Settings.CopyFrom(_settings);
             settingsFile.Save(fileSaveDialog.FileName);
             result = DialogResult.OK;
             Close();
         }
         catch (Exception ex)
         {
             MessageBox.Show(string.Format("Error saving file {0} : {1}", fileSaveDialog.FileName, ex.Message), "Load file error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             Log.Error(ex);
         }
     }
 }
コード例 #3
0
        private void buttonLoad_Click(object sender, EventArgs e)
        {
            OpenFileDialog fileOpenDialog = new OpenFileDialog();

            fileOpenDialog.Multiselect  = false;
            fileOpenDialog.ShowReadOnly = false;
            fileOpenDialog.SupportMultiDottedExtensions = true;
            fileOpenDialog.Title              = Resources.Fb2epubSettings.SelectFileToLoadFrom;
            fileOpenDialog.AddExtension       = true;
            fileOpenDialog.AutoUpgradeEnabled = true;
            fileOpenDialog.CheckFileExists    = true;
            fileOpenDialog.CheckPathExists    = true;
            fileOpenDialog.DefaultExt         = "*.xml";
            fileOpenDialog.Filter             = "XML file | *.xml|Any file | *.*";
            DialogResult result = fileOpenDialog.ShowDialog();

            if (result == DialogResult.OK)
            {
                ConverterSettingsFile settingsFile = new ConverterSettingsFile();
                try
                {
                    settingsFile.Load(fileOpenDialog.FileName);
                    _settings.CopyFrom(settingsFile.Settings);
                    result = DialogResult.OK;
                    Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(string.Format("Error loading file {0} : {1}", fileOpenDialog.FileName, ex.Message), "Load file error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    Log.Error(ex);
                }
            }
        }
コード例 #4
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            if (InvokeRequired)
            {
                OnButtonPressedCallback d = buttonSave_Click;
                Invoke(d, sender, e);
                return;
            }
            SavePathsList();
            SaveXPGT();
            _fontSettings.StoreTo(_settings.ConversionSettings.Fonts);
            appleV2SettingsControl.SaveToSettings(_settings);
            var settingsFile = new ConverterSettingsFile();
            settingsFile.Settings.CopyFrom(_settings);
            try
            {
                settingsFile.Save(SettingsFileName);
            }
            catch(Exception)
            {
                DialogResult = DialogResult.Abort;
            }
            DialogResult = DialogResult.OK;
            Close();

        }
コード例 #5
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            if (InvokeRequired)
            {
                OnButtonPressedCallback d = buttonSave_Click;
                Invoke(d, sender, e);
                return;
            }
            SavePathsList();
            SaveXPGT();
            _fontSettings.StoreTo(_settings.ConversionSettings.Fonts);
            appleV2SettingsControl.SaveToSettings(_settings);
            var settingsFile = new ConverterSettingsFile();

            settingsFile.Settings.CopyFrom(_settings);
            try
            {
                settingsFile.Save(SettingsFileName);
            }
            catch (Exception)
            {
                DialogResult = DialogResult.Abort;
            }
            DialogResult = DialogResult.OK;
            Close();
        }
コード例 #6
0
        private void buttonSave_Click(object sender, EventArgs e)
        {
            SaveFileDialog fileSaveDialog = new SaveFileDialog();

            fileSaveDialog.AddExtension                 = true;
            fileSaveDialog.AutoUpgradeEnabled           = true;
            fileSaveDialog.CheckPathExists              = true;
            fileSaveDialog.DefaultExt                   = "*.xml";
            fileSaveDialog.FileName                     = "settings.xml";
            fileSaveDialog.Filter                       = "XML file | *.xml|Any file | *.*";
            fileSaveDialog.OverwritePrompt              = true;
            fileSaveDialog.SupportMultiDottedExtensions = true;
            fileSaveDialog.Title         = Resources.Fb2epubSettings.SelectFileNameSaveTo;
            fileSaveDialog.ValidateNames = true;
            DialogResult result = fileSaveDialog.ShowDialog();

            if (result == DialogResult.OK)
            {
                ConverterSettingsFile settingsFile = new ConverterSettingsFile();
                try
                {
                    settingsFile.Settings.CopyFrom(_settings);
                    settingsFile.Save(fileSaveDialog.FileName);
                    result = DialogResult.OK;
                    Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(string.Format("Error saving file {0} : {1}", fileSaveDialog.FileName, ex.Message), "Load file error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    Log.Error(ex);
                }
            }
        }
コード例 #7
0
 public bool Test()
 {
     try
     {
         ConverterSettingsFile settingsFile = new ConverterSettingsFile();
         string filePath;
         var settings = new ConverterSettings();
         DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, settings);
         settingsFile.Load(filePath);
         settingsFile.Settings.StandardVersion = _version;
         settingsFile.Settings.FB2ImportSettings.FixMode = FixOptions.UseFb2Fix;
         IFb2EPubConverterEngine converter = ConvertProcessor.CreateConverterEngine(settingsFile.Settings);
         var path =  new StringBuilder();
         path.AppendFormat(@"{0}\TestFiles\Test_001.fb2", Directory.GetCurrentDirectory());
         converter.LoadAndCheckFB2Files(path.ToString());
         string outPath = Path.GetTempPath();
         converter.Save(outPath);
     }
     catch (Exception ex)
     {
         _lastException = ex;
         return false;
     }
     return true;
 }
コード例 #8
0
 /// <summary>
 /// Returns path to the properly located default settings file, if it not there copies it or if nowhere to find - creates a new one
 /// </summary>
 /// <param name="fileLocation"></param>
 /// <param name="defaultSettings"></param>
 public static void EnsureDefaultSettingsFilePresent(out string fileLocation,IConverterSettings defaultSettings)
 {
     SettingsLocation locationDetected;
     if (LocateDefaultSettings(out fileLocation,out locationDetected))
     {
         switch (locationDetected)
         {
             case SettingsLocation.UserAppDataFolder:
                 if (!IsValidFileVersion(fileLocation))
                 {
                     break;
                 }
                 return;
             case SettingsLocation.AppDataFolder:
             case SettingsLocation.ProgramFolder:
                 CopySettingsFileToUserAppDataFolder(fileLocation);
                 return;
         }
     }
     fileLocation    =   GetProperSettingsLocation();
     ConverterSettingsFile settingsFile = new ConverterSettingsFile();
     settingsFile.Settings.CopyFrom(defaultSettings);
     Directory.CreateDirectory(Path.GetDirectoryName(fileLocation));
     settingsFile.Save(fileLocation);
 }
コード例 #9
0
        /// <summary>
        /// Returns path to the properly located default settings file, if it not there copies it or if nowhere to find - creates a new one
        /// </summary>
        /// <param name="fileLocation"></param>
        /// <param name="defaultSettings"></param>
        public static void EnsureDefaultSettingsFilePresent(out string fileLocation, IConverterSettings defaultSettings)
        {
            SettingsLocation locationDetected;

            if (LocateDefaultSettings(out fileLocation, out locationDetected))
            {
                switch (locationDetected)
                {
                case SettingsLocation.UserAppDataFolder:
                    if (!IsValidFileVersion(fileLocation))
                    {
                        break;
                    }
                    return;

                case SettingsLocation.AppDataFolder:
                case SettingsLocation.ProgramFolder:
                    CopySettingsFileToUserAppDataFolder(fileLocation);
                    return;
                }
            }
            fileLocation = GetProperSettingsLocation();
            ConverterSettingsFile settingsFile = new ConverterSettingsFile();

            settingsFile.Settings.CopyFrom(defaultSettings);
            Directory.CreateDirectory(Path.GetDirectoryName(fileLocation));
            settingsFile.Save(fileLocation);
        }
コード例 #10
0
 public void Test()
 {
     ConverterSettingsFile settingsFile = new ConverterSettingsFile();
         string filePath;
         var settings = new ConverterSettings();
         DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, settings);
         settingsFile.Load(filePath);
         settingsFile.Settings.StandardVersion = _version;
         settingsFile.Settings.FB2ImportSettings.FixMode = FixOptions.UseFb2Fix;
         settingsFile.Settings.V3Settings.FootnotesCreationMode = FootnotesGenerationMode.Combined;
         IFb2EPubConverterEngine converter = ConvertProcessor.CreateConverterEngine(settingsFile.Settings);
         var path =  new StringBuilder();
         path.AppendFormat(@"{0}\TestFiles\Test_001.fb2", Directory.GetCurrentDirectory());
         converter.LoadAndCheckFB2Files(path.ToString());
         string outPath = Path.GetTempPath();
         converter.Save(outPath);
 }
コード例 #11
0
 public bool Test()
 {
     try
     {
         var converterFile = new ConverterSettingsFile();
         string fileName = Path.GetTempFileName();
         converterFile.Settings.SetupDefaults();
         converterFile.Save(fileName);
         converterFile.Load(fileName);
         File.Delete(fileName);
     }
     catch(Exception ex)
     {
         _lastException = ex;
         return false;
     }
     return true;
 }
コード例 #12
0
        private void ConverterSettingsForm_Load(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(SettingsFileName)) // if no file name set load defaults
            {
                string filePath;
                var settings = new ConverterSettings();
                DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath,settings);
                SettingsFileName = filePath;
            }
            else if (!File.Exists(SettingsFileName)) // if file not exist load default settings
            {
                string filePath;
                var settings = new ConverterSettings();
                DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, settings);
                SettingsFileName = filePath;
            }

            try
            {
                ConverterSettingsFile settingsFile = new ConverterSettingsFile();
                settingsFile.Load(SettingsFileName);
                _settings.CopyFrom(settingsFile.Settings);
            }
            catch(Exception ex)
            {
                Logger.Log.Error(ex);
                // ignored
            }
            checkBoxTransliterateTOC.Checked = _settings.CommonSettings.TransliterateToc;
            checkBoxTransliterateFileName.Checked = _settings.ConversionSettings.TransliterateFileName;
            checkBoxTransliterateAdditional.Checked = _settings.ConversionSettings.TransliterationSettings.Transliterate;
            textBoxAuthorFormat.Text = _settings.ConversionSettings.AuthorFormat;
            textBoxFileAsFormat.Text = _settings.ConversionSettings.FileAsFormat;
            textBoxNoSequenceFormat.Text = _settings.ConversionSettings.NoSequenceFormat;
            textBoxSequenceFormat.Text = _settings.ConversionSettings.SequenceFormat;
            textBoxNoSeriesFormat.Text = _settings.ConversionSettings.NoSeriesFormat;
            checkBoxAddSequences.Checked = _settings.ConversionSettings.AddSeqToTitle;
            checkBoxFb2Info.Checked = _settings.ConversionSettings.Fb2Info;
            checkBoxConvertAlphaPNG.Checked = _settings.FB2ImportSettings.ConvertAlphaPng;
            checkBoxFlatStructure.Checked = _settings.CommonSettings.FlatStructure;
            checkBoxEmbedStyles.Checked = _settings.CommonSettings.EmbedStyles;
            checkBoxCapitalize.Checked = _settings.CommonSettings.CapitalDrop;
            checkBoxCalibreMetadata.Checked = _settings.V2Settings.AddCalibreMetadata;
            checkBoxSkipAboutPage.Checked = _settings.ConversionSettings.SkipAboutPage;
            checkBoxUseXPGT.Checked = _settings.V2Settings.EnableAdobeTemplate;
            textBoxTemplatePath.Text = _settings.V2Settings.AdobeTemplatePath;
            LoadFixMode();
            LoadIgnoreTitleMode();
            UpdateSequencesGroup();
            _locationsLoaded = _locations.Init();
            if (!_locationsLoaded)
            {
                const string error = "No FB2EPUBExt.INI file found in any of the paths";
                toolTipControl.SetToolTip(tabPagePaths, error);
                toolTipControl.SetToolTip(listBoxPaths, error);
                Logger.Log.Error(error);
            }
            LoadPathsGroup();
            UpdateXPGTGroupGUI();
            LoadFontsList();
            SetupCSSElements();
            UpdateCCSElements();
            LoadAppleSettingsTab();
            appleV2SettingsControl.LoadSettings(_settings);
        }
コード例 #13
0
ファイル: ConvertProcessor.cs プロジェクト: npuBug/fb2epub
 /// <summary>
 /// Load settings from one of the default settings locations or file specified
 /// </summary>
 public void LoadSettings()
 {
     var file = new ConverterSettingsFile();
     if (string.IsNullOrEmpty(_processorSettings.SettingsFileToUse) || !File.Exists(ProcessorSettings.SettingsFileToUse))
     {
         if ( !string.IsNullOrEmpty(_processorSettings.SettingsFileToUse) )
         {
             Logger.Log.ErrorFormat("LoadSettings - the specified settings file \"{0}\" not found, going to use standard settings file",_processorSettings.SettingsFileToUse);
         }
         string filePath;
         DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, file.Settings);
         _processorSettings.SettingsFileToUse = filePath;
     }
     try
     {
         Logger.Log.InfoFormat("Loading settings from {0}", _processorSettings.SettingsFileToUse);
         file.Load(ProcessorSettings.SettingsFileToUse);
     }
     catch (Exception ex)
     {
         Logger.Log.ErrorFormat("LoadSettings - unable to load file {0} , exception: {1}", _processorSettings.SettingsFileToUse, ex);
     }
     try
     {
         _processorSettings.Settings.CopyFrom(file.Settings);
     }
     catch (Exception ex)
     {
         Logger.Log.ErrorFormat("LoadSettings - unable to copy settings , exception: {0}",  ex);
     }
 }
コード例 #14
0
        private void ConverterSettingsForm_Load(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(SettingsFileName)) // if no file name set load defaults
            {
                string filePath;
                var    settings = new ConverterSettings();
                DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, settings);
                SettingsFileName = filePath;
            }
            else if (!File.Exists(SettingsFileName)) // if file not exist load default settings
            {
                string filePath;
                var    settings = new ConverterSettings();
                DefaultSettingsLocatorHelper.EnsureDefaultSettingsFilePresent(out filePath, settings);
                SettingsFileName = filePath;
            }

            try
            {
                ConverterSettingsFile settingsFile = new ConverterSettingsFile();
                settingsFile.Load(SettingsFileName);
                _settings.CopyFrom(settingsFile.Settings);
            }
            catch (Exception ex)
            {
                Logger.Log.Error(ex);
                // ignored
            }
            checkBoxTransliterateTOC.Checked        = _settings.CommonSettings.TransliterateToc;
            checkBoxTransliterateFileName.Checked   = _settings.ConversionSettings.TransliterateFileName;
            checkBoxTransliterateAdditional.Checked = _settings.ConversionSettings.TransliterationSettings.Transliterate;
            textBoxAuthorFormat.Text        = _settings.ConversionSettings.AuthorFormat;
            textBoxFileAsFormat.Text        = _settings.ConversionSettings.FileAsFormat;
            textBoxNoSequenceFormat.Text    = _settings.ConversionSettings.NoSequenceFormat;
            textBoxSequenceFormat.Text      = _settings.ConversionSettings.SequenceFormat;
            textBoxNoSeriesFormat.Text      = _settings.ConversionSettings.NoSeriesFormat;
            checkBoxAddSequences.Checked    = _settings.ConversionSettings.AddSeqToTitle;
            checkBoxFb2Info.Checked         = _settings.ConversionSettings.Fb2Info;
            checkBoxConvertAlphaPNG.Checked = _settings.FB2ImportSettings.ConvertAlphaPng;
            checkBoxFlatStructure.Checked   = _settings.CommonSettings.FlatStructure;
            checkBoxEmbedStyles.Checked     = _settings.CommonSettings.EmbedStyles;
            checkBoxCapitalize.Checked      = _settings.CommonSettings.CapitalDrop;
            checkBoxCalibreMetadata.Checked = _settings.V2Settings.AddCalibreMetadata;
            checkBoxSkipAboutPage.Checked   = _settings.ConversionSettings.SkipAboutPage;
            checkBoxUseXPGT.Checked         = _settings.V2Settings.EnableAdobeTemplate;
            textBoxTemplatePath.Text        = _settings.V2Settings.AdobeTemplatePath;
            LoadFixMode();
            LoadIgnoreTitleMode();
            UpdateSequencesGroup();
            _locationsLoaded = _locations.Init();
            if (!_locationsLoaded)
            {
                const string error = "No FB2EPUBExt.INI file found in any of the paths";
                toolTipControl.SetToolTip(tabPagePaths, error);
                toolTipControl.SetToolTip(listBoxPaths, error);
                Logger.Log.Error(error);
            }
            LoadPathsGroup();
            UpdateXPGTGroupGUI();
            LoadFontsList();
            SetupCSSElements();
            UpdateCCSElements();
            LoadAppleSettingsTab();
            appleV2SettingsControl.LoadSettings(_settings);
        }
コード例 #15
0
 private static bool IsValidFileVersion(string fileLocation)
 {
     return(ConverterSettingsFile.IsValidConfigFile(fileLocation));
 }