Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
libdap-qt-ui-qml
Manage
Activity
Members
Labels
Plan
Issues
0
Issue boards
Milestones
Wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
cellframe
libdap-qt-ui-qml
Merge requests
!39
Features 2989
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Features 2989
features-2989
into
develop
Overview
0
Commits
8
Pipelines
0
Changes
4
Merged
andrey.daragan
requested to merge
features-2989
into
develop
5 years ago
Overview
0
Commits
8
Pipelines
0
Changes
4
Expand
[*] Temporary editing.
👍
0
👎
0
Merge request reports
Compare
develop
develop (base)
and
latest version
latest version
ea7ac230
8 commits,
5 years ago
4 files
+
172
−
1
Side-by-side
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
4
Search (e.g. *.vue) (Ctrl+P)
widgets/DapBusyIndicator.qml
0 → 100644
+
130
−
0
Options
import
QtQuick
2.2
import
QtQuick
.
Controls
2.0
DapBusyIndicatorForm
{
contentItem
:
Item
{
id
:
busyItem
width
:
busyIndicatorWidth
height
:
busyIndicatorHeight
//To set number of indicator point
Repeater
{
id
:
busyRepeater
model
:
busyPointNum
Rectangle
{
x
:
busyItem
.
width
/
2
-
width
/
2
y
:
busyItem
.
height
/
2
-
height
/
2
width
:
busyPointWidth
height
:
busyPointHeight
radius
:
busyPointRounding
opacity
:
1
//Add possibility of color animation
Behavior
on
color
{
ColorAnimation
{
from
:
busyIndicatorDarkColor
duration
:
busyIndicatorDelay
*
busyPointNum
}
}
//Add possibility of scale animation
Behavior
on
scale
{
ScaleAnimator
{
from
:
busyPointMaxScale
duration
:
busyIndicatorDelay
*
busyPointNum
}
}
//Set next indicator point as transformation of previous
transform
:
Rotation
{
origin.x
:
busyItem
.
width
/
2
-
width
origin.y
:
busyItem
.
height
/
2
-
height
angle
:
index
*
(
360
/
busyPointNum
)
}
//Timer of every point transformation
Timer
{
id
:
reset
interval
:
busyIndicatorDelay
*
(
index
)
onTriggered
:
{
console
.
log
(
"
reset triggered, index:
"
,
index
)
parent
.
opacity
=
1
parent
.
color
=
busyIndicatorDarkColor
parent
.
scale
=
busyPointMaxScale
reset2
.
start
()
}
onRunningChanged
:
{
if
(
running
)
console
.
log
(
"
reset start, index:
"
,
index
)
else
console
.
log
(
"
reset stop, index:
"
,
index
)
}
}
//Timer of point transformation at one position
Timer
{
id
:
reset2
interval
:
busyIndicatorDelay
onTriggered
:
{
console
.
log
(
"
reset2 triggered, index:
"
,
index
)
parent
.
opacity
=
1
parent
.
color
=
busyIndicatorLightColor
parent
.
scale
=
busyPointMinScale
}
onRunningChanged
:
{
if
(
running
)
console
.
log
(
"
reset2 start, index:
"
,
index
)
else
console
.
log
(
"
reset2 stop, index:
"
,
index
)
}
}
//Timer of all busy indicator transformation
Timer
{
id
:
globalTimer
interval
:
busyIndicatorDelay
*
busyPointNum
onTriggered
:
{
console
.
log
(
"
globalTimer triggered, index:
"
,
index
)
reset
.
start
()
}
triggeredOnStart
:
true
repeat
:
true
}
Component.onCompleted
:
{
globalTimer
.
start
()
}
onVisibleChanged
:
{
if
(
!
visible
)
{
globalTimer
.
stop
();
reset
.
stop
();
reset2
.
stop
();
}
}
}
}
}
onRunningChanged
:
{
if
(
running
)
{
console
.
log
(
"
running all
"
)
}
else
console
.
log
(
"
stop all
"
)
}
}
Loading