Browse Source

tetris module update

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@948 bbd45198-f89e-11dd-88c7-29a3b14d5316
qiuyiuestc 14 years ago
parent
commit
5a8f34e46f

+ 1 - 1
components/finsh/cmd.c

@@ -385,7 +385,7 @@ int list_module(void)
 		/* list main thread in module */
 		if(module->module_thread != RT_NULL)
 		{	
-			rt_kprintf(" main thread  pri  status      sp     stack size max used   left tick  error\n");
+			rt_kprintf("main thread  pri  status      sp     stack size max used   left tick  error\n");
 			rt_kprintf("------------- ---- ------- ---------- ---------- ---------- ---------- ---\n");
 			thread = module->module_thread;
 			rt_kprintf("%-8s 0x%02x", thread->name, thread->current_priority);

+ 2 - 2
components/module/tetris/application.c

@@ -19,11 +19,11 @@
 #include <rtgui/widgets/workbench.h>
 #include "tetris.h"
 
-int rt_application_init()
+int rt_application_init(void)
 {
 	rt_thread_t tid;
 
-	tid = rt_thread_create("wb", tetris_ui_entry, RT_NULL, 2048, 20, 5);
+	tid = rt_thread_create("tetris", tetris_ui_entry, RT_NULL, 2048, 20, 5);
 	if (tid != RT_NULL) rt_thread_startup(tid);
 	return 0;
 }

+ 1 - 1
components/module/tetris/tetris.h

@@ -57,5 +57,5 @@
  rt_tetris_view_t* rt_tetris_view_create(void* private);
  rt_err_t rt_tetris_view_destroy(rt_tetris_view_t* thiz);
 
-rt_err_t tetris_ui_entry(void* parameter);
+void tetris_ui_entry(void* parameter);
 

+ 9 - 9
components/module/tetris/tetris_modal.c

@@ -14,21 +14,20 @@
  
 #include <rtthread.h>
 #include <stdlib.h> 
-
 #include "tetris.h"
 
 struct rt_tetris
 {
 	rt_uint32_t	width;			/* the width of the tetris */
 	rt_uint32_t	height;			/* the height of the tetris */
-	rt_uint16_t* panel;			/* the panel of the tetris */
-	rt_uint32_t* brick;			/* the current brick of the tetris */
-	rt_uint32_t* next_brick;	/* the next brick  of the tetris */
-	rt_tetris_view_t* view;		/* the view on which the tetris show */
-	rt_uint32_t level;			/* game level */
-	rt_uint32_t lines;			/* released lines count */
-	rt_uint32_t score;			/* total scores statistic */
-	rt_bool_t status;			/* game status, pause or runing */
+	rt_uint16_t* 	panel;			/* the panel of the tetris */
+	rt_uint32_t* 	brick;			/* the current brick of the tetris */
+	rt_uint32_t* 	next_brick;		/* the next brick  of the tetris */
+	rt_tetris_view_t* view;			/* the view on which the tetris show */
+	rt_uint32_t 	level;			/* game level */
+	rt_uint32_t 	lines;			/* released lines count */
+	rt_uint32_t 	score;			/* total scores statistic */
+	rt_bool_t 		status;			/* game status, pause or runing */
 };
 
 static const rt_uint32_t g_brick[][4] = 
@@ -728,3 +727,4 @@ static rt_err_t rt_tetris_release_lines(rt_tetris_t* thiz, rt_uint32_t brick[])
 		return -RT_ERROR;
 	}
 }
+

+ 4 - 6
components/module/tetris/tetris_ui.c

@@ -20,7 +20,6 @@
 #include <rtgui/widgets/window.h>
 #include <rtgui/widgets/workbench.h>
 #include <rtgui/dc.h>
-
 #include "tetris.h"
 
 struct app_info
@@ -41,7 +40,7 @@ static void _game_over(void)
 	rt_tetris_destory(g_app_info.tetris);
 	rt_tetris_view_destroy(g_app_info.tetris_view);	
 	rtgui_view_destroy(g_app_info.home_view);
-	rtgui_workbench_destroy(g_app_info.workbench);
+	rtgui_workbench_close(g_app_info.workbench);
 	rt_kprintf("GAME OVER\n");
 }
 
@@ -137,7 +136,7 @@ static rt_bool_t workbench_event_handler(rtgui_widget_t *widget, rtgui_event_t *
 	return rtgui_workbench_event_handler(widget, event);
 }
 
-rt_err_t tetris_ui_entry(void* parameter)
+void tetris_ui_entry(void* parameter)
 {
 	rt_mq_t mq;
 
@@ -148,7 +147,7 @@ rt_err_t tetris_ui_entry(void* parameter)
 	if (g_app_info.workbench == RT_NULL) 
 	{
 		rt_kprintf("can't find panel 'main'\n");
-		return -RT_ERROR;
+		return;
 	}	
 	rtgui_widget_set_event_handler(RTGUI_WIDGET(g_app_info.workbench), workbench_event_handler);
 
@@ -177,10 +176,9 @@ rt_err_t tetris_ui_entry(void* parameter)
 	rtgui_timer_start(g_app_info._timer);
 
 	rtgui_workbench_event_loop(g_app_info.workbench);
+	rtgui_workbench_destroy(g_app_info.workbench);
 
 	rtgui_thread_deregister(rt_thread_self());
 	rt_mq_delete(mq);
-
-	return RT_EOK;
 }
 

+ 1 - 1
components/module/tetris/tetris_view.c

@@ -17,7 +17,6 @@
 #include <rtgui/rtgui_system.h>
 #include <rtgui/widgets/view.h>
 #include <rtgui/dc.h>
-
 #include "tetris.h"
 
 static rt_err_t _rt_tetris_view_update(rt_tetris_view_t* thiz, rt_tetris_t* tetris);
@@ -216,3 +215,4 @@ static rt_err_t _rt_tetris_view_update(rt_tetris_view_t* thiz, rt_tetris_t* tetr
 
 	return RT_EOK;	
 }
+