Rename to FishUI

pull/3/head
cutefishd 5 years ago
parent 182ce17393
commit 1a081b30d7

@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.5)
set(MEUIKIT_VERSION 1.0)
project(meuikit VERSION ${MEUIKIT_VERSION})
set(FISHUI_VERSION 1.0)
project(fishui VERSION ${FISHUI_VERSION})
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
@ -50,11 +50,11 @@ endif()
add_subdirectory(src)
# Install
set(CMAKECONFIG_INSTALL_DIR "/usr/lib/cmake/MeuiKit")
set(CMAKECONFIG_INSTALL_DIR "/usr/lib/cmake/FishUI")
configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/MeuiKitConfig.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/MeuiKitConfig.cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/FishUIConfig.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/FishUIConfig.cmake"
INSTALL_DESTINATION
"${CMAKECONFIG_INSTALL_DIR}"
PATH_VARS
@ -62,22 +62,22 @@ configure_package_config_file(
)
write_basic_package_version_file(
${CMAKE_CURRENT_BINARY_DIR}/MeuiKitConfigVersion.cmake
${CMAKE_CURRENT_BINARY_DIR}/FishUIConfigVersion.cmake
VERSION ${LIB_VERSION}
COMPATIBILITY AnyNewerVersion
)
install(
FILES
"${CMAKE_CURRENT_BINARY_DIR}/MeuiKitConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/MeuiKitConfigVersion.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/FishUIConfig.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/FishUIConfigVersion.cmake"
DESTINATION
"${CMAKECONFIG_INSTALL_DIR}"
COMPONENT
Devel
)
install(EXPORT MeuiKitTargets
install(EXPORT FishUITargets
DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
FILE MeuiKitTargets.cmake
FILE FishUITargets.cmake
)

@ -6,8 +6,8 @@ find_dependency(Qt5DBus @REQUIRED_QT_VERSION@)
# Any changes in this ".cmake" file will be overwritten by CMake, the source is the ".cmake.in" file.
include("${CMAKE_CURRENT_LIST_DIR}/MeuiKitTargets.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/FishUITargets.cmake")
set(MeuiKit_INSTALL_PREFIX "@PACKAGE_CMAKE_INSTALL_PREFIX@")
set(FishUI_INSTALL_PREFIX "@PACKAGE_CMAKE_INSTALL_PREFIX@")
@PACKAGE_INCLUDE_QCHTARGETS@

@ -1,10 +1,13 @@
# MeuiKit
# FishUI
```bash
sudo apt install libqt5x11extras5-dev libkf5windowsystem-dev -y
```
## Build
Before build, make sure you have necessary Qt environment.
```
sudo apt install libqt5x11extras5-dev libkf5windowsystem-dev -y
```bash
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
make
sudo make install

2
debian/changelog vendored

@ -1,4 +1,4 @@
cutefish-uikit (0.1) UNRELEASED; urgency=low
fishui (0.1) UNRELEASED; urgency=low
* Initial release (CutefishOS) <cutefishos@foxmail.com>

4
debian/control vendored

@ -1,4 +1,4 @@
Source: cutefish-uikit
Source: fishui
Section: devel
Priority: optional
Maintainer: CutefishOS <cutefishos@foxmail.com>
@ -16,7 +16,7 @@ Build-Depends: cmake,
Standards-Version: 4.5.0
Homepage: https://github.com/cutefishos/uikit
Package: cutefish-uikit
Package: fishui
Architecture: any
Depends: qml-module-qtquick-controls2,
qml-module-qtquick2,

@ -1,8 +1,8 @@
set(TARGET MeuiKit)
set(TARGET FishUI)
set(MODULE_VERSION "1.0")
set(SOURCES
meuikit.cpp
fishui.cpp
iconthemeprovider.cpp
thememanager.cpp
shadowhelper/windowshadow.cpp
@ -16,8 +16,8 @@ set(SOURCES
desktop/menupopupwindow.cpp
meuikit.qrc
meui-style/style.qrc
fishui.qrc
fish-style/style.qrc
)
add_library(${TARGET} SHARED ${SOURCES})
@ -45,4 +45,4 @@ install(TARGETS ${TARGET} DESTINATION ${INSTALL_QMLDIR}/${TARGET})
install(DIRECTORY controls/ DESTINATION ${INSTALL_QMLDIR}/${TARGET})
# INSTALL STYLE
install(DIRECTORY meui-style DESTINATION ${INSTALL_QMLDIR}/QtQuick/Controls.2)
install(DIRECTORY fish-style DESTINATION ${INSTALL_QMLDIR}/QtQuick/Controls.2)

@ -1,13 +1,13 @@
import QtQuick 2.4
import QtQuick.Controls 2.4
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Image {
id: control
width: 22
height: width
source: "qrc:/meui/kit/images/refresh.svg"
source: "qrc:/fishui/kit/images/refresh.svg"
sourceSize: Qt.size(width, height)
visible: true
@ -16,7 +16,7 @@ Image {
ColorOverlay {
anchors.fill: control
source: control
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
opacity: 1
visible: true
}

@ -1,28 +1,28 @@
import QtQuick 2.12
import QtQuick.Layouts 1.12
import QtQuick.Controls 2.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Meui.MenuPopupWindow {
FishUI.MenuPopupWindow {
id: control
default property alias content : _mainLayout.data
Meui.RoundedRect {
FishUI.RoundedRect {
id: _background
anchors.fill: parent
// opacity: 0.6
// color: Meui.Theme.backgroundColor
// radius: Meui.Theme.mediumRadius
// color: FishUI.Theme.backgroundColor
// radius: FishUI.Theme.mediumRadius
backgroundOpacity: 0.6
Meui.WindowShadow {
FishUI.WindowShadow {
view: control
geometry: Qt.rect(control.x, control.y, control.width, control.height)
radius: _background.radius
}
Meui.WindowBlur {
FishUI.WindowBlur {
view: control
geometry: Qt.rect(control.x, control.y, control.width, control.height)
windowRadius: _background.radius

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Controls 2.12 as QQC2
import QtQuick.Layout 1.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
QQC2.Popup {
id: control

@ -19,7 +19,7 @@
*/
import QtQuick 2.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Rectangle {
id: background
@ -30,15 +30,15 @@ Rectangle {
anchors.fill: parent
radius: Meui.Theme.smallRadius
radius: FishUI.Theme.smallRadius
color: "transparent"
signal clicked(var mouse)
property color hoveredColor: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 1.1)
: Qt.darker(Meui.Theme.backgroundColor, 1.2)
property color pressedColor: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 1.2)
: Qt.darker(Meui.Theme.backgroundColor, 1.3)
property color hoveredColor: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 1.1)
: Qt.darker(FishUI.Theme.backgroundColor, 1.2)
property color pressedColor: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 1.2)
: Qt.darker(FishUI.Theme.backgroundColor, 1.3)
Rectangle {
id: press_item

@ -1,7 +1,7 @@
import QtQuick 2.4
import QtQuick.Window 2.3
import QtQuick.Controls 2.4
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Window {
id: control
@ -14,23 +14,23 @@ Window {
property alias backgroundColor: _background.color
flags: Qt.WindowStaysOnTopHint | Qt.WindowDoesNotAcceptFocus | Qt.ToolTip
width: label.implicitWidth + Meui.Units.largeSpacing * 2
height: label.implicitHeight + Meui.Units.largeSpacing * 2
width: label.implicitWidth + FishUI.Units.largeSpacing * 2
height: label.implicitHeight + FishUI.Units.largeSpacing * 2
Meui.WindowShadow {
FishUI.WindowShadow {
view: control
geometry: Qt.rect(control.x, control.y, control.width, control.height)
radius: _background.radius
}
Meui.WindowBlur {
FishUI.WindowBlur {
view: control
enabled: true
windowRadius: _background.radius
geometry: Qt.rect(_background.x, _background.y, _background.width, _background.height)
}
Meui.RoundedRect {
FishUI.RoundedRect {
id: _background
anchors.fill: parent
@ -38,7 +38,7 @@ Window {
id: label
anchors.centerIn: parent
text: control.popupText
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
}
}
@ -50,11 +50,11 @@ Window {
// left
if (posX < 0)
posX = Meui.Units.smallSpacing
posX = FishUI.Units.smallSpacing
// top
if (posY < 0)
posY = Meui.Units.smallSpacing
posY = FishUI.Units.smallSpacing
// right
if (posX + control.width > Screen.width)

@ -2,13 +2,13 @@ import QtQuick 2.12
import QtQuick.Controls 2.12
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Item {
id: control
property real radius: Meui.Theme.smallRadius
property var color: Meui.Theme.backgroundColor
property real radius: FishUI.Theme.smallRadius
property var color: FishUI.Theme.backgroundColor
property bool animationEnabled: true
@ -84,7 +84,7 @@ Item {
anchors.margins: 1
radius: control.radius - 1
color: "transparent"
visible: Meui.Theme.darkMode
visible: FishUI.Theme.darkMode
border.color: Qt.rgba(255, 255, 255, 0.3)
border.width: 1
smooth: true

@ -1,6 +1,6 @@
import QtQuick 2.12
import QtQuick.Controls 2.12 as Controls
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Controls.TextField {
id: control

@ -1,21 +1,21 @@
pragma Singleton
import QtQuick 2.4
import MeuiKit.Core 1.0 as MeuiKitCore
import FishUI.Core 1.0 as FishUICore
QtObject {
id: theme
property real devicePixelRatio: MeuiKitCore.ThemeManager.devicePixelRatio
property real devicePixelRatio: FishUICore.ThemeManager.devicePixelRatio
property bool darkMode: MeuiKitCore.ThemeManager.darkMode
property bool darkMode: FishUICore.ThemeManager.darkMode
property color blueColor: MeuiKitCore.ThemeManager.blueColor
property color redColor: MeuiKitCore.ThemeManager.redColor
property color greenColor: MeuiKitCore.ThemeManager.greenColor
property color purpleColor: MeuiKitCore.ThemeManager.purpleColor
property color pinkColor: MeuiKitCore.ThemeManager.pinkColor
property color orangeColor: MeuiKitCore.ThemeManager.orangeColor
property color blueColor: FishUICore.ThemeManager.blueColor
property color redColor: FishUICore.ThemeManager.redColor
property color greenColor: FishUICore.ThemeManager.greenColor
property color purpleColor: FishUICore.ThemeManager.purpleColor
property color pinkColor: FishUICore.ThemeManager.pinkColor
property color orangeColor: FishUICore.ThemeManager.orangeColor
property color backgroundColor: darkMode ? "#3B3B3D" : "#FFFFFF"
property color secondBackgroundColor: darkMode ? "#2E2E2E" : "#F5F5F5"
@ -23,7 +23,7 @@ QtObject {
property color textColor: darkMode ? "#FFFFFF" : "#333338"
property color disabledTextColor: darkMode ? "#888888" : "#64646E"
property color highlightColor: MeuiKitCore.ThemeManager.accentColor
property color highlightColor: FishUICore.ThemeManager.accentColor
property color highlightedTextColor: darkMode ? "#FFFFFF" : "#FFFFFF"
property color activeTextColor: "#0176D3"

@ -2,12 +2,12 @@ import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.12
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Popup {
id: control
x: Math.round(parent.width / 2 - width / 2)
y: parent.height - height - Meui.Units.largeSpacing
y: parent.height - height - FishUI.Units.largeSpacing
implicitWidth: Math.max(background ? background.implicitWidth : 0,
contentWidth + leftPadding + rightPadding) + leftInset + rightInset
implicitHeight: Math.max(background ? background.implicitHeight : 0 ,
@ -15,10 +15,10 @@ Popup {
height: implicitHeight
width: implicitWidth
topPadding: Meui.Units.smallSpacing
leftPadding: Meui.Units.smallSpacing
rightPadding: Meui.Units.smallSpacing
bottomPadding: Meui.Units.largeSpacing
topPadding: FishUI.Units.smallSpacing
leftPadding: FishUI.Units.smallSpacing
rightPadding: FishUI.Units.smallSpacing
bottomPadding: FishUI.Units.largeSpacing
modal: false
closePolicy: Popup.NoAutoClose
@ -84,10 +84,10 @@ Popup {
closeAnim.running = true;
}
leftPadding: Meui.Units.largeSpacing
rightPadding: Meui.Units.largeSpacing
topPadding: Meui.Units.largeSpacing
bottomPadding: Meui.Units.largeSpacing
leftPadding: FishUI.Units.largeSpacing
rightPadding: FishUI.Units.largeSpacing
topPadding: FishUI.Units.largeSpacing
bottomPadding: FishUI.Units.largeSpacing
Component.onCompleted: openAnim.restart()
ParallelAnimation {
@ -154,7 +154,7 @@ Popup {
Label {
id: label
Layout.maximumWidth: Math.min(control.parent.width - Meui.Units.largeSpacing * 4, implicitWidth)
Layout.maximumWidth: Math.min(control.parent.width - FishUI.Units.largeSpacing * 4, implicitWidth)
elide: Text.ElideRight
wrapMode: Text.WordWrap
maximumLineCount: 4
@ -173,8 +173,8 @@ Popup {
}
background: Rectangle {
color: Meui.Theme.backgroundColor
radius: Meui.Theme.mediumRadius
color: FishUI.Theme.backgroundColor
radius: FishUI.Theme.mediumRadius
opacity: 0.9
layer.enabled: true
layer.effect: DropShadow {

@ -4,7 +4,7 @@ import QtQuick.Controls 2.4
import QtQuick.Layouts 1.3
import QtQuick.Shapes 1.12
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Window {
id: root
@ -14,9 +14,9 @@ Window {
flags: Qt.FramelessWindowHint
color: "transparent"
property var backgroundColor: Meui.Theme.backgroundColor
property var backgroundColor: FishUI.Theme.backgroundColor
property var backgroundOpacity: 1.0
property var windowRadius: Meui.Theme.bigRadius
property var windowRadius: FishUI.Theme.bigRadius
property alias headerBarHeight: _titlebar.height
property bool hideHeaderOnMaximize: false
@ -33,7 +33,7 @@ Window {
headerBar.anchors.fill = _header
}
Meui.WindowHelper {
FishUI.WindowHelper {
id: windowHelper
}
@ -164,7 +164,7 @@ Window {
}
// Window shadows
Meui.WindowShadow {
FishUI.WindowShadow {
view: root
geometry: Qt.rect(root.x, root.y, root.width, root.height)
radius: _background.radius
@ -202,9 +202,9 @@ Window {
anchors.margins: 1
color: "transparent"
radius: parent.radius - 1
border.color: Meui.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.3) : "transparent"
border.color: FishUI.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.3) : "transparent"
antialiasing: true
visible: !isMaximized && !isFullScreen && Meui.Theme.darkMode
visible: !isMaximized && !isFullScreen && FishUI.Theme.darkMode
z: 999
}
@ -246,18 +246,18 @@ Window {
Item {
id: _windowControl
Layout.fillHeight: true
width: _windowControlLayout.implicitWidth + Meui.Units.smallSpacing
width: _windowControlLayout.implicitWidth + FishUI.Units.smallSpacing
RowLayout {
id: _windowControlLayout
anchors.fill: parent
anchors.topMargin: Meui.Units.smallSpacing
anchors.rightMargin: Meui.Units.smallSpacing
spacing: Meui.Units.largeSpacing
anchors.topMargin: FishUI.Units.smallSpacing
anchors.rightMargin: FishUI.Units.smallSpacing
spacing: FishUI.Units.largeSpacing
WindowButton {
size: 35
source: "qrc:/meui/kit/images/" + (Meui.Theme.darkMode ? "dark/" : "light/") + "minimize.svg"
source: "qrc:/fishui/kit/images/" + (FishUI.Theme.darkMode ? "dark/" : "light/") + "minimize.svg"
onClicked: windowHelper.minimizeWindow(root)
visible: root.visibility !== Window.FullScreen
Layout.alignment: Qt.AlignTop
@ -265,8 +265,8 @@ Window {
WindowButton {
size: 35
source: "qrc:/meui/kit/images/" +
(Meui.Theme.darkMode ? "dark/" : "light/") +
source: "qrc:/fishui/kit/images/" +
(FishUI.Theme.darkMode ? "dark/" : "light/") +
(root.visibility === Window.Maximized ? "restore.svg" : "maximize.svg")
onClicked: root.toggleMaximized()
visible: root.visibility !== Window.FullScreen
@ -275,7 +275,7 @@ Window {
WindowButton {
size: 35
source: "qrc:/meui/kit/images/" + (Meui.Theme.darkMode ? "dark/" : "light/") + "close.svg"
source: "qrc:/fishui/kit/images/" + (FishUI.Theme.darkMode ? "dark/" : "light/") + "close.svg"
onClicked: root.close()
visible: root.visibility !== Window.FullScreen
Layout.alignment: Qt.AlignTop
@ -313,7 +313,7 @@ Window {
function showPassiveNotification(message, timeout, actionText, callBack) {
if (!internal.passiveNotification) {
var component = Qt.createComponent("qrc:/meui/kit/Toast.qml")
var component = Qt.createComponent("qrc:/fishui/kit/Toast.qml")
internal.passiveNotification = component.createObject(root)
}

@ -1,7 +1,7 @@
import QtQuick 2.12
import QtQuick.Window 2.3
import QtQuick.Controls 2.4
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Item {
id: control
@ -10,10 +10,10 @@ Item {
height: size
width: size
property color hoveredColor: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 1.5)
: Qt.darker(Meui.Theme.backgroundColor, 1.2)
property color pressedColor: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 1.3)
: Qt.darker(Meui.Theme.backgroundColor, 1.3)
property color hoveredColor: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 1.5)
: Qt.darker(FishUI.Theme.backgroundColor, 1.2)
property color pressedColor: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 1.3)
: Qt.darker(FishUI.Theme.backgroundColor, 1.3)
property alias source: image.source
signal clicked()

@ -1,6 +1,6 @@
module MeuiKit
plugin MeuiKit
classname MeuiKit
module FishUI
plugin FishUI
classname FishUI
depends QtQuick.Controls 2.12
depends QtQuick.Controls.Private 2.10
depends QtQuick.Controls 2.10

@ -0,0 +1,68 @@
import QtQuick 2.4
import QtQuick.Templates 2.4 as T
import FishUI 1.0 as FishUI
import QtQuick.Controls.impl 2.4
T.Button
{
id: control
implicitWidth: Math.max(background.implicitWidth, contentItem.implicitWidth + FishUI.Units.largeSpacing)
implicitHeight: background.implicitHeight
hoverEnabled: true
property color hoveredColor: Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r,
FishUI.Theme.backgroundColor.g,
FishUI.Theme.backgroundColor.b, 0.9))
property color pressedColor: Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r,
FishUI.Theme.backgroundColor.g,
FishUI.Theme.backgroundColor.b, 0.8))
property color flatHoveredColor: Qt.lighter(FishUI.Theme.highlightColor, 1.1)
property color flatPressedColor: Qt.darker(FishUI.Theme.highlightColor, 1.1)
icon.width: FishUI.Units.iconSizes.small
icon.height: FishUI.Units.iconSizes.small
icon.color: control.enabled ? (control.highlighted ? control.FishUI.Theme.highlightColor : control.FishUI.Theme.textColor) : control.FishUI.Theme.disabledTextColor
spacing: FishUI.Units.smallSpacing
contentItem: IconLabel {
text: control.text
font: control.font
icon: control.icon
color: !control.enabled ? control.FishUI.Theme.disabledTextColor : control.flat ? FishUI.Theme.highlightedTextColor : FishUI.Theme.textColor
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: Qt.AlignCenter
}
background: Item {
implicitWidth: (FishUI.Units.iconSizes.medium * 3) + FishUI.Units.largeSpacing + FishUI.Units.extendBorderWidth
implicitHeight: FishUI.Units.iconSizes.medium + FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
Rectangle {
id: _border
anchors.fill: parent
visible: control.activeFocus
color: "transparent"
border.color: Qt.rgba(FishUI.Theme.highlightColor.r,
FishUI.Theme.highlightColor.g,
FishUI.Theme.highlightColor.b, 0.3)
border.width: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.mediumRadius
}
Rectangle {
anchors.fill: parent
anchors.margins: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.mediumRadius - FishUI.Units.extendBorderWidth
border.color: control.flat && control.enabled ? FishUI.Theme.highlightColor : control.activeFocus || control.pressed ? FishUI.Theme.highlightColor :
Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r, FishUI.Theme.backgroundColor.g, FishUI.Theme.backgroundColor.b, 0.7))
border.width: 1
color: control.flat && control.enabled ? control.pressed ? control.flatPressedColor : control.hovered ? control.flatHoveredColor : FishUI.Theme.highlightColor
: control.pressed ? control.pressedColor : control.hovered ? control.hoveredColor : FishUI.Theme.backgroundColor
}
}
}

@ -23,7 +23,7 @@
import QtQuick 2.4
import QtQuick.Templates 2.4 as T
import QtQuick.Controls 2.4
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.CheckBox {
id: controlRoot
@ -36,7 +36,7 @@ T.CheckBox {
baselineOffset: contentItem.y + contentItem.baselineOffset
padding: 1
spacing: Meui.Units.smallSpacing
spacing: FishUI.Units.smallSpacing
hoverEnabled: true

@ -38,17 +38,17 @@ import QtQuick 2.4
import QtQuick.Controls.Material 2.4
import QtQuick.Controls.Material.impl 2.4
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Rectangle {
id: indicatorItem
implicitWidth: 18
implicitHeight: 18
color: !control.enabled ? control.Meui.Theme.backgroundColor
: checked ? Meui.Theme.highlightColor : control.Meui.Theme.backgroundColor
border.color: !control.enabled ? control.Meui.Theme.disabledTextColor
: checked ? control.Meui.Theme.highlightColor: control.Meui.Theme.textColor
color: !control.enabled ? control.FishUI.Theme.backgroundColor
: checked ? FishUI.Theme.highlightColor : control.FishUI.Theme.backgroundColor
border.color: !control.enabled ? control.FishUI.Theme.disabledTextColor
: checked ? control.FishUI.Theme.highlightColor: control.FishUI.Theme.textColor
border.width: 1
radius: control.autoExclusive ? Math.min(height, width) : 4

@ -40,7 +40,7 @@ import QtQuick.Controls 2.4
import QtQuick.Controls.impl 2.4
import QtQuick.Templates 2.12 as T
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.ComboBox {
id: control
@ -51,10 +51,10 @@ T.ComboBox {
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
topInset: Meui.Units.smallSpacing
bottomInset: Meui.Units.smallSpacing
topInset: FishUI.Units.smallSpacing
bottomInset: FishUI.Units.smallSpacing
spacing: Meui.Units.smallSpacing
spacing: FishUI.Units.smallSpacing
leftPadding: padding + (!control.mirrored || !indicator || !indicator.visible ? 0 : indicator.width + spacing)
rightPadding: padding + (control.mirrored || !indicator || !indicator.visible ? 0 : indicator.width + spacing)
@ -69,7 +69,7 @@ T.ComboBox {
x: control.mirrored ? control.leftPadding : control.width - width - control.rightPadding
y: control.topPadding + (control.availableHeight - height) / 2
height: Meui.Units.iconSizes.small
height: FishUI.Units.iconSizes.small
width: height
source: "image://icontheme/go-down"
@ -78,7 +78,7 @@ T.ComboBox {
}
contentItem: T.TextField {
padding: Meui.Units.smallSpacing
padding: FishUI.Units.smallSpacing
leftPadding: control.editable ? 2 : control.mirrored ? 0 : 12
rightPadding: control.editable ? 2 : control.mirrored ? 12 : 0
@ -91,29 +91,29 @@ T.ComboBox {
validator: control.validator
font: control.font
color: control.enabled ? control.Meui.Theme.textColor : control.Meui.Theme.highlightColor
selectionColor: control.Meui.Theme.highlightColor
selectedTextColor: control.Meui.Theme.highlightedTextColor
color: control.enabled ? control.FishUI.Theme.textColor : control.FishUI.Theme.highlightColor
selectionColor: control.FishUI.Theme.highlightColor
selectedTextColor: control.FishUI.Theme.highlightedTextColor
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
implicitWidth: (Meui.Units.iconSizes.medium * 3) + Meui.Units.largeSpacing + Meui.Units.extendBorderWidth
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
implicitWidth: (FishUI.Units.iconSizes.medium * 3) + FishUI.Units.largeSpacing + FishUI.Units.extendBorderWidth
implicitHeight: FishUI.Units.iconSizes.medium + FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
radius: FishUI.Theme.smallRadius
color: !control.editable ? control.Meui.Theme.backgroundColor : "transparent"
color: !control.editable ? control.FishUI.Theme.backgroundColor : "transparent"
Rectangle {
id: _border
anchors.fill: parent
color: "transparent"
border.color: control.activeFocus ? Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.2) : "transparent"
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius + Meui.Units.extendBorderWidth
border.color: control.activeFocus ? Qt.rgba(FishUI.Theme.highlightColor.r,
FishUI.Theme.highlightColor.g,
FishUI.Theme.highlightColor.b, 0.2) : "transparent"
border.width: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.smallRadius + FishUI.Units.extendBorderWidth
Behavior on border.color {
ColorAnimation {
@ -124,21 +124,21 @@ T.ComboBox {
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
anchors.margins: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.smallRadius
color: "transparent"
border.color: control.activeFocus ? Meui.Theme.highlightColor : Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
border.color: control.activeFocus ? FishUI.Theme.highlightColor : Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r, FishUI.Theme.backgroundColor.g, FishUI.Theme.backgroundColor.b, 0.7))
border.width: 1
}
// border.color: control.activeFocus ? Meui.Theme.highlightColor : Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
// border.color: control.activeFocus ? FishUI.Theme.highlightColor : Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r, FishUI.Theme.backgroundColor.g, FishUI.Theme.backgroundColor.b, 0.7))
// Rectangle {
// visible: control.editable
// y: parent.y + control.baselineOffset
// width: parent.width
// height: control.activeFocus ? 2 : 1
// color: control.editable && control.activeFocus ? control.Meui.Theme.highlightColor : control.Meui.Theme.highlightedTextColor
// color: control.editable && control.activeFocus ? control.FishUI.Theme.highlightColor : control.FishUI.Theme.highlightedTextColor
// }
}
@ -146,8 +146,8 @@ T.ComboBox {
width: Math.max(control.width, 150)
implicitHeight: Math.min(contentItem.implicitHeight, control.Window.height - topMargin - bottomMargin)
transformOrigin: Item.Top
topMargin: Meui.Units.largeSpacing
bottomMargin: Meui.Units.largeSpacing
topMargin: FishUI.Units.largeSpacing
bottomMargin: FishUI.Units.largeSpacing
enter: Transition {
NumberAnimation {
@ -181,9 +181,9 @@ T.ComboBox {
}
background: Rectangle {
radius: Meui.Theme.smallRadius
color: parent.Meui.Theme.backgroundColor
border.color: Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
radius: FishUI.Theme.smallRadius
color: parent.FishUI.Theme.backgroundColor
border.color: Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r, FishUI.Theme.backgroundColor.g, FishUI.Theme.backgroundColor.b, 0.7))
layer.enabled: true
layer.effect: DropShadow {

@ -23,7 +23,7 @@
import QtQuick 2.6
import QtGraphicalEffects 1.0
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.Dialog {
id: control
@ -36,7 +36,7 @@ T.Dialog {
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0) + header.implicitHeight + footer.implicitHeight
padding: Meui.Units.largeSpacing
padding: FishUI.Units.largeSpacing
enter: Transition {
NumberAnimation {
@ -61,10 +61,10 @@ T.Dialog {
contentItem: Item {}
background: Rectangle {
radius: Meui.Theme.mediumRadius
color: Meui.Theme.backgroundColor
radius: FishUI.Theme.mediumRadius
color: FishUI.Theme.backgroundColor
border.width: 1
border.color: Meui.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.2) : Qt.rgba(0, 0, 0, 0.1)
border.color: FishUI.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.2) : Qt.rgba(0, 0, 0, 0.1)
layer.enabled: true
layer.effect: DropShadow {
@ -81,12 +81,12 @@ T.Dialog {
text: control.title
visible: control.title
elide: Label.ElideRight
padding: Meui.Units.largeSpacing
padding: FishUI.Units.largeSpacing
bottomPadding: 0
}
footer: DialogButtonBox {
visible: count > 0
padding: Meui.Units.largeSpacing * 2
padding: FishUI.Units.largeSpacing * 2
}
}

@ -22,7 +22,7 @@
import QtQuick 2.6
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.DialogButtonBox {
id: control
@ -30,8 +30,8 @@ T.DialogButtonBox {
implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
implicitHeight: contentItem.implicitHeight + topPadding + bottomPadding
spacing: Meui.Units.smallSpacing
padding: Meui.Units.smallSpacing
spacing: FishUI.Units.smallSpacing
padding: FishUI.Units.smallSpacing
alignment: Qt.AlignRight
delegate: Button {

@ -1,7 +1,7 @@
import QtQuick 2.6
import QtQuick.Controls 2.3
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.Frame {
id: control
@ -16,7 +16,7 @@ T.Frame {
background: Rectangle {
color: "transparent"
property color borderColor: Meui.Theme.textColor
property color borderColor: FishUI.Theme.textColor
border.color: Qt.rgba(borderColor.r, borderColor.g, borderColor.b, 0.3)
}
}

@ -0,0 +1,31 @@
import QtQuick 2.1
import QtQuick.Window 2.2
import QtQuick.Templates 2.3 as T
import FishUI 1.0 as FishUI
T.Label {
id: control
verticalAlignment: lineCount > 1 ? Text.AlignTop : Text.AlignVCenter
activeFocusOnTab: false
//Text.NativeRendering is broken on non integer pixel ratios
renderType: Window.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering
font.capitalization: FishUI.Theme.defaultFont.capitalization
font.family: FishUI.Theme.defaultFont.family
font.italic: FishUI.Theme.defaultFont.italic
font.letterSpacing: FishUI.Theme.defaultFont.letterSpacing
font.pointSize: FishUI.Theme.defaultFont.pointSize
font.strikeout: FishUI.Theme.defaultFont.strikeout
font.underline: FishUI.Theme.defaultFont.underline
font.weight: FishUI.Theme.defaultFont.weight
font.wordSpacing: FishUI.Theme.defaultFont.wordSpacing
color: FishUI.Theme.textColor
linkColor: FishUI.Theme.linkColor
opacity: enabled ? 1 : 0.6
Accessible.role: Accessible.StaticText
Accessible.name: text
}

@ -2,7 +2,7 @@ import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Templates 2.12 as T
import QtQuick.Window 2.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
import QtGraphicalEffects 1.0
T.Menu
@ -15,8 +15,8 @@ T.Menu
contentHeight + topPadding + bottomPadding)
margins: 0
verticalPadding: Meui.Units.smallSpacing
spacing: Meui.Units.smallSpacing
verticalPadding: FishUI.Units.smallSpacing
spacing: FishUI.Units.smallSpacing
transformOrigin: !cascade ? Item.Top : (mirrored ? Item.TopRight : Item.TopLeft)
delegate: MenuItem { }
@ -70,7 +70,7 @@ T.Menu
ScrollBar.vertical: ScrollBar {}
}
background: Meui.RoundedRect {
background: FishUI.RoundedRect {
opacity: 1
layer.enabled: true
@ -85,9 +85,9 @@ T.Menu
}
T.Overlay.modal: Rectangle {
color: Qt.rgba(control.Meui.Theme.backgroundColor.r,
control.Meui.Theme.backgroundColor.g,
control.Meui.Theme.backgroundColor.b, 0.4)
color: Qt.rgba(control.FishUI.Theme.backgroundColor.r,
control.FishUI.Theme.backgroundColor.g,
control.FishUI.Theme.backgroundColor.b, 0.4)
Behavior on opacity {
NumberAnimation {
duration: 150
@ -97,9 +97,9 @@ T.Menu
}
T.Overlay.modeless: Rectangle {
color: Qt.rgba(control.Meui.Theme.backgroundColor.r,
control.Meui.Theme.backgroundColor.g,
control.Meui.Theme.backgroundColor.b, 0.4)
color: Qt.rgba(control.FishUI.Theme.backgroundColor.r,
control.FishUI.Theme.backgroundColor.g,
control.FishUI.Theme.backgroundColor.b, 0.4)
Behavior on opacity {
NumberAnimation {
duration: 150

@ -3,34 +3,34 @@ import QtQuick.Templates 2.12 as T
import QtQuick.Controls 2.12
import QtQuick.Controls.impl 2.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.MenuItem
{
id: control
property color hoveredColor: Meui.Theme.highlightColor
property color pressedColor: Qt.darker(Meui.Theme.highlightColor, 1.2)
property color hoveredColor: FishUI.Theme.highlightColor
property color pressedColor: Qt.darker(FishUI.Theme.highlightColor, 1.2)
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: visible ? Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding) : 0
verticalPadding: Meui.Units.smallSpacing
verticalPadding: FishUI.Units.smallSpacing
hoverEnabled: true
icon.width: Meui.Units.iconSizes.medium
icon.height: Meui.Units.iconSizes.medium
icon.width: FishUI.Units.iconSizes.medium
icon.height: FishUI.Units.iconSizes.medium
icon.color: control.enabled ? (control.highlighted ? control.Meui.Theme.highlightColor : control.Meui.Theme.textColor) :
control.Meui.Theme.disabledTextColor
icon.color: control.enabled ? (control.highlighted ? control.FishUI.Theme.highlightColor : control.FishUI.Theme.textColor) :
control.FishUI.Theme.disabledTextColor
contentItem: IconLabel {
readonly property real arrowPadding: control.subMenu && control.arrow ? control.arrow.width + control.spacing : 0
readonly property real indicatorPadding: control.checkable && control.indicator ? control.indicator.width + control.spacing : 0
leftPadding: !control.mirrored ? indicatorPadding + Meui.Units.smallSpacing * 2 : arrowPadding
rightPadding: control.mirrored ? indicatorPadding : arrowPadding + Meui.Units.smallSpacing * 2
leftPadding: !control.mirrored ? indicatorPadding + FishUI.Units.smallSpacing * 2 : arrowPadding
rightPadding: control.mirrored ? indicatorPadding : arrowPadding + FishUI.Units.smallSpacing * 2
spacing: control.spacing
mirrored: control.mirrored
@ -40,20 +40,20 @@ T.MenuItem
icon: control.icon
text: control.text
font: control.font
color: control.enabled ? control.pressed || control.hovered ? control.Meui.Theme.highlightedTextColor :
Meui.Theme.textColor : control.Meui.Theme.disabledTextColor
color: control.enabled ? control.pressed || control.hovered ? control.FishUI.Theme.highlightedTextColor :
FishUI.Theme.textColor : control.FishUI.Theme.disabledTextColor
}
background: Rectangle {
implicitWidth: 200
implicitHeight: control.visible ? Meui.Units.rowHeightAlt : 0
implicitHeight: control.visible ? FishUI.Units.rowHeightAlt : 0
radius: 4
opacity: 1
anchors {
fill: parent
leftMargin: Meui.Units.smallSpacing
rightMargin: Meui.Units.smallSpacing
leftMargin: FishUI.Units.smallSpacing
rightMargin: FishUI.Units.smallSpacing
}
color: control.pressed ? control.pressedColor : control.hovered ? control.hoveredColor : "transparent"

@ -1,20 +1,20 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Templates 2.12 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.MenuSeparator {
id: control
implicitHeight: Meui.Units.smallSpacing + separator.height
implicitHeight: FishUI.Units.smallSpacing + separator.height
width: parent.width
background: Rectangle {
id: separator
anchors.centerIn: control
width: control.width - Meui.Units.largeSpacing
width: control.width - FishUI.Units.largeSpacing
height: 1
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
opacity: 0.3
}
}

@ -2,7 +2,7 @@ import QtQuick 2.10
import QtQuick.Controls 2.3
import QtQuick.Controls.impl 2.3
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.Page {
id: control
@ -28,6 +28,6 @@ T.Page {
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
background: Rectangle {
color: Meui.Theme.backgroundColor
color: FishUI.Theme.backgroundColor
}
}

@ -24,7 +24,7 @@
import QtQuick 2.9
import QtQuick.Controls 2.2
import QtQuick.Templates 2.2 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.RadioButton {
id: control
@ -38,8 +38,8 @@ T.RadioButton {
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
baselineOffset: contentItem.y + contentItem.baselineOffset
padding: Meui.Units.smallSpacing
spacing: Meui.Units.smallSpacing
padding: FishUI.Units.smallSpacing
spacing: FishUI.Units.smallSpacing
opacity: control.enabled ? 1.0 : 0.5
@ -56,7 +56,7 @@ T.RadioButton {
text: control.text
font: control.font
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
elide: Text.ElideRight
visible: control.text
horizontalAlignment: Text.AlignLeft

@ -1,7 +1,7 @@
import QtQuick 2.4
import QtQuick.Controls 2.4
import QtQuick.Templates 2.4 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.RadioDelegate {
id: control
@ -13,12 +13,12 @@ T.RadioDelegate {
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
baselineOffset: contentItem.y + contentItem.baselineOffset
topPadding: control.Meui.Units.smallSpacing
bottomPadding: control.Meui.Units.smallSpacing
leftPadding: control.Meui.Units.smallSpacing
rightPadding: control.Meui.Units.smallSpacing
topPadding: control.FishUI.Units.smallSpacing
bottomPadding: control.FishUI.Units.smallSpacing
leftPadding: control.FishUI.Units.smallSpacing
rightPadding: control.FishUI.Units.smallSpacing
spacing: control.Meui.Units.smallSpacing
spacing: control.FishUI.Units.smallSpacing
opacity: control.enabled ? 1.0 : 0.5
@ -28,7 +28,7 @@ T.RadioDelegate {
text: control.text
font: control.font
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
elide: Text.ElideRight
visible: control.text

@ -22,19 +22,19 @@
import QtQuick 2.9
import QtQuick.Controls 2.2
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Rectangle {
implicitWidth: Meui.Units.iconSizes.small
implicitHeight: Meui.Units.iconSizes.small
implicitWidth: FishUI.Units.iconSizes.small
implicitHeight: FishUI.Units.iconSizes.small
property Item control
radius: width / 2
color: control.Meui.Theme.backgroundColor
color: control.FishUI.Theme.backgroundColor
border.color: control.down
? control.checked ? "transparent" : control.Meui.Theme.highlightColor
: control.checked ? control.Meui.Theme.highlightColor : control.Meui.Theme.disabledTextColor
? control.checked ? "transparent" : control.FishUI.Theme.highlightColor
: control.checked ? control.FishUI.Theme.highlightColor : control.FishUI.Theme.disabledTextColor
border.width: 1
scale: control.down ? 0.91 : 1.0
@ -44,7 +44,7 @@ Rectangle {
radius: parent.radius
scale: control.checked ? 1.0 : 0.0
color: control.Meui.Theme.highlightColor
color: control.FishUI.Theme.highlightColor
Behavior on scale {
NumberAnimation {

@ -1,7 +1,7 @@
import QtQuick 2.4
import QtQuick.Templates 2.12 as T
import QtQuick.Controls.Material 2.12
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.ScrollBar {
id: control
@ -16,12 +16,12 @@ T.ScrollBar {
minimumSize: orientation == Qt.Horizontal ? height / width : width / height
contentItem: Rectangle {
radius: Meui.Theme.smallRadius
radius: FishUI.Theme.smallRadius
implicitWidth: control.interactive ? 6 : 4
implicitHeight: control.interactive ? 6 : 4
color: control.pressed ? Meui.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.4) : Qt.rgba(0, 0, 0, 0.5)
: Meui.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.5) : Qt.rgba(0, 0, 0, 0.4)
color: control.pressed ? FishUI.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.4) : Qt.rgba(0, 0, 0, 0.5)
: FishUI.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.5) : Qt.rgba(0, 0, 0, 0.4)
opacity: 0.0
}

@ -1,7 +1,7 @@
import QtQuick 2.6
import QtQuick.Templates 2.3 as T
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.Slider {
id: control
@ -17,7 +17,7 @@ T.Slider {
x: control.leftPadding + (control.horizontal ? control.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : control.visualPosition * (control.availableHeight - height))
width: Meui.Units.iconSizes.medium
width: FishUI.Units.iconSizes.medium
height: width
radius: width / 2
color: "white"
@ -53,7 +53,7 @@ T.Slider {
width: control.horizontal ? parent.width : sliderTrackHeight
height: !control.horizontal ? parent.height : sliderTrackHeight
radius: !control.horizontal ? parent.width / 2 : sliderTrackHeight / 2
color: Meui.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.5) : Qt.rgba(0, 0, 0, 0.15)
color: FishUI.Theme.darkMode ? Qt.rgba(255, 255, 255, 0.5) : Qt.rgba(0, 0, 0, 0.15)
}
Rectangle {
@ -62,7 +62,7 @@ T.Slider {
width: control.horizontal ? control.position * parent.width : sliderTrackHeight
height: !control.horizontal ? control.position * parent.height : sliderTrackHeight
radius: !control.horizontal ? parent.width / 2 : sliderTrackHeight / 2
color: control.Meui.Theme.highlightColor
color: control.FishUI.Theme.highlightColor
}
}
}

@ -1,6 +1,6 @@
import QtQuick 2.4
import QtQuick.Templates 2.12 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.Switch {
id: control
@ -26,7 +26,7 @@ T.Switch {
text: control.text
font: control.font
color: control.enabled ? Meui.Theme.textColor : Meui.Theme.disabledTextColor
color: control.enabled ? FishUI.Theme.textColor : FishUI.Theme.disabledTextColor
elide: Label.ElideRight
verticalAlignment: Label.AlignVCenter
}

@ -1,5 +1,5 @@
import QtQuick 2.4
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
Item
{
@ -9,9 +9,9 @@ Item
property Item control
property alias handle: handle
property color bgColor : control.checked ? Meui.Theme.highlightColor : Qt.rgba(Meui.Theme.textColor.r,
Meui.Theme.textColor.g,
Meui.Theme.textColor.b, 0.2)
property color bgColor : control.checked ? FishUI.Theme.highlightColor : Qt.rgba(FishUI.Theme.textColor.r,
FishUI.Theme.textColor.g,
FishUI.Theme.textColor.b, 0.2)
Rectangle {
width: parent.width
height: 20

@ -1,12 +1,12 @@
import QtQuick 2.6
import QtQuick.Templates 2.3 as T
import QtGraphicalEffects 1.0
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.TabBar {
id: control
implicitWidth: Math.max(background.implicitWidth, contentItem.implicitWidth + Meui.Units.smallSpacing)
implicitWidth: Math.max(background.implicitWidth, contentItem.implicitWidth + FishUI.Units.smallSpacing)
implicitHeight: contentItem.implicitHeight
spacing: 0
@ -37,8 +37,8 @@ T.TabBar {
fill: parent
margins: 2
}
color: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 2.2) : Meui.Theme.backgroundColor
radius: Meui.Theme.smallRadius
color: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 2.2) : FishUI.Theme.backgroundColor
radius: FishUI.Theme.smallRadius
layer.enabled: true
layer.effect: DropShadow {
@ -54,7 +54,7 @@ T.TabBar {
}
background: Rectangle {
color: Meui.Theme.darkMode ? Qt.lighter(Meui.Theme.backgroundColor, 1.5) : Meui.Theme.secondBackgroundColor
radius: Meui.Theme.smallRadius + 2
color: FishUI.Theme.darkMode ? Qt.lighter(FishUI.Theme.backgroundColor, 1.5) : FishUI.Theme.secondBackgroundColor
radius: FishUI.Theme.smallRadius + 2
}
}

@ -1,15 +1,15 @@
import QtQuick 2.9
import QtQuick.Templates 2.2 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.TabButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing
implicitHeight: FishUI.Units.iconSizes.medium + FishUI.Units.smallSpacing
property color pressedColor: Qt.rgba(Meui.Theme.textColor.r, Meui.Theme.textColor.g, Meui.Theme.textColor.b, 0.5)
property color pressedColor: Qt.rgba(FishUI.Theme.textColor.r, FishUI.Theme.textColor.g, FishUI.Theme.textColor.b, 0.5)
padding: 0
spacing: 0
@ -21,6 +21,6 @@ T.TabButton {
text: control.text
font: control.font
color: !control.enabled ? Meui.Theme.disabledTextColor : control.pressed ? pressedColor : control.checked ? Meui.Theme.textColor : Meui.Theme.textColor
color: !control.enabled ? FishUI.Theme.disabledTextColor : control.pressed ? pressedColor : control.checked ? FishUI.Theme.textColor : FishUI.Theme.textColor
}
}

@ -24,7 +24,7 @@ import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.6
import QtQuick.Templates 2.6 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.TextArea {
id: control
@ -41,9 +41,9 @@ T.TextArea {
padding: 6
color: Meui.Theme.textColor
selectionColor: Meui.Theme.highlightColor
selectedTextColor: Meui.Theme.highlightedTextColor
color: FishUI.Theme.textColor
selectionColor: FishUI.Theme.highlightColor
selectedTextColor: FishUI.Theme.highlightedTextColor
opacity: control.enabled ? 1 : 0.6
wrapMode: Text.WordWrap
verticalAlignment: TextEdit.AlignTop
@ -64,7 +64,7 @@ T.TextArea {
text: control.placeholderText
font: control.font
color: Meui.Theme.disabledTextColor
color: FishUI.Theme.disabledTextColor
horizontalAlignment: control.horizontalAlignment
verticalAlignment: control.verticalAlignment
visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
@ -75,6 +75,6 @@ T.TextArea {
y: parent.height - height - control.bottomPadding / 2
implicitWidth: 120
height: control.activeFocus ? 2 : 1
color: control.Meui.Theme.backgroundColor
color: control.FishUI.Theme.backgroundColor
}
}

@ -24,28 +24,28 @@ import QtQuick 2.6
import QtQuick.Window 2.1
import QtQuick.Controls 2.3 as Controls
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
import FishUI 1.0 as FishUI
T.TextField {
id: control
implicitWidth: Math.max(200,
placeholderText ? placeholder.implicitWidth + leftPadding + rightPadding : 0)
|| contentWidth + leftPadding + rightPadding + Meui.Units.extendBorderWidth
|| contentWidth + leftPadding + rightPadding + FishUI.Units.extendBorderWidth
implicitHeight: Math.max(contentHeight + topPadding + bottomPadding,
background ? background.implicitHeight : 0,
placeholder.implicitHeight + topPadding + bottomPadding + Meui.Units.extendBorderWidth)
placeholder.implicitHeight + topPadding + bottomPadding + FishUI.Units.extendBorderWidth)
// padding: 6
leftPadding: Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
rightPadding: Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
leftPadding: FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
rightPadding: FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
//Text.NativeRendering is broken on non integer pixel ratios
renderType: Window.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering
color: control.enabled ? Meui.Theme.textColor : Meui.Theme.disabledTextColor
selectionColor: Meui.Theme.highlightColor
selectedTextColor: Meui.Theme.highlightedTextColor
color: control.enabled ? FishUI.Theme.textColor : FishUI.Theme.disabledTextColor
selectionColor: FishUI.Theme.highlightColor
selectedTextColor: FishUI.Theme.highlightedTextColor
selectByMouse: true
horizontalAlignment: Text.AlignLeft
@ -64,7 +64,7 @@ T.TextField {
text: control.placeholderText
font: control.font
color: Meui.Theme.textColor
color: FishUI.Theme.textColor
opacity: 0.4
horizontalAlignment: Text.AlignLeft
verticalAlignment: control.verticalAlignment
@ -74,21 +74,21 @@ T.TextField {
}
background: Rectangle {
implicitWidth: (Meui.Units.iconSizes.medium * 3) + Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
// color: control.activeFocus ? Qt.lighter(Meui.Theme.backgroundColor, 1.4) : Meui.Theme.backgroundColor
implicitWidth: (FishUI.Units.iconSizes.medium * 3) + FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
implicitHeight: FishUI.Units.iconSizes.medium + FishUI.Units.smallSpacing + FishUI.Units.extendBorderWidth
// color: control.activeFocus ? Qt.lighter(FishUI.Theme.backgroundColor, 1.4) : FishUI.Theme.backgroundColor
color: "transparent"
radius: Meui.Theme.smallRadius
radius: FishUI.Theme.smallRadius
Rectangle {
id: _border
anchors.fill: parent
color: "transparent"
border.color: control.activeFocus ? Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.2) : "transparent"
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius + Meui.Units.extendBorderWidth
border.color: control.activeFocus ? Qt.rgba(FishUI.Theme.highlightColor.r,
FishUI.Theme.highlightColor.g,
FishUI.Theme.highlightColor.b, 0.2) : "transparent"
border.width: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.smallRadius + FishUI.Units.extendBorderWidth
Behavior on border.color {
ColorAnimation {
@ -99,10 +99,10 @@ T.TextField {
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
color: Meui.Theme.backgroundColor
border.color: control.activeFocus ? Meui.Theme.highlightColor : Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
anchors.margins: FishUI.Units.extendBorderWidth
radius: FishUI.Theme.smallRadius
color: FishUI.Theme.backgroundColor
border.color: control.activeFocus ? FishUI.Theme.highlightColor : Qt.tint(FishUI.Theme.textColor, Qt.rgba(FishUI.Theme.backgroundColor.r, FishUI.Theme.backgroundColor.g, FishUI.Theme.backgroundColor.b, 0.7))
border.width: 1
}
}

@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "meuikit.h"
#include "fishui.h"
#include "thememanager.h"
#include "iconthemeprovider.h"
#include "shadowhelper/windowshadow.h"
@ -31,9 +31,9 @@
#include <QQmlEngine>
#include <QQuickStyle>
void MeuiKit::initializeEngine(QQmlEngine *engine, const char *uri)
void FishUI::initializeEngine(QQmlEngine *engine, const char *uri)
{
Q_ASSERT(QLatin1String(uri) == QLatin1String("MeuiKit"));
Q_ASSERT(QLatin1String(uri) == QLatin1String("FishUI"));
// Set base URL to the plugin URL
engine->setBaseUrl(baseUrl());
@ -42,11 +42,11 @@ void MeuiKit::initializeEngine(QQmlEngine *engine, const char *uri)
engine->addImageProvider(QStringLiteral("icontheme"), new IconThemeProvider());
}
void MeuiKit::registerTypes(const char *uri)
void FishUI::registerTypes(const char *uri)
{
Q_ASSERT(QLatin1String(uri) == QLatin1String("MeuiKit"));
Q_ASSERT(QLatin1String(uri) == QLatin1String("FishUI"));
qmlRegisterSingletonType<ThemeManager>("MeuiKit.Core", 1, 0, "ThemeManager", [](QQmlEngine *engine, QJSEngine *scriptEngine) -> QObject * {
qmlRegisterSingletonType<ThemeManager>("FishUI.Core", 1, 0, "ThemeManager", [](QQmlEngine *engine, QJSEngine *scriptEngine) -> QObject * {
Q_UNUSED(engine)
Q_UNUSED(scriptEngine)
return new ThemeManager;
@ -74,7 +74,7 @@ void MeuiKit::registerTypes(const char *uri)
qmlProtectModule(uri, 1);
}
QUrl MeuiKit::componentUrl(const QString &fileName) const
QUrl FishUI::componentUrl(const QString &fileName) const
{
return QUrl(QStringLiteral("qrc:/meui/kit/") + fileName);
return QUrl(QStringLiteral("qrc:/fishui/kit/") + fileName);
}

@ -17,12 +17,12 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef MEUIKIT_H
#define MEUIKIT_H
#ifndef FISHUI_H
#define FISHUI_H
#include <QtQml/QQmlExtensionPlugin>
class MeuiKit : public QQmlExtensionPlugin
class FishUI : public QQmlExtensionPlugin
{
Q_OBJECT
Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid)
@ -40,4 +40,4 @@ private:
};
#endif // MEUIKIT_H
#endif // FISHUI_H

@ -1,5 +1,5 @@
<RCC>
<qresource prefix="/meui/kit">
<qresource prefix="/fishui/kit">
<file alias="BusyIndicator.qml">controls/BusyIndicator.qml</file>
<file alias="Icon.qml">controls/Icon.qml</file>
<file alias="MouseHover.qml">controls/MouseHover.qml</file>

@ -1,68 +0,0 @@
import QtQuick 2.4
import QtQuick.Templates 2.4 as T
import MeuiKit 1.0 as Meui
import QtQuick.Controls.impl 2.4
T.Button
{
id: control
implicitWidth: Math.max(background.implicitWidth, contentItem.implicitWidth + Meui.Units.largeSpacing)
implicitHeight: background.implicitHeight
hoverEnabled: true
property color hoveredColor: Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r,
Meui.Theme.backgroundColor.g,
Meui.Theme.backgroundColor.b, 0.9))
property color pressedColor: Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r,
Meui.Theme.backgroundColor.g,
Meui.Theme.backgroundColor.b, 0.8))
property color flatHoveredColor: Qt.lighter(Meui.Theme.highlightColor, 1.1)
property color flatPressedColor: Qt.darker(Meui.Theme.highlightColor, 1.1)
icon.width: Meui.Units.iconSizes.small
icon.height: Meui.Units.iconSizes.small
icon.color: control.enabled ? (control.highlighted ? control.Meui.Theme.highlightColor : control.Meui.Theme.textColor) : control.Meui.Theme.disabledTextColor
spacing: Meui.Units.smallSpacing
contentItem: IconLabel {
text: control.text
font: control.font
icon: control.icon
color: !control.enabled ? control.Meui.Theme.disabledTextColor : control.flat ? Meui.Theme.highlightedTextColor : Meui.Theme.textColor
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: Qt.AlignCenter
}
background: Item {
implicitWidth: (Meui.Units.iconSizes.medium * 3) + Meui.Units.largeSpacing + Meui.Units.extendBorderWidth
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
Rectangle {
id: _border
anchors.fill: parent
visible: control.activeFocus
color: "transparent"
border.color: Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3)
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.mediumRadius
}
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.mediumRadius - Meui.Units.extendBorderWidth
border.color: control.flat && control.enabled ? Meui.Theme.highlightColor : control.activeFocus || control.pressed ? Meui.Theme.highlightColor :
Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
border.width: 1
color: control.flat && control.enabled ? control.pressed ? control.flatPressedColor : control.hovered ? control.flatHoveredColor : Meui.Theme.highlightColor
: control.pressed ? control.pressedColor : control.hovered ? control.hoveredColor : Meui.Theme.backgroundColor
}
}
}

@ -1,31 +0,0 @@
import QtQuick 2.1
import QtQuick.Window 2.2
import QtQuick.Templates 2.3 as T
import MeuiKit 1.0 as Meui
T.Label {
id: control
verticalAlignment: lineCount > 1 ? Text.AlignTop : Text.AlignVCenter
activeFocusOnTab: false
//Text.NativeRendering is broken on non integer pixel ratios
renderType: Window.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering
font.capitalization: Meui.Theme.defaultFont.capitalization
font.family: Meui.Theme.defaultFont.family
font.italic: Meui.Theme.defaultFont.italic
font.letterSpacing: Meui.Theme.defaultFont.letterSpacing
font.pointSize: Meui.Theme.defaultFont.pointSize
font.strikeout: Meui.Theme.defaultFont.strikeout
font.underline: Meui.Theme.defaultFont.underline
font.weight: Meui.Theme.defaultFont.weight
font.wordSpacing: Meui.Theme.defaultFont.wordSpacing
color: Meui.Theme.textColor
linkColor: Meui.Theme.linkColor
opacity: enabled ? 1 : 0.6
Accessible.role: Accessible.StaticText
Accessible.name: text
}
Loading…
Cancel
Save