~stefan-schwarzburg/qreator/touch-reorganized-colortheme

« back to all changes in this revision

Viewing changes to qreator/QrCodeTheme.qml

  • Committer: Stefan Schwarzburg
  • Date: 2013-06-13 09:13:52 UTC
  • Revision ID: stefan.schwarzburg@gmail.com-20130613091352-w3olbgn62ubcirdk
Started to implement a color theme selector. 

Working so far: change foreground color of the standard theme by moving rgb sliders in the theme-page.
Not working: changing background color; changing main or eye theme.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import QtQuick 2.0
 
2
 
 
3
 
 
4
Item {
 
5
    id: colorTheme
 
6
    
 
7
    property color background: "white"
 
8
    property color foreground: "black"
 
9
    
 
10
    function drawDots (qr, ctx) {
 
11
        for (var row = 0; row < qr.getModuleCount(); row++) {
 
12
            for (var col = 0; col < qr.getModuleCount(); col++) {
 
13
                if (qr.isDark(row, col) ) {
 
14
                    ctx.fillStyle = foreground;
 
15
                } else {
 
16
                    ctx.fillStyle = background;  
 
17
                }
 
18
                drawPixelShape(ctx, 1, col*pixel_size, row*pixel_size, pixel_size, pixel_size);
 
19
            }
 
20
        }       
 
21
    }
 
22
 
 
23
    function drawPixelShape(context, shape, x, y, width, height){
 
24
        // FIXME: need to add constants (enum) for shape. See
 
25
        // http://www.misfitgeek.com/2011/10/using-enum-in-javascript/
 
26
        if (shape == 1) {
 
27
            // Square-shaped pixels
 
28
            context.fillRect (x, y, width, height);
 
29
        }
 
30
 
 
31
        if (shape == 2) {
 
32
            // Round-shaped pixels
 
33
            context.beginPath();
 
34
            context.arc(x + width/2, y + height/2, width/2, 0, 2 * Math.PI, false);
 
35
            context.fill();
 
36
        }
 
37
 
 
38
    }
 
39
 
 
40
 
 
41
}
 
 
b'\\ No newline at end of file'