mirror of
				https://github.com/Swordfish90/cool-retro-term.git
				synced 2025-10-31 15:12:28 +00:00 
			
		
		
		
	Refactoring: port non visual components from Item to QtObject.
This commit is contained in:
		| @@ -22,7 +22,7 @@ import QtQuick 2.2 | |||||||
|  |  | ||||||
| import "utils.js" as Utils | import "utils.js" as Utils | ||||||
|  |  | ||||||
| Item{ | QtObject{ | ||||||
|     property string version: "0.9" |     property string version: "0.9" | ||||||
|  |  | ||||||
|     // GENERAL SETTINGS /////////////////////////////////////////////////// |     // GENERAL SETTINGS /////////////////////////////////////////////////// | ||||||
| @@ -76,7 +76,6 @@ Item{ | |||||||
|  |  | ||||||
|     property int rasterization: no_rasterization |     property int rasterization: no_rasterization | ||||||
|  |  | ||||||
|     property alias profiles_list: profileslist |  | ||||||
|     property int profiles_index: 0 |     property int profiles_index: 0 | ||||||
|  |  | ||||||
|     // FONTS ////////////////////////////////////////////////////////////////// |     // FONTS ////////////////////////////////////////////////////////////////// | ||||||
| @@ -89,9 +88,7 @@ Item{ | |||||||
|  |  | ||||||
|     signal terminalFontChanged(string fontSource, int pixelSize, int lineSpacing, real screenScaling, real fontWidth) |     signal terminalFontChanged(string fontSource, int pixelSize, int lineSpacing, real screenScaling, real fontWidth) | ||||||
|  |  | ||||||
|     Loader{ |     property Loader fontManager: Loader{ | ||||||
|         id: fontManager |  | ||||||
|  |  | ||||||
|         states: [ |         states: [ | ||||||
|             State { when: rasterization == no_rasterization |             State { when: rasterization == no_rasterization | ||||||
|                 PropertyChanges {target: fontManager; source: "Fonts.qml" } }, |                 PropertyChanges {target: fontManager; source: "Fonts.qml" } }, | ||||||
| @@ -146,11 +143,10 @@ Item{ | |||||||
|     // FRAMES ///////////////////////////////////////////////////////////////// |     // FRAMES ///////////////////////////////////////////////////////////////// | ||||||
|  |  | ||||||
|     property bool _frameReflections: false |     property bool _frameReflections: false | ||||||
|     property bool reflectionsAllowed: framelist.get(frames_index).reflections |     property bool reflectionsAllowed: frames_list.get(frames_index).reflections | ||||||
|     property bool frameReflections: _frameReflections && reflectionsAllowed |     property bool frameReflections: _frameReflections && reflectionsAllowed | ||||||
|  |  | ||||||
|     ListModel{ |     property ListModel frames_list: ListModel{ | ||||||
|         id: framelist |  | ||||||
|         ListElement{text: "No frame"; source: ""; reflections: false} |         ListElement{text: "No frame"; source: ""; reflections: false} | ||||||
|         ListElement{text: "Simple white frame"; source: "./frames/WhiteSimpleFrame.qml"; reflections: true} |         ListElement{text: "Simple white frame"; source: "./frames/WhiteSimpleFrame.qml"; reflections: true} | ||||||
|         ListElement{text: "Rough black frame"; source: "./frames/BlackRoughFrame.qml"; reflections: true} |         ListElement{text: "Rough black frame"; source: "./frames/BlackRoughFrame.qml"; reflections: true} | ||||||
| @@ -158,11 +154,10 @@ Item{ | |||||||
|  |  | ||||||
|     property string frame_source: frames_list.get(frames_index).source |     property string frame_source: frames_list.get(frames_index).source | ||||||
|     property int frames_index: 1 |     property int frames_index: 1 | ||||||
|     property alias frames_list: framelist |  | ||||||
|  |  | ||||||
|     // DB STORAGE ///////////////////////////////////////////////////////////// |     // DB STORAGE ///////////////////////////////////////////////////////////// | ||||||
|  |  | ||||||
|     Storage{id: storage} |     property Storage storage: Storage{ } | ||||||
|  |  | ||||||
|     function stringify(obj) { |     function stringify(obj) { | ||||||
|         var replacer = function(key, val) { |         var replacer = function(key, val) { | ||||||
| @@ -314,8 +309,8 @@ Item{ | |||||||
|  |  | ||||||
|     function composeCustomProfilesString(){ |     function composeCustomProfilesString(){ | ||||||
|         var customProfiles = [] |         var customProfiles = [] | ||||||
|         for(var i=0; i<profileslist.count; i++){ |         for(var i=0; i<profiles_list.count; i++){ | ||||||
|             var profile = profileslist.get(i); |             var profile = profiles_list.get(i); | ||||||
|             if(profile.builtin) continue; |             if(profile.builtin) continue; | ||||||
|             customProfiles.push({text: profile.text, obj_string: profile.obj_string, builtin: false}) |             customProfiles.push({text: profile.text, obj_string: profile.obj_string, builtin: false}) | ||||||
|         } |         } | ||||||
| @@ -327,19 +322,18 @@ Item{ | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     function loadProfile(index){ |     function loadProfile(index){ | ||||||
|         var profile = profileslist.get(index); |         var profile = profiles_list.get(index); | ||||||
|         loadProfileString(profile.obj_string); |         loadProfileString(profile.obj_string); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     function addNewCustomProfile(name){ |     function addNewCustomProfile(name){ | ||||||
|         var profileString = composeProfileString(); |         var profileString = composeProfileString(); | ||||||
|         profileslist.append({text: name, obj_string: profileString, builtin: false}); |         profiles_list.append({text: name, obj_string: profileString, builtin: false}); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     // PROFILES /////////////////////////////////////////////////////////////// |     // PROFILES /////////////////////////////////////////////////////////////// | ||||||
|  |  | ||||||
|     ListModel{ |     property ListModel profiles_list: ListModel{ | ||||||
|         id: profileslist |  | ||||||
|         ListElement{ |         ListElement{ | ||||||
|             text: "Default Amber" |             text: "Default Amber" | ||||||
|             obj_string: '{"ambient_light":0.2,"background_color":"#000000","bloom_strength":0.65,"brightness":0.5,"brightness_flickering":0.1,"contrast":0.85,"fontName":"TERMINUS","font_color":"#ff8100","frames_index":1,"glowing_line_strength":0.2,"horizontal_sincronization":0.08,"jitter":0.18,"motion_blur":0.4,"noise_strength":0.1,"rasterization":0,"screen_distortion":0.1,"windowOpacity":1,"chroma_color":0,"saturation_color":0,"rgb_shift":0,"fontWidth":1.0}' |             obj_string: '{"ambient_light":0.2,"background_color":"#000000","bloom_strength":0.65,"brightness":0.5,"brightness_flickering":0.1,"contrast":0.85,"fontName":"TERMINUS","font_color":"#ff8100","frames_index":1,"glowing_line_strength":0.2,"horizontal_sincronization":0.08,"jitter":0.18,"motion_blur":0.4,"noise_strength":0.1,"rasterization":0,"screen_distortion":0.1,"windowOpacity":1,"chroma_color":0,"saturation_color":0,"rgb_shift":0,"fontWidth":1.0}' | ||||||
| @@ -388,8 +382,8 @@ Item{ | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     function getProfileIndexByName(name) { |     function getProfileIndexByName(name) { | ||||||
|         for (var i = 0; i < profileslist.count; i++) { |         for (var i = 0; i < profiles_list.count; i++) { | ||||||
|             if(profileslist.get(i).text === name) |             if(profiles_list.get(i).text === name) | ||||||
|                 return i; |                 return i; | ||||||
|         } |         } | ||||||
|         return -1; |         return -1; | ||||||
|   | |||||||
| @@ -20,10 +20,9 @@ | |||||||
|  |  | ||||||
| import QtQuick 2.2 | import QtQuick 2.2 | ||||||
|  |  | ||||||
| Item{ | QtObject{ | ||||||
|     property int selectedFontIndex |     property int selectedFontIndex | ||||||
|     property real scaling |     property real scaling | ||||||
|     property alias fontlist: fontlist |  | ||||||
|     property var _font: fontlist.get(selectedFontIndex) |     property var _font: fontlist.get(selectedFontIndex) | ||||||
|     property var source: _font.source |     property var source: _font.source | ||||||
|     property int pixelSize: _font.pixelSize |     property int pixelSize: _font.pixelSize | ||||||
| @@ -31,8 +30,7 @@ Item{ | |||||||
|     property real screenScaling: scaling * _font.baseScaling |     property real screenScaling: scaling * _font.baseScaling | ||||||
|     property real defaultFontWidth: fontlist.get(selectedFontIndex).fontWidth |     property real defaultFontWidth: fontlist.get(selectedFontIndex).fontWidth | ||||||
|  |  | ||||||
|     ListModel{ |     property ListModel fontlist: ListModel{ | ||||||
|         id: fontlist |  | ||||||
|         ListElement{ |         ListElement{ | ||||||
|             name: "COMMODORE_PET" |             name: "COMMODORE_PET" | ||||||
|             text: "Commodore PET (1977)" |             text: "Commodore PET (1977)" | ||||||
|   | |||||||
| @@ -20,10 +20,9 @@ | |||||||
|  |  | ||||||
| import QtQuick 2.2 | import QtQuick 2.2 | ||||||
|  |  | ||||||
| Item{ | QtObject{ | ||||||
|     property int selectedFontIndex |     property int selectedFontIndex | ||||||
|     property real scaling |     property real scaling | ||||||
|     property alias fontlist: fontlist |  | ||||||
|     property var _font: fontlist.get(selectedFontIndex) |     property var _font: fontlist.get(selectedFontIndex) | ||||||
|     property var source: _font.source |     property var source: _font.source | ||||||
|     property int pixelSize: _font.pixelSize |     property int pixelSize: _font.pixelSize | ||||||
| @@ -31,8 +30,7 @@ Item{ | |||||||
|     property real screenScaling: scaling * _font.baseScaling |     property real screenScaling: scaling * _font.baseScaling | ||||||
|     property real defaultFontWidth: fontlist.get(selectedFontIndex).fontWidth |     property real defaultFontWidth: fontlist.get(selectedFontIndex).fontWidth | ||||||
|  |  | ||||||
|     ListModel{ |     property ListModel fontlist: ListModel{ | ||||||
|         id: fontlist |  | ||||||
|         ListElement{ |         ListElement{ | ||||||
|             name: "COMMODORE_PET" |             name: "COMMODORE_PET" | ||||||
|             text: "Commodore PET (1977)" |             text: "Commodore PET (1977)" | ||||||
|   | |||||||
| @@ -20,10 +20,9 @@ | |||||||
|  |  | ||||||
| import QtQuick 2.2 | import QtQuick 2.2 | ||||||
|  |  | ||||||
| Item{ | QtObject{ | ||||||
|     property int selectedFontIndex |     property int selectedFontIndex | ||||||
|     property real scaling |     property real scaling | ||||||
|     property alias fontlist: fontlist |  | ||||||
|     property var source: fontlist.get(selectedFontIndex).source |     property var source: fontlist.get(selectedFontIndex).source | ||||||
|     property var _font: fontlist.get(selectedFontIndex) |     property var _font: fontlist.get(selectedFontIndex) | ||||||
|     property int pixelSize: _font.pixelSize * scaling |     property int pixelSize: _font.pixelSize * scaling | ||||||
| @@ -33,8 +32,7 @@ Item{ | |||||||
|  |  | ||||||
|     //In this configuration lineSpacing is proportional to pixelSize. |     //In this configuration lineSpacing is proportional to pixelSize. | ||||||
|  |  | ||||||
|     ListModel{ |     property ListModel fontlist: ListModel{ | ||||||
|         id: fontlist |  | ||||||
|         ListElement{ |         ListElement{ | ||||||
|             name: "TERMINUS" |             name: "TERMINUS" | ||||||
|             text: "Terminus (Modern)" |             text: "Terminus (Modern)" | ||||||
|   | |||||||
| @@ -21,7 +21,7 @@ | |||||||
| import QtQuick 2.2 | import QtQuick 2.2 | ||||||
| import QtQuick.LocalStorage 2.0 | import QtQuick.LocalStorage 2.0 | ||||||
|  |  | ||||||
| Item { | QtObject { | ||||||
|     property bool initialized: false |     property bool initialized: false | ||||||
|  |  | ||||||
|     function getDatabase() { |     function getDatabase() { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user