Skip to content

Commit

Permalink
chore: state diagrams
Browse files Browse the repository at this point in the history
  • Loading branch information
Lutonite committed Oct 14, 2024
1 parent 76a4e65 commit 0ecc95a
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,10 @@ class MainActivityFragment2 : AppCompatActivity() {
nextButton.setOnClickListener { forward() }
backButton.setOnClickListener { back() }
closeButton.setOnClickListener { close() }

// Add the first fragment if it's the first time the activity is created
if(savedInstanceState == null) {
nextStep()
}
}

private fun back() {
if (supportFragmentManager.backStackEntryCount > 1) {
if (supportFragmentManager.backStackEntryCount > 0) {
supportFragmentManager.popBackStack()
} else {
finish()
Expand All @@ -52,11 +47,11 @@ class MainActivityFragment2 : AppCompatActivity() {
}

private fun nextStep() {
val currentStep = supportFragmentManager.backStackEntryCount
val nextStep = supportFragmentManager.backStackEntryCount + 1
// Create a new fragment and add it to the activity
supportFragmentManager.beginTransaction()
.replace(R.id.fragment_view_step, StepFragment.newInstance(currentStep))
.addToBackStack("step $currentStep")
.replace(R.id.fragment_view_step, StepFragment.newInstance(nextStep))
.addToBackStack("step $nextStep")
.commit()
}
}
Binary file added state-rotatescreen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions state-rotatescreen.uxf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<diagram program="umletino" version="15.1"><zoom_level>13</zoom_level><element><id>UMLObject</id><coordinates><x>130</x><y>0</y><w>416</w><h>1170</h></coordinates><panel_attributes>WelcomeActivity
valign=top
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLObject</id><coordinates><x>598</x><y>0</y><w>416</w><h>1443</h></coordinates><panel_attributes>InputNameActivity
valign=top</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLSpecialState</id><coordinates><x>312</x><y>39</y><w>52</w><h>52</h></coordinates><panel_attributes>type=initial</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>130</y><w>130</w><h>52</h></coordinates><panel_attributes>onCreate()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>52</y><w>39</w><h>104</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>221</y><w>130</w><h>52</h></coordinates><panel_attributes>onStart()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>169</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>312</y><w>130</w><h>52</h></coordinates><panel_attributes>onResume()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>260</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>247</x><y>403</y><w>182</w><h>52</h></coordinates><panel_attributes>User clicks on EDIT
bg=yellow</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>351</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>585</y><w>130</w><h>52</h></coordinates><panel_attributes>onStop()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>494</y><w>130</w><h>52</h></coordinates><panel_attributes>onPause()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>533</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>442</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>130</y><w>130</w><h>52</h></coordinates><panel_attributes>onCreate()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>169</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>221</y><w>130</w><h>52</h></coordinates><panel_attributes>onStart()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>260</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>312</y><w>130</w><h>52</h></coordinates><panel_attributes>onResume()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>416</x><y>52</y><w>390</w><h>403</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>280;10;120;10;120;290;10;290</additional_attributes></element><element><id>UMLState</id><coordinates><x>715</x><y>403</y><w>182</w><h>52</h></coordinates><panel_attributes>The screen is rotated
bg=blue</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>351</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>1222</y><w>130</w><h>52</h></coordinates><panel_attributes>onStop()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>1131</y><w>130</w><h>52</h></coordinates><panel_attributes>onPause()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>1170</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>1079</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>1313</y><w>130</w><h>52</h></coordinates><panel_attributes>onDestroy()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>1261</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>117</x><y>676</y><w>455</w><h>39</h></coordinates><panel_attributes>lt=.</panel_attributes><additional_attributes>10;10;330;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>923</y><w>130</w><h>52</h></coordinates><panel_attributes>onStart()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>962</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>1014</y><w>130</w><h>52</h></coordinates><panel_attributes>onResume()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>52</y><w>39</w><h>104</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>UMLSpecialState</id><coordinates><x>780</x><y>39</y><w>52</w><h>52</h></coordinates><panel_attributes>type=initial</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLSpecialState</id><coordinates><x>793</x><y>1404</y><w>26</w><h>26</h></coordinates><panel_attributes>type=flow_final</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>1352</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLSpecialState</id><coordinates><x>312</x><y>1105</y><w>52</w><h>52</h></coordinates><panel_attributes>type=final</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>1053</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>585</y><w>130</w><h>52</h></coordinates><panel_attributes>onStop()</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>494</y><w>130</w><h>52</h></coordinates><panel_attributes>onPause()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>533</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>442</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>676</y><w>130</w><h>52</h></coordinates><panel_attributes>onDestroy()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>624</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>767</y><w>130</w><h>52</h></coordinates><panel_attributes>onCreate()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>806</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>858</y><w>130</w><h>52</h></coordinates><panel_attributes>onStart()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>897</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>741</x><y>949</y><w>130</w><h>52</h></coordinates><panel_attributes>onResume()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>715</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>715</x><y>1040</y><w>182</w><h>52</h></coordinates><panel_attributes>User clicks on SAVE
bg=yellow</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>793</x><y>988</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>741</y><w>130</w><h>52</h></coordinates><panel_attributes>onDestroy()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>780</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>UMLState</id><coordinates><x>273</x><y>832</y><w>130</w><h>52</h></coordinates><panel_attributes>onCreate()</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>325</x><y>871</y><w>39</w><h>78</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>390</x><y>754</y><w>351</w><h>338</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;10;140;10;140;240;250;240</additional_attributes></element></diagram>
Binary file added state-userflow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 0ecc95a

Please sign in to comment.