Warning, /plasma/latte-dock/shell/package/contents/controls/TypeSelection.qml is written in an unsupported language. File is not indexed.

0001 /*
0002     SPDX-FileCopyrightText: 2016 Smith AR <audoban@openmailbox.org>
0003     SPDX-FileCopyrightText: 2016 Michail Vourlakos <mvourlakos@gmail.com>
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 import QtQuick 2.7
0008 import QtGraphicalEffects 1.0
0009 import QtQuick.Controls 1.4
0010 import QtQuick.Layouts 1.3
0011 
0012 import org.kde.plasma.core 2.0 as PlasmaCore
0013 import org.kde.plasma.components 2.0 as PlasmaComponents
0014 
0015 import org.kde.plasma.plasmoid 2.0
0016 
0017 import org.kde.latte.core 0.2 as LatteCore
0018 import org.kde.latte.private.containment 0.1 as LatteContainment
0019 
0020 Grid {
0021     id: typeRow
0022 
0023     width: horizontal ? content.width - 4*units.smallSpacing : 9 * theme.defaultFont.pixelSize
0024     anchors.leftMargin: horizontal ? units.smallSpacing : 0
0025     anchors.rightMargin: horizontal ? units.smallSpacing : 0
0026 
0027     Layout.minimumWidth: width
0028     Layout.maximumWidth: width
0029     Layout.minimumHeight: height
0030     Layout.maximumHeight: height
0031 
0032     Layout.leftMargin: units.smallSpacing * 2
0033     Layout.rightMargin: units.smallSpacing * 2
0034 
0035     rows: horizontal ? 1 : 0
0036     columns: horizontal ? 0 : 1
0037 
0038     spacing: 1
0039 
0040     verticalItemAlignment: Grid.AlignVCenter
0041 
0042     property bool horizontal: false
0043 
0044     ExclusiveGroup {
0045         id: viewTypeGroup
0046     }
0047 
0048     PlasmaComponents.Button {
0049         id: dockTypeButton
0050         width: horizontal ? (parent.width - parent.spacing)/ 2 : parent.width
0051         enabled: LatteCore.WindowSystem.compositingActive
0052 
0053         checkable: true
0054         checked: latteView.type === LatteCore.Types.DockView
0055         text: i18nc("dock type","Dock")
0056         exclusiveGroup: viewTypeGroup
0057         tooltip: i18n("Change the behavior and appearance to Dock type")
0058 
0059         onPressedChanged: {
0060             if (pressed && !checked) {
0061                 latteView.userRequestedViewType(LatteCore.Types.DockView);
0062 
0063                 latteView.visibility.mode = LatteCore.Types.DodgeActive;
0064                 plasmoid.configuration.alignment = LatteCore.Types.Center;
0065                 plasmoid.configuration.useThemePanel = true;
0066                 plasmoid.configuration.solidPanel = false;
0067                 plasmoid.configuration.panelSize = 5;
0068                 plasmoid.configuration.appletShadowsEnabled = true;
0069                 plasmoid.configuration.zoomLevel = 16;
0070                 //plasmoid.configuration.autoDecreaseIconSize = true;
0071 
0072                 //! Empty Areas
0073                 plasmoid.configuration.dragActiveWindowEnabled = false;
0074                 plasmoid.configuration.scrollAction = LatteContainment.Types.ScrollNone;
0075 
0076                 //! Items
0077                 plasmoid.configuration.autoSizeEnabled = true;
0078 
0079                 //! Dynamic Background
0080                 plasmoid.configuration.solidBackgroundForMaximized = false;
0081                 plasmoid.configuration.colorizeTransparentPanels = false;
0082                 plasmoid.configuration.backgroundOnlyOnMaximized = false;
0083                 plasmoid.configuration.disablePanelShadowForMaximized = false;
0084                 plasmoid.configuration.plasmaBackgroundForPopups = false;
0085 
0086                 //! Floating
0087                 plasmoid.configuration.floatingInternalGapIsForced = true;
0088             }
0089         }
0090     }
0091 
0092     PlasmaComponents.Button {
0093         id: panelTypeButton
0094         width: dockTypeButton.width
0095         enabled: LatteCore.WindowSystem.compositingActive
0096 
0097         checkable: true
0098         checked: latteView.type === LatteCore.Types.PanelView
0099         text: i18nc("panel type","Panel")
0100         exclusiveGroup: viewTypeGroup
0101         tooltip: i18n("Change the behavior and appearance to Panel type")
0102 
0103         onPressedChanged: {
0104             if (pressed && !checked) {
0105                 latteView.userRequestedViewType(LatteCore.Types.PanelView);
0106 
0107                 latteView.visibility.mode = LatteCore.Types.AlwaysVisible;
0108                 plasmoid.configuration.alignment = LatteCore.Types.Justify;
0109                 plasmoid.configuration.useThemePanel = true;
0110                 plasmoid.configuration.solidPanel = false;
0111                 plasmoid.configuration.panelSize = 100;
0112                 plasmoid.configuration.panelShadows = true;
0113                 plasmoid.configuration.appletShadowsEnabled = false;
0114                 plasmoid.configuration.zoomLevel = 0;
0115                 plasmoid.configuration.titleTooltips = false;
0116                 //plasmoid.configuration.autoDecreaseIconSize = false;
0117 
0118                 //! Empty Areas
0119                 plasmoid.configuration.dragActiveWindowEnabled = true;
0120 
0121                 //! Items
0122                 plasmoid.configuration.autoSizeEnabled = false;
0123 
0124                 //! Dynamic Background
0125                 plasmoid.configuration.colorizeTransparentPanels = false;
0126                 plasmoid.configuration.backgroundOnlyOnMaximized = false;
0127                 plasmoid.configuration.disablePanelShadowForMaximized = false;
0128                 plasmoid.configuration.plasmaBackgroundForPopups = true;
0129 
0130                 //! Floating
0131                 plasmoid.configuration.floatingInternalGapIsForced = false;
0132 
0133                 //! Custom Background that overrides Plasma Theme metrics
0134                 plasmoid.configuration.backgroundRadius = -1;
0135                 plasmoid.configuration.backgroundShadowSize = -1;
0136             }
0137         }
0138     }
0139 }
0140