Added new wallpapers + changed data loading
This commit is contained in:
parent
716f638908
commit
d1eb97f9b6
7 changed files with 36 additions and 22 deletions
BIN
public/media/wallpapers/Wallpaper5.png
Normal file
BIN
public/media/wallpapers/Wallpaper5.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 197 KiB |
BIN
public/media/wallpapers/Wallpaper6.png
Normal file
BIN
public/media/wallpapers/Wallpaper6.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 216 KiB |
|
|
@ -24,7 +24,7 @@ function AppearanceTab({ virtualRoot, settingsManager }) {
|
||||||
const onChange = (event) => {
|
const onChange = (event) => {
|
||||||
const value = event.target.value;
|
const value = event.target.value;
|
||||||
settings.set("wallpaper", value);
|
settings.set("wallpaper", value);
|
||||||
}
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={styles["Option"]}>
|
<div className={styles["Option"]}>
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,9 @@ export class VirtualBase extends EventEmitter {
|
||||||
* @returns {ThisType}
|
* @returns {ThisType}
|
||||||
*/
|
*/
|
||||||
setAlias(alias) {
|
setAlias(alias) {
|
||||||
|
if (this.alias === alias)
|
||||||
|
return;
|
||||||
|
|
||||||
this.alias = alias;
|
this.alias = alias;
|
||||||
this.getRoot().addShortcut(alias, this);
|
this.getRoot().addShortcut(alias, this);
|
||||||
this.getRoot().saveData();
|
this.getRoot().saveData();
|
||||||
|
|
@ -41,6 +44,9 @@ export class VirtualBase extends EventEmitter {
|
||||||
* @returns {VirtualBase}
|
* @returns {VirtualBase}
|
||||||
*/
|
*/
|
||||||
setParent(parent) {
|
setParent(parent) {
|
||||||
|
if (this.parent === parent)
|
||||||
|
return;
|
||||||
|
|
||||||
this.parent = parent;
|
this.parent = parent;
|
||||||
this.getRoot().saveData();
|
this.getRoot().saveData();
|
||||||
return this;
|
return this;
|
||||||
|
|
@ -52,9 +58,7 @@ export class VirtualBase extends EventEmitter {
|
||||||
parent.getRoot().saveData();
|
parent.getRoot().saveData();
|
||||||
}
|
}
|
||||||
|
|
||||||
open() {
|
open() {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
get path() {
|
get path() {
|
||||||
return this.alias ?? this.absolutePath;
|
return this.alias ?? this.absolutePath;
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,9 @@ export class VirtualFile extends VirtualBase {
|
||||||
* @returns {VirtualFile}
|
* @returns {VirtualFile}
|
||||||
*/
|
*/
|
||||||
setSource(source) {
|
setSource(source) {
|
||||||
|
if (this.source === source)
|
||||||
|
return;
|
||||||
|
|
||||||
this.source = source;
|
this.source = source;
|
||||||
this.content = null;
|
this.content = null;
|
||||||
|
|
||||||
|
|
@ -50,6 +53,9 @@ export class VirtualFile extends VirtualBase {
|
||||||
* @returns {VirtualFile}
|
* @returns {VirtualFile}
|
||||||
*/
|
*/
|
||||||
setContent(content) {
|
setContent(content) {
|
||||||
|
if (this.content === content)
|
||||||
|
return;
|
||||||
|
|
||||||
this.content = content;
|
this.content = content;
|
||||||
this.source = null;
|
this.source = null;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -97,9 +97,12 @@ export class VirtualFolder extends VirtualBase {
|
||||||
* @returns {VirtualFolder}
|
* @returns {VirtualFolder}
|
||||||
*/
|
*/
|
||||||
createFile(name, extension, callback) {
|
createFile(name, extension, callback) {
|
||||||
const newFile = new VirtualFile(name, extension);
|
let newFile = this.findFile(name, extension);
|
||||||
this.files.push(newFile);
|
if (newFile == null) {
|
||||||
newFile.parent = this;
|
newFile = new VirtualFile(name, extension);
|
||||||
|
this.files.push(newFile);
|
||||||
|
newFile.parent = this;
|
||||||
|
}
|
||||||
callback?.(newFile);
|
callback?.(newFile);
|
||||||
this.getRoot().saveData();
|
this.getRoot().saveData();
|
||||||
return this;
|
return this;
|
||||||
|
|
@ -132,9 +135,12 @@ export class VirtualFolder extends VirtualBase {
|
||||||
* @param {createFolderCallback} callback
|
* @param {createFolderCallback} callback
|
||||||
*/
|
*/
|
||||||
createFolder(name, callback) {
|
createFolder(name, callback) {
|
||||||
const newFolder = new VirtualFolder(name);
|
let newFolder = this.findSubFolder(name);
|
||||||
this.subFolders.push(newFolder);
|
if (newFolder == null) {
|
||||||
newFolder.parent = this;
|
newFolder = new VirtualFolder(name);
|
||||||
|
this.subFolders.push(newFolder);
|
||||||
|
newFolder.parent = this;
|
||||||
|
}
|
||||||
callback?.(newFolder);
|
callback?.(newFolder);
|
||||||
this.getRoot().saveData();
|
this.getRoot().saveData();
|
||||||
return this;
|
return this;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
import { StorageManager } from "../storage/storage.js";
|
import { StorageManager } from "../storage/storage.js";
|
||||||
|
|
||||||
import { VirtualFile } from "./virtual-file.js";
|
import { VirtualFile } from "./virtual-file.js";
|
||||||
import { VirtualFolder } from "./virtual-folder.js";
|
import { VirtualFolder } from "./virtual-folder.js";
|
||||||
|
|
||||||
|
export const WALLPAPER_COUNT = 6;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A virtual folder that serves as the root folder
|
* A virtual folder that serves as the root folder
|
||||||
*/
|
*/
|
||||||
|
|
@ -49,15 +50,11 @@ export class VirtualRoot extends VirtualFolder {
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.createFolder("Images", (folder) => {
|
.createFolder("Images", (folder) => {
|
||||||
folder.createFile("Wallpaper1", "png", (file) => {
|
for (let i = 0; i < WALLPAPER_COUNT; i++) {
|
||||||
file.setSource("/media/wallpapers/Wallpaper1.png");
|
folder.createFile(`Wallpaper${i + 1}`, "png", (file) => {
|
||||||
}).createFile("Wallpaper2", "png", (file) => {
|
file.setSource(`/media/wallpapers/Wallpaper${i + 1}.png`);
|
||||||
file.setSource("/media/wallpapers/Wallpaper2.png");
|
});
|
||||||
}).createFile("Wallpaper3", "png", (file) => {
|
}
|
||||||
file.setSource("/media/wallpapers/Wallpaper3.png");
|
|
||||||
}).createFile("Wallpaper4", "png", (file) => {
|
|
||||||
file.setSource("/media/wallpapers/Wallpaper4.png");
|
|
||||||
});
|
|
||||||
})
|
})
|
||||||
.createFolder("Documents", (folder) => {
|
.createFolder("Documents", (folder) => {
|
||||||
folder.createFile("text", "txt", (file) => {
|
folder.createFile("text", "txt", (file) => {
|
||||||
|
|
@ -93,7 +90,7 @@ export class VirtualRoot extends VirtualFolder {
|
||||||
loadData() {
|
loadData() {
|
||||||
let data = StorageManager.load("data");
|
let data = StorageManager.load("data");
|
||||||
if (data == null)
|
if (data == null)
|
||||||
return this.loadDefaultData();
|
return;
|
||||||
|
|
||||||
let object;
|
let object;
|
||||||
try {
|
try {
|
||||||
|
|
@ -102,7 +99,7 @@ export class VirtualRoot extends VirtualFolder {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
if (object == null)
|
if (object == null)
|
||||||
return this.loadDefaultData();
|
return;
|
||||||
|
|
||||||
const shortcuts = {...object.scs};
|
const shortcuts = {...object.scs};
|
||||||
|
|
||||||
|
|
@ -163,6 +160,7 @@ export class VirtualRoot extends VirtualFolder {
|
||||||
init() {
|
init() {
|
||||||
this.initiated = false;
|
this.initiated = false;
|
||||||
this.setAlias("/");
|
this.setAlias("/");
|
||||||
|
this.loadDefaultData();
|
||||||
this.loadData();
|
this.loadData();
|
||||||
this.initiated = true;
|
this.initiated = true;
|
||||||
return this;
|
return this;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue