about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/client/ec_gfx.c10
-rw-r--r--src/engine/e_if_gfx.h28
-rw-r--r--src/engine/server/es_server.c16
3 files changed, 54 insertions, 0 deletions
diff --git a/src/engine/client/ec_gfx.c b/src/engine/client/ec_gfx.c
index c062ebbd..279194ef 100644
--- a/src/engine/client/ec_gfx.c
+++ b/src/engine/client/ec_gfx.c
@@ -1153,3 +1153,13 @@ void gfx_clip_disable()
 {
 	glDisable(GL_SCISSOR_TEST);
 }
+
+void gfx_minimize()
+{
+	glfwIconifyWindow();
+}
+
+void gfx_maximize()
+{
+	glfwRestoreWindow();
+}
diff --git a/src/engine/e_if_gfx.h b/src/engine/e_if_gfx.h
index acbd4afc..73b1aa22 100644
--- a/src/engine/e_if_gfx.h
+++ b/src/engine/e_if_gfx.h
@@ -221,6 +221,34 @@ void gfx_lines_begin();
 void gfx_lines_draw(float x0, float y0, float x1, float y1);
 
 /*
+	Function: gfx_minimize
+		Minimizes the window.
+		
+	Arguments:
+		arg1 - desc
+	
+	Returns:
+
+	See Also:
+		<other_func>
+*/
+void gfx_minimize();
+
+/*
+	Function: gfx_minimize
+		Maximizes the window.
+		
+	Arguments:
+		arg1 - desc
+	
+	Returns:
+
+	See Also:
+		<other_func>
+*/
+void gfx_maximize();
+
+/*
 	Function: gfx_lines_end
 		TODO
 	
diff --git a/src/engine/server/es_server.c b/src/engine/server/es_server.c
index 62a8921d..afd0b16b 100644
--- a/src/engine/server/es_server.c
+++ b/src/engine/server/es_server.c
@@ -21,6 +21,11 @@
 
 #include <mastersrv/mastersrv.h>
 
+#if defined(CONF_FAMILY_WINDOWS) 
+	#define _WIN32_WINNT 0x0500 
+	#include <windows.h> 
+#endif 
+
 static SNAPBUILD builder;
 
 static int64 game_start_time;
@@ -1152,6 +1157,17 @@ int main(int argc, char **argv)
 	buffer[pos] = 0;
 	chdir(buffer);
 #endif
+#if defined(CONF_FAMILY_WINDOWS)
+	int i;
+	for(i = 1; i < argc; i++)
+	{
+		if(strcmp("-s", argv[i]) == 0 || strcmp("--silent", argv[i]) == 0)
+		{
+			ShowWindow(GetConsoleWindow(), SW_HIDE);
+			break;
+		}
+	}
+#endif
 
 	/* init the engine */
 	dbg_msg("server", "starting...");