Browse Source

Update samples

Michael Ragazzon 6 years ago
parent
commit
9f8cc5ea9e

+ 35 - 10
Samples/assets/invader.rcss

@@ -45,6 +45,8 @@
 	
 	text-l: 162px 192px 14px 31px;
 	text-c: 176px 192px 1px 31px;
+	textarea: 162px 192px 145px 31px;
+	textarea-inner: 173px 206px 127px 10px;
 	
 	selectbox-tl: 281px 275px 11px 9px;
 	selectbox-t:  292px 275px 1px 9px;
@@ -271,29 +273,33 @@ input.submit:disabled
 	cursor: unavailable;
 }
 
-
-
 input.text
 {
 	height: 31px;
 	padding: 10px 10px 0px;
-
 	decorator: tiled-horizontal( text-l, text-c, auto ); /* Right becomes mirrored left */
 }
 
+textarea
+{
+	padding: 14px 12px 10px;
+	decorator: ninepatch( textarea, textarea-inner );
+}
+
 input.text,
 select,
-dataselect
+dataselect,
+textarea
 {
-	color: black;
+	color: #333;
 	font-size: 13px;
 }
 
 datagrid input.text
 {
 	width: 100%;
-	height: auto;
-	margin: 0px;
+	height: 18px;
+	margin: 0;
 	padding: 0 5px;
 
 	border-width: 1px;
@@ -548,12 +554,10 @@ scrollbarvertical sliderbar
 
 	decorator: tiled-vertical( sliderbar-t, sliderbar-c, sliderbar-b );
 }
-
 scrollbarvertical sliderbar:hover
 {
 	decorator: tiled-vertical( sliderbar-hover-t, sliderbar-hover-c, sliderbar-hover-b );
 }
-
 scrollbarvertical sliderbar:active
 {
 	decorator: tiled-vertical( sliderbar-active-t, sliderbar-active-c, sliderbar-active-b );
@@ -565,7 +569,6 @@ scrollbarvertical sliderarrowinc
 	width: 27px;
 	height: 24px;
 }
-
 scrollbarvertical sliderarrowdec
 {
 	decorator: image( sliderarrowdec );
@@ -597,3 +600,25 @@ scrollbarhorizontal
 	width: 0px;
 	height: 0px;
 }
+
+textarea scrollbarvertical
+{
+	margin: 10px 0px 4px 0;
+	width: 12px;
+}
+textarea scrollbarvertical slidertrack 
+{ 
+	decorator: none; 
+}
+textarea scrollbarvertical sliderbar
+{
+	margin-left: 2px;
+	width: 10px;
+	min-height: 16px;
+}
+textarea scrollbarvertical sliderarrowdec,
+textarea scrollbarvertical sliderarrowinc
+{
+	width: 0px;
+	height: 0px;
+}

+ 3 - 3
Samples/basic/benchmark/data/benchmark.rml

@@ -49,14 +49,14 @@
 
 		#fps 
 		{
+			position: absolute;
+			top: 55px;
+			left: 20px;
 			font-size: 0.85em;
 			text-align: left;
 		}
 		#performance 
 		{
-			position: absolute;
-			top: -300px; 
-			left: -200px;
 			width: 800px;
 			height: 300px;
 			/*transform: scale(0.6) rotate(-60deg);*/

+ 8 - 32
Samples/basic/benchmark/src/main.cpp

@@ -103,29 +103,6 @@ public:
 		}
 	} simple_event_listener;
 
