2021-06-25 21:37:59 +08:00

835 lines
29 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1439.5833px" preserveAspectRatio="none" style="width:463px;height:1439px;background:#00000000;" version="1.1" viewBox="0 0 463 1439" width="463.5417px" zoomAndPan="magnify"><defs><filter height="300%" id="fowqij6dlz3h4" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0833333333333335"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.166666666666667" dy="4.166666666666667" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><rect height="56.5694" rx="4.1667" ry="4.1667" style="stroke:#CCCCCC;stroke-width:1.0416666666666667;fill:none;" width="451.0417" x="2.0833" y="2.0833"/><text fill="#2196F3" font-family="Verdana" font-size="20.8333" lengthAdjust="spacing" textLength="413.5417" x="20.8333" y="38.6536">State Diagram - materia-outline theme</text><rect fill="#4CAF50" filter="url(#fowqij6dlz3h4)" height="8.3333" style="stroke:none;stroke-width:1.0416666666666667;" width="83.3333" x="189.5833" y="152.4028"/><ellipse cx="231.25" cy="78.4444" fill="#9C27B0" filter="url(#fowqij6dlz3h4)" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="State2"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="85.4167" x="128.125" y="224.2778"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="128.125" x2="213.5417" y1="270.7194" y2="270.7194"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="148.9583" y="252.4699">State2</text></g><g id="State3"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="85.4167" x="256.25" y="224.2778"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="256.25" x2="341.6667" y1="270.7194" y2="270.7194"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="277.0833" y="252.4699">State3</text></g><rect fill="#4CAF50" filter="url(#fowqij6dlz3h4)" height="8.3333" style="stroke:none;stroke-width:1.0416666666666667;" width="83.3333" x="190.625" y="402.4028"/><g id="State4"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="85.4167" x="189.5833" y="474.2778"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="189.5833" x2="275" y1="520.7194" y2="520.7194"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="210.4167" y="502.4699">State4</text></g><rect filter="url(#fowqij6dlz3h4)" height="811.8083" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="348.9583" x="57.8125" y="615.9444"/><rect height="759.1166" rx="13.0208" ry="13.0208" style="stroke:#00000000;stroke-width:1.0416666666666667;fill:none;" width="342.7083" x="60.9375" y="665.5111"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="57.8125" x2="406.7708" y1="662.3861" y2="662.3861"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="38.5417" x="213.0208" y="644.1366">Active</text><ellipse cx="79.6875" cy="713.9486" fill="#9C27B0" filter="url(#fowqij6dlz3h4)" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.NumLockOff"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="118.75" x="108.8542" y="674.8861"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="108.8542" x2="227.6042" y1="721.3277" y2="721.3277"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="77.0833" x="129.6875" y="703.0782">NumLockOff</text></g><g id="Active.NumLockOn"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="118.75" x="107.8125" y="828.0111"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="107.8125" x2="226.5625" y1="874.4527" y2="874.4527"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="77.0833" x="128.6458" y="856.2032">NumLockOn</text></g><!--MD5=[f1e44e9cdf7ed6fd162579f896fb76ea]
link *start*Active to NumLockOff--><path d="M90.4063,713.9486 C94.6875,713.9486 98.9583,713.9486 103.2292,713.9486 " fill="none" id="*start*Active-to-NumLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="108.6458,713.9486,99.2708,709.7819,103.4375,713.9486,99.2708,718.1152,108.6458,713.9486" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[b6ef3c088f5474ecc81df30475e7d61b]
link NumLockOff to NumLockOn--><path d="M108.4375,748.4486 C95.8958,756.7298 85.3542,765.1257 81.7708,771.7611 C73.8542,786.4277 73.8958,794.5736 81.7708,809.2611 C86.9792,818.9694 94.6563,827.3027 103.3125,834.3548 " fill="none" id="NumLockOff-to-NumLockOn" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="107.625,837.7194,102.7897,828.6711,103.5162,834.5187,97.6686,835.2452,107.625,837.7194" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="127.0833" x="93.2292" y="795.7865">EvNumLockPressed</text><!--MD5=[3bfddee0d82dc74c927fbeb3d3f2e6a3]
link NumLockOn to NumLockOff--><path d="M219.6667,827.7819 C224.5313,822.1152 228.7604,815.9277 231.7708,809.2611 C238.6354,794.0736 238.5833,786.9694 231.7708,771.7611 C229.5521,766.8027 226.6563,762.0944 223.3333,757.6673 " fill="none" id="NumLockOn-to-NumLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="219.875,753.3444,222.4513,763.2749,223.1177,757.4201,228.9725,758.0865,219.875,753.3444" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="127.0833" x="248.4375" y="795.7865">EvNumLockPressed</text><line style="stroke:#2196F3;stroke-width:1.5625;stroke-dasharray:8.0,10.0;" x1="63.0208" x2="399.4792" y1="919.2444" y2="919.2444"/><ellipse cx="79.6875" cy="965.5986" fill="#9C27B0" filter="url(#fowqij6dlz3h4)" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.CONC87.CapsLockOff"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="122.9167" x="108.8542" y="926.5361"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="108.8542" x2="231.7708" y1="972.9777" y2="972.9777"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="81.25" x="129.6875" y="954.7282">CapsLockOff</text></g><g id="Active.CONC87.CapsLockOn"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="122.9167" x="107.8125" y="1079.6611"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="107.8125" x2="230.7292" y1="1126.1027" y2="1126.1027"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="81.25" x="128.6458" y="1107.8532">CapsLockOn</text></g><!--MD5=[70bdb58272bc1a7d9e9d21dfe0316432]
link *start*CONC87 to CapsLockOff--><path d="M90.3125,965.5986 C94.625,965.5986 98.9479,965.5986 103.2708,965.5986 " fill="none" id="*start*CONC87-to-CapsLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="108.75,965.5986,99.375,961.4319,103.5417,965.5986,99.375,969.7652,108.75,965.5986" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[dc4675bd3056f3ef68701d9e8e02a3f3]
link CapsLockOff to CapsLockOn--><path d="M108.6354,1000.2652 C95.9896,1008.4527 85.4063,1016.7652 81.7708,1023.4111 C73.7708,1038.0361 73.8125,1046.2652 81.7708,1060.9111 C86.9688,1070.484 94.5625,1078.6923 103.125,1085.6506 " fill="none" id="CapsLockOff-to-CapsLockOn" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="107.4063,1088.9631,102.5551,1079.9233,103.2918,1085.7696,97.4455,1086.5064,107.4063,1088.9631" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="93.2292" y="1047.4365">EvCapsLockPressed</text><!--MD5=[79e17b083e07746bd1a647600952cab6]
link CapsLockOn to CapsLockOff--><path d="M223.4167,1079.6194 C228.4479,1073.9319 232.8125,1067.6715 235.9375,1060.9111 C242.9271,1045.7756 242.8646,1038.5673 235.9375,1023.4111 C233.5833,1018.2756 230.5208,1013.4215 226.9896,1008.8798 " fill="none" id="CapsLockOn-to-CapsLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="223.625,1004.7965,226.3607,1014.6842,226.9328,1008.8195,232.7976,1009.3917,223.625,1004.7965" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="253.6458" y="1047.4365">EvCapsLockPressed</text><line style="stroke:#2196F3;stroke-width:1.5625;stroke-dasharray:8.0,10.0;" x1="63.0208" x2="399.4792" y1="1170.8944" y2="1170.8944"/><ellipse cx="79.6875" cy="1217.2485" fill="#9C27B0" filter="url(#fowqij6dlz3h4)" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.CONC95.ScrollLockOff"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="123.9583" x="109.375" y="1178.186"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="109.375" x2="233.3333" y1="1224.6277" y2="1224.6277"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="82.2917" x="130.2083" y="1206.3782">ScrollLockOff</text></g><g id="Active.CONC95.ScrollLockOn"><rect filter="url(#fowqij6dlz3h4)" height="77.6917" rx="13.0208" ry="13.0208" style="stroke:#2196F3;stroke-width:1.5625;fill:none;" width="123.9583" x="109.375" y="1331.311"/><line style="stroke:#2196F3;stroke-width:1.5625;fill:none;" x1="109.375" x2="233.3333" y1="1377.7527" y2="1377.7527"/><text fill="#2196F3" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="82.2917" x="130.2083" y="1359.5032">ScrollLockOn</text></g><!--MD5=[8676698f49c1acec7e35e8e65e103748]
link *start*CONC95 to ScrollLockOff--><path d="M90.4271,1217.2485 C94.8958,1217.2485 99.3646,1217.2485 103.8333,1217.2485 " fill="none" id="*start*CONC95-to-ScrollLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="109.0833,1217.2485,99.7083,1213.0819,103.875,1217.2485,99.7083,1221.4152,109.0833,1217.2485" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[da4e1e55b4a6de250eca2c82023085fa]
link ScrollLockOff to ScrollLockOn--><path d="M109.0521,1252.8735 C97.1563,1260.7694 87.3125,1268.6965 83.8542,1275.061 C75.8958,1289.7069 75.8958,1297.9152 83.8542,1312.561 C88.9792,1321.9985 96.4271,1330.1027 104.8438,1336.9985 " fill="none" id="ScrollLockOff-to-ScrollLockOn" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="109.0417,1340.2902,104.2223,1331.2334,104.9385,1337.0823,99.0896,1337.7985,109.0417,1340.2902" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="95.3125" y="1299.0865">EvCapsLockPressed</text><!--MD5=[6ad2c621f2407b82317910f4deb17639]
link ScrollLockOn to ScrollLockOff--><path d="M225.5,1331.2694 C230.5313,1325.5819 234.8958,1319.3215 238.0208,1312.561 C245.0104,1297.4256 245.0104,1290.1965 238.0208,1275.061 C235.625,1269.884 232.5104,1265.009 228.9167,1260.4465 " fill="none" id="ScrollLockOn-to-ScrollLockOff" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="225.5,1256.3527,228.2972,1266.2232,228.8328,1260.3551,234.701,1260.8907,225.5,1256.3527" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="254.6875" y="1299.0865">EvCapsLockPressed</text><!--MD5=[242ad121cef04112e9b0ee8f25f52375]
link *start to fork_state--><path d="M231.25,89.1215 C231.25,103.9548 231.25,132.1736 231.25,146.5798 " fill="none" id="*start-to-fork_state" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="231.25,152.1319,235.4167,142.7569,231.25,146.9236,227.0833,142.7569,231.25,152.1319" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[44dd36eb382d4fffd186e8c447a61da0]
link fork_state to State2--><path d="M229.2396,161.0903 C223.9271,170.309 208.9792,196.2048 195.5313,219.5069 " fill="none" id="fork_state-to-State2" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="192.8646,224.1215,201.1615,218.0871,195.4695,219.6114,193.9452,213.9193,192.8646,224.1215" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[43d4d70f9cd19f132a5eb1ce9d85c890]
link fork_state to State3--><path d="M233.5,161.0903 C239.4583,170.309 256.2188,196.2048 271.2813,219.5069 " fill="none" id="fork_state-to-State3" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="274.2604,224.1215,272.6714,213.9861,271.4335,219.7471,265.6724,218.5092,274.2604,224.1215" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[8cf5ef3a64654818495211b4c165bd62]
link State2 to join_state--><path d="M153.8021,302.6736 C146.9063,324.3403 143.2604,351.0278 156.25,371.1528 C167.1458,388.0278 188.5417,396.7153 205.875,401.1215 " fill="none" id="State2-to-join_state" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="211.1042,402.3611,202.9459,396.1406,206.0368,401.1574,201.02,404.2483,211.1042,402.3611" style="stroke:#2196F3;stroke-width:3.125;"/><text fill="#222222" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="98.9583" x="167.7083" y="357.6782">some message</text><!--MD5=[183fde86cac17ac230b97143534e47db]
link State3 to join_state--><path d="M300.2188,302.5278 C299.25,324.1319 295.0833,350.8298 282.2917,371.1528 C273.6354,384.9132 257.2396,394.5798 245.5833,400.0798 " fill="none" id="State3-to-join_state" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="240.6042,402.3194,250.8634,402.2986,245.3593,400.1945,247.4635,394.6904,240.6042,402.3194" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[1e473d623208eebf6d5ebd6e9bc5a11d]
link join_state to State4--><path d="M232.2917,411.0903 C232.2917,420.1944 232.2917,445.5694 232.2917,468.6319 " fill="none" id="join_state-to-State4" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="232.2917,474.1215,236.4583,464.7465,232.2917,468.9132,228.125,464.7465,232.2917,474.1215" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[0a70b1a7cf318979336334b4227eefe4]
link State4 to Active--><path d="M232.2917,552.434 C232.2917,568.0798 232.2917,587.8403 232.2917,610.3403 " fill="none" id="State4-to-Active" style="stroke:#2196F3;stroke-width:3.125;"/><polygon fill="#2196F3" points="232.2917,615.7986,236.4583,606.4236,232.2917,610.5903,228.125,606.4236,232.2917,615.7986" style="stroke:#2196F3;stroke-width:3.125;"/><!--MD5=[115a839bd22b92084866162acfa92dd4]
@startuml
!$THEME = "materia-outline"
!if %not(%variable_exists("$BGCOLOR"))
!$BGCOLOR = "transparent"
!endif
skinparam backgroundColor $BGCOLOR
skinparam useBetaStyle false
!$BLUE = "#2196F3"
!$INDIGO = "#6610f2"
!$PURPLE = "#6f42c1"
!$PINK = "#e83e8c"
!$RED = "#e51c23"
!$ORANGE = "#fd7e14"
!$YELLOW = "#ff9800"
!$GREEN = "#4CAF50"
!$TEAL = "#20c997"
!$CYAN = "#9C27B0"
!$WHITE = "#FFF"
!$GRAY_DARK = "#222"
!$GRAY = "#666"
!$PRIMARY = "#2196F3"
!$SECONDARY = "#fff"
!$SUCCESS = "#4CAF50"
!$INFO = "#9C27B0"
!$WARNING = "#ff9800"
!$DANGER = "#e51c23"
!$LIGHT = "#fff"
!$DARK = "#222"
!$FGCOLOR = $DARK
!$PRIMARY_LIGHT = "#4dabf5"
!$PRIMARY_DARK = "#1a78c2"
!$PRIMARY_TEXT = $PRIMARY
!$SECONDARY_LIGHT = "#fff"
!$SECONDARY_DARK = "#cccccc"
!$SECONDARY_TEXT = $SECONDARY_DARK
!$INFO_LIGHT = "#b052c0"
!$INFO_DARK = "#7D1F8D"
!$INFO_TEXT = $INFO
!$SUCCESS_LIGHT = "#70bf73"
!$SUCCESS_DARK = "#3D8C40"
!$SUCCESS_TEXT = $SUCCESS
!$WARNING_LIGHT = "#ffad33"
!$WARNING_DARK = "#CC7A00"
!$WARNING_TEXT = $WARNING
!$DANGER_LIGHT = "#B7161C"
!$DANGER_TEXT = $DANGER
!procedure $success($msg)
<font color=$SUCCESS><b>$msg
!endprocedure
!procedure $failure($msg)
<font color=$DANGER><b>$msg
!endprocedure
!procedure $warning($msg)
<font color=$WARNING><b>$msg
!endprocedure
!procedure $primary_scheme()
FontColor $PRIMARY_TEXT
BorderColor $PRIMARY
BackgroundColor $BGCOLOR
!endprocedure
skinparam defaultFontName "Verdana"
skinparam defaultFontSize 12
skinparam dpi 100
skinparam shadowing true
skinparam roundcorner 8
skinparam ParticipantPadding 40
skinparam BoxPadding 40
skinparam Padding 10
skinparam TitleFontColor $DARK
skinparam TitleFontSize 20
skinparam TitleBorderThickness 0
skinparam ArrowColor $GRAY
skinparam stereotype {
CBackgroundColor $SECONDARY_LIGHT
CBorderColor $SECONDARY_DARK
ABackgroundColor $SUCCESS_LIGHT
ABorderColor $SUCCESS_DARK
IBackgroundColor $DANGER_LIGHT
IBorderColor $DANGER_DARK
EBackgroundColor $WARNING_LIGHT
EBorderColor $WARNING_DARK
NBackgroundColor $INFO_LIGHT
NBorderColor $INFO_DARK
}
skinparam title {
FontColor $PRIMARY
BorderColor $SECONDARY_DARK
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor $BGCOLOR
}
skinparam legend {
BackgroundColor $BGCOLOR
BorderColor $SECONDARY_DARK
FontColor $DARK
}
!startsub swimlane
skinparam swimlane {
BorderColor $INFO
BorderThickness 2
TitleBackgroundColor $SECONDARY_LIGHT-$SECONDARY
TitleFontColor $PRIMARY
}
!endsub
!startsub activity
skinparam activity {
$primary_scheme()
BarColor $SUCCESS
StartColor $INFO
EndColor $INFO
DiamondBackgroundColor $BGCOLOR
DiamondBorderColor $SECONDARY_DARK
DiamondFontColor $SECONDARY_TEXT
}
!endsub
!startsub participant
skinparam participant {
$primary_scheme()
ParticipantBorderThickness 2
}
!endsub
!startsub actor
skinparam actor {
$primary_scheme()
}
!endsub
!startsub arrow
skinparam arrow {
Thickness 3
Color $PRIMARY
FontColor $FGCOLOR
}
!endsub
!startsub sequence
skinparam sequence {
BorderColor $PRIMARY
TitleFontColor $PRIMARY
BackgroundColor $BGCOLOR
StartColor $PRIMARY
EndColor $PRIMARY
BoxBackgroundColor $BGCOLOR
BoxBorderColor $GRAY
BoxFontColor $DARK
LifeLineBorderColor $SECONDARY_DARK
LifeLineBorderThickness 2
LifeLineBackgroundColor $BGCOLOR
GroupBorderColor $GRAY
GroupFontColor $DARK
GroupHeaderFontColor $INFO
GroupBackgroundColor $BGCOLOR
GroupBodyBackgroundColor $BGCOLOR
GroupHeaderBackgroundColor $BGCOLOR
DividerBackgroundColor $BGCOLOR
DividerBorderColor $GRAY
DividerBorderThickness 2
DividerFontColor $DARK
ReferenceBackgroundColor $BGCOLOR
ReferenceBorderColor $GRAY
ReferenceFontColor $DARK
ReferenceHeaderFontColor $INFO
}
!endsub
!startsub partition
skinparam partition {
BorderColor $PRIMARY
FontColor $PRIMARY
BackgroundColor $BGCOLOR
}
!endsub
!startsub collections
skinparam collections {
$primary_scheme()
}
!endsub
!startsub control
skinparam control {
$primary_scheme()
}
!endsub
!startsub entity
skinparam entity {
$primary_scheme()
}
!endsub
!startsub boundary
skinparam boundary {
$primary_scheme()
}
!endsub
!startsub agent
skinparam agent {
BackgroundColor $BGCOLOR
BorderColor #999999
FontColor #333333
}
!endsub
!startsub note
skinparam note {
BorderThickness 1
BackgroundColor $BGCOLOR
BorderColor $INFO
FontColor $INFO
}
!endsub
!startsub artifact
skinparam artifact {
BackgroundColor $BGCOLOR
BorderColor $GRAY
FontColor $GRAY
}
!endsub
!startsub component
skinparam component {
$primary_scheme()
}
!endsub
!startsub interface
skinparam interface {
BackgroundColor $BGCOLOR
BorderColor $DANGER
FontColor $DARK
}
!endsub
!startsub storage
skinparam storage {
BackgroundColor $BGCOLOR
BorderColor $WARNING
FontColor $WARNING_TEXT
}
!endsub
!startsub node
skinparam node {
BackgroundColor $BGCOLOR
BorderColor $DARK
FontColor $DARK
}
!endsub
!startsub cloud
skinparam cloud {
BackgroundColor transparent
BorderColor #F2FCFE
FontColor $DARK
}
!endsub
!startsub database
skinparam database {
$primary_scheme()
}
!endsub
!startsub class
skinparam class {
$primary_scheme()
FontColor $LIGHT
HeaderBackgroundColor $PRIMARY-$PRIMARY_DARK
StereotypeFontColor $DARK
BorderThickness 1
AttributeFontColor $DARK
AttributeFontSize 11
}
!endsub
!startsub object
skinparam object {
$primary_scheme()
StereotypeFontColor $DARK
BorderThickness 1
AttributeFontColor $SECONDARY_DARK
AttributeFontSize 11
}
!endsub
!startsub usecase
skinparam usecase {
$primary_scheme()
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub rectangle
skinparam rectangle {
$primary_scheme()
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub package
skinparam package {
BackgroundColor $BGCOLOR
BorderColor $PRIMARY
FontColor $PRIMARY
BorderThickness 2
}
!endsub
!startsub folder
skinparam folder {
BackgroundColor $BGCOLOR
BorderColor $WARNING
FontColor $WARNING
BorderThickness 2
}
!endsub
!startsub frame
skinparam frame {
BackgroundColor $BGCOLOR
BorderColor $INFO
FontColor $INFO
BorderThickness 2
}
!endsub
!startsub state
skinparam state {
$primary_scheme()
StartColor $INFO
EndColor $INFO
AttributeFontColor $SECONDARY_TEXT
AttributeFontSize 11
}
!endsub
!startsub queue
skinparam queue {
$primary_scheme()
}
!endsub
!startsub card
skinparam card {
BackgroundColor $BGCOLOR
BorderColor $INFO
FontColor $INFO_TEXT
}
!endsub
!startsub file
skinparam file {
BackgroundColor $BGCOLOR
BorderColor $GRAY
FontColor $GRAY
}
!endsub
!startsub stack
skinparam stack {
$primary_scheme()
}
!endsub
!if %variable_exists("$THEME")
title State Diagram - $THEME theme
!else
title State Diagram
!endif
'skinparam BackgroundColor transparent
state fork_state <<fork>>
[*] - -> fork_state
fork_state - -> State2
fork_state - -> State3
state join_state <<join>>
State2 - -> join_state: some message
State3 - -> join_state
join_state - -> State4
State4 - -> Active
state Active {
[*] -> NumLockOff
NumLockOff - -> NumLockOn : EvNumLockPressed
NumLockOn - -> NumLockOff : EvNumLockPressed
- -
[*] -> CapsLockOff
CapsLockOff - -> CapsLockOn : EvCapsLockPressed
CapsLockOn - -> CapsLockOff : EvCapsLockPressed
- -
[*] -> ScrollLockOff
ScrollLockOff - -> ScrollLockOn : EvCapsLockPressed
ScrollLockOn - -> ScrollLockOff : EvCapsLockPressed
}
@enduml
@startuml
skinparam backgroundColor transparent
skinparam useBetaStyle false
skinparam defaultFontName "Verdana"
skinparam defaultFontSize 12
skinparam dpi 100
skinparam shadowing true
skinparam roundcorner 8
skinparam ParticipantPadding 40
skinparam BoxPadding 40
skinparam Padding 10
skinparam TitleFontColor #222
skinparam TitleFontSize 20
skinparam TitleBorderThickness 0
skinparam ArrowColor #666
skinparam stereotype {
CBackgroundColor #fff
CBorderColor #cccccc
ABackgroundColor #70bf73
ABorderColor #3D8C40
IBackgroundColor #B7161C
IBorderColor $DANGER_DARK
EBackgroundColor #ffad33
EBorderColor #CC7A00
NBackgroundColor #b052c0
NBorderColor #7D1F8D
}
skinparam title {
FontColor #2196F3
BorderColor #cccccc
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor transparent
}
skinparam legend {
BackgroundColor transparent
BorderColor #cccccc
FontColor #222
}
skinparam swimlane {
BorderColor #9C27B0
BorderThickness 2
TitleBackgroundColor #fff-#fff
TitleFontColor #2196F3
}
skinparam activity {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
BarColor #4CAF50
StartColor #9C27B0
EndColor #9C27B0
DiamondBackgroundColor transparent
DiamondBorderColor #cccccc
DiamondFontColor #cccccc
}
skinparam participant {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
ParticipantBorderThickness 2
}
skinparam actor {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam arrow {
Thickness 3
Color #2196F3
FontColor #222
}
skinparam sequence {
BorderColor #2196F3
TitleFontColor #2196F3
BackgroundColor transparent
StartColor #2196F3
EndColor #2196F3
BoxBackgroundColor transparent
BoxBorderColor #666
BoxFontColor #222
LifeLineBorderColor #cccccc
LifeLineBorderThickness 2
LifeLineBackgroundColor transparent
GroupBorderColor #666
GroupFontColor #222
GroupHeaderFontColor #9C27B0
GroupBackgroundColor transparent
GroupBodyBackgroundColor transparent
GroupHeaderBackgroundColor transparent
DividerBackgroundColor transparent
DividerBorderColor #666
DividerBorderThickness 2
DividerFontColor #222
ReferenceBackgroundColor transparent
ReferenceBorderColor #666
ReferenceFontColor #222
ReferenceHeaderFontColor #9C27B0
}
skinparam partition {
BorderColor #2196F3
FontColor #2196F3
BackgroundColor transparent
}
skinparam collections {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam control {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam entity {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam boundary {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam agent {
BackgroundColor transparent
BorderColor #999999
FontColor #333333
}
skinparam note {
BorderThickness 1
BackgroundColor transparent
BorderColor #9C27B0
FontColor #9C27B0
}
skinparam artifact {
BackgroundColor transparent
BorderColor #666
FontColor #666
}
skinparam component {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam interface {
BackgroundColor transparent
BorderColor #e51c23
FontColor #222
}
skinparam storage {
BackgroundColor transparent
BorderColor #ff9800
FontColor #ff9800
}
skinparam node {
BackgroundColor transparent
BorderColor #222
FontColor #222
}
skinparam cloud {
BackgroundColor transparent
BorderColor #F2FCFE
FontColor #222
}
skinparam database {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam class {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
FontColor #fff
HeaderBackgroundColor #2196F3-#1a78c2
StereotypeFontColor #222
BorderThickness 1
AttributeFontColor #222
AttributeFontSize 11
}
skinparam object {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
StereotypeFontColor #222
BorderThickness 1
AttributeFontColor #cccccc
AttributeFontSize 11
}
skinparam usecase {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
BorderThickness 2
StereotypeFontColor #2196F3
}
skinparam rectangle {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
BorderThickness 2
StereotypeFontColor #2196F3
}
skinparam package {
BackgroundColor transparent
BorderColor #2196F3
FontColor #2196F3
BorderThickness 2
}
skinparam folder {
BackgroundColor transparent
BorderColor #ff9800
FontColor #ff9800
BorderThickness 2
}
skinparam frame {
BackgroundColor transparent
BorderColor #9C27B0
FontColor #9C27B0
BorderThickness 2
}
skinparam state {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
StartColor #9C27B0
EndColor #9C27B0
AttributeFontColor #cccccc
AttributeFontSize 11
}
skinparam queue {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
skinparam card {
BackgroundColor transparent
BorderColor #9C27B0
FontColor #9C27B0
}
skinparam file {
BackgroundColor transparent
BorderColor #666
FontColor #666
}
skinparam stack {
FontColor #2196F3
BorderColor #2196F3
BackgroundColor transparent
}
title State Diagram - materia-outline theme
state fork_state <<fork>>
[*] - -> fork_state
fork_state - -> State2
fork_state - -> State3
state join_state <<join>>
State2 - -> join_state: some message
State3 - -> join_state
join_state - -> State4
State4 - -> Active
state Active {
[*] -> NumLockOff
NumLockOff - -> NumLockOn : EvNumLockPressed
NumLockOn - -> NumLockOff : EvNumLockPressed
- -
[*] -> CapsLockOff
CapsLockOff - -> CapsLockOn : EvCapsLockPressed
CapsLockOn - -> CapsLockOff : EvCapsLockPressed
- -
[*] -> ScrollLockOff
ScrollLockOff - -> ScrollLockOn : EvCapsLockPressed
ScrollLockOn - -> ScrollLockOff : EvCapsLockPressed
}
@enduml
PlantUML version 1.2021.01(Mon Feb 01 23:55:08 PST 2021)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>