From 81ef95c4b3a713e8e5e5e4d7630eb20bd65d1f51 Mon Sep 17 00:00:00 2001 From: "Kirill Lipatov (Leency)" Date: Sun, 15 Feb 2015 10:18:26 +0000 Subject: [PATCH] WebView beta 6.2: hamburger icon, fix menu position, use libimg pattern git-svn-id: svn://kolibrios.org@5408 a494cfbc-eb01-0410-851d-a64ba20cac60 --- programs/cmm/browser/WebView.c | 22 ++++++++----------- programs/cmm/browser/menu_rmb.h | 2 +- programs/cmm/browser/wv_skin.png | Bin 2310 -> 2004 bytes programs/cmm/lib/patterns/libimg_load_skin.h | 13 +++++++++++ 4 files changed, 23 insertions(+), 14 deletions(-) create mode 100644 programs/cmm/lib/patterns/libimg_load_skin.h diff --git a/programs/cmm/browser/WebView.c b/programs/cmm/browser/WebView.c index f5bdbe3c1..090d24bd8 100644 --- a/programs/cmm/browser/WebView.c +++ b/programs/cmm/browser/WebView.c @@ -26,17 +26,20 @@ #include "..\lib\lib.obj\libimg_lib.h" #include "..\lib\lib.obj\http.h" +//useful patterns +#include "..\lib\patterns\libimg_load_skin.h" + char homepage[] = FROM "html\homepage.htm"; #ifdef LANG_RUS - char version[]=" Текстовый браузер 1.0 Beta 6.1"; + char version[]=" Текстовый браузер 1.0 Beta 6.2"; ?define IMAGES_CACHE_CLEARED "Кэш картинок очищен" ?define T_LAST_SLIDE "Это последний слайд" char loading[] = "Загрузка страницы...
"; char page_not_found[] = FROM "html\page_not_found_ru.htm"; char accept_language[]= "Accept-Language: ru\n"; #else - char version[]=" Text-based Browser 1.0 Beta 6.1"; + char version[]=" Text-based Browser 1.0 Beta 6.2"; ?define IMAGES_CACHE_CLEARED "Images cache cleared" ?define T_LAST_SLIDE "This slide is the last" char loading[] = "Loading...
"; @@ -85,20 +88,12 @@ edit_box address_box = {250,55,34,0xffffff,0x94AECE,0xffffff,0xffffff,0,sizeof(U enum { BACK=300, FORWARD, REFRESH, HOME, NEWTAB, GOTOURL, SEARCHWEB, INPUT_CH, INPUT_BT, BTN_UP, BTN_DOWN }; -struct struct_skin { - dword image, w, h; - int Load(); -} skin; +libimg_image skin; -int struct_skin::Load() +int SetSkinColors() { dword image_data; - skin.image = load_image(abspath("wv_skin.png")); - if (!skin.image) notify("WebView skin file 'wv_skin.png' not found, program will terminate"); - skin.w = DSWORD[skin.image+4]; - skin.h = DSWORD[skin.image+8]; image_data = DSDWORD[skin.image+24]; - col_bg = DSDWORD[image_data]; panel_color = DSDWORD[skin.w*4*4 + image_data]; border_color = DSDWORD[skin.w*4*7 + image_data]; @@ -132,7 +127,8 @@ void main() if (load_dll2(libio, #libio_init,1)!=0) notify("Error: library doesn't exists - libio"); if (load_dll2(libimg, #libimg_init,1)!=0) notify("Error: library doesn't exists - libimg"); if (load_dll2(libHTTP, #http_lib_init,1)!=0) notify("Error: library doesn't exists - http"); - skin.Load(); + Libimg_LoadImage(#skin, abspath("wv_skin.png")); + SetSkinColors(); Form.width=WIN_W; Form.height=WIN_H; diff --git a/programs/cmm/browser/menu_rmb.h b/programs/cmm/browser/menu_rmb.h index 24e3eb1ea..4cf854c0e 100644 --- a/programs/cmm/browser/menu_rmb.h +++ b/programs/cmm/browser/menu_rmb.h @@ -54,7 +54,7 @@ void menu_rmb() break; case evReDraw: - DefineAndDrawWindow(Form.left+m.x,Form.top+m.y+GetSkinHeight()+3,menu.w+2,menu.h+4,0x01, 0, 0, 0x01fffFFF); + DefineAndDrawWindow(Form.left+m.x-6,Form.top+m.y+GetSkinHeight()+3,menu.w+2,menu.h+4,0x01, 0, 0, 0x01fffFFF); DrawPopup(0,0,menu.w,menu.h+3,0, col_bg,border_color); DrawMenuList(); } diff --git a/programs/cmm/browser/wv_skin.png b/programs/cmm/browser/wv_skin.png index 8351a0d143f050ede8f0f0dfeac5bf3aae595b41..91adf4cd33315e16c032e07734ba76458bb36206 100644 GIT binary patch delta 1991 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