TempleOSCDV4.06.ISO
This commit is contained in:
1 parent
6fe38d2d9d
commit
b632ab9a4f
261 files changed
+6282
-5801
No files matched your search
+47
-47
@@ -37,27 +37,27 @@ Bool IsEditableText(CDocEntry *doc_e)
|
||||
|
||||
CDocEntry *DocEntryNewBase(CDoc *doc,I64 type,I64 de_flags=0,
|
||||
I64 x=0,I64 y=0,I64 page_line_num=0)
|
||||
{//See also $LK,"MAllocIdentical",A="FF:::/Adam/DolDoc/DocRecalc.CPP,MAllocIdentical"$ and $MA-X+PU,"CDocEntry",LM="F(\"sizeof(CDocEntry)\");View;"$.
|
||||
CDocEntry *result=CAlloc(sizeof(CDocEntryBase),doc->mem_task);
|
||||
result->type=type;
|
||||
result->de_flags=de_flags|doldoc.dft_de_flags[type.u8[0]];
|
||||
result->x=x;
|
||||
result->y=y;
|
||||
result->page_line_num=page_line_num;
|
||||
return result;
|
||||
{//See also $LK,"MAllocIdent",A="FF:::/Adam/DolDoc/DocRecalc.CPP,MAllocIdent"$ and $MA-X+PU,"CDocEntry",LM="F(\"sizeof(CDocEntry)\");View;"$.
|
||||
CDocEntry *res=CAlloc(sizeof(CDocEntryBase),doc->mem_task);
|
||||
res->type=type;
|
||||
res->de_flags=de_flags|doldoc.dft_de_flags[type.u8[0]];
|
||||
res->x=x;
|
||||
res->y=y;
|
||||
res->page_line_num=page_line_num;
|
||||
return res;
|
||||
}
|
||||
|
||||
CDocEntry *DocEntryNewTag(CDoc *doc,CDocEntry *doc_ce,U8 *tag)
|
||||
{
|
||||
I64 l=StrLen(tag);
|
||||
CDocEntry *result=DocEntryNewBase(doc,doc_ce->type,doc_ce->de_flags,
|
||||
CDocEntry *res=DocEntryNewBase(doc,doc_ce->type,doc_ce->de_flags,
|
||||
doc_ce->x,doc_ce->y,doc_ce->page_line_num);
|
||||
result->de_flags=doc_ce->de_flags; //Override
|
||||
result->max_col=l;
|
||||
result->tag=MAlloc(l+1,doc->mem_task);
|
||||
MemCpy(result->tag,tag,l+1);
|
||||
MemCpy(&result->settings,&doc_ce->settings,sizeof(CDocSettings));
|
||||
return result;
|
||||
res->de_flags=doc_ce->de_flags; //Override
|
||||
res->max_col=l;
|
||||
res->tag=MAlloc(l+1,doc->mem_task);
|
||||
MemCpy(res->tag,tag,l+1);
|
||||
MemCpy(&res->settings,&doc_ce->settings,sizeof(CDocSettings));
|
||||
return res;
|
||||
}
|
||||
|
||||
public U0 DocEntryDel(CDoc *doc,CDocEntry *doc_e)
|
||||
@@ -92,26 +92,26 @@ public U0 DocEntryDel(CDoc *doc,CDocEntry *doc_e)
|
||||
|
||||
public I64 DocEntrySize(CDoc *,CDocEntry *doc_e)
|
||||
{//Mem size of entry and all parts.
|
||||
I64 result;
|
||||
I64 res;
|
||||
if (!doc_e) return 0;
|
||||
result=MSize2(doc_e);
|
||||
res=MSize2(doc_e);
|
||||
if (doc_e->de_flags & DOCEF_TAG)
|
||||
result+=MSize2(doc_e->tag);
|
||||
res+=MSize2(doc_e->tag);
|
||||
if (doc_e->de_flags & DOCEF_AUX_STR)
|
||||
result+=MSize2(doc_e->aux_str);
|
||||
res+=MSize2(doc_e->aux_str);
|
||||
if (doc_e->de_flags & DOCEF_DEFINE)
|
||||
result+=MSize2(doc_e->define_str);
|
||||
res+=MSize2(doc_e->define_str);
|
||||
if (doc_e->de_flags & DOCEF_HTML_LINK)
|
||||
result+=MSize2(doc_e->html_link);
|
||||
res+=MSize2(doc_e->html_link);
|
||||
if (doc_e->de_flags & DOCEF_LEFT_MACRO)
|
||||
result+=MSize2(doc_e->left_macro);
|
||||
res+=MSize2(doc_e->left_macro);
|
||||
if (doc_e->de_flags & DOCEF_RIGHT_MACRO)
|
||||
result+=MSize2(doc_e->right_macro);
|
||||
res+=MSize2(doc_e->right_macro);
|
||||
if (doc_e->de_flags & DOCEF_BIN_PTR_LINK)
|
||||
result+=MSize2(doc_e->bin_ptr_link);
|
||||
res+=MSize2(doc_e->bin_ptr_link);
|
||||
if (doc_e->de_flags & DOCEF_REMALLOC_DATA)
|
||||
result+=MSize2(doc_e->data);
|
||||
return result;
|
||||
res+=MSize2(doc_e->data);
|
||||
return res;
|
||||
}
|
||||
|
||||
U0 DocUndoDel(CDoc *,CDocUndo *u)
|
||||
@@ -138,26 +138,26 @@ public CDocEntry *DocEntryCopy(CDoc *doc,CDocEntry *doc_e)
|
||||
CDocEntry *doc_ne;
|
||||
CDocBin *tempb;
|
||||
CTask *task=doc->mem_task;
|
||||
doc_ne=MAllocIdentical(doc_e,task);
|
||||
doc_ne=MAllocIdent(doc_e,task);
|
||||
doc_ne->next=doc_ne;
|
||||
doc_ne->last=doc_ne;
|
||||
if (doc_e->de_flags & DOCEF_TAG)
|
||||
doc_ne->tag=MAllocIdentical(doc_e->tag,task);
|
||||
doc_ne->tag=MAllocIdent(doc_e->tag,task);
|
||||
if (doc_e->de_flags & DOCEF_AUX_STR)
|
||||
doc_ne->aux_str=MAllocIdentical(doc_e->aux_str,task);
|
||||
doc_ne->aux_str=MAllocIdent(doc_e->aux_str,task);
|
||||
if (doc_e->de_flags & DOCEF_DEFINE)
|
||||
doc_ne->define_str=MAllocIdentical(doc_e->define_str,task);
|
||||
doc_ne->define_str=MAllocIdent(doc_e->define_str,task);
|
||||
if (doc_e->de_flags & DOCEF_HTML_LINK)
|
||||
doc_ne->html_link=MAllocIdentical(doc_e->html_link,task);
|
||||
doc_ne->html_link=MAllocIdent(doc_e->html_link,task);
|
||||
if (doc_e->de_flags & DOCEF_LEFT_MACRO)
|
||||
doc_ne->left_macro=MAllocIdentical(doc_e->left_macro,task);
|
||||
doc_ne->left_macro=MAllocIdent(doc_e->left_macro,task);
|
||||
if (doc_e->de_flags & DOCEF_RIGHT_MACRO)
|
||||
doc_ne->right_macro=MAllocIdentical(doc_e->right_macro,task);
|
||||
doc_ne->right_macro=MAllocIdent(doc_e->right_macro,task);
|
||||
if (doc_e->de_flags & DOCEF_BIN_PTR_LINK)
|
||||
doc_ne->bin_ptr_link=MAllocIdentical(doc_e->bin_ptr_link,task);
|
||||
doc_ne->bin_ptr_link=MAllocIdent(doc_e->bin_ptr_link,task);
|
||||
if (doc_e->de_flags & DOCEF_HAS_BIN) {
|
||||
tempb=MAllocIdentical(doc_e->bin_data,task);
|
||||
tempb->data=MAllocIdentical(doc_e->bin_data->data,task);
|
||||
tempb=MAllocIdent(doc_e->bin_data,task);
|
||||
tempb->data=MAllocIdent(doc_e->bin_data->data,task);
|
||||
doc_ne->bin_num=doc->cur_bin_num;
|
||||
tempb->num=doc->cur_bin_num++;
|
||||
doc_ne->bin_data=tempb;
|
||||
@@ -168,7 +168,7 @@ public CDocEntry *DocEntryCopy(CDoc *doc,CDocEntry *doc_e)
|
||||
QueIns(tempb,doc->bin_root.last);
|
||||
}
|
||||
if (doc_e->de_flags & DOCEF_REMALLOC_DATA)
|
||||
doc_ne->data=MAllocIdentical(doc_e->data,task);
|
||||
doc_ne->data=MAllocIdent(doc_e->data,task);
|
||||
return doc_ne;
|
||||
}
|
||||
|
||||
@@ -326,37 +326,37 @@ public I64 DocSize(CDoc *doc)
|
||||
CDocEntry *doc_e;
|
||||
CDocUndo *u;
|
||||
CDocBin *b;
|
||||
I64 result=0;
|
||||
I64 res=0;
|
||||
|
||||
if (!doc || doc->doc_signature!=DOC_SIGNATURE_VAL) return 0;
|
||||
unlock=DocLock(doc);
|
||||
|
||||
doc_e=doc->root.next;
|
||||
while (doc_e!=doc) {
|
||||
result+=DocEntrySize(doc,doc_e);
|
||||
res+=DocEntrySize(doc,doc_e);
|
||||
doc_e=doc_e->next;
|
||||
}
|
||||
|
||||
u=doc->undo_root.next;
|
||||
while (u!=&doc->undo_root) {
|
||||
result+=MSize2(u->body);
|
||||
result+=MSize2(u);
|
||||
res+=MSize2(u->body);
|
||||
res+=MSize2(u);
|
||||
u=u->next;
|
||||
}
|
||||
|
||||
b=doc->bin_root.next;
|
||||
while (b!=&doc->bin_root) {
|
||||
result+=MSize2(b->data);
|
||||
result+=MSize2(b);
|
||||
res+=MSize2(b->data);
|
||||
res+=MSize2(b);
|
||||
b=b->next;
|
||||
}
|
||||
|
||||
result+=MSize2(doc->find_replace);
|
||||
result+=MSize2(doc->dollar_buf);
|
||||
result+=MSize2(doc);
|
||||
res+=MSize2(doc->find_replace);
|
||||
res+=MSize2(doc->dollar_buf);
|
||||
res+=MSize2(doc);
|
||||
if (unlock)
|
||||
DocUnlock(doc);
|
||||
return result;
|
||||
return res;
|
||||
}
|
||||
|
||||
#help_index "DolDoc"
|
||||
|
||||
Reference in new issue
Block a user