Bläddra i källkod

Merge pull request #35 from yangfasheng/master

update font.c rtgui_system.c
yangfasheng 7 år sedan
förälder
incheckning
2d02f64c1a
3 ändrade filer med 30 tillägg och 32 borttagningar
  1. 0 4
      include/rtgui/rtgui_config.h
  2. 30 12
      src/font.c
  3. 0 16
      src/rtgui_system.c

+ 0 - 4
include/rtgui/rtgui_config.h

@@ -40,10 +40,6 @@
 #endif
 #endif
 
-#if GUIENGINE_DEFAULT_FONT_SIZE == 0
-#define GUIENGINE_DEFAULT_FONT_SIZE 12
-#endif
-
 #define GUIENGINE_SVR_THREAD_PRIORITY       15
 #define GUIENGINE_SVR_THREAD_TIMESLICE      5
 #ifndef GUIENGIN_SVR_THREAD_STACK_SIZE

+ 30 - 12
src/font.c

@@ -27,6 +27,10 @@
 #include <rtgui/dc.h>
 #include <rtgui/filerw.h>
 
+#ifdef GUIENGINE_USING_TTF
+#include <rtgui/font_freetype.h>
+#endif
+
 static rtgui_list_t _rtgui_font_list;
 static struct rtgui_font *rtgui_default_font;
 
@@ -46,33 +50,47 @@ void rtgui_font_system_init(void)
     /* set default font to NULL */
     rtgui_default_font = RT_NULL;
 
-#ifdef GUIENGINE_USING_FONT16
-    rtgui_font_system_add_font(&rtgui_font_asc16);
+#ifdef GUIENGINE_USING_FONT12
+    rtgui_font_system_add_font(&rtgui_font_asc12);
+    rtgui_default_font = &rtgui_font_asc12;
 #ifdef GUIENGINE_USING_FONTHZ
-    rtgui_font_system_add_font(&rtgui_font_hz16);
+    rtgui_font_system_add_font(&rtgui_font_hz12);
     {
-        struct rtgui_hz_file_font *hz16 = (struct rtgui_hz_file_font *)rtgui_font_hz16.data;
-        if (hz16->fd < 0)
+        struct rtgui_hz_file_font *hz12 = (struct rtgui_hz_file_font *)rtgui_font_hz12.data;
+        if (hz12->fd < 0)
         {
-            rtgui_font_system_remove_font(&rtgui_font_hz16);
+            rtgui_font_system_remove_font(&rtgui_font_hz12);
+        }
+        else
+        {
+            rtgui_default_font = &rtgui_font_hz12;
         }
     }
 #endif
 #endif
 
-#ifdef GUIENGINE_USING_FONT12
-    rtgui_font_system_add_font(&rtgui_font_asc12);
+#ifdef GUIENGINE_USING_FONT16
+    rtgui_font_system_add_font(&rtgui_font_asc16);
+    rtgui_default_font = &rtgui_font_asc16;
 #ifdef GUIENGINE_USING_FONTHZ
-    rtgui_font_system_add_font(&rtgui_font_hz12);
+    rtgui_font_system_add_font(&rtgui_font_hz16);
     {
-        struct rtgui_hz_file_font *hz12 = (struct rtgui_hz_file_font *)rtgui_font_hz12.data;
-        if (hz12->fd < 0)
+        struct rtgui_hz_file_font *hz16 = (struct rtgui_hz_file_font *)rtgui_font_hz16.data;
+        if (hz16->fd < 0)
         {
-            rtgui_font_system_remove_font(&rtgui_font_hz12);
+            rtgui_font_system_remove_font(&rtgui_font_hz16);
+        }
+        else
+        {
+            rtgui_default_font = &rtgui_font_hz16;
         }
     }
 #endif
 #endif
+
+#ifdef GUIENGINE_USING_TTF
+    rtgui_ttf_system_init();
+#endif
 }
 
 void rtgui_font_fd_uninstall(void)

+ 0 - 16
src/rtgui_system.c

@@ -32,9 +32,6 @@
 #include <rtgui/rtgui_system.h>
 #include <rtgui/widgets/window.h>
 
-#ifdef GUIENGINE_USING_TTF
-#include <rtgui/font_freetype.h>
-#endif
 
 #ifdef _WIN32_NATIVE
 #define RTGUI_MEM_TRACE
@@ -65,19 +62,6 @@ int rtgui_system_server_init(void)
     /* use driver rect for main window */
     rtgui_graphic_driver_get_rect(rtgui_graphic_driver_get_default(), &_mainwin_rect);
 
-    /* set the default font */
-#if GUIENGINE_DEFAULT_FONT_SIZE == 16
-    rtgui_font_set_defaut(&rtgui_font_asc16);
-#elif GUIENGINE_DEFAULT_FONT_SIZE == 12
-    rtgui_font_set_defaut(&rtgui_font_asc12);
-#else
-    rtgui_font_set_defaut(&rtgui_font_asc12);
-#endif
-
-#ifdef GUIENGINE_USING_TTF
-    rtgui_ttf_system_init();
-#endif
-
     return 0;
 }
 INIT_APP_EXPORT(rtgui_system_server_init);