1
0
Fork 0

Fix merge conflicts

master
stweedo 2023-06-20 01:28:41 -05:00
parent 2707a1206e
commit 37f3e10008
4 changed files with 0 additions and 120 deletions

View File

@ -6,11 +6,7 @@ Box Clock is a customizable clock app for Bangle.js 2 that features an interacti
__Drag & Drop:__
<<<<<<< HEAD
This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing.
=======
This intuitive feature allows you to reposition any element (box) on the clock face with ease. Tap on the box(s) you want to move and the border will show, drag into position and tap outside of the boxes to finish placing. **Note:** Roll the tip of your finger slowly on the screen for fine adjustments.
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
__Double Tap to Save:__
@ -18,7 +14,6 @@ After you've found the perfect position for your boxes, you can save their posit
__JSON Configuration:__
<<<<<<< HEAD
Each box can be customized extensively via a simple JSON configuration. You can also add a custom text string to your configuration with the "string" attribute. Here's what an example configuration might look like:
## Config File Structure
@ -26,17 +21,6 @@ Each box can be customized extensively via a simple JSON configuration. You can
```
{
"customBox": {
=======
Each box can be customized extensively via a simple JSON configuration. You can add a custom text string to your configuration with the "string" parameter and you can match system theme colors by using "fg", "bg", "fg2", "bg2", "fgH", or "bgH" for any of the color parameters.
## Config File Structure
Here's what an example configuration might look like:
```
{
"customBox": { //
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
"string": "Your text here",
"font": "CustomFont", // Custom fonts must be removed in setUI
"fontSize": 1,
@ -48,7 +32,6 @@ Here's what an example configuration might look like:
"yPadding": -4,
"xOffset": 0,
"yOffset": 3,
<<<<<<< HEAD
"boxPos": { "x": 0.5, "y": 0.5 },
"prefix": "", // Adds a string to the beginning of the main string
"suffix": "", // Adds a string to the end of the main string
@ -57,20 +40,11 @@ Here's what an example configuration might look like:
},
"bg": { // Can also be removed for no backround
=======
"boxPos": { "x": 0.5, "y": 0.5 }
},
"bg": { // Can also be removed for no background
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
"img": "YourImageName.img"
}
}
```
<<<<<<< HEAD
* **Box Name:** The name of your text box. The app includes functional support for "time", "date", "meridian", "dow" (Day of Week), "batt" (Battery), and "step" (Step count). You can add additional custom boxes with unique titles.
=======
__Breakdown of Parameters:__
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
* **string:** The text string to be displayed inside the box.
@ -92,7 +66,6 @@ __Breakdown of Parameters:__
* **boxPos:** Initial position of the box on the screen. Values are fractions of the screen width (x) and height (y), so { "x": 0.5, "y": 0.5 } would be in the middle of the screen.
<<<<<<< HEAD
* **prefix:** Adds a string to the beginning of the main string. For example, you can set "prefix": "Steps: " to display "Steps: 100" for the step count.
* **suffix:** Adds a string to the end of the main string. For example, you can set "suffix": "%" to display "80%" for the battery percentage.
@ -101,8 +74,6 @@ __Breakdown of Parameters:__
* **short:** Set to false to get the long format value of time, meridian, date, or DayOfWeek. Short formats are used by default,
=======
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
* **bg:** This specifies a custom background image, with the img property defining the name of the image file on the Bangle.js storage.
## Multiple Configurations

View File

@ -33,10 +33,6 @@
let w = g.getWidth();
let h = g.getHeight();
let totalWidth, totalHeight;
<<<<<<< HEAD
=======
let enableSuffix = true;
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
let drawTimeout;
/**
@ -168,7 +164,6 @@
/**
* ---------------------------------------------------------------
<<<<<<< HEAD
* 7. String forming helper functions
* ---------------------------------------------------------------
*/
@ -180,15 +175,6 @@
const date = new Date();
const dayOfMonth = date.getDate();
const month = short ? locale.month(date, 0) : locale.month(date, 1);
=======
* 7. Date and time related functions
* ---------------------------------------------------------------
*/
let getDate = function() {
const date = new Date();
const dayOfMonth = date.getDate();
const month = locale.month(date, 1);
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
const year = date.getFullYear();
let suffix;
if ([1, 21, 31].includes(dayOfMonth)) {
@ -200,7 +186,6 @@
} else {
suffix = "th";
}
<<<<<<< HEAD
let dayOfMonthStr = short ? dayOfMonth : (disableSuffix ? dayOfMonth : dayOfMonth + suffix);
return month + " " + dayOfMonthStr + (short ? '' : (", " + year)); // not including year for short version
};
@ -219,14 +204,6 @@
let prefix = boxItem.prefix || '';
let suffix = boxItem.suffix || '';
return prefix + data + suffix;
=======
let dayOfMonthStr = enableSuffix ? dayOfMonth + suffix : dayOfMonth;
return month + " " + dayOfMonthStr + ", " + year;
};
let getDayOfWeek = function(date) {
return locale.dow(date, 0);
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
};
/**
@ -234,7 +211,6 @@
* 8. Main draw function
* ---------------------------------------------------------------
*/
<<<<<<< HEAD
let draw = (function() {
let updatePerMinute = true; // variable to track the state of time display
@ -285,46 +261,6 @@
}
};
})();
=======
let draw = function(boxes) {
date = new Date();
g.clear();
if (bgImage) {
g.drawImage(bgImage, 0, 0);
}
if (boxes.time) {
boxes.time.string = locale.time(date, 1);
}
if (boxes.date) {
boxes.date.string = getDate();
}
if (boxes.dow) {
boxes.dow.string = getDayOfWeek(date);
}
if (boxes.batt) {
boxes.batt.string = E.getBattery() + "%";
}
boxKeys.forEach((boxKey) => {
let boxItem = boxes[boxKey];
calcBoxSize(boxItem);
const pos = calcBoxPos(boxKey);
if (isDragging[boxKey]) {
g.setColor(boxItem.border);
g.drawRect(pos.x1, pos.y1, pos.x2, pos.y2);
}
g.drawString(
boxItem,
boxItem.string,
boxPos[boxKey].x + boxItem.xOffset,
boxPos[boxKey].y + boxItem.yOffset
);
});
if (!Object.values(isDragging).some(Boolean)) {
if (drawTimeout) clearTimeout(drawTimeout);
drawTimeout = setTimeout(() => draw(boxes), 60000 - (Date.now() % 60000));
}
};
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
/**
* ---------------------------------------------------------------

View File

@ -23,12 +23,8 @@
"yPadding": 0.5,
"xOffset": 1,
"yOffset": 1,
<<<<<<< HEAD
"boxPos": { "x": 0.633, "y": 0.3 },
"short": false
=======
"boxPos": { "x": 0.633, "y": 0.3 }
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
},
"date": {
"font": "6x8",
@ -41,12 +37,8 @@
"yPadding": 0.5,
"xOffset": 1,
"yOffset": 1,
<<<<<<< HEAD
"boxPos": { "x": 0.633, "y": 0.39 },
"short": false
=======
"boxPos": { "x": 0.633, "y": 0.39 }
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
},
"batt": {
"font": "4x6",
@ -59,12 +51,8 @@
"yPadding": -0.5,
"xOffset": 2,
"yOffset": 1,
<<<<<<< HEAD
"boxPos": { "x": 0.92, "y": 0.95 },
"suffix": "%"
=======
"boxPos": { "x": 0.92, "y": 0.95 }
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
},
"bg": {
"img": "boxclk.beachhouse.img"

View File

@ -32,19 +32,11 @@
};
}
<<<<<<< HEAD
let configFiles = [];
storage.list().forEach(file => {
let match = file.match(fileRegex);
if (match) {
configFiles.push({ file: file, number: parseInt(match[1]) });
=======
storage.list().forEach(file => {
let match = file.match(fileRegex);
if (match) {
let configNumber = match[1];
configs[configNumber] = handleSelection(configNumber);
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
} else if (file === "boxclk.json") {
hasDefaultConfig = true;
let defaultConfig = storage.readJSON(file, 1);
@ -64,7 +56,6 @@
}
});
<<<<<<< HEAD
// Sort the config files by number
configFiles.sort((a, b) => a.number - b.number);
@ -72,8 +63,6 @@
configs[configFile.number] = handleSelection(configFile.number);
});
=======
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e
if (!selectedConfig) {
if (hasDefaultConfig) {
selectedConfig = "Default";
@ -102,8 +91,4 @@
});
E.showMenu(menu);
<<<<<<< HEAD
})();
=======
});
>>>>>>> ba7a2f79968ed26d3caa8ac2821e07856369e60e