diff --git a/index.html b/index.html
index 70fb84a..d618823 100644
--- a/index.html
+++ b/index.html
@@ -237,7 +237,7 @@
-
+
diff --git a/js/app.js b/js/app.js
index b6de1b6..c918cfc 100644
--- a/js/app.js
+++ b/js/app.js
@@ -15,7 +15,7 @@ ready(function(){
recreateShortcut();
}
handlePlatformSpecificDisplay();
- updatePresetList();
+ preset_updateList();
checkForNewRelease();
document.isStarting = false;
diff --git a/js/methods.js b/js/methods.js
index 3783a0e..beede3c 100644
--- a/js/methods.js
+++ b/js/methods.js
@@ -439,124 +439,6 @@ function getCurrentSettings(keyType) {
}
}
-/**
- * Will save the current settings to a new preset.
- */
-function saveToNewPreset() {
- const settingsToBeSaved = getCurrentSettings("inputId");
- const currentPresets = require('electron-settings').get('presets') || {};
- var newPresetName = document.getElementById('new_preset_name').value;
-
- if (!newPresetName) {
- notification('danger', 'You must provide a preset name.');
- return;
- }
-
- if (typeof currentPresets[newPresetName] !== "undefined") {
- newPresetName = findUnusedNewPresetName(newPresetName);
- notification('warning', `This preset name already exist, your preset has been saved with the name "${newPresetName}".`);
- }
-
- const newPresetList = Object.assign(
- {},
- currentPresets,
- { [newPresetName]: settingsToBeSaved }
- );
-
- require('electron-settings').set('presets', newPresetList);
- appendLog(`saveToNewPreset(): Saved preset ${newPresetName}, ${JSON.stringify(newPresetList)}`);
- updatePresetList();
- if (newPresetName === document.getElementById('new_preset_name').value) {
- notification('success', `The preset ${newPresetName} has been saved.`);
- }
-}
-
-/**
- * This recursive function will return an available preset name to be used to save a preset.
- *
- * @param {string} newPresetName The preset name to be edited.
- * @param {number} suffix The preset name suffix
- */
-function findUnusedNewPresetName(newPresetName, suffix = 1) {
- const currentPresets = require('electron-settings').get('presets') || {};
- if (typeof currentPresets[`${newPresetName}${suffix}`] !== "undefined") {
- suffix++;
- return findUnusedNewPresetName(newPresetName, suffix);
- }
- return `${newPresetName}${suffix}`;
-}
-
-/**
- * This will update the preset tab based on saved presets.
- */
-function updatePresetList() {
- var presetTab = document.getElementById('presetTab');
- const currentPresets = require('electron-settings').get('presets') || {};
-
- var content = '';
- content += '';
-
- if (Object.keys(currentPresets).length === 0) {
- content += `- No preset has been created yet, use "Save to preset" button on Controller tab to create one.
`;
- }
-
- for (const presetName in currentPresets) {
- if (currentPresets.hasOwnProperty(presetName)) {
- const preset = currentPresets[presetName];
-
- let valueSummary = [];
- for (const key in preset) {
- if (preset.hasOwnProperty(key) && key.indexOf('_range') !== -1 && key.indexOf('apply_') != 0) {
- const value = preset[key];
- valueSummary.push(value);
- }
- }
- valueSummary.join(', ');
-
- content += `
- -
- ${presetName}
-
-
- ${valueSummary}
-
- `;
- }
- }
- content += '
';
- presetTab.innerHTML = content;
-}
-
-/**
- * This will apply the preset you asked for.
- * @param {string} presetName The preset name to be applied.
- */
-function applyPreset(presetName) {
- const presets = require('electron-settings').get(`presets.${presetName}`);
- appendLog(`applyPreset(): preset ${presetName}: ${JSON.stringify(presets)}`);
- var ret = require('electron-settings').set("latest_controller_tabs_settings", presets);
- appendLog(`applyPreset(): saved preset: ${JSON.stringify(ret)}`);
- loadLatestUsedSettings();
- applyRyzenSettings();
- toggleOptionDisplayBasedOnApplyCheckbox();
-}
-
-/**
- * This will delete the preset you asked for.
- * @param {string} presetName The preset name to be deleted.
- */
-function presetDeletion(presetName) {
- var presets = require('electron-settings').get(`presets`);
- delete presets[presetName];
- require('electron-settings').set(`presets`, presets);
- notification('success', `The preset ${presetName} has been deleted.`);
- updatePresetList();
-}
-
/**
* Will check for new release.
*/
diff --git a/js/preset.js b/js/preset.js
index ca4bfa5..54834fa 100644
--- a/js/preset.js
+++ b/js/preset.js
@@ -27,6 +27,124 @@ function preset_import() {
presetsToBeImported
);
settings.set('presets', updatedPresets);
- updatePresetList();
+ preset_updateList();
modalTextArea.innerText = '';
}
+
+/**
+ * Will save the current settings to a new preset.
+ */
+function preset_createNewPreset() {
+ const settingsToBeSaved = getCurrentSettings("inputId");
+ const currentPresets = require('electron-settings').get('presets') || {};
+ var newPresetName = document.getElementById('new_preset_name').value;
+
+ if (!newPresetName) {
+ notification('danger', 'You must provide a preset name.');
+ return;
+ }
+
+ if (typeof currentPresets[newPresetName] !== "undefined") {
+ newPresetName = preset_findUnusedPresetName(newPresetName);
+ notification('warning', `This preset name already exist, your preset has been saved with the name "${newPresetName}".`);
+ }
+
+ const newPresetList = Object.assign(
+ {},
+ currentPresets,
+ { [newPresetName]: settingsToBeSaved }
+ );
+
+ require('electron-settings').set('presets', newPresetList);
+ appendLog(`preset_createNewPreset(): Saved preset ${newPresetName}, ${JSON.stringify(newPresetList)}`);
+ preset_updateList();
+ if (newPresetName === document.getElementById('new_preset_name').value) {
+ notification('success', `The preset ${newPresetName} has been saved.`);
+ }
+}
+
+/**
+ * This recursive function will return an available preset name to be used to save a preset.
+ *
+ * @param {string} newPresetName The preset name to be edited.
+ * @param {number} suffix The preset name suffix
+ */
+function preset_findUnusedPresetName(newPresetName, suffix = 1) {
+ const currentPresets = require('electron-settings').get('presets') || {};
+ if (typeof currentPresets[`${newPresetName}${suffix}`] !== "undefined") {
+ suffix++;
+ return preset_findUnusedPresetName(newPresetName, suffix);
+ }
+ return `${newPresetName}${suffix}`;
+}
+
+/**
+ * This will update the preset tab based on saved presets.
+ */
+function preset_updateList() {
+ var presetTab = document.getElementById('presetTab');
+ const currentPresets = require('electron-settings').get('presets') || {};
+
+ var content = '';
+ content += '';
+
+ if (Object.keys(currentPresets).length === 0) {
+ content += `- No preset has been created yet, import them or use the "Save to preset" button on Controller tab to create one.
`;
+ }
+
+ for (const presetName in currentPresets) {
+ if (currentPresets.hasOwnProperty(presetName)) {
+ const preset = currentPresets[presetName];
+
+ let valueSummary = [];
+ for (const key in preset) {
+ if (preset.hasOwnProperty(key) && key.indexOf('_range') !== -1 && key.indexOf('apply_') != 0) {
+ const value = preset[key];
+ valueSummary.push(value);
+ }
+ }
+ valueSummary.join(', ');
+
+ content += `
+ -
+ ${presetName}
+
+
+ ${valueSummary}
+
+ `;
+ }
+ }
+ content += '
';
+ presetTab.innerHTML = content;
+}
+
+/**
+ * This will apply the preset you asked for.
+ * @param {string} presetName The preset name to be applied.
+ */
+function preset_apply(presetName) {
+ const presets = require('electron-settings').get(`presets.${presetName}`);
+ appendLog(`preset_apply(): preset ${presetName}: ${JSON.stringify(presets)}`);
+ var ret = require('electron-settings').set("latest_controller_tabs_settings", presets);
+ appendLog(`preset_apply(): saved preset: ${JSON.stringify(ret)}`);
+ loadLatestUsedSettings();
+ applyRyzenSettings();
+ toggleOptionDisplayBasedOnApplyCheckbox();
+}
+
+/**
+ * This will delete the preset you asked for.
+ * @param {string} presetName The preset name to be deleted.
+ */
+function preset_deletion(presetName) {
+ var presets = require('electron-settings').get(`presets`);
+ delete presets[presetName];
+ require('electron-settings').set(`presets`, presets);
+ notification('success', `The preset ${presetName} has been deleted.`);
+ preset_updateList();
+}