OSDN Git Service

7776387e688a810a01e318cd4bcf1c2ba8196596
[alterlinux/LFBS.git] / channels / share / airootfs / usr / share / calamares / branding / serene / show.qml
1 /* === This file is part of Calamares - <http://github.com/calamares> ===
2  *
3  *   Copyright 2015, Teo Mrnjavac <teo@kde.org>
4  *
5  *   Calamares is free software: you can redistribute it and/or modify
6  *   it under the terms of the GNU General Public License as published by
7  *   the Free Software Foundation, either version 3 of the License, or
8  *   (at your option) any later version.
9  *
10  *   Calamares is distributed in the hope that it will be useful,
11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  *   GNU General Public License for more details.
14  *
15  *   You should have received a copy of the GNU General Public License
16  *   along with Calamares. If not, see <http://www.gnu.org/licenses/>.
17  */
18
19 /*
20  * Slides images dimensions are 800x440px.
21  */
22
23 import QtQuick 2.12;
24 import calamares.slideshow 1.0;
25
26 Presentation
27 {
28     id: presentation
29
30     /*
31      * Slide
32      */
33
34     // slide1
35     Slide {
36         id: slide_1
37         Image {
38             id: image_1
39             source: "languages.png"
40             fillMode: Image.PreserveAspectFit
41             width: parent.width/2
42             anchors.bottom: parent.bottom
43             anchors.left  : parent.left
44             anchors.bottomMargin: 50
45
46         }
47         Text {
48             id: description_1
49             font.pixelSize: 15
50             width: parent.width/2
51             text: "Thank you for installing SereneLinux.\nIn installing, This slide will show how to use SereneLinux."
52             anchors.bottom: parent.bottom
53             anchors.right:  parent.right
54             anchors.bottomMargin: 50
55             wrapMode: Text.WordWrap
56         }
57         Rectangle{
58             width : slide_1.width
59             height: slide_1.height
60             color: "#FFFFFFFF"
61
62             SequentialAnimation on color{
63                 PauseAnimation { duration:2000 }
64                 ColorAnimation {
65                     to  : "#00FFFFFF"
66                     duration: 1000
67                 }
68             }
69         }
70         Text {
71             id: text_1
72             font.pixelSize: 25
73             font.weight: font.bold
74             text: "<b>Thank you for installing SereneLinux</b>"
75             x: -800
76             anchors.top: presentation.top
77             anchors.left: presentation.left
78             wrapMode: Text.WordWrap
79             width: presentation.width
80             SequentialAnimation on x {
81                 PauseAnimation{ duration: 500 }
82                 XAnimator{
83                     from:-800
84                     to: 0
85                     easing.type: Easing.OutCubic
86                     duration: 1500
87                 }
88             }
89         }
90     }
91
92     // logo
93     Image {
94         id: logo
95         source: "logo-512.png"
96         height: 60
97         fillMode: Image.PreserveAspectFit
98         anchors.top: parent.top
99         anchors.right: parent.right
100         anchors.topMargin: 100
101         anchors.rightMargin: 50
102     }
103     // install animation
104     Rectangle {
105         id: rectangle
106
107         anchors.horizontalCenter: presentation.horizontalCenter
108         anchors.bottom: presentation.bottom
109         color: "#ffffff"
110         anchors.bottomMargin: 28
111         width: text_1.width
112         // center
113         Image {
114             id: imagecenter
115             height: 8//text_1.height / 3
116             width:  8//text_1.width / 3
117             source: "circle.svg"
118             anchors.topMargin: 28
119             anchors.leftMargin: 9
120             anchors.centerIn: rectangle
121
122             fillMode: Image.PreserveAspectFit
123         }
124         // left
125         Image {
126             id: imageleft
127             y:imagecenter.y
128             height: imagecenter.height
129             width:  imagecenter.width
130             source: "circle.svg"
131             anchors.right      : imagecenter.left
132             anchors.topMargin  : 28
133             anchors.rightMargin:  9
134             anchors.leftMargin : 16
135
136             fillMode: Image.PreserveAspectFit
137         }
138         // right
139         Image {
140             id: imageright
141             y:imagecenter.y
142             height: imagecenter.height
143             width:  imagecenter.width
144             source: "circle.svg"
145             anchors.left      : imagecenter.right
146             anchors.topMargin : 28
147             anchors.leftMargin:  9
148
149             fillMode: Image.PreserveAspectFit
150         }
151     }
152     /*
153      * Animation
154      */
155
156     // left
157     SequentialAnimation{
158         SequentialAnimation{
159             ParallelAnimation {
160                 YAnimator {
161                     target: imageleft
162                     from: imageleft.y
163                     to: imageleft.y * 6
164                     easing.type: Easing.OutQuad;
165                     duration: 500
166                 }
167             }
168             //PauseAnimation { duration: 200 }
169             ParallelAnimation {
170                 YAnimator {
171                     target: imageleft;
172                     from: imageleft.y * 6
173                     to: imageleft.y
174                     easing.type: Easing.OutBounce;
175                     duration: 1000
176                 }
177             }
178         }
179         PauseAnimation { duration: 900 }
180         running: true
181         loops: Animation.Infinite
182     }
183     // center
184     SequentialAnimation{
185         PauseAnimation { duration: 200 }
186         SequentialAnimation{
187             ParallelAnimation {
188                 YAnimator {
189                     target: imagecenter
190                     from: imagecenter.y
191                     to: imagecenter.y * 6
192                     easing.type: Easing.OutQuad;
193                     duration: 500
194                 }
195             }
196             //PauseAnimation { duration: 200 }
197             ParallelAnimation {
198                 YAnimator {
199                     target: imagecenter
200                     from: imagecenter.y * 6
201                     to: imagecenter.y
202                     easing.type: Easing.OutBounce;
203                     duration: 1000
204                 }
205             }
206         }
207         PauseAnimation { duration: 700 }
208         running: true
209         loops: Animation.Infinite
210     }
211     // right
212     SequentialAnimation{
213         PauseAnimation { duration: 400 }
214         SequentialAnimation{
215             ParallelAnimation {
216                 YAnimator {
217                     target: imageright
218                     from: imageright.y
219                     to: imageright.y * 6
220                     easing.type: Easing.OutQuad;
221                     duration: 500
222                 }
223             }
224             //PauseAnimation { duration: 200 }
225             ParallelAnimation {
226                 YAnimator {
227                     target: imageright;
228                     from: imageright.y * 6
229                     to: imageright.y
230                     easing.type: Easing.OutBounce;
231                     duration: 1000
232                 }
233             }
234         }
235         PauseAnimation { duration: 500 }
236         running: true
237         loops: Animation.Infinite
238     }
239     /**/
240 }