Index: SDDs/MainTreatmentScreen.puml =================================================================== diff -u -rf0f5a1a28a8ff55672f10b5c50c6c406f6c72c2d -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- SDDs/MainTreatmentScreen.puml (.../MainTreatmentScreen.puml) (revision f0f5a1a28a8ff55672f10b5c50c6c406f6c72c2d) +++ SDDs/MainTreatmentScreen.puml (.../MainTreatmentScreen.puml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -3,8 +3,6 @@ participant TD as TD participant SW as SW participant UI as UI - control Wait_Retry as Wait_Retry - actor USER as US 'Possible actions and interaction tuypes ' TD -> SW: MSG: Message @@ -23,26 +21,26 @@ '[x \n ,X The rest of the parameters do not matter.] == Tx Time == - TD -> SW: MSG: [x3B: #3] \nTD treatment time data - SW -> UI: CMD: Update TX time + TD -> SW: MSG: [x3B: #3] \nTD Treatment Time Data:\n(U32) txDurSecs\n(U32) txElapsedSec\n(U32) txRemainingSecs + SW -> UI: CMD: Update Treatment Time:\n(U32) txDurSecs\n(U32) txElapsedSec\n(U32) txRemainingSecs == Tx Parameter set points == - TD -> SW: MSG: [x4F: #3] \nTD treatment set points data - SW -> UI: CMD: Update:\nBlood Flow\nDialysate Flow\nDialysate Temp + TD -> SW: MSG: [x4F: #3] \nTD treatment Set Points Data\n(U32) bloodFlow\n(U32) dialFlow\n(F32) dialTemp + SW -> UI: CMD: Update TX Set Points Data:\n(U32) bloodFlow\n(U32) dialFlow\n(F32) dialTemp == Saline == - TD -> SW: MSG: [x3D: #4] \nTD saline bolus status data - SW -> UI: CMD: Update Saline status + TD -> SW: MSG: [x3D: #4] \nTD Saline Bolus Status Data\n(U32) ntgtVolMl\n(F32) cumVolMl\n(F32) bolVolMl\n(U32) sbState + SW -> UI: CMD: Update Saline Bolus Data\n(U32) ntgtVolMl\n(F32) cumVolMl\n(F32) bolVolMl\n(U32) sbState == Ultrafiltration == - TD -> SW: MSG: [x3E: #4] \nTD ultrafiltration status data - SW -> UI: CMD: Update UF Status + TD -> SW: MSG: [x3E: #4] \nTD Ultrafiltration Status Data\n(F32) setVolL\n(F32) tgtRateLHr\n(F32) volDelL\n(U32) ufState + SW -> UI: CMD: Update UF Status\n(F32) setVolL\n(F32) tgtRateLHr\n(F32) volDelL\n(U32) ufState == Pressures == - TD -> SW: MSG: [x24: #12] \nTD pressures data - SW -> UI: CMD: Update TX Pressres + TD -> SW: MSG: [x24: #12] \nTD Pressures Data\n(F32) artPress, \n(F32) venPres\n(U32) limitState\n(S32) artMin\n(S32) artMax\n(S32) venMin\n(s32) venMax\n(F32) artLong\n(U32) venLong\n(F32) tmpPress\n(F32) tmpMin\n(F32) tmpMax + SW -> UI: CMD: Update TD Pressures\n(F32) artPress, \n(F32) venPres\n(U32) limitState\n(S32) artMin\n(S32) artMax\n(S32) venMin\n(s32) venMax\n(F32) artLong\n(U32) venLong\n(F32) tmpPress\n(F32) tmpMin\n(F32) tmpMax == Dialysate Conductivity == - TD -> SW: MSG: [x1F: #5] \nDD conductivity data - SW -> UI: CMD: Update Dial Conductivity + TD -> SW: MSG: [x1F: #5] \nDD Conductivity Data\n(F32) d17Cond\n(F32) d27Cond\n(F32) d29Cond\n(F32) d43Cond\n(F32) d74Cond + SW -> UI: CMD: Update Dial Conductivity\n(F32) d17Cond\n(F32) d27Cond\n(F32) d29Cond\n(F32) d43Cond\n(F32) d74Cond == Gen Dialysate Mode == - TD -> SW: MSG: [x2F: #9] \nDD GenD mode data - SW -> UI: CMD: Update Dial Bypass State + TD -> SW: MSG: [x2F: #9] \nDD GenD Mode Data\n(U32) GenDialisateExec\n(U32) isDDinProg\n(U32) d6level\n(U32) d63level\n(U32) d46level\n(F32) d9Pressure\n(F32) d18pressure\n(F32) d51pressure\n(U32) isDialGood + SW -> UI: CMD: Update GenD Mode Data\n(U32) GenDialisateExec\n(U32) isDDinProg\n(U32) d6level\n(U32) d63level\n(U32) d46level\n(F32) d9Pressure\n(F32) d18pressure\n(F32) d51pressure\n(U32) isDialGood @enduml \ No newline at end of file Index: SDDs/Main_Treatment/FinalDiagram.dot =================================================================== diff -u --- SDDs/Main_Treatment/FinalDiagram.dot (revision 0) +++ SDDs/Main_Treatment/FinalDiagram.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,863 @@ +digraph combined_diagram { + margin=150 + center=true; + + + subgraph mainTreatmentScreen { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dTopLevelComponent [shape=box, label="TreatmentHome.qml", fontsize="30pt"]; + dTreatmentTimeComponent [shape=box, label="TreatmentTime.qml", fontsize="30pt"]; + dTreatmentSalineComponent [shape=box, label="TreatmentSaline.qml", fontsize="30pt"]; + dTreatmentVitalsComponent [shape=box, label="TreatmentVitals.qml", fontsize="30pt"]; + dTreatmentPressuresComponent [shape=box, label="TreatmentPressures.qml", fontsize="30pt"]; + dTreatmentUltrafiltrationComponent [shape=box, label="TreatmentUltrafiltration.qml", fontsize="30pt"]; + dTreatmentFlowsComponent [shape=box, label="TreatmentFlows.qml", fontsize="30pt"]; + + // screenshots + iTreatmentHome [shape=none, label="ScreenItem.qml", image="images/TreatmentHome.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTopRow [shape=none, label="id: _topRow", image="images/topRow.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iBottomRow [shape=none, label="id: _bottomRow", image="images/bottomRow.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + iTreatmentTime [shape=none, label="Rectangle", image="images/TreatmentTime.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTreatmentSaline [shape=none, label="TreatmentSection.qml", image="images/TreatmentSaline.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTreatmentVitals [shape=none, label="TreatmentSection.qml", image="images/TreatmentVitals.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTreatmentPressures [shape=none, label="TreatmentSection.qml", image="images/TreatmentPressures.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + iTreatmentUF [shape=none, label="TreatmentSection.qml", image="images/TreatmentUltrafiltration.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTreatmentFlows [shape=none, label="TreatmentSection.qml", image="images/TreatmentFlows.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + // qml types + qColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qRowTop [shape=ellipse, label="Row\nid: _topRow", fontsize="30pt"]; + qRowBottom [shape=ellipse, label="Row\nid: _bottomRow", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Main Component" + fontsize="30pt" + labeljust=l + dTopLevelComponent -> iTreatmentHome -> qColumn; + qColumn -> qRowTop -> iTopRow; + qColumn -> qRowBottom -> iBottomRow; + } + + subgraph cluster_two { + label="Top Row" + fontsize="30pt" + labeljust=l + iTopRow -> dTreatmentTimeComponent -> iTreatmentTime; + iTopRow -> dTreatmentSalineComponent -> iTreatmentSaline; + iTopRow -> dTreatmentVitalsComponent -> iTreatmentVitals; + iTopRow -> dTreatmentPressuresComponent -> iTreatmentPressures; + } + + subgraph cluster_three { + label="Bottom Row" + fontsize="30pt" + labeljust=l + iBottomRow -> dTreatmentUltrafiltrationComponent -> iTreatmentUF; + iBottomRow -> dTreatmentFlowsComponent -> iTreatmentFlows; + } +} + + subgraph treatmentTimeDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dTimeEditIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dProgressCircle [shape=box, label="ProgressCircle.qml\nItem", fontsize="30pt"]; + dCircle [shape=box, label="Circle.qml\nItem", fontsize="30pt"]; + dTimeText [shape=box, label="TimeText.qml\nRectangle", fontsize="30pt"]; + + // screenshots + iTreatmentTime [shape=none, label="Rectangle", image="images/TreatmentTime.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTimeText [shape=none, label="", image="images/TimeText.png"]; + iTimeTitleRect [shape=none, label="", image="images/TimeTitleRect.png"]; + iTimeRemaining [shape=none, label="", image="images/TimeRemaining.png"]; + iTreatmentTimeEdit [shape=none, label="", image="images/edit.png"]; + iHours [shape=none, label="", image="images/Hours.png"]; + iMinutes [shape=none, label="", image="images/Minutes.png"]; + iSeconds [shape=none, label="", image="images/Seconds.png"]; + iSeparator [shape=none, label="", image="images/Seperator.png"]; + + // qml types + qTimeTitleRect [shape=ellipse, label="Item\nid: _timeTitleRect", fontsize="30pt"]; + qTimeTitle [shape=ellipse, label="Text", fontsize="30pt"]; + qEditIcon [shape=ellipse, label="Image\nqrc:/images/iEdit.png", fontsize="30pt"]; + qCirclePath [shape=ellipse, label="Rectangle\n|_Shape\n|__ShapePath\n|__PathAngleArc", fontsize="30pt", labeljust=l]; + qTimeHour [shape=ellipse, label="Text\nHours", fontsize="30pt"]; + qTimeMin [shape=ellipse, label="Text\nMinutes", fontsize="30pt"]; + qTimeSec [shape=ellipse, label="Text\nSeconds", fontsize="30pt"]; + qTimeSeparator [shape=ellipse, label="Text\n Separator ':'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Treatment Time" + fontsize="30pt" + labeljust=l + iTreatmentTime -> dProgressCircle[color="red"]; + dProgressCircle -> dCircle; + dCircle -> qCirclePath; + + iTreatmentTime -> dTimeText[color="red"]; + dTimeText -> iTimeText; + iTimeText -> qTimeHour + qTimeHour -> iHours + iTimeText -> qTimeMin + qTimeMin -> iMinutes + iTimeText -> qTimeSec + qTimeSec -> iSeconds + iTimeText -> qTimeSeparator + qTimeSeparator -> iSeparator + + iTreatmentTime -> qTimeTitleRect[color="red"]; + qTimeTitleRect -> iTimeTitleRect; + iTimeTitleRect -> qTimeTitle; + qTimeTitle -> iTimeRemaining; + iTimeTitleRect -> dTimeEditIcon; + dTimeEditIcon -> qEditIcon; + qEditIcon -> iTreatmentTimeEdit; + } + +} + + subgraph treatmentSalineDiagram { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderSaline [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dSalineHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dSalineHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dSalineProgressBar [shape=box, label="ProgressBar.qml", fontsize="30pt"]; + dSalineValueLabel [shape=box, label="Label.qml", fontsize="30pt"]; + dSalineUnitLabel [shape=box, label="Label.qml", fontsize="30pt"]; + dSalineProgressBarRect [shape=box, label="ProgressRect.qml\n|_RangeRect.qml\n|__Rectangle", fontsize="30pt"]; + dSalineProgressBarRangeMarker [shape=box, label="RangeMarker.qml\n'visible: false'", fontsize="30pt"]; + dSalineTouchRect [shape=box, label="TouchRect.qml", fontsize="30pt"]; + + // screenshots + iTreatmentSaline [shape=none, label="TreatmentSection.qml", image="images/TreatmentSaline.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineHeader [shape=none, label="", image="images/SalineHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineContent [shape=none, label="ContentArea.qml", image="images/SalineContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineDeliveredText [shape=none, label="", image="images/SalineDeliveredText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineProgressArea [shape=none, label="", image="images/SalineProgressArea.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineUnit [shape=none, label="", image="images/SalineUnit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineValue [shape=none, label="", image="images/SalineValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineProgressBar [shape=none, label="RangeRect.qml", image="images/SalineProgressBar.png", fontcolor="#00FF21", fontsize="23pt", labelloc=t, imagescale=true]; + iSalineButton [shape=none, label="Rectangle", image="images/SalineButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qSalineSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qSalineSectionTitle [shape=ellipse, label="Text\n'Saline'", fontsize="30pt"]; + qSalineLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qSalineEditImage [shape=ellipse, label="Image\nid: _editButton\n'visible: false'", fontsize="30pt"]; + qSalineContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qSalineDesciptionText [shape=ellipse, label="Text", fontsize="30pt"]; + qSalineProgressArea [shape=ellipse, label="Item\nid: _progressBarArea", fontsize="30pt"]; + qSalineValueText [shape=ellipse, label="Text\nValue", fontsize="30pt"]; + qSalineUnitText [shape=ellipse, label="Text\nUnit", fontsize="30pt"]; + qSalineRangeHandle [shape=ellipse, label="Rectangle\nHandle", fontsize="30pt"]; + qSalineRangeStick [shape=ellipse, label="Rectangle\nStick", fontsize="30pt"]; + qSalineRangeValue [shape=ellipse, label="Text\nValue", fontsize="30pt"]; + qSalineButtonText [shape=ellipse, label="Text\n'Start Bolus (0mL)'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Saline Treatment" + fontsize="30pt" + labeljust=l + iTreatmentSaline -> qSalineSection[color="red"]; + + qSalineSection -> dSectionHeaderSaline -> iSalineHeader; + iSalineHeader -> qSalineSectionTitle; + iSalineHeader -> dSalineHeaderLockButton -> qSalineLockImage; + iSalineHeader -> dSalineHeaderEditButton -> qSalineEditImage; + + qSalineSection -> iSalineContent -> qSalineContentColumn; + qSalineContentColumn -> dSalineTouchRect -> iSalineButton -> qSalineButtonText; + qSalineContentColumn -> qSalineDesciptionText -> iSalineDeliveredText; + qSalineContentColumn -> qSalineProgressArea -> iSalineProgressArea; + + iSalineProgressArea -> dSalineValueLabel -> qSalineValueText -> iSalineValue; + iSalineProgressArea -> dSalineUnitLabel -> qSalineUnitText -> iSalineUnit; + iSalineProgressArea -> dSalineProgressBar -> iSalineProgressBar; + + iSalineProgressBar -> dSalineProgressBarRect; + iSalineProgressBar -> dSalineProgressBarRangeMarker; + + dSalineProgressBarRangeMarker -> qSalineRangeHandle; + dSalineProgressBarRangeMarker -> qSalineRangeStick; + dSalineProgressBarRangeMarker -> qSalineRangeValue; + } +} + + subgraph treatmentVitalsDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderVitals [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dVitalsHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dVitalsHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodPressureLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dHeartBeatLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + + // screenshots + iTreatmentVitals [shape=none, label="TreatmentSection.qml", image="images/TreatmentVitals.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsHeader [shape=none, label="", image="images/VitalsHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsContent [shape=none, label="ContentArea.qml", image="images/VitalsContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iLastRecorded [shape=none, label="", image="images/LastRecorded.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureLabel [shape=none, label="", image="images/BloodPressureLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatLabel [shape=none, label="", image="images/HeartBeatLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureTopText [shape=none, label="", image="images/BloodPressureTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureBottomText[shape=none, label="", image="images/BloodPressureBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatTopText [shape=none, label="", image="images/HeartBeatTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatBottomText [shape=none, label="", image="images/HeartBeatBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qVitalsSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qVitalsSectionTitle [shape=ellipse, label="Text\n'Vitals'", fontsize="30pt"]; + qVitalsLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qVitalsEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qVitalsContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qLastRecordedText [shape=ellipse, label="Text", fontsize="30pt"]; + qBloodPressureTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qBloodPressureCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qBloodPressureBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qBloodPressureUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qHeartBeatTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qHeartBeatCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qHeartBeatBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qHeartBeatUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Vitals Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentVitals -> qVitalsSection[color="red"]; + qVitalsSection -> dSectionHeaderVitals -> iVitalsHeader; + iVitalsHeader -> qVitalsSectionTitle; + iVitalsHeader -> dVitalsHeaderLockButton -> qVitalsLockImage; + iVitalsHeader -> dVitalsHeaderEditButton -> qVitalsEditImage -> iVitalsEdit; + + qVitalsSection -> iVitalsContent -> qVitalsContentColumn; + + qVitalsContentColumn -> dBloodPressureLabelValue -> iBloodPressureLabel; + iBloodPressureLabel -> qBloodPressureTopText -> iBloodPressureTopText; + iBloodPressureLabel -> qBloodPressureCenterText; + iBloodPressureLabel -> qBloodPressureBottomText -> iBloodPressureBottomText; + iBloodPressureLabel -> qBloodPressureUnitText; + + qVitalsContentColumn -> dHeartBeatLabelValue -> iHeartBeatLabel; + iHeartBeatLabel -> qHeartBeatTopText -> iHeartBeatTopText; + iHeartBeatLabel -> qHeartBeatCenterText; + iHeartBeatLabel -> qHeartBeatBottomText -> iHeartBeatBottomText; + iHeartBeatLabel -> qHeartBeatUnitText; + + qVitalsContentColumn -> qLastRecordedText -> iLastRecorded; + } +} + + subgraph treatmentPressuresDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderPressures [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dPressuresHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dPressuresHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dExpandingButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dArterialRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dVenousRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dTmpRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dArterialRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dArterialValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dArterialLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dArterialUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dVenousValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dTmpValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + + // screenshots + iTreatmentPressures [shape=none, label="TreatmentSection.qml", image="images/TreatmentPressures.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresHeader [shape=none, label="", image="images/PressuresHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresContent [shape=none, label="ContentArea.qml", image="images/PressuresContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/ArterialPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/VenousPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/TmpPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iExpandingButton [shape=none, label="", image="images/ExpandingButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialTitle [shape=none, label="", image="images/ArterialTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousTitle [shape=none, label="", image="images/VenousTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpTitle [shape=none, label="", image="images/TmpTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValue [shape=none, label="", image="images/ArterialValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValue [shape=none, label="", image="images/VenousValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValue [shape=none, label="", image="images/TmpValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialRangeBar [shape=none, label="", image="images/ArterialRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousRangeBar [shape=none, label="", image="images/VenousRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpRangeBar [shape=none, label="", image="images/TmpRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarker [shape=none, label="", image="images/ArterialValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerText [shape=none, label="", image="images/ArterialValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerStick [shape=none, label="", image="images/ArterialValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarker [shape=none, label="", image="images/ArterialLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarkerText [shape=none, label="", image="images/ArterialLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarkerStick [shape=none, label="", image="images/ArterialLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarker [shape=none, label="", image="images/ArterialUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarkerText [shape=none, label="", image="images/ArterialUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarkerStick [shape=none, label="", image="images/ArterialUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarker [shape=none, label="", image="images/VenousValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerText [shape=none, label="", image="images/VenousValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerStick [shape=none, label="", image="images/VenousValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarker [shape=none, label="", image="images/VenousLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarkerText [shape=none, label="", image="images/VenousLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarkerStick [shape=none, label="", image="images/VenousLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarker [shape=none, label="", image="images/VenousUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarkerText [shape=none, label="", image="images/VenousUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarkerStick [shape=none, label="", image="images/VenousUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarker [shape=none, label="", image="images/TmpValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerText [shape=none, label="", image="images/TmpValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerStick [shape=none, label="", image="images/TmpValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarker [shape=none, label="", image="images/TmpLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarkerText [shape=none, label="", image="images/TmpLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarkerStick [shape=none, label="", image="images/TmpLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarker [shape=none, label="", image="images/TmpUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarkerText [shape=none, label="", image="images/TmpUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarkerStick [shape=none, label="", image="images/TmpUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qPressuresSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qPressuresSectionTitle [shape=ellipse, label="Text\n'Pressures(mmHg)'", fontsize="30pt"]; + qPressuresLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qPressuresEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qPressuresContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qExpandingButtonImage [shape=ellipse, label="Image", fontsize="30pt"]; + qArterialPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qVenousPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qTmpPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qArterialTitleText [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qArterialValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qVenousTitleText [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qVenousValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qTmpTitleText [shape=ellipse, label="Text\nid: _titlet", fontsize="30pt"]; + qTmpValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qArterialMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qArterialMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qArterialMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qArterialMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qArterialMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qArterialMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qVenousMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qVenousMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qVenousMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qTmpMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qTmpMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qTmpMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Pressures Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentPressures -> qPressuresSection[color="red"]; + + qPressuresSection -> dSectionHeaderPressures -> iPressuresHeader; + iPressuresHeader -> qPressuresSectionTitle; + iPressuresHeader -> dPressuresHeaderLockButton -> qPressuresLockImage; + iPressuresHeader -> dPressuresHeaderEditButton -> qPressuresEditImage -> iPressuresEdit; + + qPressuresSection -> dExpandingButton -> qExpandingButtonImage ->iExpandingButton; + + qPressuresSection -> iPressuresContent -> qPressuresContentColumn; + qPressuresContentColumn -> iArterialPressureComponent -> qArterialPressureComponentRow; + qPressuresContentColumn -> iVenousPressureComponent -> qVenousPressureComponentRow; + qPressuresContentColumn -> iTmpPressureComponent -> qTmpPressureComponentRow; + + qArterialPressureComponentRow -> qArterialTitleText -> iArterialTitle + qArterialPressureComponentRow -> qArterialValueText -> iArterialValue + qArterialPressureComponentRow -> dArterialRangeBar -> iArterialRangeBar + iArterialRangeBar -> dArterialRangeRect + dArterialRangeRect -> dArterialLowerMarker -> iArterialLowerMarker + iArterialLowerMarker -> qArterialMarkerLowerHandle + iArterialLowerMarker -> qArterialMarkerLowerStick -> iArterialLowerMarkerStick + iArterialLowerMarker -> qArterialMarkerLowerText -> iArterialLowerMarkerText + + dArterialRangeRect -> dArterialUpperMarker -> iArterialUpperMarker + iArterialUpperMarker -> qArterialMarkerUpperHandle + iArterialUpperMarker -> qArterialMarkerUpperStick ->iArterialUpperMarkerStick + iArterialUpperMarker -> qArterialMarkerUpperText ->iArterialUpperMarkerText + + iArterialRangeBar -> dArterialValueMarker -> iArterialValueMarker + iArterialValueMarker -> qArterialMarkerValueHandle -> iArterialValueMarkerHandle + iArterialValueMarker -> qArterialMarkerValueStick -> iArterialValueMarkerStick + iArterialValueMarker -> qArterialMarkerValueText -> iArterialValueMarkerText + + qVenousPressureComponentRow -> qVenousTitleText -> iVenousTitle + qVenousPressureComponentRow -> qVenousValueText -> iVenousValue + qVenousPressureComponentRow -> dVenousRangeBar -> iVenousRangeBar + iVenousRangeBar -> dVenousRangeRect + dVenousRangeRect -> dVenousLowerMarker -> iVenousLowerMarker + iVenousLowerMarker -> qVenousMarkerLowerHandle + iVenousLowerMarker -> qVenousMarkerLowerStick -> iVenousLowerMarkerStick + iVenousLowerMarker -> qVenousMarkerLowerText -> iVenousLowerMarkerText + + dVenousRangeRect -> dVenousUpperMarker -> iVenousUpperMarker + iVenousUpperMarker -> qVenousMarkerUpperHandle + iVenousUpperMarker -> qVenousMarkerUpperStick ->iVenousUpperMarkerStick + iVenousUpperMarker -> qVenousMarkerUpperText ->iVenousUpperMarkerText + + iVenousRangeBar -> dVenousValueMarker -> iVenousValueMarker + iVenousValueMarker -> qVenousMarkerValueHandle -> iVenousValueMarkerHandle + iVenousValueMarker -> qVenousMarkerValueStick -> iVenousValueMarkerStick + iVenousValueMarker -> qVenousMarkerValueText -> iVenousValueMarkerText + + qTmpPressureComponentRow -> qTmpTitleText -> iTmpTitle + qTmpPressureComponentRow -> qTmpValueText -> iTmpValue + qTmpPressureComponentRow -> dTmpRangeBar -> iTmpRangeBar + iTmpRangeBar -> dTmpRangeRect + dTmpRangeRect -> dTmpLowerMarker -> iTmpLowerMarker + iTmpLowerMarker -> qTmpMarkerLowerHandle + iTmpLowerMarker -> qTmpMarkerLowerStick -> iTmpLowerMarkerStick + iTmpLowerMarker -> qTmpMarkerLowerText -> iTmpLowerMarkerText + + dTmpRangeRect -> dTmpUpperMarker -> iTmpUpperMarker + iTmpUpperMarker -> qTmpMarkerUpperHandle + iTmpUpperMarker -> qTmpMarkerUpperStick ->iTmpUpperMarkerStick + iTmpUpperMarker -> qTmpMarkerUpperText ->iTmpUpperMarkerText + + iTmpRangeBar -> dTmpValueMarker -> iTmpValueMarker + iTmpValueMarker -> qTmpMarkerValueHandle -> iTmpValueMarkerHandle + iTmpValueMarker -> qTmpMarkerValueStick -> iTmpValueMarkerStick + iTmpValueMarker -> qTmpMarkerValueText -> iTmpValueMarkerText + } +} + + subgraph treatmentUltrafiltrationDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderUltrafiltration [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dUltrafiltrationHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dUltrafiltrationHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dUfVolumeLabelValue [shape=box, label="LabelValue.qml\nid: _ufVolume", fontsize="30pt"]; + dUfRateLabelValue [shape=box, label="LabelValue.qml\nid: _ufRate", fontsize="30pt"]; + dIsolatedUfButton [shape=box, label="TouchRect.qml\nRectangle", fontsize="30pt"]; + dUfProgressBarEx [shape=box, label="ProgressBarEx.qml\nid: _progressRectEx\nProgressBar.qml", fontsize="30pt"]; + dUfProgressBarProgressRect [shape=box, label="ProgressRect.qml\nRangeRect.qml", fontsize="30pt"]; + dUfProgressBarRect [shape=box, label="ProgressRect.qml\nid: _progressRect", fontsize="30pt"]; + dUfProgressBarRangeMarker [shape=box, label="RangeMarker.qml\nRangeRect.qml", fontsize="30pt"]; + + // screenshots + iTreatmentUF [shape=none, label="TreatmentSection.qml", image="images/TreatmentUltrafiltration.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationHeader [shape=none, label="", image="images/UltrafiltrationHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationContent [shape=none, label="ContentArea.qml", image="images/UltrafiltrationContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfLeftColumn [shape=none, label="", image="images/UfLeftColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRightColumn [shape=none, label="", image="images/UfRightColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeLabel [shape=none, label="", image="images/UfVolumeLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateLabel [shape=none, label="", image="images/UfRateLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeTopText [shape=none, label="", image="images/UfVolumeTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeCenterText [shape=none, label="", image="images/UfVolumeCenterText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeBottomText [shape=none, label="", image="images/UfVolumeBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeUnitText [shape=none, label="", image="images/UfVolumeUnitText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateTopText [shape=none, label="", image="images/UfRateTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateBottomText [shape=none, label="", image="images/UfRateBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateUnitText [shape=none, label="", image="images/UfRateUnitText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iIsolatedUfButton [shape=none, label="", image="images/IsolatedUfButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVolumeRemoved [shape=none, label="", image="images/VolumeRemoved.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBar [shape=none, label="", image="images/UfProgressBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBarRightBgrnd [shape=none, label="", image="images/UfProgressBarRightBgrnd.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBarProgressRect [shape=none, label="", image="images/UfProgressBarProgressRect.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressRectMain [shape=none, label="Rectangle", image="images/UfProgressRectMain.png", fontcolor="#00FF21", fontsize="25pt", labelloc=l, imagescale=true]; + iUfProgressMin [shape=none, label="", image="images/UfProgressMin.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMax [shape=none, label="", image="images/UfProgressMax.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarker [shape=none, label="Rectangle", image="images/UfProgressMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerHandle [shape=none, label="", image="images/UfProgressMarkerHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerStick [shape=none, label="", image="images/UfProgressMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerText [shape=none, label="", image="images/UfProgressMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qUltrafiltrationSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qUltrafiltrationSectionTitle [shape=ellipse, label="Text\n'Ultrafiltration(UF)'", fontsize="30pt"]; + qUltrafiltrationLockImage [shape=ellipse, label="Image\n'visible: false'", fontsize="30pt"]; + qUltrafiltrationEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qUltrafiltrationContentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qUltrafiltrationLeftColumn [shape=ellipse, label="Column\nid: _leftColumn", fontsize="30pt"]; + qUltrafiltrationRightColumn [shape=ellipse, label="Column\nid: _rightColumn", fontsize="30pt"]; + qUfVolumeTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qUfVolumeCenterText [shape=ellipse, label="Text\nid: _centerText", fontsize="30pt"]; + qUfVolumeBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qUfVolumeUnitText [shape=ellipse, label="Text\nid: _unitText", fontsize="30pt"]; + qUfRateTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qUfRateCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qUfRateBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qUfRateUnitText [shape=ellipse, label="Text\nid: _unitText", fontsize="30pt"]; + qIsolatedUfButtonText [shape=ellipse, label="Text", fontsize="30pt"]; + qVolumeRemovedText [shape=ellipse, label="Text", fontsize="30pt"]; + qProgressRightBackground [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qProgressBarProgressMin [shape=ellipse, label="Text\nid: _textMinimum\n'visible: false'", fontsize="30pt"]; + qProgressBarProgressMax [shape=ellipse, label="Text\nid: _textMaximum\n'visible: false'", fontsize="30pt"]; + qProgressBarMin [shape=ellipse, label="Text\nid: _textMinimum", fontsize="30pt"]; + qProgressBarMax [shape=ellipse, label="Text\nid: _textMaximum", fontsize="30pt"]; + qProgressMarkerHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qProgressMarkerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qProgressMarkerText [shape=ellipse, label="Text", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Ultrafiltration Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentUF -> qUltrafiltrationSection[color="red"]; + + qUltrafiltrationSection -> dIsolatedUfButton -> qIsolatedUfButtonText ->iIsolatedUfButton; + + qUltrafiltrationSection -> dSectionHeaderUltrafiltration -> iUltrafiltrationHeader; + iUltrafiltrationHeader -> qUltrafiltrationSectionTitle; + iUltrafiltrationHeader -> dUltrafiltrationHeaderLockButton -> qUltrafiltrationLockImage; + iUltrafiltrationHeader -> dUltrafiltrationHeaderEditButton -> qUltrafiltrationEditImage -> iUltrafiltrationEdit; + + qUltrafiltrationSection -> iUltrafiltrationContent -> qUltrafiltrationContentRow; + qUltrafiltrationContentRow -> qUltrafiltrationLeftColumn -> iUfLeftColumn; + + iUfLeftColumn -> dUfVolumeLabelValue -> iUfVolumeLabel; + iUfVolumeLabel -> qUfVolumeTopText -> iUfVolumeTopText; + iUfVolumeLabel -> qUfVolumeCenterText -> iUfVolumeCenterText; + iUfVolumeLabel -> qUfVolumeBottomText -> iUfVolumeBottomText; + iUfVolumeLabel -> qUfVolumeUnitText -> iUfVolumeUnitText; + + iUfLeftColumn -> dUfRateLabelValue -> iUfRateLabel; + iUfRateLabel -> qUfRateTopText -> iUfRateTopText; + iUfRateLabel -> qUfRateCenterText; + iUfRateLabel -> qUfRateBottomText -> iUfRateBottomText; + iUfRateLabel -> qUfRateUnitText -> iUfRateUnitText; + + qUltrafiltrationContentRow -> qUltrafiltrationRightColumn -> iUfRightColumn; + iUfRightColumn -> qVolumeRemovedText -> iVolumeRemoved; + + iUfRightColumn -> dUfProgressBarEx -> iUfProgressBar; + iUfProgressBar -> qProgressRightBackground -> iUfProgressBarRightBgrnd; + + iUfProgressBar -> dUfProgressBarRangeMarker -> iUfProgressMarker; + iUfProgressMarker -> qProgressMarkerHandle -> iUfProgressMarkerHandle; + iUfProgressMarker -> qProgressMarkerStick -> iUfProgressMarkerStick; + iUfProgressMarker -> qProgressMarkerText -> iUfProgressMarkerText ; + + iUfProgressBar -> dUfProgressBarProgressRect -> iUfProgressRectMain; + iUfProgressRectMain -> qProgressBarMin -> iUfProgressMin; + iUfProgressRectMain -> qProgressBarMax -> iUfProgressMax; + + iUfProgressBar -> dUfProgressBarRect -> iUfProgressBarProgressRect; + iUfProgressBarProgressRect -> qProgressBarProgressMin; + iUfProgressBarProgressRect -> qProgressBarProgressMax; + } +} + + subgraph treatmentParametersDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dSectionHeaderParameters [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dParametersHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dParametersHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodFlowComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateFlowComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateTempComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateCondComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + + // screenshots + iTreatmentFlows [shape=none, label="TreatmentSection.qml", image="images/TreatmentFlows.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iParametersHeader [shape=none, label="", image="images/ParametersHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersContent [shape=none, label="ContentArea.qml", image="images/ParametersContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersLock [shape=none, label="", image="images/lock.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlow [shape=none, label="", image="images/BloodFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTemp [shape=none, label="", image="images/DialysateTemp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlow [shape=none, label="", image="images/DialysateFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCond [shape=none, label="", image="images/DialysateCond.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qParametersSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qParametersSectionTitle [shape=ellipse, label="Text\n'Treatment Parameters'", fontsize="30pt"]; + qParametersLockImage [shape=ellipse, label="Image", fontsize="30pt"]; + qParametersEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qParametersContentRow [shape=ellipse, label="Row", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Parameters Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentFlows -> qParametersSection[color="red"]; + + qParametersSection -> dSectionHeaderParameters -> iParametersHeader; + iParametersHeader -> qParametersSectionTitle; + iParametersHeader -> dParametersHeaderLockButton -> qParametersLockImage -> iParametersLock; + iParametersHeader -> dParametersHeaderEditButton -> qParametersEditImage -> iParametersEdit; + + qParametersSection -> iParametersContent -> qParametersContentRow; + qParametersContentRow -> dBloodFlowComponent -> iBloodFlow; + qParametersContentRow -> dDialysateFlowComponent -> iDialysateFlow; + qParametersContentRow -> dDialysateTempComponent -> iDialysateTemp; + qParametersContentRow -> dDialysateCondComponent -> iDialysateCond; + } +} + + subgraph treatmentParametersBloodFlowDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dBloodFlowLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dBloodFlowUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodFlowDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iBloodFlow [shape=none, label="", image="images/BloodFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowTitle [shape=none, label="", image="images/BloodFlowTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowLabelValue [shape=none, label="", image="images/BloodFlowLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowTopText [shape=none, label="", image="images/BloodFlowTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowBottomText [shape=none, label="", image="images/BloodFlowBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qBloodFlowRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qBloodFlowTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qBloodFlowRow [shape=ellipse, label="Row", fontsize="30pt"]; + qBloodFlowExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qBloodFlowColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qBloodFlowTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qBloodFlowCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qBloodFlowBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qBloodFlowUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qBloodFlowUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qBloodFlowDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Blood Flow" + fontsize="30pt" + labeljust=l + + iBloodFlow -> qBloodFlowRect[color="red"]; + qBloodFlowRect -> qBloodFlowTitle -> iBloodFlowTitle + qBloodFlowRect -> qBloodFlowExtraText + qBloodFlowRect -> qBloodFlowRow + qBloodFlowRow -> dBloodFlowLabelValue ->iBloodFlowLabelValue + iBloodFlowLabelValue -> qBloodFlowTopText -> iBloodFlowTopText + iBloodFlowLabelValue -> qBloodFlowCenterText + iBloodFlowLabelValue -> qBloodFlowBottomText ->iBloodFlowBottomText + iBloodFlowLabelValue -> qBloodFlowUnitText + + qBloodFlowRow -> qBloodFlowColumn-> iBloodFlowArrowColumn + iBloodFlowArrowColumn -> dBloodFlowUpIcon -> qBloodFlowUpImage -> iBloodFlowArrowUp + iBloodFlowArrowColumn -> dBloodFlowDownIcon -> qBloodFlowDownImage -> iBloodFlowArrowDown + + } +} + + subgraph treatmentParametersDialysateFlowDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateFlowLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dDialysateFlowUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dDialysateFlowDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iDialysateFlow [shape=none, label="", image="images/DialysateFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowTitle [shape=none, label="", image="images/DialysateFlowTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowExtraText [shape=none, label="", image="images/dialysateFlowExtraText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowLabelValue [shape=none, label="", image="images/DialysateFlowLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowTopText [shape=none, label="", image="images/DialysateFlowTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowBottomText [shape=none, label="", image="images/DialysateFlowBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateFlowRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateFlowTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateFlowRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateFlowExtraText [shape=ellipse, label="Text\nid: _extraText", fontsize="30pt"]; + qDialysateFlowColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qDialysateFlowTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateFlowCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateFlowBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateFlowUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qDialysateFlowUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qDialysateFlowDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Flow" + fontsize="30pt" + labeljust=l + + iDialysateFlow -> qDialysateFlowRect[color="red"] + qDialysateFlowRect -> qDialysateFlowTitle -> iDialysateFlowTitle + qDialysateFlowRect -> qDialysateFlowExtraText -> iDialysateFlowExtraText + qDialysateFlowRect -> qDialysateFlowRow + qDialysateFlowRow -> dDialysateFlowLabelValue -> iDialysateFlowLabelValue + iDialysateFlowLabelValue -> qDialysateFlowTopText -> iDialysateFlowTopText + iDialysateFlowLabelValue -> qDialysateFlowCenterText + iDialysateFlowLabelValue -> qDialysateFlowBottomText -> iDialysateFlowBottomText + iDialysateFlowLabelValue -> qDialysateFlowUnitText + + qDialysateFlowRow -> qDialysateFlowColumn -> iDialysateFlowArrowColumn + iDialysateFlowArrowColumn -> dDialysateFlowUpIcon -> qDialysateFlowUpImage -> iDialysateFlowArrowUp + iDialysateFlowArrowColumn -> dDialysateFlowDownIcon -> qDialysateFlowDownImage -> iDialysateFlowArrowDown + } +} + + subgraph treatmentParametersDialysateTempDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateTempLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dDialysateTempUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dDialysateTempDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iDialysateTemp [shape=none, label="", image="images/DialysateTemp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempTitle [shape=none, label="", image="images/DialysateTempTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempLabelValue [shape=none, label="", image="images/DialysateTempLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempTopText [shape=none, label="", image="images/DialysateTempTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempBottomText [shape=none, label="", image="images/DialysateTempBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateTempRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateTempTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateTempRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateTempExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qDialysateTempColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qDialysateTempTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateTempCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateTempBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateTempUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qDialysateTempUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qDialysateTempDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Temp." + fontsize="30pt" + labeljust=l + + iDialysateTemp -> qDialysateTempRect[color="red"] + qDialysateTempRect -> qDialysateTempTitle -> iDialysateTempTitle + qDialysateTempRect -> qDialysateTempExtraText + qDialysateTempRect -> qDialysateTempRow + + qDialysateTempRow -> dDialysateTempLabelValue -> iDialysateTempLabelValue + iDialysateTempLabelValue -> qDialysateTempTopText -> iDialysateTempTopText + iDialysateTempLabelValue -> qDialysateTempCenterText + iDialysateTempLabelValue -> qDialysateTempBottomText -> iDialysateTempBottomText + iDialysateTempLabelValue -> qDialysateTempUnitText + + qDialysateTempRow -> qDialysateTempColumn -> iDialysateTempArrowColumn + iDialysateTempArrowColumn -> dDialysateTempUpIcon -> qDialysateTempUpImage -> iDialysateTempArrowUp + iDialysateTempArrowColumn -> dDialysateTempDownIcon -> qDialysateTempDownImage -> iDialysateTempArrowDown + } +} + + subgraph treatmentParametersDialysateCondDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateCondLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + + // screenshots + iDialysateCond [shape=none, label="", image="images/DialysateCond.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondTitle [shape=none, label="", image="images/DialysateCondTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondLabelValue [shape=none, label="", image="images/DialysateCondLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondTopText [shape=none, label="", image="images/DialysateCondTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondBottomText [shape=none, label="", image="images/DialysateCondBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateCondRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateCondTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateCondRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateCondExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qDialysateCondColumn [shape=ellipse, label="Column\n'visible: false'", fontsize="30pt"]; + qDialysateCondTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateCondCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateCondBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateCondUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Cond." + fontsize="30pt" + labeljust=l + + iDialysateCond -> qDialysateCondRect[color="red"]; + qDialysateCondRect -> qDialysateCondTitle -> iDialysateCondTitle + qDialysateCondRect -> qDialysateCondExtraText + qDialysateCondRect -> qDialysateCondRow + qDialysateCondRow -> dDialysateCondLabelValue -> iDialysateCondLabelValue + iDialysateCondLabelValue -> qDialysateCondTopText -> iDialysateCondTopText + iDialysateCondLabelValue -> qDialysateCondCenterText + iDialysateCondLabelValue -> qDialysateCondBottomText -> iDialysateCondBottomText + iDialysateCondLabelValue -> qDialysateCondUnitText + + qDialysateCondRow -> qDialysateCondColumn + } +} + +} Index: SDDs/Main_Treatment/TreatmentParameters-BloodFlow.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentParameters-BloodFlow.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentParameters-BloodFlow.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,55 @@ +digraph treatmentParametersBloodFlowDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dBloodFlowLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dBloodFlowUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodFlowDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iBloodFlow [shape=none, label="", image="images/BloodFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowTitle [shape=none, label="", image="images/BloodFlowTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowLabelValue [shape=none, label="", image="images/BloodFlowLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowTopText [shape=none, label="", image="images/BloodFlowTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowBottomText [shape=none, label="", image="images/BloodFlowBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlowArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qBloodFlowRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qBloodFlowTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qBloodFlowRow [shape=ellipse, label="Row", fontsize="30pt"]; + qBloodFlowExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qBloodFlowColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qBloodFlowTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qBloodFlowCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qBloodFlowBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qBloodFlowUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qBloodFlowUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qBloodFlowDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Blood Flow" + fontsize="30pt" + labeljust=l + + iBloodFlow -> qBloodFlowRect[color="red"]; + qBloodFlowRect -> qBloodFlowTitle -> iBloodFlowTitle + qBloodFlowRect -> qBloodFlowExtraText + qBloodFlowRect -> qBloodFlowRow + qBloodFlowRow -> dBloodFlowLabelValue ->iBloodFlowLabelValue + iBloodFlowLabelValue -> qBloodFlowTopText -> iBloodFlowTopText + iBloodFlowLabelValue -> qBloodFlowCenterText + iBloodFlowLabelValue -> qBloodFlowBottomText ->iBloodFlowBottomText + iBloodFlowLabelValue -> qBloodFlowUnitText + + qBloodFlowRow -> qBloodFlowColumn-> iBloodFlowArrowColumn + iBloodFlowArrowColumn -> dBloodFlowUpIcon -> qBloodFlowUpImage -> iBloodFlowArrowUp + iBloodFlowArrowColumn -> dBloodFlowDownIcon -> qBloodFlowDownImage -> iBloodFlowArrowDown + + } +} Index: SDDs/Main_Treatment/TreatmentParameters-DialysateCond.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentParameters-DialysateCond.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentParameters-DialysateCond.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,45 @@ +digraph treatmentParametersDialysateCondDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateCondLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + + // screenshots + iDialysateCond [shape=none, label="", image="images/DialysateCond.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondTitle [shape=none, label="", image="images/DialysateCondTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondLabelValue [shape=none, label="", image="images/DialysateCondLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondTopText [shape=none, label="", image="images/DialysateCondTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCondBottomText [shape=none, label="", image="images/DialysateCondBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateCondRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateCondTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateCondRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateCondExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qDialysateCondColumn [shape=ellipse, label="Column\n'visible: false'", fontsize="30pt"]; + qDialysateCondTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateCondCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateCondBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateCondUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Cond." + fontsize="30pt" + labeljust=l + + iDialysateCond -> qDialysateCondRect[color="red"]; + qDialysateCondRect -> qDialysateCondTitle -> iDialysateCondTitle + qDialysateCondRect -> qDialysateCondExtraText + qDialysateCondRect -> qDialysateCondRow + qDialysateCondRow -> dDialysateCondLabelValue -> iDialysateCondLabelValue + iDialysateCondLabelValue -> qDialysateCondTopText -> iDialysateCondTopText + iDialysateCondLabelValue -> qDialysateCondCenterText + iDialysateCondLabelValue -> qDialysateCondBottomText -> iDialysateCondBottomText + iDialysateCondLabelValue -> qDialysateCondUnitText + + qDialysateCondRow -> qDialysateCondColumn + } +} Index: SDDs/Main_Treatment/TreatmentParameters-DialysateFlow.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentParameters-DialysateFlow.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentParameters-DialysateFlow.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,56 @@ +digraph treatmentParametersDialysateFlowDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateFlowLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dDialysateFlowUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dDialysateFlowDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iDialysateFlow [shape=none, label="", image="images/DialysateFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowTitle [shape=none, label="", image="images/DialysateFlowTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowExtraText [shape=none, label="", image="images/dialysateFlowExtraText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowLabelValue [shape=none, label="", image="images/DialysateFlowLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowTopText [shape=none, label="", image="images/DialysateFlowTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowBottomText [shape=none, label="", image="images/DialysateFlowBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlowArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateFlowRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateFlowTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateFlowRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateFlowExtraText [shape=ellipse, label="Text\nid: _extraText", fontsize="30pt"]; + qDialysateFlowColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qDialysateFlowTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateFlowCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateFlowBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateFlowUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qDialysateFlowUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qDialysateFlowDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Flow" + fontsize="30pt" + labeljust=l + + iDialysateFlow -> qDialysateFlowRect[color="red"] + qDialysateFlowRect -> qDialysateFlowTitle -> iDialysateFlowTitle + qDialysateFlowRect -> qDialysateFlowExtraText -> iDialysateFlowExtraText + qDialysateFlowRect -> qDialysateFlowRow + qDialysateFlowRow -> dDialysateFlowLabelValue -> iDialysateFlowLabelValue + iDialysateFlowLabelValue -> qDialysateFlowTopText -> iDialysateFlowTopText + iDialysateFlowLabelValue -> qDialysateFlowCenterText + iDialysateFlowLabelValue -> qDialysateFlowBottomText -> iDialysateFlowBottomText + iDialysateFlowLabelValue -> qDialysateFlowUnitText + + qDialysateFlowRow -> qDialysateFlowColumn -> iDialysateFlowArrowColumn + iDialysateFlowArrowColumn -> dDialysateFlowUpIcon -> qDialysateFlowUpImage -> iDialysateFlowArrowUp + iDialysateFlowArrowColumn -> dDialysateFlowDownIcon -> qDialysateFlowDownImage -> iDialysateFlowArrowDown + } +} Index: SDDs/Main_Treatment/TreatmentParameters-DialysateTemp.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentParameters-DialysateTemp.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentParameters-DialysateTemp.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,55 @@ +digraph treatmentParametersDialysateTempDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dDialysateTempLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dDialysateTempUpIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dDialysateTempDownIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + + // screenshots + iDialysateTemp [shape=none, label="", image="images/DialysateTemp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempTitle [shape=none, label="", image="images/DialysateTempTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempLabelValue [shape=none, label="", image="images/DialysateTempLabelValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempTopText [shape=none, label="", image="images/DialysateTempTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempBottomText [shape=none, label="", image="images/DialysateTempBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowColumn [shape=none, label="", image="images/arrowColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowUp [shape=none, label="", image="images/arrowUp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTempArrowDown [shape=none, label="", image="images/arrowDown.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qDialysateTempRect [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qDialysateTempTitle [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qDialysateTempRow [shape=ellipse, label="Row", fontsize="30pt"]; + qDialysateTempExtraText [shape=ellipse, label="Text\nid: _extraText\n'visible: false", fontsize="30pt"]; + qDialysateTempColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qDialysateTempTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qDialysateTempCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qDialysateTempBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qDialysateTempUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qDialysateTempUpImage [shape=ellipse, label="Image\nid: _upArrowIcon", fontsize="30pt"]; + qDialysateTempDownImage [shape=ellipse, label="Image\nid: _downArrowIcon", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Dialysate Temp." + fontsize="30pt" + labeljust=l + + iDialysateTemp -> qDialysateTempRect[color="red"] + qDialysateTempRect -> qDialysateTempTitle -> iDialysateTempTitle + qDialysateTempRect -> qDialysateTempExtraText + qDialysateTempRect -> qDialysateTempRow + + qDialysateTempRow -> dDialysateTempLabelValue -> iDialysateTempLabelValue + iDialysateTempLabelValue -> qDialysateTempTopText -> iDialysateTempTopText + iDialysateTempLabelValue -> qDialysateTempCenterText + iDialysateTempLabelValue -> qDialysateTempBottomText -> iDialysateTempBottomText + iDialysateTempLabelValue -> qDialysateTempUnitText + + qDialysateTempRow -> qDialysateTempColumn -> iDialysateTempArrowColumn + iDialysateTempArrowColumn -> dDialysateTempUpIcon -> qDialysateTempUpImage -> iDialysateTempArrowUp + iDialysateTempArrowColumn -> dDialysateTempDownIcon -> qDialysateTempDownImage -> iDialysateTempArrowDown + } +} Index: SDDs/Main_Treatment/TreatmentParameters.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentParameters.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentParameters.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,52 @@ +digraph treatmentParametersDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality componenet, i - image + // Define the main componenets + dSectionHeaderParameters [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dParametersHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dParametersHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodFlowComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateFlowComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateTempComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + dDialysateCondComponent [shape=box, label="TreatmentFlowsComponent.qml", fontsize="30pt"]; + + // screenshots + iTreatmentFlows [shape=none, label="TreatmentSection.qml", image="images/TreatmentFlows.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iParametersHeader [shape=none, label="", image="images/ParametersHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersContent [shape=none, label="ContentArea.qml", image="images/ParametersContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iParametersLock [shape=none, label="", image="images/lock.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodFlow [shape=none, label="", image="images/BloodFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateTemp [shape=none, label="", image="images/DialysateTemp.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateFlow [shape=none, label="", image="images/DialysateFlow.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iDialysateCond [shape=none, label="", image="images/DialysateCond.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qParametersSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qParametersSectionTitle [shape=ellipse, label="Text\n'Treatment Parameters'", fontsize="30pt"]; + qParametersLockImage [shape=ellipse, label="Image", fontsize="30pt"]; + qParametersEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qParametersContentRow [shape=ellipse, label="Row", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Parameters Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentFlows -> qParametersSection[color="red"]; + + qParametersSection -> dSectionHeaderParameters -> iParametersHeader; + iParametersHeader -> qParametersSectionTitle; + iParametersHeader -> dParametersHeaderLockButton -> qParametersLockImage -> iParametersLock; + iParametersHeader -> dParametersHeaderEditButton -> qParametersEditImage -> iParametersEdit; + + qParametersSection -> iParametersContent -> qParametersContentRow; + qParametersContentRow -> dBloodFlowComponent -> iBloodFlow; + qParametersContentRow -> dDialysateFlowComponent -> iDialysateFlow; + qParametersContentRow -> dDialysateTempComponent -> iDialysateTemp; + qParametersContentRow -> dDialysateCondComponent -> iDialysateCond; + } +} Index: SDDs/Main_Treatment/TreatmentPressures.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentPressures.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentPressures.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,197 @@ +digraph treatmentPressuresDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderPressures [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dPressuresHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dPressuresHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dExpandingButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dArterialRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dVenousRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dTmpRangeBar [shape=box, label="RangeBar.qml\nRangeRect", fontsize="30pt"]; + dArterialRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dArterialValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dArterialLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dArterialUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dVenousValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dVenousUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpRangeRect [shape=box, label="RangeRect.qml\nid: _rangeRect", fontsize="30pt"]; + dTmpValueMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpLowerMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + dTmpUpperMarker [shape=box, label="RangeMarker.qml\nItem", fontsize="30pt"]; + + // screenshots + iTreatmentPressures [shape=none, label="TreatmentSection.qml", image="images/TreatmentPressures.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresHeader [shape=none, label="", image="images/PressuresHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresContent [shape=none, label="ContentArea.qml", image="images/PressuresContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iPressuresEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/ArterialPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/VenousPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpPressureComponent [shape=none, label="TreatmentPressureComponent.qml", image="images/TmpPressureComponent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iExpandingButton [shape=none, label="", image="images/ExpandingButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialTitle [shape=none, label="", image="images/ArterialTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousTitle [shape=none, label="", image="images/VenousTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpTitle [shape=none, label="", image="images/TmpTitle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValue [shape=none, label="", image="images/ArterialValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValue [shape=none, label="", image="images/VenousValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValue [shape=none, label="", image="images/TmpValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialRangeBar [shape=none, label="", image="images/ArterialRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousRangeBar [shape=none, label="", image="images/VenousRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpRangeBar [shape=none, label="", image="images/TmpRangeBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarker [shape=none, label="", image="images/ArterialValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerText [shape=none, label="", image="images/ArterialValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerStick [shape=none, label="", image="images/ArterialValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarker [shape=none, label="", image="images/ArterialLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarkerText [shape=none, label="", image="images/ArterialLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialLowerMarkerStick [shape=none, label="", image="images/ArterialLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarker [shape=none, label="", image="images/ArterialUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarkerText [shape=none, label="", image="images/ArterialUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iArterialUpperMarkerStick [shape=none, label="", image="images/ArterialUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarker [shape=none, label="", image="images/VenousValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerText [shape=none, label="", image="images/VenousValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerStick [shape=none, label="", image="images/VenousValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarker [shape=none, label="", image="images/VenousLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarkerText [shape=none, label="", image="images/VenousLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousLowerMarkerStick [shape=none, label="", image="images/VenousLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarker [shape=none, label="", image="images/VenousUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarkerText [shape=none, label="", image="images/VenousUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVenousUpperMarkerStick [shape=none, label="", image="images/VenousUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarker [shape=none, label="", image="images/TmpValueMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerText [shape=none, label="", image="images/TmpValueMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerStick [shape=none, label="", image="images/TmpValueMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpValueMarkerHandle [shape=none, label="", image="images/valueHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarker [shape=none, label="", image="images/TmpLowerMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarkerText [shape=none, label="", image="images/TmpLowerMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpLowerMarkerStick [shape=none, label="", image="images/TmpLowerMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarker [shape=none, label="", image="images/TmpUpperMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarkerText [shape=none, label="", image="images/TmpUpperMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTmpUpperMarkerStick [shape=none, label="", image="images/TmpUpperMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qPressuresSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qPressuresSectionTitle [shape=ellipse, label="Text\n'Pressures(mmHg)'", fontsize="30pt"]; + qPressuresLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qPressuresEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qPressuresContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qExpandingButtonImage [shape=ellipse, label="Image", fontsize="30pt"]; + qArterialPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qVenousPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qTmpPressureComponentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qArterialTitleText [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qArterialValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qVenousTitleText [shape=ellipse, label="Text\nid: _title", fontsize="30pt"]; + qVenousValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qTmpTitleText [shape=ellipse, label="Text\nid: _titlet", fontsize="30pt"]; + qTmpValueText [shape=ellipse, label="Text\nid: _value", fontsize="30pt"]; + qArterialMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qArterialMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qArterialMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qArterialMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qArterialMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qArterialMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qArterialMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qVenousMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qVenousMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qVenousMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qVenousMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qVenousMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerValueHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qTmpMarkerValueStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerValueText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerLowerHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qTmpMarkerLowerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerLowerText [shape=ellipse, label="Text", fontsize="30pt"]; + qTmpMarkerUpperHandle [shape=ellipse, label="Rectangle\nid: _handle\n'visible: false'", fontsize="30pt"]; + qTmpMarkerUpperStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qTmpMarkerUpperText [shape=ellipse, label="Text", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Pressures Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentPressures -> qPressuresSection[color="red"]; + + qPressuresSection -> dSectionHeaderPressures -> iPressuresHeader; + iPressuresHeader -> qPressuresSectionTitle; + iPressuresHeader -> dPressuresHeaderLockButton -> qPressuresLockImage; + iPressuresHeader -> dPressuresHeaderEditButton -> qPressuresEditImage -> iPressuresEdit; + + qPressuresSection -> dExpandingButton -> qExpandingButtonImage ->iExpandingButton; + + qPressuresSection -> iPressuresContent -> qPressuresContentColumn; + qPressuresContentColumn -> iArterialPressureComponent -> qArterialPressureComponentRow; + qPressuresContentColumn -> iVenousPressureComponent -> qVenousPressureComponentRow; + qPressuresContentColumn -> iTmpPressureComponent -> qTmpPressureComponentRow; + + qArterialPressureComponentRow -> qArterialTitleText -> iArterialTitle + qArterialPressureComponentRow -> qArterialValueText -> iArterialValue + qArterialPressureComponentRow -> dArterialRangeBar -> iArterialRangeBar + iArterialRangeBar -> dArterialRangeRect + dArterialRangeRect -> dArterialLowerMarker -> iArterialLowerMarker + iArterialLowerMarker -> qArterialMarkerLowerHandle + iArterialLowerMarker -> qArterialMarkerLowerStick -> iArterialLowerMarkerStick + iArterialLowerMarker -> qArterialMarkerLowerText -> iArterialLowerMarkerText + + dArterialRangeRect -> dArterialUpperMarker -> iArterialUpperMarker + iArterialUpperMarker -> qArterialMarkerUpperHandle + iArterialUpperMarker -> qArterialMarkerUpperStick ->iArterialUpperMarkerStick + iArterialUpperMarker -> qArterialMarkerUpperText ->iArterialUpperMarkerText + + iArterialRangeBar -> dArterialValueMarker -> iArterialValueMarker + iArterialValueMarker -> qArterialMarkerValueHandle -> iArterialValueMarkerHandle + iArterialValueMarker -> qArterialMarkerValueStick -> iArterialValueMarkerStick + iArterialValueMarker -> qArterialMarkerValueText -> iArterialValueMarkerText + + qVenousPressureComponentRow -> qVenousTitleText -> iVenousTitle + qVenousPressureComponentRow -> qVenousValueText -> iVenousValue + qVenousPressureComponentRow -> dVenousRangeBar -> iVenousRangeBar + iVenousRangeBar -> dVenousRangeRect + dVenousRangeRect -> dVenousLowerMarker -> iVenousLowerMarker + iVenousLowerMarker -> qVenousMarkerLowerHandle + iVenousLowerMarker -> qVenousMarkerLowerStick -> iVenousLowerMarkerStick + iVenousLowerMarker -> qVenousMarkerLowerText -> iVenousLowerMarkerText + + dVenousRangeRect -> dVenousUpperMarker -> iVenousUpperMarker + iVenousUpperMarker -> qVenousMarkerUpperHandle + iVenousUpperMarker -> qVenousMarkerUpperStick ->iVenousUpperMarkerStick + iVenousUpperMarker -> qVenousMarkerUpperText ->iVenousUpperMarkerText + + iVenousRangeBar -> dVenousValueMarker -> iVenousValueMarker + iVenousValueMarker -> qVenousMarkerValueHandle -> iVenousValueMarkerHandle + iVenousValueMarker -> qVenousMarkerValueStick -> iVenousValueMarkerStick + iVenousValueMarker -> qVenousMarkerValueText -> iVenousValueMarkerText + + qTmpPressureComponentRow -> qTmpTitleText -> iTmpTitle + qTmpPressureComponentRow -> qTmpValueText -> iTmpValue + qTmpPressureComponentRow -> dTmpRangeBar -> iTmpRangeBar + iTmpRangeBar -> dTmpRangeRect + dTmpRangeRect -> dTmpLowerMarker -> iTmpLowerMarker + iTmpLowerMarker -> qTmpMarkerLowerHandle + iTmpLowerMarker -> qTmpMarkerLowerStick -> iTmpLowerMarkerStick + iTmpLowerMarker -> qTmpMarkerLowerText -> iTmpLowerMarkerText + + dTmpRangeRect -> dTmpUpperMarker -> iTmpUpperMarker + iTmpUpperMarker -> qTmpMarkerUpperHandle + iTmpUpperMarker -> qTmpMarkerUpperStick ->iTmpUpperMarkerStick + iTmpUpperMarker -> qTmpMarkerUpperText ->iTmpUpperMarkerText + + iTmpRangeBar -> dTmpValueMarker -> iTmpValueMarker + iTmpValueMarker -> qTmpMarkerValueHandle -> iTmpValueMarkerHandle + iTmpValueMarker -> qTmpMarkerValueStick -> iTmpValueMarkerStick + iTmpValueMarker -> qTmpMarkerValueText -> iTmpValueMarkerText + } +} Index: SDDs/Main_Treatment/TreatmentSaline.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentSaline.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentSaline.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,71 @@ +digraph treatmentSalineDiagram { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderSaline [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dSalineHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dSalineHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dSalineProgressBar [shape=box, label="ProgressBar.qml", fontsize="30pt"]; + dSalineValueLabel [shape=box, label="Label.qml", fontsize="30pt"]; + dSalineUnitLabel [shape=box, label="Label.qml", fontsize="30pt"]; + dSalineProgressBarRect [shape=box, label="ProgressRect.qml\n|_RangeRect.qml\n|__Rectangle", fontsize="30pt"]; + dSalineProgressBarRangeMarker [shape=box, label="RangeMarker.qml\n'visible: false'", fontsize="30pt"]; + dSalineTouchRect [shape=box, label="TouchRect.qml", fontsize="30pt"]; + + // screenshots + iTreatmentSaline [shape=none, label="TreatmentSection.qml", image="images/TreatmentSaline.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineHeader [shape=none, label="", image="images/SalineHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineContent [shape=none, label="ContentArea.qml", image="images/SalineContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineDeliveredText [shape=none, label="", image="images/SalineDeliveredText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineProgressArea [shape=none, label="", image="images/SalineProgressArea.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineUnit [shape=none, label="", image="images/SalineUnit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineValue [shape=none, label="", image="images/SalineValue.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iSalineProgressBar [shape=none, label="RangeRect.qml", image="images/SalineProgressBar.png", fontcolor="#00FF21", fontsize="23pt", labelloc=t, imagescale=true]; + iSalineButton [shape=none, label="Rectangle", image="images/SalineButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qSalineSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qSalineSectionTitle [shape=ellipse, label="Text\n'Saline'", fontsize="30pt"]; + qSalineLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qSalineEditImage [shape=ellipse, label="Image\nid: _editButton\n'visible: false'", fontsize="30pt"]; + qSalineContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qSalineDesciptionText [shape=ellipse, label="Text", fontsize="30pt"]; + qSalineProgressArea [shape=ellipse, label="Item\nid: _progressBarArea", fontsize="30pt"]; + qSalineValueText [shape=ellipse, label="Text\nValue", fontsize="30pt"]; + qSalineUnitText [shape=ellipse, label="Text\nUnit", fontsize="30pt"]; + qSalineRangeHandle [shape=ellipse, label="Rectangle\nHandle", fontsize="30pt"]; + qSalineRangeStick [shape=ellipse, label="Rectangle\nStick", fontsize="30pt"]; + qSalineRangeValue [shape=ellipse, label="Text\nValue", fontsize="30pt"]; + qSalineButtonText [shape=ellipse, label="Text\n'Start Bolus (0mL)'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Saline Treatment" + fontsize="30pt" + labeljust=l + iTreatmentSaline -> qSalineSection[color="red"]; + + qSalineSection -> dSectionHeaderSaline -> iSalineHeader; + iSalineHeader -> qSalineSectionTitle; + iSalineHeader -> dSalineHeaderLockButton -> qSalineLockImage; + iSalineHeader -> dSalineHeaderEditButton -> qSalineEditImage; + + qSalineSection -> iSalineContent -> qSalineContentColumn; + qSalineContentColumn -> dSalineTouchRect -> iSalineButton -> qSalineButtonText; + qSalineContentColumn -> qSalineDesciptionText -> iSalineDeliveredText; + qSalineContentColumn -> qSalineProgressArea -> iSalineProgressArea; + + iSalineProgressArea -> dSalineValueLabel -> qSalineValueText -> iSalineValue; + iSalineProgressArea -> dSalineUnitLabel -> qSalineUnitText -> iSalineUnit; + iSalineProgressArea -> dSalineProgressBar -> iSalineProgressBar; + + iSalineProgressBar -> dSalineProgressBarRect; + iSalineProgressBar -> dSalineProgressBarRangeMarker; + + dSalineProgressBarRangeMarker -> qSalineRangeHandle; + dSalineProgressBarRangeMarker -> qSalineRangeStick; + dSalineProgressBarRangeMarker -> qSalineRangeValue; + } +} Index: SDDs/Main_Treatment/TreatmentTime.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentTime.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentTime.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,62 @@ +digraph treatmentTimeDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dTimeEditIcon [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dProgressCircle [shape=box, label="ProgressCircle.qml\nItem", fontsize="30pt"]; + dCircle [shape=box, label="Circle.qml\nItem", fontsize="30pt"]; + dTimeText [shape=box, label="TimeText.qml\nRectangle", fontsize="30pt"]; + + // screenshots + iTreatmentTime [shape=none, label="Rectangle", image="images/TreatmentTime.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTimeText [shape=none, label="", image="images/TimeText.png"]; + iTimeTitleRect [shape=none, label="", image="images/TimeTitleRect.png"]; + iTimeRemaining [shape=none, label="", image="images/TimeRemaining.png"]; + iTreatmentTimeEdit [shape=none, label="", image="images/edit.png"]; + iHours [shape=none, label="", image="images/Hours.png"]; + iMinutes [shape=none, label="", image="images/Minutes.png"]; + iSeconds [shape=none, label="", image="images/Seconds.png"]; + iSeparator [shape=none, label="", image="images/Seperator.png"]; + + // qml types + qTimeTitleRect [shape=ellipse, label="Item\nid: _timeTitleRect", fontsize="30pt"]; + qTimeTitle [shape=ellipse, label="Text", fontsize="30pt"]; + qEditIcon [shape=ellipse, label="Image\nqrc:/images/iEdit.png", fontsize="30pt"]; + qCirclePath [shape=ellipse, label="Rectangle\n|_Shape\n|__ShapePath\n|__PathAngleArc", fontsize="30pt", labeljust=l]; + qTimeHour [shape=ellipse, label="Text\nHours", fontsize="30pt"]; + qTimeMin [shape=ellipse, label="Text\nMinutes", fontsize="30pt"]; + qTimeSec [shape=ellipse, label="Text\nSeconds", fontsize="30pt"]; + qTimeSeparator [shape=ellipse, label="Text\n Separator ':'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Treatment Time" + fontsize="30pt" + labeljust=l + iTreatmentTime -> dProgressCircle[color="red"]; + dProgressCircle -> dCircle; + dCircle -> qCirclePath; + + iTreatmentTime -> dTimeText[color="red"]; + dTimeText -> iTimeText; + iTimeText -> qTimeHour + qTimeHour -> iHours + iTimeText -> qTimeMin + qTimeMin -> iMinutes + iTimeText -> qTimeSec + qTimeSec -> iSeconds + iTimeText -> qTimeSeparator + qTimeSeparator -> iSeparator + + iTreatmentTime -> qTimeTitleRect[color="red"]; + qTimeTitleRect -> iTimeTitleRect; + iTimeTitleRect -> qTimeTitle; + qTimeTitle -> iTimeRemaining; + iTimeTitleRect -> dTimeEditIcon; + dTimeEditIcon -> qEditIcon; + qEditIcon -> iTreatmentTimeEdit; + } + +} Index: SDDs/Main_Treatment/TreatmentUltrafiltration.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentUltrafiltration.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentUltrafiltration.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,123 @@ +digraph treatmentUltrafiltrationDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderUltrafiltration [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dUltrafiltrationHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dUltrafiltrationHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dUfVolumeLabelValue [shape=box, label="LabelValue.qml\nid: _ufVolume", fontsize="30pt"]; + dUfRateLabelValue [shape=box, label="LabelValue.qml\nid: _ufRate", fontsize="30pt"]; + dIsolatedUfButton [shape=box, label="TouchRect.qml\nRectangle", fontsize="30pt"]; + dUfProgressBarEx [shape=box, label="ProgressBarEx.qml\nid: _progressRectEx\nProgressBar.qml", fontsize="30pt"]; + dUfProgressBarProgressRect [shape=box, label="ProgressRect.qml\nRangeRect.qml", fontsize="30pt"]; + dUfProgressBarRect [shape=box, label="ProgressRect.qml\nid: _progressRect", fontsize="30pt"]; + dUfProgressBarRangeMarker [shape=box, label="RangeMarker.qml\nRangeRect.qml", fontsize="30pt"]; + + // screenshots + iTreatmentUF [shape=none, label="TreatmentSection.qml", image="images/TreatmentUltrafiltration.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationHeader [shape=none, label="", image="images/UltrafiltrationHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationContent [shape=none, label="ContentArea.qml", image="images/UltrafiltrationContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUltrafiltrationEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfLeftColumn [shape=none, label="", image="images/UfLeftColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRightColumn [shape=none, label="", image="images/UfRightColumn.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeLabel [shape=none, label="", image="images/UfVolumeLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateLabel [shape=none, label="", image="images/UfRateLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeTopText [shape=none, label="", image="images/UfVolumeTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeCenterText [shape=none, label="", image="images/UfVolumeCenterText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeBottomText [shape=none, label="", image="images/UfVolumeBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfVolumeUnitText [shape=none, label="", image="images/UfVolumeUnitText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateTopText [shape=none, label="", image="images/UfRateTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateBottomText [shape=none, label="", image="images/UfRateBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfRateUnitText [shape=none, label="", image="images/UfRateUnitText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iIsolatedUfButton [shape=none, label="", image="images/IsolatedUfButton.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVolumeRemoved [shape=none, label="", image="images/VolumeRemoved.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBar [shape=none, label="", image="images/UfProgressBar.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBarRightBgrnd [shape=none, label="", image="images/UfProgressBarRightBgrnd.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressBarProgressRect [shape=none, label="", image="images/UfProgressBarProgressRect.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressRectMain [shape=none, label="Rectangle", image="images/UfProgressRectMain.png", fontcolor="#00FF21", fontsize="25pt", labelloc=l, imagescale=true]; + iUfProgressMin [shape=none, label="", image="images/UfProgressMin.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMax [shape=none, label="", image="images/UfProgressMax.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarker [shape=none, label="Rectangle", image="images/UfProgressMarker.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerHandle [shape=none, label="", image="images/UfProgressMarkerHandle.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerStick [shape=none, label="", image="images/UfProgressMarkerStick.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iUfProgressMarkerText [shape=none, label="", image="images/UfProgressMarkerText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qUltrafiltrationSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qUltrafiltrationSectionTitle [shape=ellipse, label="Text\n'Ultrafiltration(UF)'", fontsize="30pt"]; + qUltrafiltrationLockImage [shape=ellipse, label="Image\n'visible: false'", fontsize="30pt"]; + qUltrafiltrationEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qUltrafiltrationContentRow [shape=ellipse, label="Row", fontsize="30pt"]; + qUltrafiltrationLeftColumn [shape=ellipse, label="Column\nid: _leftColumn", fontsize="30pt"]; + qUltrafiltrationRightColumn [shape=ellipse, label="Column\nid: _rightColumn", fontsize="30pt"]; + qUfVolumeTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qUfVolumeCenterText [shape=ellipse, label="Text\nid: _centerText", fontsize="30pt"]; + qUfVolumeBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qUfVolumeUnitText [shape=ellipse, label="Text\nid: _unitText", fontsize="30pt"]; + qUfRateTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qUfRateCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qUfRateBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qUfRateUnitText [shape=ellipse, label="Text\nid: _unitText", fontsize="30pt"]; + qIsolatedUfButtonText [shape=ellipse, label="Text", fontsize="30pt"]; + qVolumeRemovedText [shape=ellipse, label="Text", fontsize="30pt"]; + qProgressRightBackground [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qProgressBarProgressMin [shape=ellipse, label="Text\nid: _textMinimum\n'visible: false'", fontsize="30pt"]; + qProgressBarProgressMax [shape=ellipse, label="Text\nid: _textMaximum\n'visible: false'", fontsize="30pt"]; + qProgressBarMin [shape=ellipse, label="Text\nid: _textMinimum", fontsize="30pt"]; + qProgressBarMax [shape=ellipse, label="Text\nid: _textMaximum", fontsize="30pt"]; + qProgressMarkerHandle [shape=ellipse, label="Rectangle\nid: _handle", fontsize="30pt"]; + qProgressMarkerStick [shape=ellipse, label="Rectangle\nid: _stick", fontsize="30pt"]; + qProgressMarkerText [shape=ellipse, label="Text", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Ultrafiltration Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentUF -> qUltrafiltrationSection[color="red"]; + + qUltrafiltrationSection -> dIsolatedUfButton -> qIsolatedUfButtonText ->iIsolatedUfButton; + + qUltrafiltrationSection -> dSectionHeaderUltrafiltration -> iUltrafiltrationHeader; + iUltrafiltrationHeader -> qUltrafiltrationSectionTitle; + iUltrafiltrationHeader -> dUltrafiltrationHeaderLockButton -> qUltrafiltrationLockImage; + iUltrafiltrationHeader -> dUltrafiltrationHeaderEditButton -> qUltrafiltrationEditImage -> iUltrafiltrationEdit; + + qUltrafiltrationSection -> iUltrafiltrationContent -> qUltrafiltrationContentRow; + qUltrafiltrationContentRow -> qUltrafiltrationLeftColumn -> iUfLeftColumn; + + iUfLeftColumn -> dUfVolumeLabelValue -> iUfVolumeLabel; + iUfVolumeLabel -> qUfVolumeTopText -> iUfVolumeTopText; + iUfVolumeLabel -> qUfVolumeCenterText -> iUfVolumeCenterText; + iUfVolumeLabel -> qUfVolumeBottomText -> iUfVolumeBottomText; + iUfVolumeLabel -> qUfVolumeUnitText -> iUfVolumeUnitText; + + iUfLeftColumn -> dUfRateLabelValue -> iUfRateLabel; + iUfRateLabel -> qUfRateTopText -> iUfRateTopText; + iUfRateLabel -> qUfRateCenterText; + iUfRateLabel -> qUfRateBottomText -> iUfRateBottomText; + iUfRateLabel -> qUfRateUnitText -> iUfRateUnitText; + + qUltrafiltrationContentRow -> qUltrafiltrationRightColumn -> iUfRightColumn; + iUfRightColumn -> qVolumeRemovedText -> iVolumeRemoved; + + iUfRightColumn -> dUfProgressBarEx -> iUfProgressBar; + iUfProgressBar -> qProgressRightBackground -> iUfProgressBarRightBgrnd; + + iUfProgressBar -> dUfProgressBarRangeMarker -> iUfProgressMarker; + iUfProgressMarker -> qProgressMarkerHandle -> iUfProgressMarkerHandle; + iUfProgressMarker -> qProgressMarkerStick -> iUfProgressMarkerStick; + iUfProgressMarker -> qProgressMarkerText -> iUfProgressMarkerText ; + + iUfProgressBar -> dUfProgressBarProgressRect -> iUfProgressRectMain; + iUfProgressRectMain -> qProgressBarMin -> iUfProgressMin; + iUfProgressRectMain -> qProgressBarMax -> iUfProgressMax; + + iUfProgressBar -> dUfProgressBarRect -> iUfProgressBarProgressRect; + iUfProgressBarProgressRect -> qProgressBarProgressMin; + iUfProgressBarProgressRect -> qProgressBarProgressMax; + } +} Index: SDDs/Main_Treatment/TreatmentVitals.dot =================================================================== diff -u --- SDDs/Main_Treatment/TreatmentVitals.dot (revision 0) +++ SDDs/Main_Treatment/TreatmentVitals.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,70 @@ +digraph treatmentVitalsDiagrom { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dSectionHeaderVitals [shape=box, label="TreatmentSectionHeader.qml\nRectangle", fontsize="30pt"]; + dVitalsHeaderLockButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dVitalsHeaderEditButton [shape=box, label="TreatmentSectionIcon.qml\nTouchRect", fontsize="30pt"]; + dBloodPressureLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + dHeartBeatLabelValue [shape=box, label="LabelValue.qml\nItem", fontsize="30pt"]; + + // screenshots + iTreatmentVitals [shape=none, label="TreatmentSection.qml", image="images/TreatmentVitals.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsHeader [shape=none, label="", image="images/VitalsHeader.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsContent [shape=none, label="ContentArea.qml", image="images/VitalsContent.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iVitalsEdit [shape=none, label="", image="images/edit.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iLastRecorded [shape=none, label="", image="images/LastRecorded.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureLabel [shape=none, label="", image="images/BloodPressureLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatLabel [shape=none, label="", image="images/HeartBeatLabel.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureTopText [shape=none, label="", image="images/BloodPressureTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iBloodPressureBottomText[shape=none, label="", image="images/BloodPressureBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatTopText [shape=none, label="", image="images/HeartBeatTopText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iHeartBeatBottomText [shape=none, label="", image="images/HeartBeatBottomText.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + + // qml types + qVitalsSection [shape=ellipse, label="Rectangle", fontsize="30pt"]; + qVitalsSectionTitle [shape=ellipse, label="Text\n'Vitals'", fontsize="30pt"]; + qVitalsLockImage [shape=ellipse, label="Image\nid: _lockButton\n'visible: false'", fontsize="30pt"]; + qVitalsEditImage [shape=ellipse, label="Image", fontsize="30pt"]; + qVitalsContentColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qLastRecordedText [shape=ellipse, label="Text", fontsize="30pt"]; + qBloodPressureTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qBloodPressureCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qBloodPressureBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qBloodPressureUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + qHeartBeatTopText [shape=ellipse, label="Text\nid: _topText", fontsize="30pt"]; + qHeartBeatCenterText [shape=ellipse, label="Text\nid: _centerText\n'visible: false'", fontsize="30pt"]; + qHeartBeatBottomText [shape=ellipse, label="Text\nid: _bottomText", fontsize="30pt"]; + qHeartBeatUnitText [shape=ellipse, label="Text\nid: _unitText\n'visible: false'", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Vitals Treatment" + fontsize="30pt" + labeljust=l + + iTreatmentVitals -> qVitalsSection[color="red"]; + qVitalsSection -> dSectionHeaderVitals -> iVitalsHeader; + iVitalsHeader -> qVitalsSectionTitle; + iVitalsHeader -> dVitalsHeaderLockButton -> qVitalsLockImage; + iVitalsHeader -> dVitalsHeaderEditButton -> qVitalsEditImage -> iVitalsEdit; + + qVitalsSection -> iVitalsContent -> qVitalsContentColumn; + + qVitalsContentColumn -> dBloodPressureLabelValue -> iBloodPressureLabel; + iBloodPressureLabel -> qBloodPressureTopText -> iBloodPressureTopText; + iBloodPressureLabel -> qBloodPressureCenterText; + iBloodPressureLabel -> qBloodPressureBottomText -> iBloodPressureBottomText; + iBloodPressureLabel -> qBloodPressureUnitText; + + qVitalsContentColumn -> dHeartBeatLabelValue -> iHeartBeatLabel; + iHeartBeatLabel -> qHeartBeatTopText -> iHeartBeatTopText; + iHeartBeatLabel -> qHeartBeatCenterText; + iHeartBeatLabel -> qHeartBeatBottomText -> iHeartBeatBottomText; + iHeartBeatLabel -> qHeartBeatUnitText; + + qVitalsContentColumn -> qLastRecordedText -> iLastRecorded; + } +} Index: SDDs/Main_Treatment/images/ArterialLowerMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialLowerMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialLowerMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialPressureComponent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialRangeBar.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialUpperMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialUpperMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialUpperMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialValueMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialValueMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ArterialValueMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodFlow.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodFlowBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodFlowLabelValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodFlowTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodFlowTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodPressureBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodPressureLabel.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/BloodPressureTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateCond.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateCondBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateCondLabelValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateCondTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateCondTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateFlow.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateFlowBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateFlowLabelValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateFlowTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateFlowTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateTemp.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateTempBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateTempLabelValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateTempTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/DialysateTempTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ExpandingButton.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/HeartBeatBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/HeartBeatLabel.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/HeartBeatTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/Hours.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/IsolatedUfButton.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/LastRecorded.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/Minutes.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ParametersContent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/ParametersHeader.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/PressuresContent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/PressuresHeader.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineButton.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineContent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineDeliveredText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineHeader.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineProgressArea.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineProgressBar.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineUnit.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/SalineValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/Seconds.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/Seperator.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/Thumbs.db =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TimeRemaining.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TimeText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TimeTitleRect.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpLowerMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpLowerMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpLowerMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpPressureComponent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpRangeBar.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpUpperMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpUpperMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpUpperMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpValueMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpValueMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TmpValueMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentFlows.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentHome.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentPressures.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentSaline.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentTime.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentUltrafiltration.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/TreatmentVitals.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfLeftColumn.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressBar.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressBarProgressRect.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressBarRightBgrnd.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMarkerHandle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMax.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressMin.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfProgressRectMain.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfRateBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfRateLabel.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfRateTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfRateUnitText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfRightColumn.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfVolumeBottomText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfVolumeCenterText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfVolumeLabel.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfVolumeTopText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UfVolumeUnitText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UltrafiltrationContent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/UltrafiltrationHeader.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousLowerMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousLowerMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousLowerMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousPressureComponent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousRangeBar.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousTitle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousUpperMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousUpperMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousUpperMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousValue.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousValueMarker.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousValueMarkerStick.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VenousValueMarkerText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VitalsContent.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VitalsHeader.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/VolumeRemoved.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/arrowColumn.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/arrowDown.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/arrowUp.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/bottomRow.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/dialysateFlowExtraText.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/edit.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/lock.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/topRow.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/images/valueHandle.png =================================================================== diff -u Binary files differ Index: SDDs/Main_Treatment/main.dot =================================================================== diff -u --- SDDs/Main_Treatment/main.dot (revision 0) +++ SDDs/Main_Treatment/main.dot (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,60 @@ +digraph mainTreatmentScreen { + bgcolor=lightgray + margin=50 + + // Prefix: q - Qt component, d - Diality component, i - image + // Define the main componenets + dTopLevelComponent [shape=box, label="TreatmentHome.qml", fontsize="30pt"]; + dTreatmentTimeComponent [shape=box, label="TreatmentTime.qml", fontsize="30pt"]; + dTreatmentSalineComponent [shape=box, label="TreatmentSaline.qml", fontsize="30pt"]; + dTreatmentVitalsComponent [shape=box, label="TreatmentVitals.qml", fontsize="30pt"]; + dTreatmentPressuresComponent [shape=box, label="TreatmentPressures.qml", fontsize="30pt"]; + dTreatmentUltrafiltrationComponent [shape=box, label="TreatmentUltrafiltration.qml", fontsize="30pt"]; + dTreatmentFlowsComponent [shape=box, label="TreatmentFlows.qml", fontsize="30pt"]; + + // screenshots + iTreatmentHome [shape=none, label="ScreenItem.qml", image="images/TreatmentHome.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTopRow [shape=none, label="id: _topRow", image="images/topRow.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iBottomRow [shape=none, label="id: _bottomRow", image="images/bottomRow.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + iTreatmentTime [shape=none, label="Rectangle", image="images/TreatmentTime.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTreatmentSaline [shape=none, label="TreatmentSection.qml", image="images/TreatmentSaline.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTreatmentVitals [shape=none, label="TreatmentSection.qml", image="images/TreatmentVitals.png", fontcolor="#00FF21", fontsize="25pt", labelloc=t, imagescale=true]; + iTreatmentPressures [shape=none, label="TreatmentSection.qml", image="images/TreatmentPressures.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + iTreatmentUF [shape=none, label="TreatmentSection.qml", image="images/TreatmentUltrafiltration.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + iTreatmentFlows [shape=none, label="TreatmentSection.qml", image="images/TreatmentFlows.png", fontcolor="#00FF21", fontsize="30pt", labelloc=t, imagescale=true]; + + // qml types + qColumn [shape=ellipse, label="Column", fontsize="30pt"]; + qRowTop [shape=ellipse, label="Row\nid: _topRow", fontsize="30pt"]; + qRowBottom [shape=ellipse, label="Row\nid: _bottomRow", fontsize="30pt"]; + + // Diagram Layout + subgraph cluster_one { + label="Main Component" + fontsize="30pt" + labeljust=l + dTopLevelComponent -> iTreatmentHome -> qColumn; + qColumn -> qRowTop -> iTopRow; + qColumn -> qRowBottom -> iBottomRow; + } + + subgraph cluster_two { + label="Top Row" + fontsize="30pt" + labeljust=l + iTopRow -> dTreatmentTimeComponent -> iTreatmentTime; + iTopRow -> dTreatmentSalineComponent -> iTreatmentSaline; + iTopRow -> dTreatmentVitalsComponent -> iTreatmentVitals; + iTopRow -> dTreatmentPressuresComponent -> iTreatmentPressures; + } + + subgraph cluster_three { + label="Bottom Row" + fontsize="30pt" + labeljust=l + iBottomRow -> dTreatmentUltrafiltrationComponent -> iTreatmentUF; + iBottomRow -> dTreatmentFlowsComponent -> iTreatmentFlows; + } +} Index: SDDs/Main_Treatment/merge.m4 =================================================================== diff -u --- SDDs/Main_Treatment/merge.m4 (revision 0) +++ SDDs/Main_Treatment/merge.m4 (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,17 @@ +digraph combined_diagram { + margin=150 + center=true; + + define(`digraph',`subgraph') + include(main.dot) + include(TreatmentTime.dot) + include(TreatmentSaline.dot) + include(TreatmentVitals.dot) + include(TreatmentPressures.dot) + include(TreatmentUltrafiltration.dot) + include(TreatmentParameters.dot) + include(TreatmentParameters-BloodFlow.dot) + include(TreatmentParameters-DialysateFlow.dot) + include(TreatmentParameters-DialysateTemp.dot) + include(TreatmentParameters-DialysateCond.dot) +} Index: leahi.qrc =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- leahi.qrc (.../leahi.qrc) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ leahi.qrc (.../leahi.qrc) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -71,13 +71,24 @@ resources/images/chevron-left.png resources/images/chevron-right.png resources/images/DenaliDevice.png + resources/images/edit.png + resources/images/edit-disabled.png + resources/images/Lock.png + resources/images/Prescription.png + resources/images/Settings.png + resources/images/Unlock.png + resources/images/Wifi.png + resources/images/PauseOrange.png + resources/images/arrowsExpanding.png + resources/images/HomeBackground.png sources/gui/qml/components/MainMenu.qml sources/gui/qml/components/TouchRect.qml sources/gui/qml/components/TitleText.qml sources/gui/qml/components/ImageLogoD.qml sources/gui/qml/components/ScreenItem.qml + sources/gui/qml/components/IconButton.qml sources/gui/qml/components/StackItem.qml sources/gui/qml/components/ModalDialog.qml sources/gui/qml/components/BackButton.qml @@ -112,7 +123,7 @@ sources/gui/qml/components/UltrafiltrationButton.qml sources/gui/qml/components/ImageWave.qml sources/gui/qml/components/ImageClock.qml - sources/gui/qml/components/ImageLogoDDarkTransparent.qml + sources/gui/qml/components/ImageLogoDDarkTransparent.qml sources/gui/qml/components/ConfirmTreatmentTableEntry.qml sources/gui/qml/components/DebugDataColumn.qml sources/gui/qml/components/RangeSlider.qml @@ -131,6 +142,9 @@ sources/gui/qml/components/EntryDialog.qml sources/gui/qml/components/SliderArrows.qml sources/gui/qml/components/QRCode.qml + sources/gui/qml/components/ContentArea.qml + sources/gui/qml/components/LabelValue.qml + sources/gui/qml/components/ArrowButton.qml sources/gui/qml/compounds/PressureRangeSlider.qml @@ -214,6 +228,8 @@ sources/gui/qml/pages/treatment/TreatmentHome.qml sources/gui/qml/pages/treatment/TreatmentBloodPrime.qml sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml + sources/gui/qml/pages/treatment/TreatmentSection.qml + sources/gui/qml/pages/treatment/TreatmentSectionHeader.qml sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml @@ -224,6 +240,8 @@ sources/gui/qml/pages/treatment/sections/TreatmentTime.qml sources/gui/qml/pages/treatment/sections/TreatmentSaline.qml sources/gui/qml/pages/treatment/sections/TreatmentHeparin.qml + sources/gui/qml/pages/treatment/sections/TreatmentPressureComponent.qml + sources/gui/qml/pages/treatment/sections/TreatmentFlowsComponent.qml sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentFlow.qml Index: sources/gui/qml/components/ArrowButton.qml =================================================================== diff -u --- sources/gui/qml/components/ArrowButton.qml (revision 0) +++ sources/gui/qml/components/ArrowButton.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,40 @@ +// Qt +import QtQuick 2.12 + +import "qrc:/globals" +import "qrc:/components" + +TouchRect { id : _root + + // arrow type must be set externally + property bool upArrow : false + property bool downArrow : false + property bool leftArrow : false + property bool rightArrow : false + property bool expandingArrow: false + + property string iconImage : upArrow ? "qrc:/images/iChevronUp" : + downArrow ? "qrc:/images/iChevronDown" : + leftArrow ? "qrc:/images/iChevronLeft" : + rightArrow ? "qrc:/images/iChevronRight" : + expandingArrow ? "qrc:/images/iArrowsExpanding" : + "" + + property int iconSize : Variables.arrowIconDiameter + + isDefault : true + height : iconSize + 20 + width : height + radius : height + + Image { id : _iconImage + anchors.centerIn: parent + anchors.verticalCenterOffset: upArrow ? -3 : + downArrow ? 3 : + 0 + height : iconSize + width : iconSize + fillMode : Image.PreserveAspectFit + source : iconImage + } +} Index: sources/gui/qml/components/Circle.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/Circle.qml (.../Circle.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/Circle.qml (.../Circle.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -39,6 +39,8 @@ property real diameter : Variables.circleNormalDiameter + property bool runAnimation : false + width : diameter height : diameter @@ -72,5 +74,18 @@ } } } + + OpacityAnimator { target: _shape + from : 0.2 + to : 1 + duration : 1000 + running : ! runAnimation + onFinished : { + var tmp = from + from = to + to = tmp + ! runAnimation ? restart() : target.opacity = 1 + } + } } } Index: sources/gui/qml/components/ContentArea.qml =================================================================== diff -u --- sources/gui/qml/components/ContentArea.qml (revision 0) +++ sources/gui/qml/components/ContentArea.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,22 @@ +import QtQuick 2.12 + +Item { + id: _contentArea + height: contentItem ? contentItem.height : + 0 + + property Item contentItem: Item { id: defaultContentItem + parent : _contentArea + height : 10 + } + + onContentItemChanged: { + if (contentItem) { + contentItem.parent = _contentArea + contentItem.anchors.top = _contentArea.top + contentItem.anchors.left = _contentArea.left + contentItem.anchors.right = _contentArea.right + contentItem.anchors.bottom = _contentArea.bottom + } + } +} Index: sources/gui/qml/components/IconButton.qml =================================================================== diff -u --- sources/gui/qml/components/IconButton.qml (revision 0) +++ sources/gui/qml/components/IconButton.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,39 @@ +/*! + * + * Copyright (c) 2019-2025 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file MonitorItem.qml + * \author (last) Nico Ramirez + * \date (last) 27-Jun-2025 + * \author (original) Nico Ramirez + * \date (original) 27-Jun-2025 + * + */ + +// Qt +import QtQuick 2.12 + +import "qrc:/globals" +import "qrc:/components" + +TouchRect { id : _icon + property int iconSize : Variables.iconButtonSize + property string iconImageSource : "" + + width : iconSize + 20 + height : iconSize + 20 + radius : height + border.color: "transparent" + color : "transparent" + + Image { id : _iconImage + anchors.centerIn: parent + height : iconSize + width : iconSize + fillMode: Image.PreserveAspectFit + source : iconImageSource + } +} Index: sources/gui/qml/components/LabelValue.qml =================================================================== diff -u --- sources/gui/qml/components/LabelValue.qml (revision 0) +++ sources/gui/qml/components/LabelValue.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,76 @@ + +// Qt +import QtQuick 2.12 + +// Project +// Qml imports +import "qrc:/globals" + +Item { id : _root + property string topText : "" + property string topTextColor : Colors.textTextRectLabel + property alias topTextFont : _topText.font + + property string centerText : "" + property bool showCenterText : false + property bool leftAlign : false + + property string bottomText : "" + property string bottomTextColor : Colors.textTextRectLabel + property alias bottomTextFont : _bottomText.font + property int bottomTextTopMargin : 0 + + property string unitText : "" + + clip: false + + Text { id: _topText + anchors { + top : parent.top + left : leftAlign ? parent.left : + undefined + horizontalCenter: leftAlign ? undefined : + parent.horizontalCenter + } + text : _root.topText + color : topTextColor + font.pixelSize : Fonts.fontPixelTextRectLabel + } + + Text { id: _centerText + anchors { + top : _topText.bottom + topMargin : 10 + left : _topText.left + } + text : _root.centerText + color : topTextColor + font.pixelSize : 20 + font.weight : Font.Light + } + + Text { id: _bottomText + anchors { + top : showCenterText ? _centerText.bottom : + _topText.bottom + topMargin : bottomTextTopMargin + horizontalCenter: leftAlign ? undefined : + _topText.horizontalCenter + } + text : _root.bottomText + color : bottomTextColor + font.pixelSize : Fonts.fontPixelTextRectExtra + } + + Text { id: _unitText + anchors { + left : _bottomText.right + leftMargin : 5 + bottom : _bottomText.bottom + bottomMargin: 10 + } + text : _root.unitText + color : topTextColor + font.pixelSize : 22 + } +} Index: sources/gui/qml/components/MainMenu.qml =================================================================== diff -u -r712f4c8a1b2382919300895b4422b831471044a3 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/MainMenu.qml (.../MainMenu.qml) (revision 712f4c8a1b2382919300895b4422b831471044a3) +++ sources/gui/qml/components/MainMenu.qml (.../MainMenu.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -40,6 +40,7 @@ property int currentIndex : 0 property string currentTitle : titles[currentIndex] property bool disable : false + property int titlePixelSize : 40 /*! * \brief Emits when a menu item pressed @@ -106,7 +107,7 @@ anchors.fill: parent } - ImageLogoDDT { id: _image + ImageLogoDDarkTransparent { id: _image visible: hasLogo anchors.centerIn: parent } @@ -127,7 +128,7 @@ height : parent.height text.text : isItemVisible(index) ? modelData : "" // didn't change the visibility to preserve the button location and just didn't display the title and highlihgt bar. border.width: 0 - pixelSize : 40 //// ----- @LEAHIZED + pixelSize : titlePixelSize //// ----- @LEAHIZED onPressed: { emit_itemPressed(index) } Index: sources/gui/qml/components/ModalDialog.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/ModalDialog.qml (.../ModalDialog.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/ModalDialog.qml (.../ModalDialog.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -49,8 +49,10 @@ closePolicy: Dialog.NoAutoClose Overlay.modal : Rectangle { id : _borderRect - anchors.fill: parent - color: Colors.borderDialog + anchors.fill : parent + color : "#B3000000" + + Behavior on opacity { NumberAnimation { duration: 300} } } background: Rectangle { id: _backgroundRect Index: sources/gui/qml/components/NotificationBarSmall.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/NotificationBarSmall.qml (.../NotificationBarSmall.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/NotificationBarSmall.qml (.../NotificationBarSmall.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -28,10 +28,13 @@ property alias imageSource : _image.source property bool imageAutoSize : false property bool imageAnimated : false + property int imageDiameter : Variables.notificationIconDiameter + property int imageTopMargin : 0 property alias text : _text.text property alias textColor : _text.color property alias textfontSize : _text.font.pixelSize + property alias textfontWeight : _text.font.weight property alias rowAnchors : _row.anchors property int level : 0 @@ -51,11 +54,11 @@ anchors.centerIn: parent spacing: 10 Image { id: _image - width : source == "" ? 0 : imageAutoSize ? Math.min(_root.height, _root.width) : Variables.notificationIconDiameter - height: source == "" ? 0 : imageAutoSize ? Math.min(_root.height, _root.width) : Variables.notificationIconDiameter + width : source == "" ? 0 : imageAutoSize ? Math.min(_root.height, _root.width) : _root.imageDiameter + height: source == "" ? 0 : imageAutoSize ? Math.min(_root.height, _root.width) : _root.imageDiameter anchors.verticalCenter : imageAutoSize ? parent.verticalCenter : undefined anchors.top : imageAutoSize ? undefined : parent.top - anchors.topMargin : height > _root.height ? -((height - _root.height) / 2) : 0 + anchors.topMargin : height > _root.height ? -((height - _root.height) / 2) : imageTopMargin } Text { id: _text color : Colors.textNotificationNoneFg Index: sources/gui/qml/components/ProgressBar.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/ProgressBar.qml (.../ProgressBar.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/ProgressBar.qml (.../ProgressBar.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -28,12 +28,15 @@ property alias progress : _progressRect property int progressWidth : _progressRect.width property alias value : _progressRect.value + property alias progressRadius : _progressRect.radius property alias color : _progressRect.color property alias bgColor : _root.color property alias marker : _marker property alias markerHeight : _marker.height + property string unitText : "" + property bool showMarker : true property alias decimal : _root.decimal property alias minimum : _root.minimum @@ -47,7 +50,7 @@ maximum : 0 minText.visible : true - maxText.visible : true + maxText.visible : true // Since this Component is the base Component of the ProgressBarEx // we need to use the z order @@ -60,7 +63,6 @@ maximum : _root.maximum value : _root.value - color : Colors.highlightProgressBar onClicked : progressClicked() } @@ -72,8 +74,10 @@ height : Variables.rangeMarkerHeight hasHandle : true + unitText : _root.unitText decimal : _root.decimal value : _root.value + visible : _root.showMarker } } Index: sources/gui/qml/components/ProgressBarEx.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/ProgressBarEx.qml (.../ProgressBarEx.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/ProgressBarEx.qml (.../ProgressBarEx.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -43,10 +43,10 @@ minimum : _root.minimum maximum : _root.maximum value : _root.valueEx - color : Colors.highlightMedProgressBar - maxText.visible: visible margin : 0 - onClicked: extraClicked() + maxText.visible : visible + + onClicked : extraClicked() } } Index: sources/gui/qml/components/ProgressCircle.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/ProgressCircle.qml (.../ProgressCircle.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/ProgressCircle.qml (.../ProgressCircle.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -28,8 +28,12 @@ property int maximum : 0 property int value : minimum property alias diameter : _circle.diameter - property alias thickness : _circle.thickness - property color color : Colors.borderButton + property alias thickness: _circle.thickness + property color color : _circle.runAnimation ? Colors.borderButton : + Colors.pauseColor + property color circleShadowColor : Colors.backgroundMainMenu + property color circleFillColor : Colors.transparent + property alias runAnimation : _circle.runAnimation width : _circle.width height : _circle.height @@ -41,8 +45,9 @@ Circle { id: _circle anchors.centerIn: parent color : _root.color - shadow.color : Colors.backgroundMainMenu + shadow.color : _root.circleShadowColor angle : _private.value thickness : 2 + fillColor : _root.circleFillColor } } Index: sources/gui/qml/components/RangeBar.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/RangeBar.qml (.../RangeBar.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/RangeBar.qml (.../RangeBar.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -98,5 +98,6 @@ hasHandle : true height : markerHeight color : markerColor + valueOnTop : true } } Index: sources/gui/qml/components/RangeMarker.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/RangeMarker.qml (.../RangeMarker.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/RangeMarker.qml (.../RangeMarker.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -28,9 +28,13 @@ property int decimal : 0 property alias text : _textValue + property alias handle : _handle + property alias font : _textValue.font property color color : Colors.rangeMarker property alias thickness : _root.width property alias hasHandle : _handle.visible + property bool valueOnTop : false + property string unitText : "" height: parent.height width : Variables.rangeMarkerWidth @@ -68,12 +72,16 @@ bold : true } anchors { - right : parent.left - top : parent.top - rightMargin: 5 - topMargin : -5 + right : parent.left + top : valueOnTop ? undefined : + parent.top + bottom : valueOnTop ? _handle.top : + undefined + bottomMargin: valueOnTop ? 5 : 0 + rightMargin : valueOnTop ? -12 : 5 + topMargin : valueOnTop ? 0 : -5 } color : _root.color - text : value.toFixed(decimal) + text : value.toFixed(decimal) + " " + unitText } } Index: sources/gui/qml/components/TimeText.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/components/TimeText.qml (.../TimeText.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/components/TimeText.qml (.../TimeText.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -28,6 +28,7 @@ objectName: "_TimeText" //SquishQt testability property int seconds : 0 property bool secondsVisible : true + property int secondsLeftMargin : 0 property bool hourZero : true property bool minuteZero : true @@ -57,51 +58,51 @@ property string time : hourText + separator + minuteText + (_root.secondsVisible ? (separator + secondText) : "") } - Text { id: _timeSeparator - objectName: "_TimeText_timeSeparator" //SquishQt testability + Text { id : _timeSeparator + objectName : "_TimeText_timeSeparator" //SquishQt testability - text: _private.separator + text : _private.separator - font.pixelSize: _root.textPixelSize - font.weight: _root.textWeight - color: _root.textColor + font.pixelSize : _root.textPixelSize + font.weight : _root.textWeight + color : _root.textColor anchors.centerIn: _root } - Text { id: _hourText - objectName: "_TimeText_hour" //SquishQt testability + Text { id : _hourText + objectName : "_TimeText_hour" //SquishQt testability - text: _private.hourText - font.pixelSize: _root.textPixelSize - font.weight: _root.textWeight - color: _root.textColor + text : _private.hourText + font.pixelSize : _root.textPixelSize + font.weight : _root.textWeight + color : _root.textColor horizontalAlignment: Text.AlignRight anchors.right : _timeSeparator.left anchors.baseline: _timeSeparator.baseline } - Text { id: _minuteText - objectName: "_TimeText_minute" //SquishQt testability + Text { id : _minuteText + objectName : "_TimeText_minute" //SquishQt testability - text: _private.minuteText - font.pixelSize: _root.textPixelSize - font.weight: _root.textWeight - color: _root.textColor + text : _private.minuteText + font.pixelSize : _root.textPixelSize + font.weight : _root.textWeight + color : _root.textColor horizontalAlignment: Text.AlignLeft - anchors.left: _timeSeparator.right + anchors.left : _timeSeparator.right anchors.baseline: _timeSeparator.baseline } - Text { id: _secondText - objectName: "_TimeText_second" //SquishQt testability + Text { id : _secondText + objectName : "_TimeText_second" //SquishQt testability - visible: _root.secondsVisible - - text: _private.secondText - font.pixelSize: _root.secsPixelSize - color: _root.textColor - horizontalAlignment: Text.AlignLeft - anchors.left: _minuteText.right - anchors.baseline: _timeSeparator.baseline + visible : _root.secondsVisible + text : _private.secondText + font.pixelSize : _root.secsPixelSize + color : _root.textColor + horizontalAlignment : Text.AlignLeft + anchors.left : _minuteText.right + anchors.leftMargin : _root.secondsLeftMargin + anchors.baseline : _timeSeparator.baseline } } Index: sources/gui/qml/dialogs/AutoHideInfo.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/dialogs/AutoHideInfo.qml (.../AutoHideInfo.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/dialogs/AutoHideInfo.qml (.../AutoHideInfo.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -29,14 +29,18 @@ ModalDialog { id : _root contentItem.objectName: "AutoHideInfoDialog" //SquishQt testability - property string message: "" + property string message : "" + property int fontSize : Fonts.fontPixelTitle + property int verticalOffset : 0 autoHide: true TitleText { id: _titleText anchors.centerIn: parent + anchors.verticalCenterOffset: _root.verticalOffset width: parent.width text: message + font.pixelSize: _root.fontSize } function showDialog(vMessage, vDuration) { Index: sources/gui/qml/globals/Colors.qml =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/globals/Colors.qml (.../Colors.qml) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/qml/globals/Colors.qml (.../Colors.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -41,6 +41,10 @@ readonly property color backgroundMainMenu : "#0F2841" //// ----- @LEAHIZED readonly property color backgroundDottedMenu : "#64809D" readonly property color backgroundSlider : "#195187" + readonly property color treatmentSectionHeader : "#1A2E42" + readonly property color treatmentSectionMain : "#1A3046" + readonly property color mainTreatmentLighterBlue : "#1F3D5A" + readonly property color mainTreatmentDarkerBlue : "#142C49" readonly property color sliderHighlightColor : "orange" readonly property color sliderProgressBorderActive : white @@ -52,6 +56,8 @@ readonly property color highlightProgressBar : "#3d8eef" readonly property color highlightMedProgressBar : "#1b2b3e" readonly property color textProgressBar : "#88a3c5" + readonly property color progressBarSaline : "#73D8DF" + readonly property color progressBarUltrafiltration : "#67ACFF" readonly property color textRangeMarker : white readonly property color rangeMarker : white @@ -70,6 +76,8 @@ readonly property color borderDisableButton : "#607A91" readonly property color boderSeparatorLine : "#476982" readonly property color borderDialog : transparent // different colors for different displays // "#D01A344D" // "#D00F0F0F" //"#F51A344D" + readonly property color buttonDisableColor : "#515050" + readonly property color pauseColor : "#9B864E" readonly property color touchTextAreaTitle : "#a0b6d0" @@ -80,8 +88,9 @@ readonly property color line : "#094266" readonly property color pressuresText : white - readonly property color pressuresArterialBar : "#c568ed" + readonly property color pressuresArterialBar : "#FF8282" readonly property color pressuresVenousBar : "#31bcdb" + readonly property color pressuresTmpBar : "#818181" readonly property color pressuresOutOfRangeBg : red readonly property color pressureBorderActive : "#cccccc" // this is the active border around the red Index: sources/gui/qml/globals/Fonts.qml =================================================================== diff -u -r86274f18e9356126c41d848bc78bfba318638aee -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/globals/Fonts.qml (.../Fonts.qml) (revision 86274f18e9356126c41d848bc78bfba318638aee) +++ sources/gui/qml/globals/Fonts.qml (.../Fonts.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -38,7 +38,7 @@ readonly property int fontPixelTextRectLabel : 46 readonly property int fontPixelTextRectExtra : 28 - readonly property int fontPixelVitals : 68 + readonly property int fontPixelVitals : 60 readonly property int fontPixelRangeMarker : 16 readonly property int fontPixelRangeRectText : 14 Index: sources/gui/qml/globals/Variables.qml =================================================================== diff -u -r9f70ae0e4a2a053486198c4a505575044a7ab3be -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/globals/Variables.qml (.../Variables.qml) (revision 9f70ae0e4a2a053486198c4a505575044a7ab3be) +++ sources/gui/qml/globals/Variables.qml (.../Variables.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -34,8 +34,11 @@ readonly property int headerHeight : 100 readonly property int headerButtonsMargin : 35 readonly property int confirmButtonWidth : 155 + readonly property int headerBarDateTimeWidth : 200 + readonly property int defaultMargin : 20 + readonly property int contentHeight : 50 - readonly property int mainMenuHeight : 100 //// ----- @LEAHIZED + readonly property int mainMenuHeight : 80 //// ----- @LEAHIZED readonly property int minVGap : 15 readonly property int minVGap2 : 30 @@ -52,6 +55,7 @@ readonly property int arrowHeight : 16 readonly property int alarmListIconDiameter : 45 + readonly property int iconButtonSize : 35 readonly property int borderWidth : 2 @@ -74,7 +78,7 @@ readonly property int rangeRectBorderWidth : 2 readonly property int rangeMarkerHeight : 60 readonly property int rangeMarkerHeightMidle : 40 - readonly property int rangeMarkerHeightShort : 20 + readonly property int rangeMarkerHeightShort : 30 readonly property int rangeMarkerWidth : 2 readonly property int progressbarHeight : 30 @@ -88,22 +92,24 @@ readonly property int progressbarRectHeight : 50 readonly property int progressbarRectWidth : 620 - readonly property int circleNormalDiameter : 350 + readonly property int circleNormalDiameter : 418 readonly property int progressCircleDiameterNormal : circleNormalDiameter readonly property int progressCircleDiameterSmall : 150 readonly property int opacityAnimationDuration : 1200 readonly property int sliderTextMargin : 20 readonly property int treatmentSpacing : 80 // 60 - readonly property int notificationHeight : 100 //// ----- @LEAHIZED + readonly property int notificationHeight : 80 //// ----- @LEAHIZED readonly property int notificationIconDiameter : 36 readonly property int checkListViewItemWidth : 350 readonly property int checkListViewItemHeight : 60 readonly property int pauseIconDiameter : 60 - readonly property int topBarMenuHeight : 100 //// ----- @LEAHIZED + readonly property int arrowIconDiameter : 35 + readonly property int headerIconDiameter : 40 + readonly property int topBarMenuHeight : 80 //// ----- @LEAHIZED readonly property int sliderCircleDiameter : 30 readonly property int pressuresProgressbarWidth : 725 @@ -124,10 +130,12 @@ readonly property int createTreatmentSliderWidth : 750 readonly property int createTreatmentSwitchYDisplacement : 15 + readonly property int treatmentFlowsComponentWidth : 150 + readonly property int ultrafiltrationProgressbarWidth : 880 readonly property int ultrafiltrationAdjustmtenOptionWidth : 520 readonly property int ultrafiltrationAdjustmtenOptionHeight : 275 - readonly property int ultraFiltrationProgressBarHeight : 30 + readonly property int ultraFiltrationProgressBarHeight : 25 readonly property int ultraFiltrationEditSliderHeight : sliderDefaultBodyHeight // to be consistent with other sliders readonly property int silenceIconMargin : 10 @@ -205,7 +213,7 @@ // Ultrafiltration readonly property real ultrafiltrationMinDef : 0.000 readonly property real ultrafiltrationMaxDef : 8.000 - readonly property int ultrafiltrationPrecision : 3 + readonly property int ultrafiltrationPrecision : 2 // Heparin readonly property int heparinPrecision : 1 @@ -254,11 +262,14 @@ // - Flows readonly property string unitTextFlowRate : qsTr("mL/min") readonly property string unitTextDispensingRate : qsTr("mL/hr") + readonly property string unitTextRate : qsTr("L/h") + readonly property string unitTextDialCond : qsTr("mS/cm") // - Vitals readonly property string unitTextBloodPressure : qsTr("mmHg") readonly property string unitTextHeartBeat : qsTr("BPM" ) // - Fluid readonly property string unitTextVolume : qsTr("(L)") + readonly property string unitVolume : qsTr("L") readonly property string unitTextFluid : qsTr("mL") readonly property string unitTextSaline : unitTextFluid readonly property string unitTextHeparin : unitTextFluid Index: sources/gui/qml/main.qml =================================================================== diff -u -r53491f18249d31cec365d69e37355ceb61131e56 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/main.qml (.../main.qml) (revision 53491f18249d31cec365d69e37355ceb61131e56) +++ sources/gui/qml/main.qml (.../main.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -304,14 +304,15 @@ anchors.top: parent.top width : Variables.applicationWidth height : Variables.notificationHeight - color : Colors.backgroundMainMenu + color : _mainStack.currentScreen.objectName === 'TreatmentStack' ? "transparent" : // FIXME: BEHROUZ - My workaround for showing the top main treatment menu with headerbar + Colors.backgroundMainMenu gradient: Gradient { //TODO:@LEAHI: make this a component. GradientStop { position: 0.2; color: Qt.lighter(Colors.backgroundMain, 1.2) } GradientStop { position: 0.8; color: Qt.darker (Colors.backgroundMain, 1.2) } } Item { - width : 200 + width : Variables.headerBarDateTimeWidth anchors { top : parent.top left : parent.left @@ -469,6 +470,7 @@ isSilenced : _alarmItem.isSilenced timeout : _alarmItem.timeout backgroundFading : vTDOpMode.fault + z : 995 } GuiView { id: _GuiView Index: sources/gui/qml/pages/MainHome.qml =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/MainHome.qml (.../MainHome.qml) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/qml/pages/MainHome.qml (.../MainHome.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -34,6 +34,12 @@ signal startTreatment() signal createTreatment() + Image { + anchors.fill: backgroundRect + source: "qrc:/images/iHomeBackground" + } + + // 2 - Header ImageLogoD { id: _headerLogo } @@ -51,16 +57,18 @@ anchors.centerIn: parent TouchRect { id : _createTreatmentRect anchors.horizontalCenter: parent.horizontalCenter - text.text: qsTr("Create Treatment") - onClicked: createTreatment() + text.text : qsTr("Create Treatment") + onClicked : createTreatment() + isDefault : true width : 435 //// ----- @LEAHIZED: Move to Variables.qml height : 92 //// ----- @LEAHIZED: Move to Variables.qml pixelSize : 30 //// ----- @LEAHIZED: Move to Variables.qml } TouchRect { id : _startTreatmentRect anchors.horizontalCenter: parent.horizontalCenter - text.text: qsTr("Start Treatment") - onClicked: startTreatment() + text.text : qsTr("Start Treatment") + onClicked : startTreatment() + isDefault : true width : 435 //// ----- @LEAHIZED: Move to Variables.qml height : 92 //// ----- @LEAHIZED: Move to Variables.qml pixelSize : 30 //// ----- @LEAHIZED: Move to Variables.qml Index: sources/gui/qml/pages/MainStack.qml =================================================================== diff -u -r43ae56f762e6f3e1416d39e3d16f9103fc597e41 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision 43ae56f762e6f3e1416d39e3d16f9103fc597e41) +++ sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -34,12 +34,13 @@ * is selected from the main menu. */ StackItem { id : _root - // DEBUG: this property can mostly be used for debugging to get pass the initial screen property var initialItem: _postModeScreen property var _startupScreen: ( _GuiView.manufactSetup || _GuiView.updateSetup ) ? _settingsStack : _mainHome + property var currentScreen: stackView.currentItem + stackView.initialItem : _root.initialItem // Standby / Disinfection @@ -108,7 +109,7 @@ } MainHome { id: _mainHome - onStartTreatment : { /*page( _treatmentStack )*/} + onStartTreatment : { page( _treatmentStack )} // TODO: Remove before merging into staging. Only needed for this branch onCreateTreatment : { vPreTreatmentAdjustmentInitTreatment.doInitiate( )} onVisibleChanged: { if (visible) { Index: sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentAdditional.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentAdditional.qml (.../EndTreatmentAdditional.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentAdditional.qml (.../EndTreatmentAdditional.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -71,11 +71,11 @@ // venousLowerBound : 0 // requested to hide the bounds // venousUpperBound : 0 // requested to hide the bounds - isTouchable : false - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow1Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow1 +// isTouchable : false +// x : Variables.screenGridLeftColumnX +// y : Variables.screenGridRow1Y +// width : Variables.screenGridAreaWidth +// height : Variables.screenGridAreaHeightRow1 } Line { x: 0; y: Variables.screenGridRow1LineY; length: Variables.screenGridLineLength } Index: sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentRinseback.qml =================================================================== diff -u -r43ae56f762e6f3e1416d39e3d16f9103fc597e41 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentRinseback.qml (.../EndTreatmentRinseback.qml) (revision 43ae56f762e6f3e1416d39e3d16f9103fc597e41) +++ sources/gui/qml/pages/endtreatment/rinseback/EndTreatmentRinseback.qml (.../EndTreatmentRinseback.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -64,11 +64,11 @@ // venousLowerBound : 0 // requested to hide the bounds // venousUpperBound : 0 // requested to hide the bounds - isTouchable : false - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow1Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow1 +// isTouchable : false +// x : Variables.screenGridLeftColumnX +// y : Variables.screenGridRow1Y +// width : Variables.screenGridAreaWidth +// height : Variables.screenGridAreaHeightRow1 } Line { x: 0; y: Variables.screenGridRow1LineY; length: Variables.screenGridLineLength } Index: sources/gui/qml/pages/treatment/TreatmentBloodPrime.qml =================================================================== diff -u -r9d27f14c2b528c0f199004614f10d55589e08614 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/TreatmentBloodPrime.qml (.../TreatmentBloodPrime.qml) (revision 9d27f14c2b528c0f199004614f10d55589e08614) +++ sources/gui/qml/pages/treatment/TreatmentBloodPrime.qml (.../TreatmentBloodPrime.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -73,11 +73,11 @@ // venousLowerBound : 0 // requested to hide the bounds // venousUpperBound : 0 // requested to hide the bounds - isTouchable : false - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow1Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow1 +// isTouchable : false +// x : Variables.screenGridLeftColumnX +// y : Variables.screenGridRow1Y +// width : Variables.screenGridAreaWidth +// height : Variables.screenGridAreaHeightRow1 } Line { x: 0; y: Variables.screenGridRow1LineY; length: Variables.screenGridLineLength } Index: sources/gui/qml/pages/treatment/TreatmentHome.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/TreatmentHome.qml (.../TreatmentHome.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/treatment/TreatmentHome.qml (.../TreatmentHome.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,6 +21,7 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/dialogs" import "qrc:/pages/treatment/sections" /*! @@ -38,88 +39,157 @@ signal sectionPressuresClicked() signal sectionTimeClicked() signal sectionUltrafiltrationClicked() + signal logVitalTime() - // ---------- COLUMN LEFT - TreatmentFlows { id: _flowsTouchArea - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow3Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow3 - onClicked: { - sectionFlowClicked() - } - } - Line { x: 0; y: Variables.screenGridRow1LineY; length: Variables.screenGridLineLength } - TreatmentVitals { id: _vitalsTouchArea - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow2Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow2 - onClicked: { - sectionVitalsClicked() - } - notification.text: qsTr("Interval:" ) - + " " + (vTreatmentVitals.interval ? (vTreatmentVitals.interval + qsTr("min")) : qsTr("OFF")) - + " , " - + qsTr("Last Read:") - + " " + vTreatmentVitals.lastRead - Text { id: _vitalCountdown - color : "gray" + readonly property int cellWidth : (_root.width / 7) - 10 // = screen width / # columns + readonly property int cellHeight: (_root.height / 2) - Variables.notificationHeight - (Variables.defaultMargin * 2) // = screen height / # rows - header bar - margin + + onLogVitalTime: _treatmentVitals.updateVitalTime() + + AutoHideInfo { id: _lockDialog + objectName : "lockDialog" + + width: 600 + height: 400 + backgroundColor: "#091E31" + fontSize: 35 + verticalOffset: Variables.defaultMargin * 5 + + Rectangle { id: _mainCircle + objectName: "lockDialogMainCircle" anchors { - top : parent.top - right : parent.right - rightMargin : 50 + top: parent.top + topMargin: Variables.defaultMargin * 2 + horizontalCenter: parent.horizontalCenter } - horizontalAlignment : Text.AlignHCenter - verticalAlignment : Text.AlignVCenter - height : 15 - width : 100 - text : vTreatmentVitals.interval ? ( vTreatmentVitals.countdown ) : "" - font.pixelSize: 16 + height : 200 + width : height + radius : height + color : "transparent" + border.color: _treatmentFlows.editEnabled ? "#6697D2" : + "#A47E38" + border.width: 2 + + Image { id : _iconImage + objectName: "lockDialogIcon" + + anchors.centerIn : parent + height : 80 + width : 80 + fillMode: Image.PreserveAspectFit + source : _treatmentFlows.editEnabled ? "qrc:/images/iUnlock" : + "qrc:/images/iLock" + } + + Rectangle { id: _innerCircle + objectName: "lockDialogInnerCircle" + + anchors.centerIn: parent + color : "transparent" + border.color : _treatmentFlows.editEnabled ? "#8FC1FE" : + "#CDAF78" + border.width : 1 + height : parent.height - 20 + width : height + radius : height + } } } - Line { x: 0; y: Variables.screenGridRow2LineY; length: Variables.screenGridLineLength } + Column { id: _column + objectName: "column" - TreatmentPressures { id: _pressuresTouchArea - x : Variables.screenGridLeftColumnX - y : Variables.screenGridRow1Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow1 - onClicked: { - sectionPressuresClicked() + spacing: Variables.defaultMargin + + anchors { + fill: parent + margins: Variables.defaultMargin + topMargin : Variables.notificationHeight + 30 } - } - // ---------- COLUMN RIGHT - TreatmentUltrafiltration { id: _ultrafiltrationTouchArea; - x : Variables.screenGridRightColumnX - y : Variables.screenGridRow1Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow1 - onClicked : { - sectionUltrafiltrationClicked() + Row { id: _topRow + objectName: "topRow" + + spacing: Variables.defaultMargin + height: cellHeight + + TreatmentTime { id: _treatmentTime + objectName: "treatmentTime" + width: (cellWidth * 2) - (Variables.defaultMargin * 2) + height: cellHeight + onClicked: sectionTimeClicked() + } + + TreatmentSaline { id: _treatmentSaline + objectName: "treatmentSaline" + + width: cellWidth + Variables.defaultMargin + height: cellHeight + } + + TreatmentVitals { id: _treatmentVitals + objectName: "treatmentVitals" + + width: cellWidth + Variables.defaultMargin + height: cellHeight + onEditClicked: sectionVitalsClicked() + + Text { id: _vitalCountdown + objectName: "vitalCountdown" + + color : "gray" + anchors { + top : parent.top + topMargin : Variables.defaultMargin * 4 + right : parent.right + } + horizontalAlignment : Text.AlignHCenter + verticalAlignment : Text.AlignVCenter + height : 15 + width : 100 + text : vTreatmentVitals.interval ? ( vTreatmentVitals.countdown ) : "" + font.pixelSize: 16 + } + } + + TreatmentPressures { id: _treatmentPressures + objectName: "treatmentPressures" + + width: (cellWidth * 3) - (Variables.defaultMargin * 2) // without auto layouts needs to fine tune + height: cellHeight + onEditClicked: sectionPressuresClicked() + } } - } - Line { x: Variables.screenGridRightLinesX; y: Variables.screenGridRow1LineY; length: Variables.screenGridLineLength } - TreatmentSaline { id: _salineTouchArea - x : Variables.screenGridRightColumnX - y : Variables.screenGridRow2Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow2 - } - Line { x: Variables.screenGridRightLinesX; y: Variables.screenGridRow2LineY; length: Variables.screenGridLineLength; } - TreatmentHeparin { id: _heparinTouchArea - x : Variables.screenGridRightColumnX - y : Variables.screenGridRow3Y - width : Variables.screenGridAreaWidth - height : Variables.screenGridAreaHeightRow3 - } - // ---------- Center - TreatmentTime { id: _treatmentTime - onClicked: { - sectionTimeClicked() + Row { id: _bottomRow + objectName: "bottomRow" + + spacing: Variables.defaultMargin + height: cellHeight + + TreatmentUltrafiltration { id: _treatmentUltrafiltration; + objectName: "treatmentUltrafiltration" + + width: cellWidth * 3 + height: cellHeight + onEditClicked : sectionUltrafiltrationClicked() + } + + TreatmentFlows { id: _treatmentFlows + objectName: "treatmentFlows" + + width: cellWidth * 4 + height: cellHeight + + onEditClicked : sectionFlowClicked() + onLockClicked : { + _lockDialog.showDialog ( + editEnabled ? qsTr("Treatment Parameters Unlocked") : + qsTr("Treatment Parameters Locked"), + 750 + ) + } + } } } Index: sources/gui/qml/pages/treatment/TreatmentSection.qml =================================================================== diff -u --- sources/gui/qml/pages/treatment/TreatmentSection.qml (revision 0) +++ sources/gui/qml/pages/treatment/TreatmentSection.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,64 @@ +/*! + * + * Copyright (c) 2019-2025 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file MonitorItem.qml + * \author (last) Nico Ramirez + * \date (last) 25-Jun-2025 + * \author (original) Nico Ramirez + * \date (original) 25-Jun-2025 + * + */ + +// Qt +import QtQuick 2.12 +import QtGraphicalEffects 1.12 +import "qrc:/globals" +import "qrc:/components" +import "qrc:/pages/treatment" + +Rectangle { id : _root + property Item contentItem : null + property alias header : _header + property alias contentArea : _contentArea + + signal editClicked + signal lockClicked + + color: Colors.treatmentSectionMain + radius: 15 + + TreatmentSectionHeader { id: _header + onEditClicked : _root.editClicked() + onLockClicked : _root.lockClicked() + } + + ContentArea { id : _contentArea + anchors { + top: _header.bottom + topMargin: Variables.defaultMargin * 2 + left: _root.left + leftMargin: Variables.defaultMargin + right: _root.right + rightMargin: Variables.defaultMargin + bottom: _root.bottom + } + + contentItem: _root.contentItem + } + + layer.enabled: true + layer.effect: DropShadow { + id: _dropShadow + horizontalOffset: 3 + verticalOffset: 5 + radius: 3.0 + samples: 7 + color: "#50000000" + source: _root + anchors.fill: _root + } +} Index: sources/gui/qml/pages/treatment/TreatmentSectionHeader.qml =================================================================== diff -u --- sources/gui/qml/pages/treatment/TreatmentSectionHeader.qml (revision 0) +++ sources/gui/qml/pages/treatment/TreatmentSectionHeader.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,80 @@ +/*! + * + * Copyright (c) 2019-2025 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file MonitorItem.qml + * \author (last) Nico Ramirez + * \date (last) 27-Jun-2025 + * \author (original) Nico Ramirez + * \date (original) 27-Jun-2025 + * + */ + +// Qt +import QtQuick 2.12 + +import "qrc:/globals" +import "qrc:/components" + +Rectangle { id: _root + property string title : "" + property bool editEnabled : true + property bool showLock : false + property bool showEdit : true + + signal editClicked + signal lockClicked + + color: Colors.treatmentSectionHeader + height : Variables.contentHeight + (Variables.defaultMargin * 2) + width : parent.width + radius: 15 + + anchors.top: parent.top + + Text { id: _title + anchors { + verticalCenter: parent.verticalCenter + left : parent.left + leftMargin : Variables.defaultMargin * 2 + } + + text: title + font { + pixelSize: 30 + weight: Font.Medium + } + color: Colors.textTextRectLabel + } + + IconButton { id : _lockButton + anchors { + verticalCenter : _title.verticalCenter + right : _editButton.left + rightMargin : Variables.defaultMargin * 2 + } + + visible : showLock + iconImageSource : editEnabled ? "qrc:/images/iUnlock" : "qrc:/images/iLock" + onPressed : { + editEnabled = !editEnabled + _root.lockClicked() + } + } + + IconButton { id : _editButton + anchors { + verticalCenter : _title.verticalCenter + right : parent.right + rightMargin : Variables.defaultMargin * 2 + } + + visible : showEdit + enabled : editEnabled + iconImageSource : editEnabled ? "qrc:/images/iEdit" : "qrc:/images/iEditDisabled" + onPressed : _root.editClicked() + } +} Index: sources/gui/qml/pages/treatment/TreatmentStack.qml =================================================================== diff -u -r43ae56f762e6f3e1416d39e3d16f9103fc597e41 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision 43ae56f762e6f3e1416d39e3d16f9103fc597e41) +++ sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -57,24 +57,19 @@ || _treatmentUltrafiltrationItem .visible // Components MainMenu { id: _treatmentMenu - y : Variables.mainMenuHeight * -1 position : MainMenu.Position.Top hidden : true - titles : [ qsTr("Treatment") , qsTr("Trending") , qsTr("Settings") ] - visibleItems : [ true , false , false ] - spacing : 20 - leftPdding : 20 - rightPdding : 50 - partitionWidth : 100 // Todo Important : max width should be the width for all bottons - hasRightText : true - hasLogo : true - /* ----- TEST: Under the test code, for the plotting of the items ----- + titles : [ qsTr("Treatment") , qsTr("Trends") , qsTr("Heparin")] + visibleItems : [ true , false , false ] + spacing : Variables.defaultMargin + leftPdding : Variables.headerBarDateTimeWidth + Variables.columnSpacing // 200 + 60 + partitionWidth : 80 * titles.length// Todo Important : max width should be the width for all bottons + titlePixelSize : 32 + onCurrentIndexChanged: { - console.debug(currentIndex) - if (currentIndex == 1) push(_treatmentTrending) - if (currentIndex == 0) pop() + if (currentIndex === 1) push(_treatmentTrends) + if (currentIndex === 0) pop() } - */ } TreatmentBloodPrime { id: _treatmentBloodPrime } @@ -101,7 +96,8 @@ } } - ScreenItem { id: _treatmentTrending } + ScreenItem { id: _treatmentTrends } // TODO: make me! + ScreenItem { id: _treatmentHeparin } // TODO: make me! //// Treatment Adjustment Dialogs TreatmentAdjustmentFlow { id: _treatmentAdjustmentFlow } @@ -144,6 +140,7 @@ _bphrEntry.diastolic , _bphrEntry.heartRate ) + _treatmentHome.logVitalTime() } onCloseClicked : { Index: sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml (.../TreatmentFlows.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml (.../TreatmentFlows.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,35 +21,78 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Flows section */ -TouchArea { id: _root - x : 0 - y : 0 - title : qsTr("FLOWS") - width : 370 +TreatmentSection { id: _root + property bool editEnabled : header.editEnabled - Row { - spacing: 40 - anchors.top: _root.top - anchors.topMargin: 40 - TextRect { id: _bloodFlow - title : qsTr("Blood") - label : Variables.notSetVariable(vTreatmentBloodFlow.bloodFlow_PresFlow) - extra : Variables.unitTextFlowRate - labelFont.weight: Font.ExtraLight - width : 180 - height: 200 + header.title : qsTr("Treatment Parameters") + header.showLock : true + + contentItem: Row { id : _row + objectName : "row" + + property int cellWidth : (contentItem.width / 4) - (Variables.defaultMargin) + 5 + property int cellHeight : contentItem.height - 10 + + spacing: Variables.defaultMargin + topPadding: -Variables.defaultMargin + + TreatmentFlowsComponent { id: _bloodFlow + objectName : "bloodFlowComponent" + title : qsTr("Blood Flow") + height : _row.cellHeight + width : _row.cellWidth + value : Variables.notSetVariable(vTreatmentBloodFlow.bloodFlow_PresFlow) + unitText : Variables.unitTextFlowRate + buttonsEnabled : editEnabled + + onIncrement : print(" increment blood flow") + onDecrement : print(" decrement blood flow") } - TextRect { id: _dialysateInletFlow - title: qsTr("Dialysate") - label: Variables.notSetVariable(vTreatmentDialysateFlow.dialysateFlow_PresFlow) - extra: Variables.unitTextFlowRate - labelFont.weight: Font.ExtraLight - width: 180 - height: 200 + + TreatmentFlowsComponent { id: _dialysateFlow + objectName : "dialysateFlowComponent" + title : qsTr("Dialysate Flow") + height : _row.cellHeight + width : _row.cellWidth + value : Variables.notSetVariable(vTreatmentBloodFlow.dialysateFlow_PresFlow) + unitText : Variables.unitTextFlowRate + buttonsEnabled : editEnabled // TODO + extraText : "OFF" // TODO + + onIncrement : print(" increment dial flow") + onDecrement : print(" decrement dial flow") } + + TreatmentFlowsComponent { id: _dialysateTemp + objectName : "dialysateTempComponent" + title : qsTr("Dialysate Temp.") + height : _row.cellHeight + width : _row.cellWidth + value : Variables.notSetVariable(vTreatmentBloodFlow.bloodFlow_PresFlow) + unitText : Variables.unitTextTemperature + buttonsEnabled : editEnabled // TODO + + onIncrement : print(" increment dial temp") + onDecrement : print(" decrement dial temp") + } + + TreatmentFlowsComponent { id: _dialysateCond + objectName : "dialysateCondComponent" + title : qsTr("Dialysate Cond.") + height : _row.cellHeight + width : _row.cellWidth + value : Variables.notSetVariable(vTreatmentBloodFlow.bloodFlow_PresFlow) + unitText : Variables.unitTextDialCond + showButtons : false + dropShadowEnabled : false + + onIncrement : print(" increment dial cond") + onDecrement : print(" decrement dial cond") + } } } Index: sources/gui/qml/pages/treatment/sections/TreatmentFlowsComponent.qml =================================================================== diff -u --- sources/gui/qml/pages/treatment/sections/TreatmentFlowsComponent.qml (revision 0) +++ sources/gui/qml/pages/treatment/sections/TreatmentFlowsComponent.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,132 @@ + +// Qt +import QtQuick 2.12 +import QtGraphicalEffects 1.12 + +// Project + +// Qml imports +import "qrc:/globals" +import "qrc:/components" +import "qrc:/pages/treatment" + +Rectangle { id: _root + + property string title : "" + property string value : "" + property string unitText : "" + property string extraText : "" + + property bool showButtons : true + property bool buttonsEnabled : true + property bool dropShadowEnabled : true + + color : Colors.mainTreatmentLighterBlue + radius : 5 + + signal increment() + signal decrement() + + Text { id: _title + objectName: "title" + + anchors { + horizontalCenter : _root.horizontalCenter + horizontalCenterOffset : Variables.defaultMargin * 1.5 + top : parent.top + topMargin : Variables.defaultMargin + } + + font { + pixelSize : 28 + weight : Font.Normal + } + + width : _root.width + height : Variables.contentHeight + text : _root.title + color : Colors.pressuresText + horizontalAlignment : Text.AlignLeft + } + + Row { id: _row + objectName: "row" + + anchors { + top : _title.bottom + horizontalCenter : _root.horizontalCenter + } + + LabelValue { id: _value + objectName: "value" + anchors { + top : parent.top + topMargin : Variables.defaultMargin + } + height : Variables.contentHeight + width : Variables.treatmentFlowsComponentWidth + topText : value + topTextFont.pixelSize : 60 + topTextFont.weight : Font.Medium + bottomText : _root.unitText + bottomTextFont.pixelSize: 22 + bottomTextTopMargin : Variables.defaultMargin + } + + Column { id: _column + objectName: "column" + + visible: showButtons + spacing: Variables.defaultMargin * 2.5 + + ArrowButton {id : _upArrowIcon + objectName : "upArrowIcon" + upArrow : true + enabled : buttonsEnabled + + onClicked : _root.increment() + } + + ArrowButton {id : _downArrowIcon + objectName : "downArrowIcon" + downArrow : true + enabled : buttonsEnabled + + onClicked : _root.decrement() + } + } + } + + Text { id: _extraText + objectName: "extraText" + + anchors { + left : _root.left + leftMargin : Variables.defaultMargin * 3 + bottom : _root.bottom + bottomMargin : 10 + } + + font { + pixelSize : 28 + weight : Font.Bold + } + + text : _root.extraText + width : 40 + height : Variables.contentHeight + color : "orange" + horizontalAlignment : Text.AlignHCenter + } + + layer.enabled : _root.dropShadowEnabled + layer.effect : DropShadow { id: _dropShadow + horizontalOffset: 3 + verticalOffset : 3 + radius : 3.0 + samples : 7 + color : "#50000000" + source : _root + anchors.fill : _root + } +} Index: sources/gui/qml/pages/treatment/sections/TreatmentPressureComponent.qml =================================================================== diff -u --- sources/gui/qml/pages/treatment/sections/TreatmentPressureComponent.qml (revision 0) +++ sources/gui/qml/pages/treatment/sections/TreatmentPressureComponent.qml (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -0,0 +1,69 @@ +// Qt +import QtQuick 2.12 + +// Project + +// Qml imports +import "qrc:/globals" +import "qrc:/components" + +Row { id: _row + property alias minimum : _rangeBar.minimum + property alias maximum : _rangeBar.maximum + property alias lowerBound : _rangeBar.lowerBound + property alias upperBound : _rangeBar.upperBound + property alias pressure : _rangeBar.value + property alias title : _title.text + property color barColor : Colors.backgroundRangeRect + + property int barHeight : 15 + property int titleSize : 35 + property int valueSize : 70 + + property int prevMaximum : _rangeBar.maximum + property int prevMinimum : _rangeBar.minimum + + property bool valueOutRangeNotify : true + + spacing : Variables.defaultMargin + + Text { id: _title + width : 200 + height : 50 + color : Colors.pressuresText + font { + pixelSize : _row.titleSize + weight : Font.Medium + } + verticalAlignment : Text.AlignVCenter + } + + Text { id: _value + width : 50 + height : 50 + text : pressure > 0 ? "+" + pressure : + pressure + color : Colors.pressuresText + font { + pixelSize : _row.valueSize + weight : Font.Bold + } + verticalAlignment : Text.AlignVCenter + horizontalAlignment : Text.AlignRight + } + + RangeBar { id: _rangeBar + height : barHeight + width : _row.width * 0.60 + anchors.verticalCenter : parent.verticalCenter + anchors.verticalCenterOffset: Variables.defaultMargin + rangebar.color : barColor + markerOutRangeNotify: _root.valueOutRangeNotify + color : valueOutRangeNotify ? Colors.backgroundRangeRect : + rangebar.color + markerBoundColor : Colors.rangeMarker + + Behavior on minimum { NumberAnimation { duration: 1000 } } + Behavior on maximum { NumberAnimation { duration: 1000 } } + } +} Index: sources/gui/qml/pages/treatment/sections/TreatmentPressures.qml =================================================================== diff -u -r86274f18e9356126c41d848bc78bfba318638aee -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentPressures.qml (.../TreatmentPressures.qml) (revision 86274f18e9356126c41d848bc78bfba318638aee) +++ sources/gui/qml/pages/treatment/sections/TreatmentPressures.qml (.../TreatmentPressures.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,86 +21,103 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Pressure section */ -TouchArea { id: _root - +TreatmentSection { id: _root property int arterialMinimum : vTreatmentRanges.arterialPressureMonitorMin property int arterialMaximum : vTreatmentRanges.arterialPressureMonitorMax property int venousMinimum : vTreatmentRanges.venousPressureMonitorMin property int venousMaximum : vTreatmentRanges.venousPressureMonitorMax + property int tmpMinimum : 0//vTreatmentRanges.tmpPressureMonitorMin + property int tmpMaximum : 100//vTreatmentRanges.tmpPressureMonitorMax property int arterialLowerBound : vTreatmentPressureOcclusion.arterialMin property int arterialUpperBound : vTreatmentPressureOcclusion.arterialMax property int venousLowerBound : vTreatmentPressureOcclusion.venousMin property int venousUpperBound : vTreatmentPressureOcclusion.venousMax + property int tmpLowerBound : 20//vTreatmentPressureOcclusion.tmpPressureLimitLowerBound + property int tmpUpperBound : 80//vTreatmentPressureOcclusion.tmpPressureLimitUpperBound property int arterialPressure : vTreatmentPressureOcclusion.arterialPressure property int venousPressure : vTreatmentPressureOcclusion.venousPressure + property int tmpPressure : 65//vTreatmentPressureOcclusion.tmpPressure - property bool valueOutRangeNotify : true - clip: false - x : 0 - y : 0 - width : 200 - height : 200 - isTouchable: true - title: qsTr("PRESSURE") + " " + qsTr("(mmHg)") + property bool valueOutRangeNotify : true - RangeBar { id: _arterialRangeBar - x: 0 - y: 80 - width : 175 - height : 15 - rangebar.color: Colors.pressuresArterialBar - markerOutRangeNotify: _root.valueOutRangeNotify + header.title : qsTr("Pressures") + " (" + qsTr("mmHg") + ")" - minimum : _root.arterialMinimum - lowerBound : _root.arterialLowerBound - upperBound : _root.arterialUpperBound - maximum : _root.arterialMaximum - value : _root.arterialPressure - color : valueOutRangeNotify ? Colors.backgroundRangeRect : rangebar.color + contentArea.anchors.topMargin : Variables.defaultMargin - Text { id: _arterialText - anchors { - left: parent.left - top: parent.bottom - topMargin: 35 - } - text: qsTr("Arterial") - font.pixelSize: Fonts.fontPixelPresseuresText - color: Colors.pressuresText + contentItem: Column { id: _column + property int cellHeight : Variables.contentHeight / 3 + property int cellWidth : contentItem.width * 0.75 + + spacing : Variables.defaultMargin * 4 + topPadding : Variables.defaultMargin + leftPadding : Variables.defaultMargin + rightPadding : Variables.defaultMargin + + + TreatmentPressureComponent { id: _arterialRangeBar + title : qsTr("Arterial:") + height : _column.cellHeight + width : _column.cellWidth + barColor : Colors.pressuresArterialBar + + minimum : _root.arterialMinimum + lowerBound : _root.arterialLowerBound + upperBound : _root.arterialUpperBound + maximum : _root.arterialMaximum + pressure : _root.arterialPressure + + valueOutRangeNotify : _root.valueOutRangeNotify } - onClicked: _root.clicked() - } - RangeBar { id: _venousRangeBar - x: 210 - y: 80 - width : 175 - height : 15 - rangebar.color: Colors.pressuresVenousBar - markerOutRangeNotify: _root.valueOutRangeNotify + TreatmentPressureComponent { id: _venousRangeBar + title : qsTr("Venous:") + height : _column.cellHeight + width : _column.cellWidth + barColor : Colors.pressuresVenousBar - minimum : _root.venousMinimum - lowerBound : _root.venousLowerBound - upperBound : _root.venousUpperBound - maximum : _root.venousMaximum - value : _root.venousPressure - color : valueOutRangeNotify ? Colors.backgroundRangeRect : rangebar.color + minimum : _root.venousMinimum + lowerBound : _root.venousLowerBound + upperBound : _root.venousUpperBound + maximum : _root.venousMaximum + pressure : _root.venousPressure - Text { id: _venousText - anchors { - left: parent.left - top: parent.bottom - topMargin: 35 - } - text: qsTr("Venous") - font.pixelSize: Fonts.fontPixelPresseuresText - color: Colors.pressuresText + valueOutRangeNotify : _root.valueOutRangeNotify } - onClicked: _root.clicked() + + TreatmentPressureComponent { id: _tmpRangeBar + title : qsTr("TMP:") + height : _column.cellHeight + width : _column.cellWidth + barColor : Colors.pressuresTmpBar + + minimum : _root.tmpMinimum + lowerBound : _root.tmpLowerBound + upperBound : _root.tmpUpperBound + maximum : _root.tmpMaximum + pressure : _root.tmpPressure + + valueOutRangeNotify : _root.valueOutRangeNotify + } } + + ArrowButton {id : _expandingArrows + objectName : "expandingArrows" + + anchors { + top : header.bottom + topMargin : Variables.defaultMargin + right : parent.right + rightMargin : Variables.defaultMargin + } + + expandingArrow : true + + onClicked : print ("Expanding Arrows clicked") + } } Index: sources/gui/qml/pages/treatment/sections/TreatmentSaline.qml =================================================================== diff -u -r43ae56f762e6f3e1416d39e3d16f9103fc597e41 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentSaline.qml (.../TreatmentSaline.qml) (revision 43ae56f762e6f3e1416d39e3d16f9103fc597e41) +++ sources/gui/qml/pages/treatment/sections/TreatmentSaline.qml (.../TreatmentSaline.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -22,55 +22,123 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Saline Management section */ -TreatmentFluid { id: _root +TreatmentSection { id: _root readonly property bool isStarted : vTDTreatmentStates.sbRunning readonly property bool isIdle : vTDTreatmentStates.sbIdle // other that max saline bolus delivered, // if saline started but still is waiting for pump the button is disabled so user won't tap multiple times. readonly property bool isDisabled : vTDTreatmentStates.sbMaxReached readonly property bool isWaitPump : vTDTreatmentStates.sbWaitPump + readonly property string unit : Variables.unitTextFluid + property int valueDecimal : Variables.salinePrecision + property int valueTarget : vTreatmentSaline.target || vTreatmentAdjustmentSaline.target + property int valueCumulative: vTreatmentSaline.cumulative + property int valueDelivered : vTreatmentSaline.delivered + property string buttonText : ( isDisabled || isWaitPump ) ? _private.textStart : + isStarted ? _private.textStop : + _private.textStart + + header.title : qsTr("Saline" ) + header.showEdit : false + QtObject { id: _private - readonly property string textStart : qsTr("START BOLUS") - readonly property string textStop : qsTr("STOP BOLUS" ) - readonly property string textVolumeTarget : "(" + valueTarget + unit + ")" + readonly property string textStart : qsTr("Start Bolus") + "" + textVolumeTarget + "<\b>" + readonly property string textStop : qsTr("Stop Bolus" ) + "" + textVolumeTarget + "<\b>" + readonly property string textVolumeTarget : " (" + valueTarget + unit + ")" readonly property string mesgDisabled : qsTr("Maximum cumulative saline bolus volume delivered") readonly property string mesgWaitForPump : "" // qsTr("Saline Bolus is starting") // Not sure if we shouls show any message at this point readonly property string mesgRejectReason : vTreatmentAdjustmentSaline.adjustment_ReasonText } - hasArrow : false - isTouchable : false - buttonEnabled : ! ( _root.isDisabled || _root.isWaitPump ) - buttonText : ( _root.isDisabled || _root.isWaitPump ) ? _private.textStart : - _root.isStarted ? _private.textStop : - _private.textStart + VTreatmentSaline { id: vTreatmentSaline } - fluidProgressBarColor: _root.isStarted ? Colors.sliderHighlightColor : Colors.highlightProgressBar + contentItem: Column { id :_content + spacing : Variables.defaultMargin * 3 - title : qsTr("SALINE BOLUS") - unit : Variables.unitTextSaline + Text { id: _descriptionText + text : qsTr("Total Saline Delivered") + height : Variables.contentHeight + font.pixelSize : Fonts.fontPixelFluidText + color : Colors.fluidText + horizontalAlignment: Text.AlignHCenter + } - valueDecimal : Variables.salinePrecision - valueTarget : vTreatmentSaline.target || vTreatmentAdjustmentSaline.target - valueCumulative : vTreatmentSaline.cumulative - valueDelivered : vTreatmentSaline.delivered + Item { id: _progressBarArea + height : 30 + width : parent.width - Variables.defaultMargin - VTreatmentSaline { id: vTreatmentSaline } + ProgressBar { id: _fluidProgressBar + width : _progressBarArea.width + 10 + height : Variables.progressbarFluidHeight * 3 + minText.visible : false + maxText.visible : false + marker.visible : false + color : Colors.progressBarSaline + maximum : valueCumulative + value : valueDelivered + decimal : _root.valueDecimal + radius : 9 + progressRadius : radius + } - onClicked: { - if ( isIdle ) vTreatmentAdjustmentSaline.doStart() // IDLE - if ( isStarted ) vTreatmentAdjustmentSaline.doStop () // IN_PROGRESS - } + Label { id: _valueDelivered + property real value: valueDelivered - notification { - visible : true - text : isDisabled ? _private.mesgDisabled : - isWaitPump ? _private.mesgWaitForPump : - _private.mesgRejectReason + anchors { + verticalCenter : _valueDeliveredUnit.verticalCenter + right : _valueDeliveredUnit.left + rightMargin : 5 + } + font.pixelSize : 18 + font.weight : Font.DemiBold + text : value + width : contentWidth + } + + Label { id: _valueDeliveredUnit + property real value: 0 + anchors { + bottom : _fluidProgressBar.top + bottomMargin: Variables.defaultMargin + right : _fluidProgressBar.right + } + font.pixelSize : 18 + text : _root.unit + width : contentWidth + } + } + + TouchRect { id: _startFluidButton + width : _fluidProgressBar.width + height : Variables.contentHeight + 10 + radius : 9 + text.textFormat : Text.RichText + text.text : buttonText + isDefault : true + + text.font { + weight : Font.DemiBold + pixelSize : 20 + } + onPressed : { + if ( isIdle ) vTreatmentAdjustmentSaline.doStart() // IDLE + if ( isStarted ) vTreatmentAdjustmentSaline.doStop () // IN_PROGRESS + } + } } + + // TODO: +// notification { +// visible : true +// text : isDisabled ? _private.mesgDisabled : +// isWaitPump ? _private.mesgWaitForPump : +// _private.mesgRejectReason +// } +// } } Index: sources/gui/qml/pages/treatment/sections/TreatmentTime.qml =================================================================== diff -u -r43ae56f762e6f3e1416d39e3d16f9103fc597e41 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentTime.qml (.../TreatmentTime.qml) (revision 43ae56f762e6f3e1416d39e3d16f9103fc597e41) +++ sources/gui/qml/pages/treatment/sections/TreatmentTime.qml (.../TreatmentTime.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,12 +21,12 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Treatment Time Remaining section */ Rectangle { id: _root - objectName: "TreatmentTime" property int minimum : 0 property int maximum : vTreatmentTime.time_Total property int progressValue : vTreatmentTime.time_Elapsed @@ -35,79 +35,95 @@ property bool isRunning : vTDTreatmentStates.txDialysis && !( vTDTreatmentStates.sbWaitPump || vTDTreatmentStates.sbRunning ) + color : "transparent" + width : _circle.width + height : _circle.height + signal clicked() - anchors.centerIn: parent - width : _circle.width - height: _circle.height - color: "transparent" - ProgressCircle { id: _circle - minimum: _root.minimum - maximum: _root.maximum + objectName : "circle" + minimum : _root.minimum + maximum : _root.maximum - anchors.centerIn : parent - value: _root.progressValue + anchors.fill : parent + value : _root.progressValue + thickness : 35 + circleShadowColor : Colors.mainTreatmentLighterBlue + circleFillColor : Colors.mainTreatmentDarkerBlue + runAnimation : _root.isRunning } TimeText { id: _timeText - anchors.centerIn : parent - seconds : _root.timeTextValue - secondsVisible: _root.isRunning + objectName: "timeText" + + anchors { + centerIn : parent + horizontalCenterOffset : -Variables.defaultMargin + } + seconds : _root.timeTextValue + textWeight : Font.Normal + secsPixelSize : 35 + secondsLeftMargin : 10 } - Rectangle { id: _timeTitleRect - color: "Transparent" - anchors.horizontalCenter: _timeText.horizontalCenter - anchors.bottom: _timeText.top + Item { id: _timeTitleRect + objectName: "timeTextRect" - width : _timeTitle.width + _arrowImage.width + _arrowImage.anchors.leftMargin - height : _timeTitle.height + anchors { + horizontalCenter: _root.horizontalCenter + bottom : _timeText.top + bottomMargin : Variables.defaultMargin * 2 + } + width : _root.width + Text { id: _timeTitle - text: qsTr("Time Remaining") + objectName : "timeTitle" + text : qsTr("Time Remaining") - font.pixelSize: 26 - color: Colors.textMain + anchors { + horizontalCenter: parent.horizontalCenter + } - anchors.left: parent.left - Image { id: _arrowImage - visible: _root.isRunning - anchors.left : parent.right - anchors.bottom: parent.baseline - anchors.leftMargin: 10 - width : Variables.arrowWidth - height: Variables.arrowHeight - source: "qrc:/images/iArrowRight" + font.pixelSize : 26 + font.weight : Font.Normal + color : Colors.textMain + } + + IconButton { id : _editTimeIcon + objectName: "editTimeIcon" + anchors { + bottom: _timeTitle.top + bottomMargin: Variables.defaultMargin + horizontalCenter: parent.horizontalCenter } + iconSize : 30 + iconImageSource : "qrc:/images/iEdit" + onClicked : _root.clicked() } } NotificationBarSmall { id: _notification - visible : ! _root.isRunning - height : 25 - imageAutoSize: false - imageAnimated: true - color: "transparent" + objectName: "notification" + anchors { - leftMargin : 80 - bottomMargin: 80 + left : _timeTitleRect.left + leftMargin : Variables.defaultMargin + top : _timeTitleRect.bottom + topMargin : Variables.defaultMargin * 2 } - imageSource : "qrc:/images/iPauseGray" - text : qsTr("Treatment Paused") - textColor : "gray" - textfontSize: 16 - rowAnchors.centerIn: null + visible : ! _root.isRunning + height : 25 + color : "transparent" + imageDiameter : 25 + imageTopMargin : 4 + imageSource : "qrc:/images/iPauseOrange" + text : qsTr("Treatment Paused") + textColor : "#FFB836" + textfontSize : 26 + textfontWeight : Font.Medium } - - MouseArea { id: _mouseArea - anchors.fill: parent - onClicked: { - if (_root.isRunning) { - _root.clicked() - } - } - } } Index: sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml =================================================================== diff -u -r86274f18e9356126c41d848bc78bfba318638aee -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 86274f18e9356126c41d848bc78bfba318638aee) +++ sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,62 +21,162 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Ultrafiltration section */ -TouchArea { id: _root + +TreatmentSection { id: _root readonly property real minimum : vTreatmentUltrafiltration.minimum readonly property real maximum : vTreatmentUltrafiltration.maximum readonly property real value : vTreatmentUltrafiltration.volumeRemoved + readonly property int topTextFontSize : 25 + readonly property int bottomTextFontSize : 60 - clip : false + property string ufButtonText : qsTr("Isolated UF in Progress") // TODO + property color ufButtonColor : "#C3F9FF" // TODO - x : 0 - y : 0 - width : 200 - height : 200 + header.title: qsTr("Ultrafiltration") + " (" + qsTr("UF") + ")" + contentArea.anchors.topMargin: Variables.defaultMargin - isTouchable : ! isSBInProgress - title : qsTr("ULTRAFILTRATION VOLUME") + " " + Variables.unitTextUltrafiltrationVolume - notification { - visible : true - text : ufInfoText - textColor : ufInfoTextColor - } + contentItem: Row { id: _row + spacing : Variables.defaultMargin * 6 + rightPadding: Variables.defaultMargin + leftPadding : Variables.defaultMargin - Text { id: _ufCurrentRateText - anchors { - right: parent.right - rightMargin: Variables.arrowWidth * 2 // Aligning text to be beyond the arrow - top: parent.top + Column { id: _leftColumn + spacing : Variables.defaultMargin * 7 + width : contentItem.width * 0.2 + height : _root.height + + LabelValue { id: _ufVolume + height : 40 + width : contentItem.width * 0.2 + + topText : qsTr("UF Volume") + topTextFont.pixelSize : topTextFontSize + topTextFont.weight : Font.Medium + + bottomText : "1.00"// TODO + bottomTextFont.pixelSize: bottomTextFontSize + bottomTextFont.weight : Font.Normal + showCenterText : true + leftAlign : true + centerText : "Isolated UF" // TODO + unitText : Variables.unitVolume + } + + LabelValue { id: _ufRate + height : 40 + width : contentItem.width * 0.2 + + topText : qsTr("UF Rate") + topTextFont.pixelSize : topTextFontSize + topTextFont.weight : Font.Medium + + // bottomText : vTreatmentUltrafiltration.ultrafiltration_UfCurrentRate.toFixed(Variables.ultrafiltrationPrecision) + bottomTextFont.pixelSize: bottomTextFontSize + bottomTextFont.weight : Font.Normal + leftAlign : true + unitText : Variables.unitTextRate + bottomTextTopMargin : Variables.defaultMargin + } } - horizontalAlignment : Text.AlignRight - verticalAlignment : Text.AlignVCenter - height : Variables.arrowHeight - text: qsTr("(%1 %2)").arg(vTreatmentUltrafiltration.targetRate.toFixed(0) ) - .arg(Variables.unitTextUltrafiltrationRate ) - font.pixelSize: Fonts.fontPixelUltrafiltrationRateUnit - color: Colors.touchTextAreaTitle + Column { id: _rightColumn + topPadding : Variables.defaultMargin * 9.5 + width : contentItem.width + height : _root.height + + + ProgressBar { id: _progressbar + enabled : ! isSBInProgress + width : contentItem.width * 0.6 + height : 20 + + decimal : Variables.ultrafiltrationPrecision + minimum : _root.minimum + maximum : _root.maximum + value : _root.value + unitText: Variables.unitVolume + color : Colors.progressBarUltrafiltration + radius : height + progressRadius : radius + showMarker : false + + minText.color: "#818181" + minText.font { + pixelSize : 18 + weight : Font.Normal + } + + maxText.color: "#818181" + maxText.font { + pixelSize : 18 + weight : Font.Normal + } + + Text { id: _valueText + anchors { + bottom : parent.top + bottomMargin : Variables.defaultMargin + right : parent.right + } + text : _root.value + Variables.unitVolume + color : Colors.white + font.pixelSize : 40 + font.weight : Font.DemiBold + + } + + Text { id: _volumeRemovedText + anchors { + top : parent.bottom + topMargin : Variables.defaultMargin * 2.5 + right : parent.right + } + text : qsTr("Volume Removed") + color : Colors.textTextRectLabel + font.pixelSize : 20 + font.weight : Font.Medium + } + + Behavior on marker.text.anchors.rightMargin { NumberAnimation {duration: 200} } + } + } } - ProgressBarEx { id: _progressbarex - enabled : _root.isTouchable - y : 75 - width : parent.width - height : Variables.ultraFiltrationProgressBarHeight + Rectangle { id: _isolatedUFRect + anchors { + top : header.bottom + topMargin : Variables.defaultMargin + right : parent.right + rightMargin : Variables.defaultMargin * 2 + } - onClicked : _root.clicked() - onProgressClicked : _root.clicked() - onExtraClicked : _root.clicked() + width : 250 + height : 60 + radius : height + color : Colors.backgroundMain - decimal : Variables.ultrafiltrationPrecision - minimum : _root.minimum - maximum : _root.maximum - value : _root.value - valueEx : 0 + Text { id: _isolatedUFText + anchors.centerIn: parent + text : _root.ufButtonText + color : _root.ufButtonColor - marker.color : isUFPaused ? "dimgray" : Colors.rangeMarker + font { + weight : Font.DemiBold + pixelSize : 20 + } + } } + + // TODO +// notification { +// visible : true +// text : ufInfoText +// textColor : ufInfoTextColor +// } + } Index: sources/gui/qml/pages/treatment/sections/TreatmentVitals.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8 --- sources/gui/qml/pages/treatment/sections/TreatmentVitals.qml (.../TreatmentVitals.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/treatment/sections/TreatmentVitals.qml (.../TreatmentVitals.qml) (revision 77ba0083b790f7c1c851c60ecaeaa4f2e7eff7a8) @@ -21,35 +21,63 @@ // Qml imports import "qrc:/globals" import "qrc:/components" +import "qrc:/pages/treatment" /*! * \brief Treatment Screen Vitals section */ -TouchArea { id: _root - readonly property string bloodSDSeparator: " / " +TreatmentSection { id: _root + readonly property string bloodSDSeparator: "/" - x: 0 - y: 0 - title: qsTr("VITALS") + header.title : qsTr("Vitals" ) + contentArea.anchors.topMargin : 0 - Column { - anchors.top: _root.top - anchors.topMargin: 60 - TextRect { id: _bloodPressure - labelHeight: 60 - labelFont.pixelSize: Fonts.fontPixelVitals - labelFont.weight: Font.ExtraLight - labelAutoSize: true - label: Variables.notSetVariable(vTreatmentVitals.systolic, 2) + bloodSDSeparator + Variables.notSetVariable(vTreatmentVitals.diastolic, 2) - extra: Variables.unitTextBloodPressure + contentItem: Column { id: _content + spacing : Variables.defaultMargin * 4.5 + + LabelValue { id: _bloodPressure + height : 40 + width : contentItem.width + topTextFont.pixelSize : Fonts.fontPixelVitals + topTextFont.weight : Font.Bold + topText : Variables.notSetVariable(vTreatmentVitals.systolic, 2) + bloodSDSeparator + Variables.notSetVariable(vTreatmentVitals.diastolic, 2) + bottomText : Variables.unitTextBloodPressure + bottomTextFont.pixelSize: 20 + bottomTextFont.weight : Font.Light + bottomTextTopMargin : 10 } - TextRect { id: _heartBeat - labelHeight: 40 - labelFont.pixelSize: Fonts.fontPixelVitals - labelFont.weight: Font.ExtraLight - labelAutoSize: true - label: Variables.notSetVariable(vTreatmentVitals.heartRate, 2) - extra: Variables.unitTextHeartBeat + + LabelValue { id: _heartBeat + height : 45 + width : contentItem.width + topTextFont.pixelSize : Fonts.fontPixelVitals + topTextFont.weight : Font.Bold + topText : Variables.notSetVariable(vTreatmentVitals.heartRate, 2) + bottomText : Variables.unitTextHeartBeat + bottomTextFont.pixelSize: 20 + bottomTextFont.weight : Font.Light + bottomTextTopMargin : 10 } + + Text { id: _lastRecorded + height : 30 + width : contentItem.width + text : qsTr("Last Recorded: " ) + font.pixelSize : 18 + font.weight : Font.Normal + verticalAlignment : Text.AlignBottom + color : Colors.textMain + } } + + function updateVitalTime() { + _lastRecorded.text = qsTr("Last Recorded: " ) + vDateTime.time + } + + // TODO +// notification.text: qsTr("Interval:" ) +// + " " + (vTreatmentVitals.interval ? (vTreatmentVitals.interval + qsTr("min")) : qsTr("OFF")) +// + " , " +// + qsTr("Last Read:") +// + " " + vTreatmentVitals.lastRead }