-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
7nik
committed
Jul 14, 2024
0 parents
commit 1e29b25
Showing
130 changed files
with
1,124 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Booru Clock | ||
<img src="./plaismoid-example.gif" alt="example" width="300"/> | ||
|
||
A desktop clock with the booru's girls holding digits. | ||
|
||
Has the following implementation: | ||
* [Window Gadget](./win7gadget/) | ||
* static images only | ||
* flip-flopping is optional | ||
* [Rainmeter](./rainmeter/) | ||
* animated images only | ||
* no flip-flopping | ||
* [Plasmoid (KDE Plasma)](./plasmoid/) | ||
* 4 girls themes | ||
* flip-flopping is optional | ||
|
||
In all implementations, seconds are optional and opacity is customizable. | ||
|
||
Implementations are different due to the platform limitations and being created in very different years. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# KDE Plasmoid Booru Clock | ||
A plasmoid/gadget/applet with the booru's girls holding digits. | ||
|
||
Has the following settings: | ||
* Showing seconds | ||
* Disabling flip-flopping | ||
* Girls style (taken from [Moe-Counter](https://github.com/journey-ad/Moe-Counter)): | ||
* asoul | ||
* gelbooru | ||
* moebooru | ||
* rule34 (animated) | ||
* Opacity | ||
|
||
# Installation | ||
|
||
Install a Linux with KDE :D |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
import QtQuick 2.15 | ||
|
||
import org.kde.plasma.configuration | ||
|
||
ConfigModel { | ||
ConfigCategory { | ||
name: i18nc("@title", "Apperance") | ||
icon: "preference-desktop-colo" | ||
source: "configAppearance.qml" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" | ||
> | ||
<kcfgfile name=""/> | ||
|
||
<group name="Appearance"> | ||
<entry name="showSeconds" type="Bool"> | ||
<default>true</default> | ||
</entry> | ||
<entry name="doFlip" type="Bool"> | ||
<default>true</default> | ||
</entry> | ||
<entry name="theme" type="String"> | ||
<default>rule34</default> | ||
</entry> | ||
<entry name="opacity" type="Double"> | ||
<default>1</default> | ||
</entry> | ||
</group> | ||
</kcfg> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
import QtQuick 2.15 | ||
import org.kde.plasma.plasmoid | ||
|
||
Item { | ||
id: container | ||
property int digit | ||
property real speed | ||
property int prevDigit: digit | ||
property real upperHeight: 0 | ||
property real lowerHeight: 0 | ||
property int duration: Plasmoid.configuration.doFlip ? 400 : 0 | ||
property string theme: Plasmoid.configuration.theme | ||
|
||
Behavior on digit { | ||
SequentialAnimation { | ||
ScriptAction { script: lowerHeight = 0 } | ||
NumberAnimation { | ||
target: container | ||
property: "upperHeight" | ||
from: 0; to: 0.5 | ||
duration: container.duration/2 | ||
} | ||
NumberAnimation { | ||
target: container | ||
property: "lowerHeight" | ||
from: 0; to: 0.5 | ||
duration: container.duration/2 | ||
} | ||
ScriptAction { script: prevDigit = digit } | ||
} | ||
} | ||
// upper | ||
Item { | ||
anchors { | ||
top: parent.top | ||
left: parent.left | ||
} | ||
width: container.width | ||
height: container.height * upperHeight | ||
clip: true | ||
AnimatedImage { | ||
anchors { | ||
top: parent.top | ||
horizontalCenter: parent.horizontalCenter | ||
} | ||
width: container.width * 0.9 | ||
height: container.height | ||
source: "../image/digit/"+theme+"/"+digit+".gif" | ||
speed: container.speed | ||
smooth: false | ||
} | ||
} | ||
Item { | ||
anchors { | ||
top: parent.top | ||
left: parent.left | ||
topMargin: container.height * upperHeight | ||
} | ||
width: container.width | ||
height: container.height * (0.5-upperHeight) | ||
clip: true | ||
AnimatedImage { | ||
anchors { | ||
top: parent.top | ||
horizontalCenter: parent.horizontalCenter | ||
} | ||
width: container.width * 0.9 | ||
height: container.height * 2*(0.5-upperHeight) | ||
source: "../image/digit/"+theme+"/"+prevDigit+".gif" | ||
speed: container.speed | ||
smooth: false | ||
} | ||
} | ||
// bottom | ||
Item { | ||
anchors { | ||
top: parent.top | ||
left: parent.left | ||
topMargin: parent.height/2 | ||
} | ||
width: container.width | ||
height: container.height * lowerHeight | ||
clip: true | ||
AnimatedImage { | ||
anchors { | ||
bottom: parent.bottom | ||
horizontalCenter: parent.horizontalCenter | ||
} | ||
width: container.width * 0.9 | ||
height: container.height * 2*lowerHeight | ||
source: "../image/digit/"+theme+"/"+digit+".gif" | ||
speed: container.speed | ||
smooth: false | ||
} | ||
} | ||
Item { | ||
anchors { | ||
bottom: parent.bottom | ||
left: parent.left | ||
} | ||
width: container.width | ||
height: container.height * (0.5-lowerHeight) | ||
clip: true | ||
AnimatedImage { | ||
anchors { | ||
bottom: parent.bottom | ||
horizontalCenter: parent.horizontalCenter | ||
} | ||
width: container.width * 0.9 | ||
height: container.height | ||
source: "../image/digit/"+theme+"/"+prevDigit+".gif" | ||
speed: container.speed | ||
smooth: false | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
import QtQuick 2.15 | ||
import QtQuick.Layouts | ||
|
||
Item { | ||
property int number | ||
property real speed | ||
property int margin: parent.height/40 | ||
|
||
Layout.minimumHeight: 50 | ||
Layout.minimumWidth: 50 | ||
Layout.fillHeight: true | ||
implicitWidth: height | ||
|
||
Image { | ||
anchors.fill: parent | ||
source: "../image/back.png" | ||
smooth: false | ||
} | ||
Digit { | ||
anchors { | ||
top: parent.top | ||
left: parent.left | ||
bottom: parent.bottom | ||
margins: margin | ||
rightMargin: 0 | ||
} | ||
width: parent.width/2 | ||
digit: Math.floor(number/10) | ||
speed: parent.speed-0.25 | ||
} | ||
Digit { | ||
anchors { | ||
top: parent.top | ||
right: parent.right | ||
bottom: parent.bottom | ||
margins: margin | ||
leftMargin: 0 | ||
} | ||
width: parent.width/2 | ||
digit: number%10 | ||
speed: parent.speed | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
import QtQuick 2.15 | ||
import QtCore | ||
import QtQuick.Controls as QtControls | ||
import QtQuick.Layouts | ||
import org.kde.kirigami as Kirigami | ||
|
||
Kirigami.FormLayout { | ||
property alias cfg_showSeconds: showSecondsCheckBox.checked | ||
property alias cfg_doFlip: doFlipCheckBox.checked | ||
property alias cfg_opacity: opacitySlider.value | ||
property string cfg_theme | ||
|
||
property var cfg_showSecondsDefault | ||
property var cfg_doFlipDefault | ||
property var cfg_themeDefault | ||
property var cfg_opacityDefault | ||
|
||
property var themes: ["asoul", "gelbooru", "moebooru", "rule34"] | ||
|
||
Kirigami.FormLayout { | ||
RowLayout { | ||
QtControls.CheckBox { | ||
id: showSecondsCheckBox | ||
text: i18n("Show seconds") | ||
} | ||
} | ||
RowLayout { | ||
QtControls.CheckBox { | ||
id: doFlipCheckBox | ||
text: i18n("Flip the digits") | ||
} | ||
} | ||
RowLayout { | ||
QtControls.Label { | ||
text: i18n("Digits theme:") | ||
} | ||
QtControls.ComboBox { | ||
id: themeComboBox | ||
model: themes | ||
currentIndex: themes.indexOf(cfg_theme) | ||
onCurrentIndexChanged: cfg_theme = themes[themeComboBox.currentIndex] | ||
} | ||
} | ||
RowLayout { | ||
Kirigami.FormData.label: i18n("Widget opacity:") | ||
QtControls.Slider { | ||
id: opacitySlider | ||
} | ||
QtControls.Label { | ||
text: Math.round(opacitySlider.value*100).toString() | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
import QtQuick 2.0 | ||
import QtQuick.Layouts | ||
import org.kde.plasma.core as PlasmaCore | ||
import org.kde.plasma.plasma5support as Plasma5Support | ||
import org.kde.plasma.plasmoid | ||
|
||
PlasmoidItem { | ||
id: root | ||
|
||
preferredRepresentation: fullRepresentation | ||
|
||
Plasmoid.backgroundHints: PlasmaCore.Types.NoBackground | ||
Layout.minimumHeight: 50 | ||
Layout.preferredHeight: 165 | ||
property real ratio: 3+2/30 | ||
implicitWidth: height*ratio | ||
implicitHeight: width/ratio | ||
|
||
Plasma5Support.DataSource { | ||
id: timeSource | ||
engine: "time" | ||
connectedSources: ["Local"] | ||
interval: 1000 | ||
} | ||
|
||
fullRepresentation: RowLayout { | ||
height: root.height | ||
implicitWidth: height*ratio | ||
opacity: Plasmoid.configuration.opacity | ||
layer.enabled: true // apply opacity to the layout but not items (images) | ||
|
||
Tile { | ||
id: hours | ||
number: timeSource.data.Local.DateTime.getHours() | ||
speed: 0.8 | ||
} | ||
Tile { | ||
id: minutes | ||
number: timeSource.data.Local.DateTime.getMinutes() | ||
speed: 0.95 | ||
} | ||
Tile { | ||
id: seconds | ||
number: timeSource.data.Local.DateTime.getSeconds() | ||
speed: 1 | ||
visible: Plasmoid.configuration.showSeconds | ||
enabled: Plasmoid.configuration.showSeconds | ||
} | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
{ | ||
"KPlugin": { | ||
"Authors": [ | ||
{ | ||
"Email": "kifiranet@gmail.com", | ||
"Name": "7nik" | ||
} | ||
], | ||
"Category": "Date and Time", | ||
"Description": "A flip-flop clock with booru digits (girls)", | ||
"Icon": "clock", | ||
"Id": "com.github.7nik.booru-clock", | ||
"Name": "Booru Clock", | ||
"Version": "1.0", | ||
"Website": "https://github.com/7nik/booru-clock" | ||
}, | ||
"X-Plasma-API-Minimum-Version": "6.0", | ||
"KPackageStructure": "Plasma/Applet" | ||
} |
Oops, something went wrong.