aboutsummaryrefslogtreecommitdiffstats
path: root/doc/parts
diff options
context:
space:
mode:
Diffstat (limited to 'doc/parts')
-rw-r--r--doc/parts/initialize-registercallback.svg29
-rw-r--r--doc/parts/initialize-set-event-handler.svg27
-rw-r--r--doc/parts/initialize.svg22
-rw-r--r--doc/parts/on_screen_message.svg24
-rw-r--r--doc/parts/tap_shortcut.svg12
5 files changed, 94 insertions, 20 deletions
diff --git a/doc/parts/initialize-registercallback.svg b/doc/parts/initialize-registercallback.svg
new file mode 100644
index 0000000..cc861db
--- /dev/null
+++ b/doc/parts/initialize-registercallback.svg
@@ -0,0 +1,29 @@
+<?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="330px" preserveAspectRatio="none" style="width:436px;height:330px;" version="1.1" viewBox="0 0 436 330" width="436px" zoomAndPan="magnify"><defs><filter height="300%" id="f1rrry8f9c71eg" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="412" x="12" y="22.9951">Application initialization phase (ex. registerCallback)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="58.5" x2="58.5" y1="81.5938" y2="273.5234"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="194.5" x2="194.5" y1="81.5938" y2="273.5234"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="335.5" x2="335.5" y1="81.5938" y2="273.5234"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="42.5" y="78.292">App</text><ellipse cx="59" cy="49.2969" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="47" x2="71" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="42.5" y="285.5186">App</text><ellipse cx="59" cy="304.8203" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="47" x2="71" y1="318.8203" y2="318.8203"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="124.5" y="78.292">HomeScreenBinder</text><ellipse cx="195" cy="49.2969" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="183" x2="207" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="124.5" y="285.5186">HomeScreenBinder</text><ellipse cx="195" cy="304.8203" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="183" x2="207" y1="318.8203" y2="318.8203"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="275.5" y="78.292">HomeScreenGUI</text><ellipse cx="335.5" cy="49.2969" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="323.5" x2="347.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="275.5" y="285.5186">HomeScreenGUI</text><ellipse cx="335.5" cy="304.8203" fill="#FEFECE" filter="url(#f1rrry8f9c71eg)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="323.5" x2="347.5" y1="318.8203" y2="318.8203"/><polygon fill="#A80036" points="183,108.5938,193,112.5938,183,116.5938,187,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="59" x2="189" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="66" y="107.6606">init(port, token)</text><polygon fill="#A80036" points="183,137.7266,193,141.7266,183,145.7266,187,141.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="59" x2="189" y1="141.7266" y2="141.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="71" x="66" y="136.7935">subscribe()</text><polygon fill="#FBFB77" filter="url(#f1rrry8f9c71eg)" points="40.5,154.8594,40.5,224.8594,345.5,224.8594,345.5,164.8594,335.5,154.8594,40.5,154.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="335.5" x2="335.5" y1="154.8594" y2="164.8594"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="345.5" x2="335.5" y1="164.8594" y2="164.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="284" x="46.5" y="171.9263">Register the event the App wishes to receive</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="94" x="46.5" y="187.0591">・tap_shortcut</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="145" x="46.5" y="202.1919">・on_screen_message</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="46.5" y="217.3247">・on_screen_reply</text><polygon fill="#A80036" points="183,251.3906,193,255.3906,183,259.3906,187,255.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="59" x2="189" y1="255.3906" y2="255.3906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="112" x="66" y="250.4575">registerCallback()</text><!--
+@startuml
+title Application initialization phase (ex. registerCallback)
+entity App
+entity HomeScreenBinder
+entity HomeScreenGUI
+App->HomeScreenBinder: init(port, token)
+App->HomeScreenBinder: subscribe()
+
+note over HomeScreenBinder
+ Register the event the App wishes to receive
+ ・tap_shortcut
+ ・on_screen_message
+ ・on_screen_reply
+end note
+
+App->HomeScreenBinder: registerCallback()
+@enduml
+
+PlantUML version 1.2017.18(Fri Oct 06 16:56:32 UTC 2017)
+(GPL source distribution)
+Java Runtime: Java(TM) SE Runtime Environment
+JVM: Java HotSpot(TM) 64-Bit Server VM
+Java Version: 1.7.0_25-b15
+Operating System: Linux
+Default Encoding: UTF-8
+Language: en
+Country: US
+--></g></svg> \ No newline at end of file
diff --git a/doc/parts/initialize-set-event-handler.svg b/doc/parts/initialize-set-event-handler.svg
new file mode 100644
index 0000000..176ec1f
--- /dev/null
+++ b/doc/parts/initialize-set-event-handler.svg
@@ -0,0 +1,27 @@
+<?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="301px" preserveAspectRatio="none" style="width:452px;height:301px;" version="1.1" viewBox="0 0 452 301" width="452px" zoomAndPan="magnify"><defs><filter height="300%" id="fo5flcejoga9p" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="428" x="12" y="22.9951">Application initialization phase (ex. set_event_handler)</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="57.5" x2="57.5" y1="81.5938" y2="244.3906"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="209.5" x2="209.5" y1="81.5938" y2="244.3906"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="350.5" x2="350.5" y1="81.5938" y2="244.3906"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="41.5" y="78.292">App</text><ellipse cx="58" cy="49.2969" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="46" x2="70" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="41.5" y="256.3857">App</text><ellipse cx="58" cy="275.6875" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="46" x2="70" y1="289.6875" y2="289.6875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="139.5" y="78.292">HomeScreenBinder</text><ellipse cx="210" cy="49.2969" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="198" x2="222" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="139.5" y="256.3857">HomeScreenBinder</text><ellipse cx="210" cy="275.6875" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="198" x2="222" y1="289.6875" y2="289.6875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="290.5" y="78.292">HomeScreenGUI</text><ellipse cx="350.5" cy="49.2969" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="338.5" x2="362.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="290.5" y="256.3857">HomeScreenGUI</text><ellipse cx="350.5" cy="275.6875" fill="#FEFECE" filter="url(#fo5flcejoga9p)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="338.5" x2="362.5" y1="289.6875" y2="289.6875"/><polygon fill="#A80036" points="198,108.5938,208,112.5938,198,116.5938,202,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="58" x2="204" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="65" y="107.6606">init(port, token)</text><polygon fill="#A80036" points="198,137.7266,208,141.7266,198,145.7266,202,141.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="58" x2="204" y1="141.7266" y2="141.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="65" y="136.7935">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#fo5flcejoga9p)" points="49.5,154.8594,49.5,224.8594,365.5,224.8594,365.5,164.8594,355.5,154.8594,49.5,154.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="355.5" x2="355.5" y1="154.8594" y2="164.8594"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="365.5" x2="355.5" y1="164.8594" y2="164.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="295" x="55.5" y="171.9263">setup event handler the App wishes to receive</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="244" x="55.5" y="187.0591">・LibHomeScreen::Event_TapShortcut</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="286" x="55.5" y="202.1919">・LibHomeScreen::Event_OnScreenMessage</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="263" x="55.5" y="217.3247">・LibHomeScreen::Event_OnScreenReply</text><!--
+@startuml
+title Application initialization phase (ex. set_event_handler)
+entity App
+entity HomeScreenBinder
+entity HomeScreenGUI
+App->HomeScreenBinder: init(port, token)
+App->HomeScreenBinder: set_event_handler()
+
+note over HomeScreenBinder
+ setup event handler the App wishes to receive
+ ・LibHomeScreen::Event_TapShortcut
+ ・LibHomeScreen::Event_OnScreenMessage
+ ・LibHomeScreen::Event_OnScreenReply
+end note
+@enduml
+
+PlantUML version 1.2017.18(Fri Oct 06 16:56:32 UTC 2017)
+(GPL source distribution)
+Java Runtime: Java(TM) SE Runtime Environment
+JVM: Java HotSpot(TM) 64-Bit Server VM
+Java Version: 1.7.0_25-b15
+Operating System: Linux
+Default Encoding: UTF-8
+Language: en
+Country: US
+--></g></svg> \ No newline at end of file
diff --git a/doc/parts/initialize.svg b/doc/parts/initialize.svg
index 4ebf927..6e66c99 100644
--- a/doc/parts/initialize.svg
+++ b/doc/parts/initialize.svg
@@ -1,4 +1,4 @@
-<?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="399px" preserveAspectRatio="none" style="width:383px;height:399px;" version="1.1" viewBox="0 0 383 399" width="383px" zoomAndPan="magnify"><defs><filter height="300%" id="f1d1g4haip41mn" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="238" x="73.5" y="22.9951">Application initialization phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="24" x2="24" y1="81.5938" y2="341.7891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="176" x2="176" y1="81.5938" y2="341.7891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="317" x2="317" y1="81.5938" y2="341.7891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="78.292">App</text><ellipse cx="24.5" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="353.7842">App</text><ellipse cx="24.5" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="387.0859" y2="387.0859"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="106" y="78.292">HomeScreenBinder</text><ellipse cx="176.5" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="164.5" x2="188.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="106" y="353.7842">HomeScreenBinder</text><ellipse cx="176.5" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="164.5" x2="188.5" y1="387.0859" y2="387.0859"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="257" y="78.292">HomeScreenGUI</text><ellipse cx="317" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="305" x2="329" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="257" y="353.7842">HomeScreenGUI</text><ellipse cx="317" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="305" x2="329" y1="387.0859" y2="387.0859"/><polygon fill="#A80036" points="164.5,108.5938,174.5,112.5938,164.5,116.5938,168.5,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="31.5" y="107.6606">init(port, token)</text><polygon fill="#A80036" points="164.5,137.7266,174.5,141.7266,164.5,145.7266,168.5,141.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="141.7266" y2="141.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="71" x="31.5" y="136.7935">subscribe()</text><polygon fill="#FBFB77" filter="url(#f1d1g4haip41mn)" points="54,154.8594,54,194.8594,295,194.8594,295,164.8594,285,154.8594,54,154.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="285" x2="285" y1="154.8594" y2="164.8594"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="295" x2="285" y1="164.8594" y2="164.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="220" x="60" y="171.9263">Appが受信したいイベントを登録する</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="94" x="60" y="187.0591">・tap_shortcut</text><polygon fill="#A80036" points="164.5,221.125,174.5,225.125,164.5,229.125,168.5,225.125" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="225.125" y2="225.125"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="112" x="31.5" y="220.1919">registerCallback()</text><polygon fill="#A80036" points="164.5,250.2578,174.5,254.2578,164.5,258.2578,168.5,254.2578" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="254.2578" y2="254.2578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="31.5" y="249.3247">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#f1d1g4haip41mn)" points="31,267.3906,31,322.3906,318,322.3906,318,277.3906,308,267.3906,31,267.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="308" x2="308" y1="267.3906" y2="277.3906"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="318" x2="308" y1="277.3906" y2="277.3906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="195" x="37" y="284.4575">イベント受信のコールバック登録</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="206" x="37" y="299.5903">registerCallbackによる登録または</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="266" x="37" y="314.7231">set_event_handlerによる登録どちらかでOK</text><!--
+<?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="399px" preserveAspectRatio="none" style="width:383px;height:399px;" version="1.1" viewBox="0 0 383 399" width="383px" zoomAndPan="magnify"><defs><filter height="300%" id="f1d1g4haip41mn" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="238" x="73.5" y="22.9951">Application initialization phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="24" x2="24" y1="81.5938" y2="341.7891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="176" x2="176" y1="81.5938" y2="341.7891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="317" x2="317" y1="81.5938" y2="341.7891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="78.292">App</text><ellipse cx="24.5" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="353.7842">App</text><ellipse cx="24.5" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="387.0859" y2="387.0859"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="106" y="78.292">HomeScreenBinder</text><ellipse cx="176.5" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="164.5" x2="188.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="106" y="353.7842">HomeScreenBinder</text><ellipse cx="176.5" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="164.5" x2="188.5" y1="387.0859" y2="387.0859"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="257" y="78.292">HomeScreenGUI</text><ellipse cx="317" cy="49.2969" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="305" x2="329" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="257" y="353.7842">HomeScreenGUI</text><ellipse cx="317" cy="373.0859" fill="#FEFECE" filter="url(#f1d1g4haip41mn)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="305" x2="329" y1="387.0859" y2="387.0859"/><polygon fill="#A80036" points="164.5,108.5938,174.5,112.5938,164.5,116.5938,168.5,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="31.5" y="107.6606">init(port, token)</text><polygon fill="#A80036" points="164.5,137.7266,174.5,141.7266,164.5,145.7266,168.5,141.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="141.7266" y2="141.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="71" x="31.5" y="136.7935">subscribe()</text><polygon fill="#FBFB77" filter="url(#f1d1g4haip41mn)" points="54,154.8594,54,194.8594,295,194.8594,295,164.8594,285,154.8594,54,154.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="285" x2="285" y1="154.8594" y2="164.8594"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="295" x2="285" y1="164.8594" y2="164.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="220" x="60" y="171.9263">Appが受信したいイベントを登録する</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="94" x="60" y="187.0591">・tap_shortcut</text><polygon fill="#A80036" points="164.5,221.125,174.5,225.125,164.5,229.125,168.5,225.125" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="225.125" y2="225.125"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="112" x="31.5" y="220.1919">registerCallback()</text><polygon fill="#A80036" points="164.5,250.2578,174.5,254.2578,164.5,258.2578,168.5,254.2578" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="170.5" y1="254.2578" y2="254.2578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="31.5" y="249.3247">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#f1d1g4haip41mn)" points="31,267.3906,31,322.3906,318,322.3906,318,277.3906,308,267.3906,31,267.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="308" x2="308" y1="267.3906" y2="277.3906"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="318" x2="308" y1="277.3906" y2="277.3906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="195" x="37" y="284.4575">イベント受信のコールバック登録</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="206" x="37" y="299.5903">registerCallbackによる登録または</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="266" x="37" y="314.7231">set_event_handlerによる登録どちらかでOK</text><!--
@startuml
title Application initialization phase
entity App
@@ -21,14 +21,14 @@ note over HomeScreenBinder
set_event_handlerによる登録どちらかでOK
end note
@enduml
-
-PlantUML version 1.2017.18beta10(Unknown compile time)
-(GPL source distribution)
-Java Runtime: Java(TM) SE Runtime Environment
-JVM: Java HotSpot(TM) 64-Bit Server VM
-Java Version: 1.7.0_25-b15
-Operating System: Linux
-Default Encoding: UTF-8
-Language: en
-Country: US
+
+PlantUML version 1.2017.18beta10(Unknown compile time)
+(GPL source distribution)
+Java Runtime: Java(TM) SE Runtime Environment
+JVM: Java HotSpot(TM) 64-Bit Server VM
+Java Version: 1.7.0_25-b15
+Operating System: Linux
+Default Encoding: UTF-8
+Language: en
+Country: US
--></g></svg> \ No newline at end of file
diff --git a/doc/parts/on_screen_message.svg b/doc/parts/on_screen_message.svg
index b7a82bd..66ceed3 100644
--- a/doc/parts/on_screen_message.svg
+++ b/doc/parts/on_screen_message.svg
@@ -1,14 +1,30 @@
-<?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="217px" preserveAspectRatio="none" style="width:585px;height:217px;" version="1.1" viewBox="0 0 585 217" width="585px" zoomAndPan="magnify"><defs><filter height="300%" id="f1tu3ie33v7cnu" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="361" x="113.25" y="22.9951">Application Callback Event TapShortcut phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="24" x2="24" y1="81.5938" y2="159.8594"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="286" x2="286" y1="81.5938" y2="159.8594"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="519.5" x2="519.5" y1="81.5938" y2="159.8594"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="78.292">App</text><ellipse cx="24.5" cy="49.2969" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="8" y="171.8545">App</text><ellipse cx="24.5" cy="191.1563" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="12.5" x2="36.5" y1="205.1563" y2="205.1563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="216" y="78.292">HomeScreenBinder</text><ellipse cx="286.5" cy="49.2969" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="274.5" x2="298.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="216" y="171.8545">HomeScreenBinder</text><ellipse cx="286.5" cy="191.1563" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="274.5" x2="298.5" y1="205.1563" y2="205.1563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="459.5" y="78.292">HomeScreenGUI</text><ellipse cx="519.5" cy="49.2969" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="507.5" x2="531.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="459.5" y="171.8545">HomeScreenGUI</text><ellipse cx="519.5" cy="191.1563" fill="#FEFECE" filter="url(#f1tu3ie33v7cnu)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="507.5" x2="531.5" y1="205.1563" y2="205.1563"/><polygon fill="#A80036" points="274.5,108.5938,284.5,112.5938,274.5,116.5938,278.5,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="24.5" x2="280.5" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="238" x="31.5" y="107.6606">onScreenMessage(display_message)</text><polygon fill="#A80036" points="507.5,137.7266,517.5,141.7266,507.5,145.7266,511.5,141.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="286.5" x2="513.5" y1="141.7266" y2="141.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="209" x="293.5" y="136.7935">eventCallback(display_message)</text><!--
+<?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="411px" preserveAspectRatio="none" style="width:799px;height:411px;" version="1.1" viewBox="0 0 799 411" width="799px" zoomAndPan="magnify"><defs><filter height="300%" id="f4ukdfhh6ocv4" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="480" x="159.5" y="22.9951">Application Callback Event On Screen Message / Reply phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="145" x2="145" y1="81.5938" y2="354.6563"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="407" x2="407" y1="81.5938" y2="354.6563"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="642.5" x2="642.5" y1="81.5938" y2="354.6563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="129" y="78.292">App</text><ellipse cx="145.5" cy="49.2969" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="133.5" x2="157.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="129" y="366.6514">App</text><ellipse cx="145.5" cy="385.9531" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="133.5" x2="157.5" y1="399.9531" y2="399.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="337" y="78.292">HomeScreenBinder</text><ellipse cx="407.5" cy="49.2969" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="395.5" x2="419.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="337" y="366.6514">HomeScreenBinder</text><ellipse cx="407.5" cy="385.9531" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="395.5" x2="419.5" y1="399.9531" y2="399.9531"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="582.5" y="78.292">HomeScreenGUI</text><ellipse cx="642.5" cy="49.2969" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="630.5" x2="654.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="582.5" y="366.6514">HomeScreenGUI</text><ellipse cx="642.5" cy="385.9531" fill="#FEFECE" filter="url(#f4ukdfhh6ocv4)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="630.5" x2="654.5" y1="399.9531" y2="399.9531"/><polygon fill="#A80036" points="418.5,108.5938,408.5,112.5938,418.5,116.5938,414.5,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="412.5" x2="641.5" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="424.5" y="107.6606">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#f4ukdfhh6ocv4)" points="493,125.7266,493,150.7266,787,150.7266,787,135.7266,777,125.7266,493,125.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="777" x2="777" y1="125.7266" y2="135.7266"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="787" x2="777" y1="135.7266" y2="135.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="273" x="499" y="142.7935">LibHomeScreen::Event_OnScreenMessage</text><polygon fill="#A80036" points="395.5,176.8594,405.5,180.8594,395.5,184.8594,399.5,180.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="145.5" x2="401.5" y1="180.8594" y2="180.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="152.5" y="175.9263">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#f4ukdfhh6ocv4)" points="8,193.9922,8,218.9922,279,218.9922,279,203.9922,269,193.9922,8,193.9922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="269" x2="269" y1="193.9922" y2="203.9922"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="279" x2="269" y1="203.9922" y2="203.9922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="250" x="14" y="211.0591">LibHomeScreen::Event_OnScreenReply</text><polygon fill="#A80036" points="395.5,245.125,405.5,249.125,395.5,253.125,399.5,249.125" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="145.5" x2="401.5" y1="249.125" y2="249.125"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="238" x="152.5" y="244.1919">onScreenMessage(display_message)</text><polygon fill="#A80036" points="630.5,274.2578,640.5,278.2578,630.5,282.2578,634.5,278.2578" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="407.5" x2="636.5" y1="278.2578" y2="278.2578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="211" x="414.5" y="273.3247">event_handler(display_message)</text><polygon fill="#A80036" points="418.5,303.3906,408.5,307.3906,418.5,311.3906,414.5,307.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="412.5" x2="641.5" y1="307.3906" y2="307.3906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="202" x="424.5" y="302.4575">onScreenReply(reply_message)</text><polygon fill="#A80036" points="156.5,332.5234,146.5,336.5234,156.5,340.5234,152.5,336.5234" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="150.5" x2="406.5" y1="336.5234" y2="336.5234"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="198" x="162.5" y="331.5903">event_handler(reply_message)</text><!--
@startuml
-title Application Callback Event TapShortcut phase
+title Application Callback Event On Screen Message / Reply phase
entity App
entity HomeScreenBinder
entity HomeScreenGUI
+
+HomeScreenGUI->HomeScreenBinder: set_event_handler()
+
+note over HomeScreenGUI
+ LibHomeScreen::Event_OnScreenMessage
+end note
+
+
+App->HomeScreenBinder: set_event_handler()
+
+note over App
+ LibHomeScreen::Event_OnScreenReply
+end note
+
App->HomeScreenBinder: onScreenMessage(display_message)
-HomeScreenBinder->HomeScreenGUI: eventCallback(display_message)
+HomeScreenBinder->HomeScreenGUI: event_handler(display_message)
+HomeScreenGUI->HomeScreenBinder: onScreenReply(reply_message)
+HomeScreenBinder->App: event_handler(reply_message)
@enduml
-PlantUML version 1.2017.18beta10(Unknown compile time)
+PlantUML version 1.2017.18(Fri Oct 06 16:56:32 UTC 2017)
(GPL source distribution)
Java Runtime: Java(TM) SE Runtime Environment
JVM: Java HotSpot(TM) 64-Bit Server VM
diff --git a/doc/parts/tap_shortcut.svg b/doc/parts/tap_shortcut.svg
index 2d2436b..d454164 100644
--- a/doc/parts/tap_shortcut.svg
+++ b/doc/parts/tap_shortcut.svg
@@ -1,18 +1,20 @@
-<?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="271px" preserveAspectRatio="none" style="width:707px;height:271px;" version="1.1" viewBox="0 0 707 271" width="707px" zoomAndPan="magnify"><defs><filter height="300%" id="fh1g4l6nfhbas" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="361" x="174.25" y="22.9951">Application Callback Event TapShortcut phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="182" x2="182" y1="81.5938" y2="214.125"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="418" x2="418" y1="81.5938" y2="214.125"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="641.5" x2="641.5" y1="81.5938" y2="214.125"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="166" y="78.292">App</text><ellipse cx="182.5" cy="49.2969" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="170.5" x2="194.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="166" y="226.1201">App</text><ellipse cx="182.5" cy="245.4219" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="170.5" x2="194.5" y1="259.4219" y2="259.4219"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="348" y="78.292">HomeScreenBinder</text><ellipse cx="418.5" cy="49.2969" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="406.5" x2="430.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="348" y="226.1201">HomeScreenBinder</text><ellipse cx="418.5" cy="245.4219" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="406.5" x2="430.5" y1="259.4219" y2="259.4219"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="581.5" y="78.292">HomeScreenGUI</text><ellipse cx="641.5" cy="49.2969" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="629.5" x2="653.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="581.5" y="226.1201">HomeScreenGUI</text><ellipse cx="641.5" cy="245.4219" fill="#FEFECE" filter="url(#fh1g4l6nfhbas)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="629.5" x2="653.5" y1="259.4219" y2="259.4219"/><polygon fill="#FBFB77" filter="url(#fh1g4l6nfhbas)" points="8,96.5938,8,136.5938,354,136.5938,354,106.5938,344,96.5938,8,96.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="344" x2="344" y1="96.5938" y2="106.5938"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="354" x2="344" y1="106.5938" y2="106.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="103" x="14" y="113.6606">Appは初期化時に</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="325" x="14" y="128.7935">TapShortcutのイベントを受け取る設定をしていること</text><polygon fill="#A80036" points="429.5,162.8594,419.5,166.8594,429.5,170.8594,425.5,166.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="423.5" x2="640.5" y1="166.8594" y2="166.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="199" x="435.5" y="161.9263">tapShortcut(application_name)</text><polygon fill="#A80036" points="193.5,191.9922,183.5,195.9922,193.5,199.9922,189.5,195.9922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="187.5" x2="417.5" y1="195.9922" y2="195.9922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="212" x="199.5" y="191.0591">eventCallback(application_name)</text><!--
+<?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="285px" preserveAspectRatio="none" style="width:662px;height:285px;" version="1.1" viewBox="0 0 662 285" width="662px" zoomAndPan="magnify"><defs><filter height="300%" id="fijzwybejitm5" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><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.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="361" x="151.75" y="22.9951">Application Callback Event TapShortcut phase</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="135" x2="135" y1="81.5938" y2="228.125"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="373" x2="373" y1="81.5938" y2="228.125"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="596.5" x2="596.5" y1="81.5938" y2="228.125"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="119" y="78.292">App</text><ellipse cx="135.5" cy="49.2969" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="123.5" x2="147.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="119" y="240.1201">App</text><ellipse cx="135.5" cy="259.4219" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="123.5" x2="147.5" y1="273.4219" y2="273.4219"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="303" y="78.292">HomeScreenBinder</text><ellipse cx="373.5" cy="49.2969" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="361.5" x2="385.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="135" x="303" y="240.1201">HomeScreenBinder</text><ellipse cx="373.5" cy="259.4219" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="361.5" x2="385.5" y1="273.4219" y2="273.4219"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="536.5" y="78.292">HomeScreenGUI</text><ellipse cx="596.5" cy="49.2969" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="584.5" x2="608.5" y1="63.2969" y2="63.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="536.5" y="240.1201">HomeScreenGUI</text><ellipse cx="596.5" cy="259.4219" fill="#FEFECE" filter="url(#fijzwybejitm5)" rx="12" ry="12" style="stroke: #A80036; stroke-width: 2.0;"/><line style="stroke: #A80036; stroke-width: 2.0;" x1="584.5" x2="608.5" y1="273.4219" y2="273.4219"/><polygon fill="#A80036" points="361.5,108.5938,371.5,112.5938,361.5,116.5938,365.5,112.5938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="135.5" x2="367.5" y1="112.5938" y2="112.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="142.5" y="107.6606">set_event_handler()</text><polygon fill="#FBFB77" filter="url(#fijzwybejitm5)" points="8,125.7266,8,150.7266,260,150.7266,260,135.7266,250,125.7266,8,125.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="250" x2="250" y1="125.7266" y2="135.7266"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="260" x2="250" y1="135.7266" y2="135.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="231" x="14" y="142.7935">LibHomeScreen::Event_TapShortcut</text><polygon fill="#A80036" points="384.5,176.8594,374.5,180.8594,384.5,184.8594,380.5,180.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="378.5" x2="595.5" y1="180.8594" y2="180.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="199" x="390.5" y="175.9263">tapShortcut(application_name)</text><polygon fill="#A80036" points="146.5,205.9922,136.5,209.9922,146.5,213.9922,142.5,209.9922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="140.5" x2="372.5" y1="209.9922" y2="209.9922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="214" x="152.5" y="205.0591">event_handler(application_name)</text><!--
@startuml
title Application Callback Event TapShortcut phase
entity App
entity HomeScreenBinder
entity HomeScreenGUI
+App->HomeScreenBinder: set_event_handler()
+
note over App
- Appは初期化時に
- TapShortcutのイベントを受け取る設定をしていること
+ LibHomeScreen::Event_TapShortcut
end note
+
HomeScreenGUI->HomeScreenBinder: tapShortcut(application_name)
-HomeScreenBinder->App: eventCallback(application_name)
+HomeScreenBinder->App: event_handler(application_name)
@enduml
-PlantUML version 1.2017.18beta10(Unknown compile time)
+PlantUML version 1.2017.18(Fri Oct 06 16:56:32 UTC 2017)
(GPL source distribution)
Java Runtime: Java(TM) SE Runtime Environment
JVM: Java HotSpot(TM) 64-Bit Server VM