Git commit d08800c98d7dae5242cb3f3d26279a26acfd1427 by Pulkit Gupta.
Committed on 31/08/2016 at 21:06.
Pushed by pulkitgupta into branch 'gsoc_pulkit_digital_electricity'.
digital_electricity, update wire color, and fix some other minor issues.
M +1 -1 src/activities/digital_electricity/DragListItem.qml
M +2 -2 src/activities/digital_electricity/Wire.qml
M +1 -1 src/activities/digital_electricity/components/BCDToSevenSegm=
ent.qml
M +25 -21 src/activities/digital_electricity/components/SignalGenerato=
r.qml
M +15 -6 src/activities/digital_electricity/digital_electricity.js
M +43 -43 src/activities/digital_electricity/resource/BCDTo7Segment.svg
M +15 -15 src/activities/digital_electricity/resource/BCDTo7SegmentDro=
pped.svg
M +6 -6 src/activities/digital_electricity/resource/signalGenerator.=
svg
http://commits.kde.org/gcompris/d08800c98d7dae5242cb3f3d26279a26acfd1427
diff --git a/src/activities/digital_electricity/DragListItem.qml b/src/acti=
vities/digital_electricity/DragListItem.qml
index f0917f5..fc002b3 100644
--- a/src/activities/digital_electricity/DragListItem.qml
+++ b/src/activities/digital_electricity/DragListItem.qml
@@ -129,7 +129,7 @@ Item {
//console.log("coord.x",coord.x,"coord.y",coord.y)
//console.log("dropped",terminalSize)
if(coord.x > 0 && (backgroundContainer.width - coo=
rd.x > tileImage.fullWidth))
- Activity.createComponent(coord.x, coord.y, img=
Name)
+ Activity.createComponent(coord.x, coord.y, com=
ponentSrc)
tileImage.anchors.centerIn =3D tile
tileImage.toSmall()
toolTip.show("")
diff --git a/src/activities/digital_electricity/Wire.qml b/src/activities/d=
igital_electricity/Wire.qml
index 72760de..bf0d340 100644
--- a/src/activities/digital_electricity/Wire.qml
+++ b/src/activities/digital_electricity/Wire.qml
@@ -27,12 +27,12 @@ import GCompris 1.0
Rectangle {
id: wire
=
- property string wireColor
+ //property string wireColor
property QtObject from
property QtObject to
=
height: 5
- color: wireColor
+ color: from.value =3D=3D 0 ? "Red" : "Green" //wireColor
radius: height / 2
transformOrigin: Item.Left
=
diff --git a/src/activities/digital_electricity/components/BCDToSevenSegmen=
t.qml b/src/activities/digital_electricity/components/BCDToSevenSegment.qml
index 559d9e6..e282dc0 100644
--- a/src/activities/digital_electricity/components/BCDToSevenSegment.qml
+++ b/src/activities/digital_electricity/components/BCDToSevenSegment.qml
@@ -48,7 +48,7 @@ ElectricalComponent {
"display the decimal number (represented by the BCD =
number) on the 7 segment display. " +
"The truth table for BCD To 7 Segment converted is:")
=
- truthTable: [['A','B','C','D','a','b','c','d','e','f','g'],
+ truthTable: [['D','C','B','A','a','b','c','d','e','f','g'],
['0','0','0','0','1','1','1','1','1','1','0'],
['0','0','0','1','0','1','1','0','0','0','0'],
['0','0','1','0','1','1','0','1','1','0','1'],
diff --git a/src/activities/digital_electricity/components/SignalGenerator.=
qml b/src/activities/digital_electricity/components/SignalGenerator.qml
index 85b4ce4..78c7d87 100644
--- a/src/activities/digital_electricity/components/SignalGenerator.qml
+++ b/src/activities/digital_electricity/components/SignalGenerator.qml
@@ -30,21 +30,23 @@ ElectricalComponent {
imgHeight: 0.18
imgSrc: "signalGenerator.svg"
toolTipTxt: qsTr("Signal Generator")
- terminalSize: 0.451
+ terminalSize: 0.24
noOfInputs: 0
noOfOutputs: 1
=
information: qsTr("Signal Generator is used to generate alternating si=
gnals of 0 and 1. " +
- "It takes frequency as input, and generate outputs a=
ccordingly. Frequency " +
- "refers to the number of times the output will chang=
e in 1 second. So 1 Hz " +
- "means that the output will change after every 1 sec=
ond, 0.5 Hz means that " +
- "the output will change after every 2 seconds, and s=
o on. For the demonstration " +
- "purpose, the minimum frequency of signal generator =
in this activity is " +
- "0.25 Hz, and maximum frequency is 2 Hz. The frequen=
cy can be changed by clicking " +
+ "It takes period as input, and generate outputs acco=
rdingly. Period " +
+ "refers to the number of seconds after which the out=
put will. So 1s " +
+ "means that the output will change after every 1 sec=
ond, 0.5s means that " +
+ "the output will change after every 0.5 seconds, and=
so on. For the demonstration " +
+ "purpose, the minimum period of signal generator in =
this activity is " +
+ "0.25s, and maximum period is 2s. The period can be =
changed by clicking " +
"on the arrows on the signal generator")
=
property alias outputTerminals: outputTerminals
- property double frequency: 0.25
+ property double period: 1
+ property variant periodFraction: ["1/4","1/2","1","2"]
+ property int periodIndex: 2
=
Repeater {
id: outputTerminals
@@ -53,8 +55,8 @@ ElectricalComponent {
Component {
id: outputTerminal
TerminalPoint {
- posX: 0.914
- posY: 0.512
+ posX: 0.95
+ posY: 0.504
value: 0
type: "Out"
}
@@ -81,7 +83,7 @@ ElectricalComponent {
=
Timer {
id: timer
- interval: 1000 / signalGenerator.frequency
+ interval: 1000 * signalGenerator.period
running: true
repeat: true
onTriggered: Activity.updateComponent(signalGenerator.index)
@@ -91,7 +93,7 @@ ElectricalComponent {
source: Activity.url + "arrowUp.svg"
height: 0.339 * parent.height
width: 0.123 * parent.width
- property double posX: 0.632
+ property double posX: 0.688
property double posY: 0.284
x: (parent.width - parent.paintedWidth) / 2 + posX * parent.painte=
dWidth - width / 2
y: (parent.height - parent.paintedHeight) / 2 + posY * parent.pain=
tedHeight - height / 2
@@ -101,10 +103,11 @@ ElectricalComponent {
MouseArea {
anchors.fill: parent
anchors.centerIn: parent
- enabled: signalGenerator.frequency !=3D 2
+ enabled: signalGenerator.period !=3D 2
onPressed: {
//console.log("Up pressed")
- signalGenerator.frequency +=3D 0.25
+ signalGenerator.period *=3D 2
+ periodIndex++
timer.restart()
outputTerminals.itemAt(0).value =3D 1
Activity.updateComponent(signalGenerator.index)
@@ -115,8 +118,8 @@ ElectricalComponent {
Image {
source: Activity.url + "arrowDown.svg"
height: 0.339 * parent.height
- width: 0.123 * parent.width
- property double posX: 0.632
+ width: 0.133 * parent.width
+ property double posX: 0.688
property double posY: 0.713
x: (parent.width - parent.paintedWidth) / 2 + posX * parent.painte=
dWidth - width / 2
y: (parent.height - parent.paintedHeight) / 2 + posY * parent.pain=
tedHeight - height / 2
@@ -126,10 +129,11 @@ ElectricalComponent {
MouseArea {
anchors.fill: parent
anchors.centerIn: parent
- enabled: signalGenerator.frequency !=3D 0.25
+ enabled: signalGenerator.period !=3D 0.25
onPressed: {
//console.log("Down pressed")
- signalGenerator.frequency -=3D 0.25
+ signalGenerator.period /=3D 2
+ periodIndex--
timer.restart()
outputTerminals.itemAt(0).value =3D 1
Activity.updateComponent(signalGenerator.index)
@@ -141,8 +145,8 @@ ElectricalComponent {
//id: valueContainer
source: Activity.url + "valueContainer.svg"
sourceSize.height: 0.818 * parent.height
- sourceSize.width: 0.512 * parent.width
- property double posX: 0.306
+ sourceSize.width: 0.557 * parent.width
+ property double posX: 0.333
property double posY: 0.503
x: (parent.width - parent.paintedWidth) / 2 + posX * parent.painte=
dWidth - width / 2
y: (parent.height - parent.paintedHeight) / 2 + posY * parent.pain=
tedHeight - height / 2
@@ -160,7 +164,7 @@ ElectricalComponent {
verticalAlignment: Text.AlignVCenter
height: parent.height - 10
width: parent.width - 10
- text: qsTr("%1 Hz").arg(signalGenerator.frequency.toFixed(2))
+ text: qsTr("%1s").arg(signalGenerator.periodFraction[periodInd=
ex])
}
}
}
diff --git a/src/activities/digital_electricity/digital_electricity.js b/sr=
c/activities/digital_electricity/digital_electricity.js
index 47403dc..f3f661f 100644
--- a/src/activities/digital_electricity/digital_electricity.js
+++ b/src/activities/digital_electricity/digital_electricity.js
@@ -34,7 +34,7 @@ var selectedTerminal
var deletedIndex =3D []
var components =3D []
var connected =3D []
-var colors =3D ["red","green","blue","blueviolet","silver"]
+//var colors =3D ["red","green","blue","blueviolet","silver"]
=
function start(items_) {
=
@@ -43,42 +43,49 @@ function start(items_) {
=
items.availablePieces.model.append( {
"imgName": "zero.svg",
+ "componentSrc": "Zero.qml",
"imgWidth": 0.12,
"imgHeight": 0.2,
"toolTipText": qsTr("Zero input")
})
items.availablePieces.model.append( {
"imgName": "one.svg",
+ "componentSrc": "One.qml",
"imgWidth": 0.12,
"imgHeight": 0.2,
"toolTipText": qsTr("One input")
})
items.availablePieces.model.append( {
"imgName": "gateAnd.svg",
+ "componentSrc": "AndGate.qml",
"imgWidth": 0.15,
"imgHeight": 0.12,
"toolTipText": qsTr("AND gate")
})
items.availablePieces.model.append( {
"imgName": "BCDTo7Segment.svg",
+ "componentSrc": "BCDToSevenSegment.qml",
"imgWidth": 0.3,
"imgHeight": 0.4,
"toolTipText": qsTr("BCD To 7 Segment")
})
items.availablePieces.model.append( {
"imgName": "sevenSegmentDisplay.svgz",
+ "componentSrc": "SevenSegment.qml",
"imgWidth": 0.18,
"imgHeight": 0.4,
"toolTipText": qsTr("7 Segment Display")
})
items.availablePieces.model.append( {
"imgName": "DigitalLightOff.svg",
+ "componentSrc": "DigitalLight.qml",
"imgWidth": 0.2,
"imgHeight": 0.18,
"toolTipText": qsTr("Digital Light")
})
items.availablePieces.model.append( {
"imgName": "signalGenerator.svg",
+ "componentSrc": "SignalGenerator.qml",
"imgWidth": 0.25,
"imgHeight": 0.18,
"toolTipText": qsTr("Signal Generator")
@@ -134,7 +141,7 @@ function createComponent(x, y, src) {
else
index =3D components.length
=
- var electricComponent
+ /*var electricComponent
var componentLocation =3D "qrc:/gcompris/src/activities/digital_electr=
icity/components/"
if(src =3D=3D "one.svg")
electricComponent =3D Qt.createComponent(componentLocation + "One.=
qml")
@@ -149,7 +156,9 @@ function createComponent(x, y, src) {
else if(src =3D=3D "DigitalLightOff.svg")
electricComponent =3D Qt.createComponent(componentLocation + "Digi=
talLight.qml")
else if(src =3D=3D "signalGenerator.svg")
- electricComponent =3D Qt.createComponent(componentLocation + "Sign=
alGenerator.qml")
+ electricComponent =3D Qt.createComponent(componentLocation + "Sign=
alGenerator.qml")*/
+ =
+ var electricComponent =3D Qt.createComponent("qrc:/gcompris/src/activi=
ties/digital_electricity/components/" + src)
=
//console.log("Error loading component:", electricComponent.errorStrin=
g())
components[index] =3D electricComponent.createObject(
@@ -176,12 +185,12 @@ function terminalPointSelected(terminal) {
//console.log("in2")
var wireComponent =3D Qt.createComponent("qrc:/gcompris/src/ac=
tivities/digital_electricity/Wire.qml")
=
- var colorIndex =3D Math.floor(Math.random() * colors.length)
+ //var colorIndex =3D Math.floor(Math.random() * colors.length)
var wire =3D wireComponent.createObject(
items.backgroundContainer, {
"from": outTerminal,
- "to": inTerminal,
- "wireColor": colors[colorIndex]
+ "to": inTerminal
+ //"wireColor": colors[colorIndex]
//"index": index
});
inTerminal.value =3D outTerminal.value
diff --git a/src/activities/digital_electricity/resource/BCDTo7Segment.svg =
b/src/activities/digital_electricity/resource/BCDTo7Segment.svg
index 0e3e22b..b7972f3 100644
--- a/src/activities/digital_electricity/resource/BCDTo7Segment.svg
+++ b/src/activities/digital_electricity/resource/BCDTo7Segment.svg
@@ -15,7 +15,7 @@
id=3D"svg4252"
version=3D"1.1"
inkscape:version=3D"0.91 r13725"
- sodipodi:docname=3D"BCDTo7Segment2.svg">
+ sodipodi:docname=3D"BCDTo7Segment.svg">
image/svg+xml
-
+
@@ -229,42 +229,6 @@
cx=3D"846.90234"
cy=3D"830.2597"
r=3D"23.867764" />
- B
- C
- D
B
+ C
+ D
+ A
+ x=3D"190.24521"
+ y=3D"832.1756">A
diff --git a/src/activities/digital_electricity/resource/BCDTo7SegmentDropp=
ed.svg b/src/activities/digital_electricity/resource/BCDTo7SegmentDropped.s=
vg
index 81ffcb1..b46d186 100644
--- a/src/activities/digital_electricity/resource/BCDTo7SegmentDropped.svg
+++ b/src/activities/digital_electricity/resource/BCDTo7SegmentDropped.svg
@@ -15,7 +15,7 @@
id=3D"svg4252"
version=3D"1.1"
inkscape:version=3D"0.91 r13725"
- sodipodi:docname=3D"BCDTo7Segment.svg">
+ sodipodi:docname=3D"BCDTo7SegmentDropped.svg">
B
+ y=3D"657.60394">B
C
+ x=3D"198.15549"
+ y=3D"495.55365">C
D
+ x=3D"195.97772"
+ y=3D"346.99399">D
A
+ x=3D"190.28769"
+ y=3D"835.16516">A
diff --git a/src/activities/digital_electricity/resource/signalGenerator.sv=
g b/src/activities/digital_electricity/resource/signalGenerator.svg
index ec6081b..09270c3 100644
--- a/src/activities/digital_electricity/resource/signalGenerator.svg
+++ b/src/activities/digital_electricity/resource/signalGenerator.svg
@@ -13,14 +13,14 @@
id=3D"svg47331"
sodipodi:docname=3D"signalGenerator.svg"
inkscape:export-filename=3D"/home/cats/Desktop/computer.png"
- viewBox=3D"0 0 883.94856 337.58"
+ viewBox=3D"0 0 812.57893 337.58"
sodipodi:version=3D"0.32"
inkscape:export-xdpi=3D"150"
version=3D"1.0"
inkscape:output_extension=3D"org.inkscape.output.svg.inkscape"
inkscape:export-ydpi=3D"150"
inkscape:version=3D"0.91 r13725"
- width=3D"883.94855"
+ width=3D"812.57892"
height=3D"337.57999">
Function Generator
@@ -380,7 +380,7 @@
showgrid=3D"false"
borderopacity=3D"1.0"
inkscape:current-layer=3D"layer1"
- inkscape:cx=3D"322.74115"
+ inkscape:cx=3D"515.7122"
inkscape:cy=3D"197.9809"
showguides=3D"true"
inkscape:window-y=3D"-8"
@@ -432,9 +432,9 @@
+ cx=3D"826.39526"
+ cy=3D"284.87033"
+ r=3D"40.493652" />