mirror of
https://github.com/Swordfish90/cool-retro-term.git
synced 2025-01-31 02:01:19 +00:00
Initial support for profiles. Some test profiles have been added.
This commit is contained in:
parent
fdfd57a187
commit
10401481e5
@ -29,6 +29,7 @@ RowLayout {
|
|||||||
onValueChanged: setting_component._value = slider.value;
|
onValueChanged: setting_component._value = slider.value;
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
enabled: check.checked
|
enabled: check.checked
|
||||||
|
value: setting_component._value
|
||||||
|
|
||||||
Component.onCompleted: slider.value = setting_component._value
|
Component.onCompleted: slider.value = setting_component._value
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,10 @@ ApplicationWindow {
|
|||||||
title: qsTr("Profile")
|
title: qsTr("Profile")
|
||||||
ComboBox{
|
ComboBox{
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
|
model: shadersettings.profiles_list
|
||||||
|
onCurrentIndexChanged: {
|
||||||
|
shadersettings.loadProfile(shadersettings.profiles_list.get(currentIndex).obj_name);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -53,10 +57,10 @@ ApplicationWindow {
|
|||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
decimals: 1
|
decimals: 1
|
||||||
stepSize: 0.1
|
stepSize: 0.1
|
||||||
|
value: shadersettings.font_scaling
|
||||||
minimumValue: 0.5
|
minimumValue: 0.5
|
||||||
maximumValue: 1.5
|
maximumValue: 1.5
|
||||||
onValueChanged: shadersettings.font_scaling = value;
|
onValueChanged: shadersettings.font_scaling = value;
|
||||||
Component.onCompleted: value = shadersettings.font_scaling;
|
|
||||||
}
|
}
|
||||||
Item{Layout.fillHeight: true}
|
Item{Layout.fillHeight: true}
|
||||||
ColorButton{
|
ColorButton{
|
||||||
|
@ -23,6 +23,8 @@ Item{
|
|||||||
property int font_index: 2
|
property int font_index: 2
|
||||||
property var fonts_list: fontlist
|
property var fonts_list: fontlist
|
||||||
|
|
||||||
|
property var profiles_list: profileslist
|
||||||
|
|
||||||
onFont_indexChanged: handleFontChanged();
|
onFont_indexChanged: handleFontChanged();
|
||||||
onFont_scalingChanged: handleFontChanged();
|
onFont_scalingChanged: handleFontChanged();
|
||||||
|
|
||||||
@ -72,8 +74,8 @@ Item{
|
|||||||
|
|
||||||
Storage{id: storage}
|
Storage{id: storage}
|
||||||
|
|
||||||
function retrieveFromDB(){
|
function loadProfile(profilename){
|
||||||
var settings = storage.getSetting("CURRENT_SETTINGS");
|
var settings = storage.getSetting(profilename);
|
||||||
if(!settings) return;
|
if(!settings) return;
|
||||||
|
|
||||||
settings = JSON.parse(settings);
|
settings = JSON.parse(settings);
|
||||||
@ -94,7 +96,7 @@ Item{
|
|||||||
font_scaling = settings.font_scaling ? settings.font_scaling: font_scaling;
|
font_scaling = settings.font_scaling ? settings.font_scaling: font_scaling;
|
||||||
}
|
}
|
||||||
|
|
||||||
function storeToDb(){
|
function storeCurrentSettings(){
|
||||||
var settings = {
|
var settings = {
|
||||||
ambient_light : ambient_light,
|
ambient_light : ambient_light,
|
||||||
background_color: background_color,
|
background_color: background_color,
|
||||||
@ -109,14 +111,41 @@ Item{
|
|||||||
font_scaling: font_scaling
|
font_scaling: font_scaling
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log(JSON.stringify(settings));
|
||||||
storage.setSetting("CURRENT_SETTINGS", JSON.stringify(settings));
|
storage.setSetting("CURRENT_SETTINGS", JSON.stringify(settings));
|
||||||
}
|
}
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
retrieveFromDB();
|
//Save all the profiles into local storage
|
||||||
|
for(var i=0; i<profileslist.count; i++){
|
||||||
|
var temp = profileslist.get(i);
|
||||||
|
storage.setSetting(temp.obj_name, temp.obj_string);
|
||||||
|
}
|
||||||
|
|
||||||
|
loadProfile("CURRENT_SETTINGS");
|
||||||
}
|
}
|
||||||
Component.onDestruction: {
|
Component.onDestruction: {
|
||||||
storeToDb();
|
storeCurrentSettings();
|
||||||
//storage.dropSettings();
|
storage.dropSettings();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ListModel{
|
||||||
|
id: profileslist
|
||||||
|
ListElement{
|
||||||
|
text: "Default"
|
||||||
|
obj_name: "DEFAULT"
|
||||||
|
obj_string: '{"ambient_light":0.3,"background_color":"#000000","font_color":"#00ff3b","font_index":0,"font_scaling":1,"frames_index":2,"glowing_line_strength":0.4,"noise_strength":0.1,"scanlines":true,"screen_distortion":0.15,"screen_flickering":0.07}'
|
||||||
|
}
|
||||||
|
ListElement{
|
||||||
|
text: "Commodore 64"
|
||||||
|
obj_name: "COMMODORE64"
|
||||||
|
obj_string: '{"ambient_light":0.2,"background_color":"#5048b2","font_color":"#8bcad1","font_index":2,"font_scaling":1,"frames_index":1,"glowing_line_strength":0.2,"noise_strength":0.05,"scanlines":false,"screen_distortion":0.1,"screen_flickering":0.03}'
|
||||||
|
}
|
||||||
|
ListElement{
|
||||||
|
text: "IBM Dos"
|
||||||
|
obj_name: "IBMDOS"
|
||||||
|
obj_string: '{"ambient_light":0.4,"background_color":"#000000","font_color":"#ffffff","font_index":3,"font_scaling":1,"frames_index":1,"glowing_line_strength":0,"noise_strength":0,"scanlines":false,"screen_distortion":0.05,"screen_flickering":0.00}'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user