-	void click_test()
-	{
-		if (!document)
-			return;
-
-		Rml::Core::String rml;
-		
-		static int i = 0;
-		if(i++ % 2 == 0)
-			rml = Rml::Core::CreateString(1000, R"( <div style="width: 100px; height: 100px; background-color: #c33;"/> )");
-		else
-			rml = "<p>Wohooo!!!</p>";
-
-		if (auto el = document->GetElementById("click_test"))
-		{
-			el->SetInnerRML(rml);
-			if (auto child = el->GetChild(0))
-				child->AddEventListener(Rml::Core::EventId::Mouseup, &simple_event_listener);
-		}
-	}
-
-
-
 	~DemoWindow()
 	{
 		if (document)
@@ -150,27 +127,26 @@ DemoWindow* window = nullptr;
 bool run_loop = true;
 bool single_loop = true;
 bool run_update = true;
-bool single_loop_update = true;
+bool single_update = true;
 
 void GameLoop()
 {
-	if (run_update || single_loop_update)
+	if (run_update || single_update)
 	{
-		window->performance_test();
-		//window->click_test();
+		single_update = false;
 
-		single_loop_update = false;
+		window->performance_test();
 	}
 
 	if (run_loop || single_loop)
 	{
+		single_loop = false;
+	
 		context->Update();
 
 		shell_renderer->PrepareRenderBuffer();
 		context->Render();
 		shell_renderer->PresentRenderBuffer();
-
-		single_loop = false;
 	}
 
 	static constexpr int buffer_size = 200;
@@ -197,7 +173,7 @@ void GameLoop()
 
 		auto el = window->GetDocument()->GetElementById("fps");
 		count_frames = 0;
-		el->SetInnerRML(Rml::Core::CreateString( 20, "FPS: %f", fps_mean ));
+		el->SetInnerRML(Rml::Core::CreateString(20, "FPS: %f", fps_mean));
 	}
 }
 
@@ -231,7 +207,7 @@ public:
 			else if (key_identifier == Rml::Core::Input::KI_RIGHT)
 			{
 				run_update = false;
-				single_loop_update = true;
+				single_update = true;
 			}
 			else if (key_identifier == Rml::Core::Input::KI_RETURN)
 			{

+ 10 - 2
Samples/basic/demo/data/demo.rml

@@ -18,7 +18,14 @@ div#title_bar div#icon
 {
 	display: none;
 }
-
+#fps 
+{
+	position: absolute;
+	top: 55px;
+	left: 20px;
+	font-size: 0.85em;
+	text-align: left;
+}
 
 tabset
 {
@@ -148,7 +155,8 @@ button:focus {
 </panel>
 <tab>Controls</tab>
 <panel>
-	<div>Type something here: <input style="vertical-align: -7px;" type="text" value="Sample text" autofocus/></div>
+	<div>Type something here: <input style="vertical-align: -7px;" size="10" type="text" value="Sample text"/></div>
+	<textarea cols="30" rows="5" wrap="nowrap">Hello World!</textarea>
 </panel>
 </tabset>
 

+ 2 - 18
Samples/luainvaders/data/high_score.rml

@@ -42,31 +42,15 @@
 		<script>
 HighScore = HighScore or {}
 
---because we pass it as a plain function in HighScore.OnLoad, we have to pay attention
---to the order of arguments. We don't need the first two in this case, so the name doesn't matter
-function HighScore.OnRowAdd(_,_,document)
-	input = document:GetElementById('player_input')
-	if input then
-		input:Focus()
-	end
-end
-
-function HighScore.OnLoad(window)
-	Window.OnWindowLoad(window)
-	local datagrid = window:GetElementById('datagrid')
-	datagrid:AddEventListener('rowupdate', HighScore.OnRowAdd, false)
-end
-	
 function HighScore.OnKeyDown(event)
 	if event.parameters['key_identifier'] == rmlui.key_identifier.RETURN then
 		Game.SetHighScoreName(Element.As.ElementFormControlInput(event.current_element).value)
-		--Game.SetHighScoreName(event.current_element:AsType(Element.etype.input).value)
 	end
 end
 		</script>
 	</head>
-	<body template="luawindow" onload="HighScore.OnLoad(document) Game.SubmitHighScore()">
-		<datagrid id="datagrid" source="high_scores.scores" min-rows="10">
+	<body template="luawindow" onload="Window.OnWindowLoad(document) Game.SubmitHighScore()">
+		<datagrid id="datagrid" source="high_scores.scores">
 			<col fields="name,name_required" formatter="name" width="40%">Pilot</col>
 			<col fields="colour" formatter="ship" width="20%">Ship</col>
 			<col fields="wave" width="20%">Wave</col>

+ 1 - 1
Samples/luainvaders/lua/start.lua

@@ -15,7 +15,7 @@ formatter.FormatData = function(raw_data)
     
     if (raw_data[1] == "1") then
         --because we know that it is only used in the high_score.rml file, use that namespace for the OnKeyDown function
-        formatted_data = "<input id=\"player_input\" type=\"text\" name=\"name\" onkeydown=\"HighScore.OnKeyDown(event)\" />"
+        formatted_data = "<input id=\"player_input\" type=\"text\" name=\"name\" onkeydown=\"HighScore.OnKeyDown(event)\" autofocus/>"
     else
         formatted_data = raw_data[0]
     end