diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-06-25 07:53:55 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-06-25 07:53:55 +0000 |
commit | a2a830413baab17c3c19b07df19dcb2dcc9e3c42 (patch) | |
tree | 773cd885f9e5eee5050a53ff0141661caed4da69 /navit/gui | |
parent | 971b7f089f6dd96eed85ef36b0c5c20ee19c6b61 (diff) | |
download | navit-svn-a2a830413baab17c3c19b07df19dcb2dcc9e3c42.tar.gz |
Add:gui_internal:Improve configurability
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5798 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/gui')
-rw-r--r-- | navit/gui/internal/gui_internal.c | 17 | ||||
-rw-r--r-- | navit/gui/internal/gui_internal_menu.c | 3 | ||||
-rw-r--r-- | navit/gui/internal/gui_internal_priv.h | 1 |
3 files changed, 16 insertions, 5 deletions
diff --git a/navit/gui/internal/gui_internal.c b/navit/gui/internal/gui_internal.c index 4a527fbd..a3abf2dc 100644 --- a/navit/gui/internal/gui_internal.c +++ b/navit/gui/internal/gui_internal.c @@ -561,9 +561,13 @@ gui_internal_apply_config(struct gui_priv *this) this->spacing = current_config->spacing; } if (!this->fonts[0]) { - this->fonts[0]=graphics_font_new(this->gra,this->font_size,1); - this->fonts[1]=graphics_font_new(this->gra,this->font_size*66/100,1); - this->fonts[2]=graphics_font_new(this->gra,this->font_size*50/100,1); + int i,sizes[]={100,66,50}; + for (i = 0 ; i < 3 ; i++) { + if (this->font_name) + this->fonts[i]=graphics_named_font_new(this->gra,this->font_name,this->font_size*sizes[i]/100,1); + else + this->fonts[i]=graphics_font_new(this->gra,this->font_size*sizes[i]/100,1); + } } } @@ -3269,7 +3273,10 @@ static struct gui_priv * gui_internal_new(struct navit *nav, struct gui_methods this->text_foreground_color=*attr->u.color; else this->text_foreground_color=color_white; - this->text_background_color=color_black; + if( (attr=attr_search(attrs,NULL,attr_text_background))) + this->text_background_color=*attr->u.color; + else + this->text_background_color=color_black; if( (attr=attr_search(attrs,NULL,attr_columns))) this->cols=attr->u.num; if( (attr=attr_search(attrs,NULL,attr_osd_configuration))) @@ -3295,6 +3302,8 @@ static struct gui_priv * gui_internal_new(struct navit *nav, struct gui_methods this->radius=attr->u.num; else this->radius=10; + if( (attr=attr_search(attrs,NULL,attr_font))) + this->font_name=g_strdup(attr->u.str); this->data.priv=this; this->data.gui=&gui_internal_methods_ext; this->data.widget=&gui_internal_widget_methods; diff --git a/navit/gui/internal/gui_internal_menu.c b/navit/gui/internal/gui_internal_menu.c index ba9448c1..b72b00ae 100644 --- a/navit/gui/internal/gui_internal_menu.c +++ b/navit/gui/internal/gui_internal_menu.c @@ -208,9 +208,10 @@ gui_internal_top_bar(struct gui_priv *this) 512:Set osd_configuration and zoom to route when setting position 1024:Don't show back button 2048:No highlighting of keyboard + 4096:Center menu title */ - w=gui_internal_box_new(this, gravity_left_center|orientation_horizontal|(this->flags & 1 ? 0:flags_fill)); + w=gui_internal_box_new(this, (this->flags & 4096 ? gravity_center : gravity_left_center)|orientation_horizontal|(this->flags & 1 ? 0:flags_fill)); w->bl=this->spacing; w->spx=this->spacing; w->background=this->background2; diff --git a/navit/gui/internal/gui_internal_priv.h b/navit/gui/internal/gui_internal_priv.h index 75ca8da0..49bab2c7 100644 --- a/navit/gui/internal/gui_internal_priv.h +++ b/navit/gui/internal/gui_internal_priv.h @@ -54,6 +54,7 @@ struct gui_priv { struct color background_color, background2_color, text_foreground_color, text_background_color; int spacing; int font_size; + char *font_name; int fullscreen; struct graphics_font *fonts[3]; /** |