summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2017-10-23 18:05:34 +0200
committernsensfel <SpamShield0@noot-noot.org>2017-10-23 18:05:34 +0200
commit394a1869195671b37242f296f80ba1d9728e951f (patch)
treea8421132c7a5a126185e724092e2ebd2e26ddf60 /src/battlemap
parent3b9ba42a1c4afb3ec63dc72698912ab65a0c94d8 (diff)
Improves Error messages, CSS.
Diffstat (limited to 'src/battlemap')
-rw-r--r--src/battlemap/src/Model.elm6
-rw-r--r--src/battlemap/src/UI.elm5
-rw-r--r--src/battlemap/src/View/Footer/TabMenu/Status.elm39
-rw-r--r--src/battlemap/www/index.html39
4 files changed, 71 insertions, 18 deletions
diff --git a/src/battlemap/src/Model.elm b/src/battlemap/src/Model.elm
index 3b65f49..45d875a 100644
--- a/src/battlemap/src/Model.elm
+++ b/src/battlemap/src/Model.elm
@@ -56,7 +56,11 @@ reset model characters =
}
invalidate : Type -> Error.Type -> Type
-invalidate model err = {model | error = (Just err)}
+invalidate model err =
+ {model |
+ error = (Just err),
+ ui = (UI.set_displayed_tab model.ui UI.StatusTab)
+ }
clear_error : Type -> Type
clear_error model = {model | error = Nothing}
diff --git a/src/battlemap/src/UI.elm b/src/battlemap/src/UI.elm
index 7e21a36..b0cea8f 100644
--- a/src/battlemap/src/UI.elm
+++ b/src/battlemap/src/UI.elm
@@ -44,7 +44,7 @@ default =
{
zoom_level = 1.0,
show_manual_controls = True,
- displayed_tab = Nothing
+ displayed_tab = (Just StatusTab)
}
-- Zoom ------------------------------------------------------------------------
@@ -75,7 +75,8 @@ to_string tab =
SettingsTab -> "Settings"
get_all_tabs : (List Tab)
-get_all_tabs = [StatusTab, CharactersTab, SettingsTab]
+get_all_tabs =
+ [StatusTab, CharactersTab, SettingsTab]
-- ManualControls --------------------------------------------------------------
has_manual_controls_enabled : Type -> Bool
has_manual_controls_enabled ui = ui.show_manual_controls
diff --git a/src/battlemap/src/View/Footer/TabMenu/Status.elm b/src/battlemap/src/View/Footer/TabMenu/Status.elm
index 3bb87c3..bbcf4a6 100644
--- a/src/battlemap/src/View/Footer/TabMenu/Status.elm
+++ b/src/battlemap/src/View/Footer/TabMenu/Status.elm
@@ -10,6 +10,8 @@ import Html.Attributes
import Battlemap
import Character
+import Util.Html
+
import Error
import Event
import Model
@@ -40,6 +42,17 @@ moving_character_text model =
_ -> "Error: model.selection does not match its state."
+get_error_html : Error.Type -> (Html.Html Event.Type)
+get_error_html err =
+ (Html.div
+ [
+ (Html.Attributes.class "battlemap-footer-tabmenu-status-error-msg")
+ ]
+ [
+ (Html.text (Error.to_string err))
+ ]
+ )
+
--------------------------------------------------------------------------------
-- EXPORTED --------------------------------------------------------------------
--------------------------------------------------------------------------------
@@ -51,23 +64,19 @@ get_html model =
(Html.Attributes.class "battlemap-footer-tabmenu-content-status")
]
[
+ (case model.error of
+ (Just error) -> (get_error_html error)
+ Nothing -> Util.Html.nothing
+ ),
(Html.text
- (
- (case model.state of
- Model.Default -> "Click on a character to control it."
- Model.FocusingTile -> "Error: Unimplemented."
- Model.MovingCharacterWithButtons ->
- (moving_character_text model)
+ (case model.state of
+ Model.Default -> "Click on a character to control it."
+ Model.FocusingTile -> "Error: Unimplemented."
+ Model.MovingCharacterWithButtons ->
+ (moving_character_text model)
- Model.MovingCharacterWithClick ->
- (moving_character_text model)
- )
- ++ " "
- ++
- (case model.error of
- Nothing -> ""
- (Just error) -> (Error.to_string error)
- )
+ Model.MovingCharacterWithClick ->
+ (moving_character_text model)
)
)
]
diff --git a/src/battlemap/www/index.html b/src/battlemap/www/index.html
index 82e2cef..35c7e75 100644
--- a/src/battlemap/www/index.html
+++ b/src/battlemap/www/index.html
@@ -142,6 +142,45 @@
content: "x";
}
+ .battlemap-footer
+ {
+ display: flex;
+ }
+
+ .battlemap-footer-tabmenu
+ {
+ flex: 1;
+
+ display: flex;
+ flex-direction: column;
+ }
+
+ .battlemap-footer-tabmenu-selector
+ {
+ flex: 1;
+
+ display: flex;
+ flex-direction: row;
+ justify-content: space-between;
+ }
+
+ .battlemap-footer-tabmenu-selector button
+ {
+ flex: 1;
+ }
+
+ .battlemap-footer-tabmenu-content
+ {
+ flex: initial;
+ }
+
+ .battlemap-footer-manualcontrols
+ {
+ flex: initial;
+
+ display: flex;
+ flex-direction: column;
+ }
</style>
</head>
<body>