forked from KolibriOS/kolibrios
Eolite fix issue with wrong path highlighted, delete cmm/experimental/ttf_performance and cmm/lib/obj/truetype.h, zSea increase default window size
git-svn-id: svn://kolibrios.org@6637 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
a1af3abfec
commit
74e17c9a4d
@ -135,7 +135,7 @@ void _SystemDiscs::Draw()
|
||||
{
|
||||
strcpy(#dev_name, list.get(i));
|
||||
GetDiskIconAndName(dev_name[1], #dev_icon, #disc_name);
|
||||
if (strstr(#path, #dev_name)) is_active=true; else is_active=false;
|
||||
if (strstr(#path, #dev_name)-#path==0) is_active=true; else is_active=false;
|
||||
if (two_panels)
|
||||
{
|
||||
name_len = strlen(#dev_name)-1*8;
|
||||
|
@ -1,10 +0,0 @@
|
||||
C-- ttf_performance.c
|
||||
@del ttf_performance
|
||||
@rename ttf_performance.com ttf_performance
|
||||
kpack ttf_performance
|
||||
@del warning.txt
|
||||
@pause
|
||||
@rem ====== Automatically add binnary to kolibri.img and then run QEMU =====
|
||||
"C:\Program Files (x86)\WinImage\WINIMAGE.exe" D:\Kolibri\work\QEMU\kolibri.img /I /H/Q C:\Users\lee\Desktop\CMM\ttf_performance\ttf_performance
|
||||
@cd /d D:\Kolibri\work\QEMU
|
||||
D:\Kolibri\work\QEMU\qemu-kos-img.bat
|
@ -1,89 +0,0 @@
|
||||
#define MEMSIZE 397113
|
||||
#include "../lib/kolibri.h"
|
||||
#include "../lib/strings.h"
|
||||
#include "../lib/mem.h"
|
||||
#include "../lib/file_system.h"
|
||||
#include "../lib/dll.h"
|
||||
#include "../lib/obj/truetype.h"
|
||||
|
||||
proc_info Form;
|
||||
dword font_data;
|
||||
stbtt_fontinfo font_info;
|
||||
|
||||
|
||||
inline fastcall dword get_start_time()
|
||||
{
|
||||
$mov eax,26
|
||||
$mov ebx,9
|
||||
$int 0x40
|
||||
}
|
||||
|
||||
#define TESTS_NUM 10
|
||||
char test_text[] = "The quick brown fox jumps over the lazy dog";
|
||||
word rez[TESTS_NUM];
|
||||
|
||||
void main()
|
||||
{
|
||||
BDVK FontFile_atr;
|
||||
int id, key;
|
||||
|
||||
mem_Init();
|
||||
if (load_dll2(libtruetype, #truetype, 1) != 0) notify("Error: library doesn't exists - truetype");
|
||||
|
||||
if (param[0]==0) strcpy(#param, "/sys/arial.ttf");
|
||||
GetFileInfo(#param, #FontFile_atr);
|
||||
font_data = malloc(FontFile_atr.sizelo);
|
||||
ReadFile(0, FontFile_atr.sizelo, #font_data, #param);
|
||||
|
||||
init_font stdcall (#font_info, #font_data);
|
||||
if (EAX==0) notify("init_font failed");
|
||||
|
||||
loop()
|
||||
{
|
||||
switch(WaitEvent())
|
||||
{
|
||||
case evButton:
|
||||
id=GetButtonID();
|
||||
if (id==1) ExitProcess();
|
||||
break;
|
||||
|
||||
case evKey:
|
||||
key = GetKey();
|
||||
IF (key==013){ //Enter
|
||||
debug("Tests count: ");
|
||||
debugi(TESTS_NUM);
|
||||
for (id=0; id<TESTS_NUM; id++)
|
||||
{
|
||||
rez[id] = DrawFonts();
|
||||
debugi(rez[id]);
|
||||
}
|
||||
debugln("Done");
|
||||
}
|
||||
break;
|
||||
|
||||
case evReDraw:
|
||||
DefineAndDrawWindow(30,100,800,300,0x34,0xFFFFFF,"TTF Viewer v0.1");
|
||||
GetProcessInfo(#Form, SelfInfo);
|
||||
WriteTextB(50,85,0x90,0xFF00FF,"Press Enter to start testing");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
word DrawFonts()
|
||||
{
|
||||
dword time1, time2;
|
||||
time1 = get_start_time();
|
||||
text_out stdcall (#test_text, #font_info, 10, time1, 0xFFFfff, 3, 4);
|
||||
text_out stdcall (#test_text, #font_info, 12, time1, 0xFFFfff, 3, 18);
|
||||
text_out stdcall (#test_text, #font_info, 24, time1, 0xFFFfff, 3, 35);
|
||||
text_out stdcall (#test_text, #font_info, 36, time1, 0xFFFfff, 3, 60);
|
||||
text_out stdcall (#test_text, #font_info, 48, time1, 0xFFFfff, 3, 110);
|
||||
text_out stdcall (#test_text, #font_info, 58, time1, 0xFFFfff, 3, 170);
|
||||
time2 = get_start_time();
|
||||
return time2 - time1;
|
||||
}
|
||||
|
||||
|
||||
stop:
|
@ -1,48 +0,0 @@
|
||||
// Truetype library
|
||||
#ifndef INCLUDE_LIBTRUETYPE_H
|
||||
#define INCLUDE_LIBTRUETYPE_H
|
||||
|
||||
#ifndef INCLUDE_KOLIBRI_H
|
||||
#include "../lib/kolibri.h"
|
||||
#endif
|
||||
|
||||
#ifndef INCLUDE_DLL_H
|
||||
#include "../lib/dll.h"
|
||||
#endif
|
||||
dword libtruetype = #att_libtruetype;
|
||||
char att_libtruetype[22] = "/sys/lib/truetype.obj\0";
|
||||
|
||||
dword truetype = #att_truetype; // truetype(unsigned char *s, stbtt_fontinfo *buffer, char *screen1, int width, int height)
|
||||
dword get_length = #att_get_length; // get_length(unsigned char *s, char *buffer, int height, int max_len)
|
||||
dword get_width = #att_get_width; // get_width_utf8(unsigned char *s, stbtt_fontinfo *buffer, int height)
|
||||
dword text_out = #att_text_out; // text_out(unsigned char *string, char *buffer, int height, int color,int back_color, int x, int y)
|
||||
dword init_font = #att_init_font; // init_font(stbtt_fontinfo *font,unsigned char *FontData)
|
||||
dword text_out_mem = #att_text_out_mem; // text_out_mem(unsigned char *string, stbtt_fontinfo *buffer, int height, int color,int back_color)
|
||||
$DD 2 dup 0
|
||||
|
||||
char att_truetype[] = "truetype";
|
||||
char att_get_length[] = "get_length";
|
||||
char att_get_width[] = "get_width";
|
||||
char att_text_out[] = "text_out";
|
||||
char att_text_out_mem[] = "text_out_mem";
|
||||
char att_init_font[] = "init_font";
|
||||
|
||||
//============================================================
|
||||
//============================================================
|
||||
|
||||
char fontinfo[28];
|
||||
|
||||
struct stbtt_fontinfo
|
||||
{
|
||||
dword userdata;
|
||||
dword data; // pointer to .ttf file
|
||||
int fontstart; // offset of start of font
|
||||
|
||||
int numGlyphs; // number of glyphs, needed for range checking
|
||||
|
||||
int loca,head,glyf,hhea,hmtx,kern; // table locations as offset from start of .ttf
|
||||
int index_map; // a cmap mapping for our chosen character encoding
|
||||
int indexToLocFormat; // format needed to map from glyph index to glyph
|
||||
};
|
||||
|
||||
#endif
|
@ -208,15 +208,15 @@ START: ; start of execution
|
||||
; òåïåðü â ecx íîìåð ïðîöåññà
|
||||
; mov [process],ecx
|
||||
;---------------------------------------------------------------------
|
||||
cmp [wnd_width],635
|
||||
cmp [wnd_width],778
|
||||
jae @f
|
||||
mov [wnd_width],635
|
||||
mov [wnd_width],778
|
||||
@@:
|
||||
mcall 48, 5 ; GetClientTop, fix for case when @patel in the top
|
||||
shr ebx, 16
|
||||
mov ecx,ebx
|
||||
shl ecx,16
|
||||
add ecx,150 ; [y start] *65536 + [y size]
|
||||
add ecx,523 ; [y start] *65536 + [y size]
|
||||
cmp [wnd_height],ecx
|
||||
jae @f
|
||||
mov [wnd_height],ecx
|
||||
|
Loading…
Reference in New Issue
Block a user