Warning, file /education/gcompris/src/activities/simplepaint/simplepaint.js was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /* GCompris - simplepaint.js
0002  *
0003  * SPDX-FileCopyrightText: 2014 Bruno Coudoin
0004  *
0005  * Authors:
0006  *   Christof Petig and Ingo Konrad (GTK+ version)
0007  *   Bruno Coudoin <bruno.coudoin@gcompris.net> (Qt Quick port)
0008  *
0009  *   SPDX-License-Identifier: GPL-3.0-or-later
0010  */
0011 .pragma library
0012 .import QtQuick 2.12 as Quick
0013 .import "qrc:/gcompris/src/core/core.js" as Core
0014 
0015 var url = "qrc:/gcompris/src/activities/simplepaint/resource/"
0016 
0017 var colorsSimple = [
0018             '#00FFFFFF',
0019             '#FF550000',
0020             '#FFaa0000',
0021             '#FFffaaaa',
0022             '#FFffdd55',
0023             '#FF918a6f',
0024             '#FFccff00',
0025             '#FFe5ff80',
0026             '#FF330080',
0027             '#FF9955ff',
0028             '#FFe9afdd',
0029             '#FFff2a7f'
0030 ]
0031 
0032 var colorsAdvanced = [
0033             '#00FFFFFF',
0034             '#FF550000',
0035             '#FF800000',
0036             '#FFaa0000',
0037             '#FFd40000',
0038             '#FFff0000',
0039             '#FFff2a2a',
0040             '#FFff8080',
0041             '#FFffaaaa',
0042             '#FFffd5d5',
0043             '#FFc83737',
0044             '#FFd35f5f',
0045             '#FFde8787',
0046             '#FFaa4400',
0047             '#FFd45500',
0048             '#FFff7f2a',
0049             '#FFff9955',
0050             '#FFffccaa',
0051             '#FFaa8800',
0052             '#FFffcc00',
0053             '#FFffdd55',
0054             '#FFffe680',
0055             '#FFc8ab37',
0056             '#FFd3bc5f',
0057             '#FF918a6f',
0058             '#FFaca793',
0059             '#FFaad400',
0060             '#FFccff00',
0061             '#FFe5ff80',
0062             '#FFf6ffd5',
0063             '#FF00d455',
0064             '#FF80ffb3',
0065             '#FF00ffcc',
0066             '#FF80ffe6',
0067             '#FF2ad4ff',
0068             '#FFaaeeff',
0069             '#FF0066ff',
0070             '#FF5555ff',
0071             '#FF87aade',
0072             '#FF80b3ff',
0073             '#FF0000ff',
0074             '#FF330080',
0075             '#FF9955ff',
0076             '#FFdd55ff',
0077             '#FFff2ad4',
0078             '#FFe9afdd',
0079             '#FFff2a7f',
0080             '#FFff80b2',
0081             '#FFd35f8d'
0082 ]
0083 
0084 var backgrounds = [
0085     'qrc:/gcompris/src/activities/menu/resource/background.svg',
0086     'qrc:/gcompris/src/activities/colors/resource/background.svg',
0087     'qrc:/gcompris/src/activities/wordsgame/resource/background.svg',
0088     'qrc:/gcompris/src/activities/sudoku/resource/background.svg',
0089     'qrc:/gcompris/src/activities/mosaic/resource/background.svg',
0090     'qrc:/gcompris/src/activities/algebra_by/resource/background.svg',
0091     'qrc:/gcompris/src/activities/scalesboard/resource/background.svg',
0092     'qrc:/gcompris/src/activities/redraw/resource/background.svg',
0093     'qrc:/gcompris/src/activities/color_mix/resource/background.svg',
0094     'qrc:/gcompris/src/activities/missing-letter/resource/background.svg',
0095     'qrc:/gcompris/src/activities/enumerate/resource/background.svg',
0096     'qrc:/gcompris/src/activities/football/resource/background.svg',
0097     'qrc:/gcompris/src/activities/hanoi_real/resource/background.svg',
0098     'qrc:/gcompris/src/activities/gravity/resource/background.svg',
0099     'qrc:/gcompris/src/activities/instruments/resource/background.svg',
0100     'qrc:/gcompris/src/activities/gletters/resource/background.svg',
0101     'qrc:/gcompris/src/activities/braille_alphabets/resource/background.svg',
0102     'qrc:/gcompris/src/activities/followline/resource/background.svg',
0103     'qrc:/gcompris/src/activities/bargame/resource/background.svg',
0104     'qrc:/gcompris/src/activities/menu/resource/background.svg',
0105     'qrc:/gcompris/src/activities/smallnumbers2/resource/background.svg',
0106     'qrc:/gcompris/src/activities/align4_2players/resource/background.svg',
0107     'qrc:/gcompris/src/activities/smallnumbers/resource/background.svg',
0108     'qrc:/gcompris/src/activities/magic-hat-minus/resource/background.svg',
0109     'qrc:/gcompris/src/activities/tic_tac_toe/resource/background.svg',
0110     'qrc:/gcompris/src/activities/click_on_letter/resource/background.svg',
0111     'qrc:/gcompris/src/activities/fifteen/resource/background.svg',
0112     'qrc:/gcompris/src/activities/crane/resource/background.svg',
0113     'qrc:/gcompris/src/activities/hangman/resource/background.svg',
0114     'qrc:/gcompris/src/activities/land_safe/resource/background.svg',
0115     'qrc:/gcompris/src/activities/target/resource/target_background.svg',
0116 ]
0117 
0118 var items
0119 
0120 // The size of the array
0121 var nbx
0122 var nby
0123 
0124 var numberOfLevel = backgrounds.length
0125 
0126 var background
0127 
0128 function start(items_, _background) {
0129     background = _background
0130     items = items_
0131     Core.getInitialLevel(numberOfLevel);
0132     initLevel()
0133 }
0134 
0135 function stop() {
0136 }
0137 
0138 function initLevel() {
0139     items.paintModel.clear()
0140     items.current_color = 1
0141     items.selectedColor = items.colors[1]
0142     items.colorSelector.positionViewAtBeginning()
0143     nbx = 20 + items.currentLevel
0144     nby = Math.floor(nbx * (items.gridLayout.height / items.gridLayout.width))
0145     background.refreshCursor()
0146 
0147     var model = []
0148     for(var ix = 0;  ix < nbx; ++ix) {
0149         for(var iy = 0;  iy < nby; ++iy) {
0150             items.paintModel.append( {
0151                "m_ix": ix, "m_iy": iy, "m_nbx": nbx, "m_nby": nby,
0152             } )
0153         }
0154     }
0155 }
0156 
0157 function nextLevel() {
0158     items.currentLevel = Core.getNextLevel(items.currentLevel, numberOfLevel);
0159     initLevel();
0160 }
0161 
0162 function previousLevel() {
0163     items.currentLevel = Core.getPreviousLevel(items.currentLevel, numberOfLevel);
0164     initLevel();
0165 }
0166 
0167 function getColor() {
0168     return items.selectedColor
0169 }