aboutsummaryrefslogtreecommitdiffstats
path: root/examples/platforms/android/qml_in_java_based_android_project/app/src/main/java/com/example/qml_in_java_based_android_project/Colors.java
blob: ba2a9265f9317d5498e85f52947089cc732e78cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
package com.example.qml_in_java_based_android_project;

import java.util.Arrays;
import java.util.Collections;
import java.util.Stack;

class Colors {
    private final Stack<Integer> recycle;
    private final Stack<Integer> colors;

    public Colors() {
        colors = new Stack<>();
        recycle = new Stack<>();
        recycle.addAll(Arrays.asList(
                        0xff1CB669, 0xff00414A, 0xff27138B,
                        0xffB5C10E, 0xff373F26, 0xffAF93DF,
                        0xff817505
                )
        );
    }

    public String getColor() {
        if (colors.size()==0) {
            while (!recycle.isEmpty())
                colors.push(recycle.pop());
            Collections.shuffle(colors);
        }
        int color = colors.pop();
        recycle.push(color);
        return String.format("#%06X", (0xFFFFFF & color));
    }
}