/programs/cmm/TWB/TWB.c |
---|
38,6 → 38,7 |
dword link_bg; |
dword bufpointer; |
dword bufsize; |
dword is_html; |
void Paint(); |
void SetPageDefaults(); |
173,10 → 174,14 |
custom_encoding = CH_CP866; |
} |
SetPageDefaults(); |
if (strstri(bufpointer, "<body")==-1) { |
is_html = true; |
if (!strstri(bufpointer, "<body")) { |
t_body = true; |
if (strstri(bufpointer, "<html")==-1) style.pre = true; //show linebreaks for a plaint text |
if (!strstri(bufpointer, "<html")) { |
style.pre = true; //show linebreaks for a plaint text |
is_html = false; |
} |
} |
for (bufpos=bufpointer ; (bufpos < bufpointer+bufsize) && (ESBYTE[bufpos]!=0) ; bufpos++;) |
{ |
bukva = ESBYTE[bufpos]; |
213,6 → 218,7 |
} |
break; |
case '<': |
if (!is_html) goto _default; |
bufpos++; |
if (!strncmp(bufpos,"!--",3)) |
{ |
252,8 → 258,7 |
// ignore text inside the next tags |
if (tag.is("script")) || (tag.is("style")) || (tag.is("binary")) || (tag.is("select")) { |
sprintf(#tag.params, "</%s>", #tag.name); |
j = strstri(bufpos, #tag.params); |
if (j!=-1) bufpos = j-1; |
if (j = strstri(bufpos, #tag.params)) bufpos = j-1; |
break; |
} |
267,6 → 272,7 |
} |
break; |
default: |
_default: |
AddCharToTheLine(ESBYTE[bufpos]); |
} |
} |
/programs/cmm/browser/WebView.c |
---|
461,22 → 461,14 |
return; |
case COPY_LINK_URL: |
strncpy(#new_clip_url, PageLinks.GetURL(PageLinks.active), URL_SIZE); |
if ( strcmp(#new_clip_url, "./", 2) ) |
{ |
Clipboard__CopyText( GetAbsoluteURL(#new_clip_url, history.current()) ); |
} |
else { |
Clipboard__CopyText( PageLinks.GetURL(PageLinks.active) ); |
} |
GetAbsoluteURL(#new_clip_url, history.current()); |
Clipboard__CopyText(#new_clip_url); |
notify("'URL copied to clipboard'O"); |
return; |
case DOWNLOAD_LINK_CONTENTS: |
if (!downloader_opened) { |
strcpy(#downloader_edit, PageLinks.GetURL(PageLinks.active)); |
if ( strcmp(#downloader_edit, "./", 2) ) |
{ |
GetAbsoluteURL(#downloader_edit, history.current()); |
} |
CreateThread(#Downloader,#downloader_stak+4092); |
} |
return; |
548,10 → 540,10 |
{ |
dword url_from_file; |
if (!UrlExtIs(_path, "url")) return false; |
url_from_file = strstri(_data, "URL="); |
if (url_from_file == -1) return false; |
if (! url_from_file = strstri(_data, "URL=")) return false; |
replace_char(url_from_file, '\n', '\0', strlen(url_from_file)); |
OpenPage(url_from_file); |
return true; |
} |
bool GetLocalFileData(dword _path) |
/programs/cmm/browser/texts.h |
---|
1,4 → 1,4 |
char version[]="WebView 2.5c"; |
char version[]="WebView 2.5e"; |
#ifdef LANG_RUS |
char page_not_found[] = FROM "html\\page_not_found_ru.htm""\0"; |
9,7 → 9,7 |
"®á¬®âà¥âì ¨á室¨ª|Ctrl+U |
¥¤ ªâ¨à®¢ âì ¨á室¨ª"; |
char main_menu[] = |
"âªàëâì ä ©«|Ctrl+O |
"âªàëâì ä ©«...|Ctrl+O |
®¢®¥ ®ª®|Ctrl+N |
- |
áâ®à¨ï|Ctrl+H |
39,7 → 39,7 |
"View source|Ctrl+U |
Edit source"; |
char main_menu[] = |
"Open local file|Ctrl+O |
"Open local file...|Ctrl+O |
New window|Ctrl+N |
- |
History|Ctrl+H |
/programs/cmm/lib/strings.h |
---|
503,6 → 503,18 |
return count; |
} |
inline int strinum(dword haystack, needle) |
{ |
int count = 0; |
int needle_len = strlen(needle); |
loop() { |
if (! haystack = strstri(haystack, needle)) break; |
haystack+=needle_len; |
count++; |
} |
return count; |
} |
inline signed int strcmpi(dword cmp1, cmp2) |
{ |
char si, ue; |
537,7 → 549,7 |
searchin++; |
if (DSBYTE[usestr_e]=='\0') return searchin; |
} |
return -1; |
return 0; |
} |
546,8 → 558,7 |
dword startp, endp; |
dword copyin_start_off = copyin; |
if (startstr==0) startp = search_in; else startp = strstr(search_in, startstr) + strlen(startstr); |
endp = strstri(startp, endstr); |
if (endp==0) endp = startp+strlen(search_in); |
if (! endp = strstri(startp, endstr)) endp = startp+strlen(search_in); |
//if (startp==endp) return 0; |
do |
{ |
/programs/cmm/quark/data.h |
---|
13,7 → 13,7 |
char copied_chars[] = "ª®¯¨à®¢ ® ᨢ®«®¢: %i"; |
char about[] = "Quark Text v0.7 |
char about[] = "Quark Text v0.72 |
¢â®à: ¨à¨«« ¨¯ ⮢ aka Leency |
©â: http://aspero.pro |
52,7 → 52,7 |
char copied_chars[] = "Copied %i chars"; |
char about[] = "Quark Text v0.7 |
char about[] = "Quark Text v0.72 |
Author: Kiril Lipatov aka Leency |
Website: http://aspero.pro |
129,7 → 129,7 |
Form.left = ini.GetInt("WinX", 150); |
Form.top = ini.GetInt("WinY", 50); |
Form.width = ini.GetInt("WinW", 640); |
Form.height = ini.GetInt("WinH", 560); |
Form.height = ini.GetInt("WinH", 563); |
} |
void SaveIniSettings() |
/programs/cmm/quark/quark.c |
---|
55,6 → 55,8 |
int curcol_scheme; |
int font_size; |
bool enable_edit = false; |
#include "data.h" |
#include "search.h" |
255,8 → 257,9 |
if (list.ProcessKey(key_scancode)) { |
if (key_modifier & KEY_LSHIFT) || (key_modifier & KEY_RSHIFT) selection.set_end(); |
DrawPage(); |
return; |
} |
//EventInsertCharIntoText(); |
if(enable_edit) EventInsertCharIntoText(); |
} |
void HandleMouseEvent() |
314,7 → 317,7 |
{ |
int new_y = search.find_next(list.first); |
if (new_y) { |
list.first = new_y / list.item_h; |
list.first = new_y; |
list.CheckDoesValuesOkey(); |
DrawPage(); |
} |
576,6 → 579,13 |
DrawStatusBar(#copy_status_text); |
} |
void EventEnableEdit() |
{ |
enable_edit ^= 1; |
if (enable_edit) notify("'Edit mode is enabled.\nNow you can only replace text, not insert, nor delete.'I"); |
draw_window(); |
} |
//===================================================// |
// // |
// DRAWS AND OTHER FUNCS // |
638,19 → 648,21 |
DrawBar(0, 0, Form.cwidth, TOOLBAR_H - 1, sc.work); |
DrawBar(0, TOOLBAR_H - 1, Form.cwidth, 1, sc.work_graph); |
//AddTopBarButton(#EventNewFile, ECTRL+SCAN_CODE_KEY_N, 2, x.set(8), false); |
AddTopBarButton(#EventOpenDialog, ECTRL+SCAN_CODE_KEY_O, 0, x.set(8), false); |
//AddTopBarButton(#EventSave, ECTRL+SCAN_CODE_KEY_S, 5, x.inc(SMALL_GAP), false); |
x.set(-SMALL_GAP+8); |
if(enable_edit) AddTopBarButton(#EventNewFile, ECTRL+SCAN_CODE_KEY_N, 2, x.inc(SMALL_GAP), false); |
AddTopBarButton(#EventOpenDialog, ECTRL+SCAN_CODE_KEY_O, 0, x.inc(SMALL_GAP), false); |
if(enable_edit) && (param[0]) AddTopBarButton(#EventSave, ECTRL+SCAN_CODE_KEY_S, 5, x.inc(SMALL_GAP), false); |
AddTopBarButton(#EventShowFileInfo, ECTRL+SCAN_CODE_KEY_I, 10, x.inc(SMALL_GAP), false); |
AddTopBarButton(#EventMagnifyMinus, ECTRL+SCAN_CODE_MINUS, 33, x.inc(BIG_GAP), false); |
AddTopBarButton(#EventMagnifyPlus, ECTRL+SCAN_CODE_PLUS, 32, x.inc(SMALL_GAP), false); |
AddTopBarButton(#EventClickSearch, ECTRL+SCAN_CODE_KEY_F, 49, x.inc(BIG_GAP), serha); search_mx = EAX; |
x.set(Form.cwidth-4); |
//AddTopBarButton(#EventShowInfo, NULL, -1, x.inc(-SMALL_GAP), false); burger_mx = EAX; |
AddTopBarButton(#EventShowThemesList, NULL, 40, x.inc(-SMALL_GAP), thema); theme_mx = EAX; |
AddTopBarButton(#EventEnableEdit, NULL, 38, x.inc(-SMALL_GAP), enable_edit); |
//if(enable_edit) AddTopBarButton(#EventShowInfo, NULL, -1, x.inc(-SMALL_GAP), false); burger_mx = EAX; |
AddTopBarButton(#EventShowThemesList, NULL, 40, x.inc(-BIG_GAP), thema); theme_mx = EAX; |
AddTopBarButton(#EventShowReopenMenu, ECTRL+SCAN_CODE_KEY_E, 16, x.inc(-SMALL_GAP), reopa); reopenin_mx = EAX; |
//AddTopBarButton(#EventOpenSysfuncs, NULL, 18, x.inc(-SMALL_GAP), false); |
//AddTopBarButton(#EventOpenPipet, NULL, 39, x.inc(-SMALL_GAP), false); |
if(enable_edit) AddTopBarButton(#EventOpenSysfuncs, NULL, 18, x.inc(-SMALL_GAP), false); |
if(enable_edit) AddTopBarButton(#EventOpenPipet, NULL, 39, x.inc(-SMALL_GAP), false); |
} |
void DrawStatusBar(dword _in_text) |
719,6 → 731,6 |
list.item_w = list.font_w; |
list.horisontal_selelection = true; |
list.SetSizes(0, TOOLBAR_H, Form.cwidth-scroll.size_x-1, |
Form.cheight - TOOLBAR_H - search.height() - STATUSBAR_H /*- TAB_H*/, |
Form.cheight - TOOLBAR_H - calc(search.visible * SEARCH_H) - STATUSBAR_H /*- TAB_H*/, |
math.round(list.font_h * 1.4)); |
} |
/programs/cmm/quark/search.h |
---|
9,8 → 9,6 |
void show(); |
void hide(); |
bool draw(); |
void draw_found(); |
int height(); |
bool edit_key(); |
bool edit_mouse(); |
void clear(); |
37,11 → 35,6 |
draw_window(); |
} |
int SEARCH::height() |
{ |
return visible * SEARCH_H; |
} |
bool SEARCH::edit_key() |
{ |
if (visible) && (search_box.flags & ed_focus) { |
61,16 → 54,9 |
return false; |
} |
void SEARCH::draw_found() |
bool SEARCH::draw(dword _btn_find, _btn_hide, _y) |
{ |
char matches[30]; |
sprintf(#matches, T_MATCHES, found_count); |
WriteTextWithBg(search_box.left+search_box.width+14+110, |
search_box.top+3, 0xD0, sc.work_text, #matches, sc.work); |
} |
bool SEARCH::draw(dword _btn_find, _btn_hide, _y) |
{ |
if (!visible) return false; |
DrawBar(0, _y, Form.cwidth, 1, sc.work_graph); |
DrawBar(0, _y+1, Form.cwidth, SEARCH_H-1, sc.work); |
85,7 → 71,9 |
DrawCaptButton(search_box.left+search_box.width+14, search_box.top-1, 90, |
TOOLBAR_ICON_HEIGHT+1, _btn_find, sc.work_light, sc.work_text, T_FIND_NEXT); |
draw_found(); |
sprintf(#matches, T_MATCHES, found_count); |
WriteTextWithBg(search_box.left+search_box.width+14+110, |
search_box.top+3, 0xD0, sc.work_text, #matches, sc.work); |
DefineHiddenButton(Form.cwidth-26, search_box.top-1, TOOLBAR_ICON_HEIGHT+1, |
TOOLBAR_ICON_HEIGHT+1, _btn_hide); |
106,12 → 94,11 |
if (!search_text[0]) return false; |
strcpy(#found_text, #search_text); |
//highlight(0xFF0000, _bg_color); |
found_count = strnum(io.buffer_data, #found_text); |
draw_found(); |
found_count = strinum(io.buffer_data, #found_text); |
draw_window(); |
for (i=_cur_pos+1; i<list.count; i++) { |
if (strstri(lines.get(i),#search_text)!=-1) return atoi(lines.get(i)); |
if (strstri(lines.get(i),#search_text)) return i; |
} |
return false; |
} |
/programs/cmm/txtread/search.h |
---|
124,7 → 124,7 |
draw_found(); |
for (i=_cur_pos+1; i<pos.count; i++) { |
if (strstri(lines.get(i),#search_text)!=-1) return atoi(pos.get(i)); |
if (strstri(lines.get(i),#search_text)) return atoi(pos.get(i)); |
} |
return false; |
} |
135,7 → 135,7 |
dword col; |
found_count = 0; |
for (i=0; i<pos.count; i++) { |
if (strstri(lines.get(i),#search_text)==-1) { |
if (!strstri(lines.get(i),#search_text)) { |
col=_bg_color; |
} else { |
col=_color; |