small fixes
This commit is contained in:
parent
6afc6df423
commit
1df219b606
@ -216,6 +216,7 @@ int DoCarboncopy(GMsg* msg, GMsg** carbon) {
|
|||||||
if((*carbon)[n].attr.tou()) {
|
if((*carbon)[n].attr.tou()) {
|
||||||
sprintf(buf, "\001CC: %s %s", (*carbon)[n].To(), (*carbon)[n].dest.make_string(temp).c_str());
|
sprintf(buf, "\001CC: %s %s", (*carbon)[n].To(), (*carbon)[n].dest.make_string(temp).c_str());
|
||||||
ccline = AddKludge(ccline, buf);
|
ccline = AddKludge(ccline, buf);
|
||||||
|
(*carbon)[n].attr.tou0();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -229,6 +230,7 @@ int DoCarboncopy(GMsg* msg, GMsg** carbon) {
|
|||||||
if((*carbon)[n].attr.tou()) {
|
if((*carbon)[n].attr.tou()) {
|
||||||
sprintf(buf, buf2, (*carbon)[n].To(), (*carbon)[n].dest.make_string(temp).c_str());
|
sprintf(buf, buf2, (*carbon)[n].To(), (*carbon)[n].dest.make_string(temp).c_str());
|
||||||
ccline = AddLine(ccline, buf);
|
ccline = AddLine(ccline, buf);
|
||||||
|
(*carbon)[n].attr.tou0();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -242,7 +244,7 @@ int DoCarboncopy(GMsg* msg, GMsg** carbon) {
|
|||||||
hline += msg->To();
|
hline += msg->To();
|
||||||
++line_items;
|
++line_items;
|
||||||
}
|
}
|
||||||
for(n=0; n < cc; n++)
|
for(n=0; n < cc; n++) {
|
||||||
if((*carbon)[n].attr.tou()) {
|
if((*carbon)[n].attr.tou()) {
|
||||||
const char *user = (*carbon)[n].To();
|
const char *user = (*carbon)[n].To();
|
||||||
if((hline.length() + strlen(user) + 2 > margintext) and line_items) {
|
if((hline.length() + strlen(user) + 2 > margintext) and line_items) {
|
||||||
@ -255,6 +257,8 @@ int DoCarboncopy(GMsg* msg, GMsg** carbon) {
|
|||||||
hline += ", ";
|
hline += ", ";
|
||||||
hline += user;
|
hline += user;
|
||||||
++line_items;
|
++line_items;
|
||||||
|
(*carbon)[n].attr.tou0();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(line_items) {
|
if(line_items) {
|
||||||
sprintf(buf, LNG->CCTo, hline.c_str());
|
sprintf(buf, LNG->CCTo, hline.c_str());
|
||||||
|
@ -70,17 +70,14 @@ void SaveLines(int mode, const char* savefile, GMsg* msg, int margin, bool clip)
|
|||||||
if(mode == MODE_WRITE) {
|
if(mode == MODE_WRITE) {
|
||||||
if(AA->LoadMsg(msg, msg->msgno, margin) == false) {
|
if(AA->LoadMsg(msg, msg->msgno, margin) == false) {
|
||||||
msg->txt = throw_strdup("");
|
msg->txt = throw_strdup("");
|
||||||
msg->attr.tou0();
|
|
||||||
msg->TextToLines(margin);
|
msg->TextToLines(margin);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if((mode == MODE_SAVE) or (mode == MODE_SAVENOCTRL)) {
|
else if((mode == MODE_SAVE) or (mode == MODE_SAVENOCTRL)) {
|
||||||
msg->attr.tou0();
|
|
||||||
msg->TextToLines(margin);
|
msg->TextToLines(margin);
|
||||||
}
|
}
|
||||||
TemplateToText(((mode == MODE_WRITE) and prnheader) ? ((prnheader & WRITE_ONLY_HEADER) ? MODE_HEADER : MODE_WRITEHEADER) : MODE_WRITE, msg, msg, AA->WTpl(), CurrArea);
|
TemplateToText(((mode == MODE_WRITE) and prnheader) ? ((prnheader & WRITE_ONLY_HEADER) ? MODE_HEADER : MODE_WRITEHEADER) : MODE_WRITE, msg, msg, AA->WTpl(), CurrArea);
|
||||||
msg->attr.tou1();
|
msg->TextToLines(margin, false);
|
||||||
msg->TextToLines(margin);
|
|
||||||
#endif
|
#endif
|
||||||
int n = 0;
|
int n = 0;
|
||||||
Line** lin = msg->line;
|
Line** lin = msg->line;
|
||||||
@ -403,9 +400,7 @@ void QuoteBuf(GMsg* msg) {
|
|||||||
char openmode[4];
|
char openmode[4];
|
||||||
|
|
||||||
TemplateToText(MODE_QUOTEBUF, msg, msg, AA->Tpl(), CurrArea);
|
TemplateToText(MODE_QUOTEBUF, msg, msg, AA->Tpl(), CurrArea);
|
||||||
msg->attr.tou1();
|
msg->TextToLines(-CFG->quotemargin, false);
|
||||||
msg->TextToLines(-CFG->quotemargin);
|
|
||||||
msg->attr.tou0();
|
|
||||||
msg->charsetlevel = LoadCharset(CFG->xlatlocalset, CFG->xlatlocalset);
|
msg->charsetlevel = LoadCharset(CFG->xlatlocalset, CFG->xlatlocalset);
|
||||||
msg->LinesToText();
|
msg->LinesToText();
|
||||||
|
|
||||||
|
@ -827,7 +827,7 @@ void IEclass::LoadFile() {
|
|||||||
AA->SetXlatimport(CFG->xlatlocalset);
|
AA->SetXlatimport(CFG->xlatlocalset);
|
||||||
|
|
||||||
// Index message text
|
// Index message text
|
||||||
msgptr->TextToLines(margintext-1);
|
msgptr->TextToLines(margintext-1, false);
|
||||||
_line = currline = msgptr->lin;
|
_line = currline = msgptr->lin;
|
||||||
|
|
||||||
// Restore charset
|
// Restore charset
|
||||||
|
@ -559,6 +559,7 @@ static void KludgeREPLYADDR(GMsg* msg, const char* ptr) {
|
|||||||
|
|
||||||
INam name;
|
INam name;
|
||||||
char *buf=throw_strdup(ptr);
|
char *buf=throw_strdup(ptr);
|
||||||
|
*name = NUL;
|
||||||
ParseInternetAddr(buf, *msg->realby ? name : msg->realby, msg->iaddr);
|
ParseInternetAddr(buf, *msg->realby ? name : msg->realby, msg->iaddr);
|
||||||
if(*name)
|
if(*name)
|
||||||
strxcpy(msg->realby, name, sizeof(INam));
|
strxcpy(msg->realby, name, sizeof(INam));
|
||||||
@ -1782,9 +1783,9 @@ int cmp_quotes(char* q1, char* q2) {
|
|||||||
|
|
||||||
// ------------------------------------------------------------------
|
// ------------------------------------------------------------------
|
||||||
|
|
||||||
void GMsg::TextToLines(int __line_width, bool header_recode) {
|
void GMsg::TextToLines(int __line_width, bool getvalue, bool header_recode) {
|
||||||
|
|
||||||
MakeLineIndex(this, __line_width, header_recode);
|
MakeLineIndex(this, __line_width, getvalue, header_recode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1832,7 +1833,7 @@ inline bool put_on_new_line(const char *ptr, const char *prev_ptr) {
|
|||||||
|
|
||||||
// ------------------------------------------------------------------
|
// ------------------------------------------------------------------
|
||||||
|
|
||||||
void MakeLineIndex(GMsg* msg, int margin, bool header_recode) {
|
void MakeLineIndex(GMsg* msg, int margin, bool getvalue, bool header_recode) {
|
||||||
|
|
||||||
uint idx=0;
|
uint idx=0;
|
||||||
uint len;
|
uint len;
|
||||||
@ -1856,7 +1857,6 @@ void MakeLineIndex(GMsg* msg, int margin, bool header_recode) {
|
|||||||
uint qlen=0, qlen2=0;
|
uint qlen=0, qlen2=0;
|
||||||
int wraps=0, para=0, chslev;
|
int wraps=0, para=0, chslev;
|
||||||
bool reflow = false, quoteflag = false;
|
bool reflow = false, quoteflag = false;
|
||||||
bool getvalue = not msg->attr.tou();
|
|
||||||
bool quotewraphard = AA->Quotewraphard();
|
bool quotewraphard = AA->Quotewraphard();
|
||||||
bool qpencoded = getvalue and IsQuotedPrintable(AA->Xlatimport());
|
bool qpencoded = getvalue and IsQuotedPrintable(AA->Xlatimport());
|
||||||
bool gotmime = false;
|
bool gotmime = false;
|
||||||
@ -2946,7 +2946,7 @@ Line* AddHexdump(Line*& line, void* data, size_t datalen) {
|
|||||||
|
|
||||||
// ------------------------------------------------------------------
|
// ------------------------------------------------------------------
|
||||||
|
|
||||||
char* ParseInternetAddr(char* __string, char* __name, char* __addr) {
|
char* ParseInternetAddr(char* __string, char* __name, char* __addr, bool detect_charset) {
|
||||||
|
|
||||||
*__name = *__addr = NUL;
|
*__name = *__addr = NUL;
|
||||||
char* commaptr = NULL;
|
char* commaptr = NULL;
|
||||||
@ -3021,7 +3021,7 @@ char* ParseInternetAddr(char* __string, char* __name, char* __addr) {
|
|||||||
if(not strchr(__addr, '@'))
|
if(not strchr(__addr, '@'))
|
||||||
*__addr = NUL;
|
*__addr = NUL;
|
||||||
|
|
||||||
strxmimecpy(__name, __name, 0, strlen(__name)+1, true);
|
strxmimecpy(__name, __name, 0, strlen(__name)+1, detect_charset);
|
||||||
|
|
||||||
return __name;
|
return __name;
|
||||||
}
|
}
|
||||||
|
@ -90,7 +90,6 @@ int Area::LoadMsg(GMsg* msg, ulong msgno, int margin, int mode) {
|
|||||||
if(not (msg->attr.uns() and not msg->attr.rcv()))
|
if(not (msg->attr.uns() and not msg->attr.rcv()))
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
msg->attr.tou0();
|
|
||||||
msg->TextToLines(margin);
|
msg->TextToLines(margin);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -510,10 +510,8 @@ static void MakeMsg2(int& mode, int& status, int& forwstat, int& topline, GMsg*
|
|||||||
HeaderView->Use(AA, msg);
|
HeaderView->Use(AA, msg);
|
||||||
HeaderView->Paint();
|
HeaderView->Paint();
|
||||||
}
|
}
|
||||||
msg->attr.tou1(); // Ignore any kludge address found
|
|
||||||
msg->attr.pos1();
|
msg->attr.pos1();
|
||||||
msg->TextToLines(CFG->dispmargin-1);
|
msg->TextToLines(CFG->dispmargin-1, false); // Ignore any kludge address found
|
||||||
msg->attr.tou0();
|
|
||||||
msg->attr.pos0();
|
msg->attr.pos0();
|
||||||
}
|
}
|
||||||
uint lineno = position = reader_topline+1;
|
uint lineno = position = reader_topline+1;
|
||||||
@ -623,9 +621,7 @@ static void MakeMsg2(int& mode, int& status, int& forwstat, int& topline, GMsg*
|
|||||||
LoadText(msg, AddPath(CFG->goldpath, EDIT->File()));
|
LoadText(msg, AddPath(CFG->goldpath, EDIT->File()));
|
||||||
if(mode == MODE_FORWARD)
|
if(mode == MODE_FORWARD)
|
||||||
msg->attr.pos1();
|
msg->attr.pos1();
|
||||||
msg->attr.tou1(); // ignore any kludge address found
|
msg->TextToLines(CFG->dispmargin-1, false); // Ignore any kludge address found
|
||||||
msg->TextToLines(CFG->dispmargin-1);
|
|
||||||
msg->attr.tou0();
|
|
||||||
msg->attr.pos0();
|
msg->attr.pos0();
|
||||||
|
|
||||||
if(not savedirect) {
|
if(not savedirect) {
|
||||||
@ -733,7 +729,6 @@ void MakeMsg(int mode, GMsg* omsg, bool ignore_replyto) {
|
|||||||
AA->RandomizeData(mode);
|
AA->RandomizeData(mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
msg->attr.tou0();
|
|
||||||
msg->TextToLines(CFG->dispmargin-1);
|
msg->TextToLines(CFG->dispmargin-1);
|
||||||
msg->orig = AA->Aka().addr;
|
msg->orig = AA->Aka().addr;
|
||||||
msg->charsetlevel = LoadCharset(CFG->xlatlocalset, AA->Xlatexport());
|
msg->charsetlevel = LoadCharset(CFG->xlatlocalset, AA->Xlatexport());
|
||||||
@ -766,8 +761,7 @@ void MakeMsg(int mode, GMsg* omsg, bool ignore_replyto) {
|
|||||||
msg->messageid = NULL;
|
msg->messageid = NULL;
|
||||||
msg->inreplyto = NULL;
|
msg->inreplyto = NULL;
|
||||||
msg->references = NULL;
|
msg->references = NULL;
|
||||||
msg->attr.tou0();
|
msg->TextToLines(CFG->dispmargin-1, true, false);
|
||||||
msg->TextToLines(CFG->dispmargin-1, false);
|
|
||||||
msg->msgid.reset();
|
msg->msgid.reset();
|
||||||
*msg->iorig = NUL;
|
*msg->iorig = NUL;
|
||||||
*msg->idest = NUL;
|
*msg->idest = NUL;
|
||||||
@ -793,8 +787,7 @@ void MakeMsg(int mode, GMsg* omsg, bool ignore_replyto) {
|
|||||||
msg->messageid = NULL;
|
msg->messageid = NULL;
|
||||||
msg->inreplyto = NULL;
|
msg->inreplyto = NULL;
|
||||||
msg->references = NULL;
|
msg->references = NULL;
|
||||||
msg->attr.tou0();
|
msg->TextToLines(CFG->dispmargin-1, true, false);
|
||||||
msg->TextToLines(CFG->dispmargin-1, false);
|
|
||||||
break;
|
break;
|
||||||
case MODE_NEW:
|
case MODE_NEW:
|
||||||
wfill(MINROW, 0, MAXROW-2, MAXCOL-1, ' ', C_READW);
|
wfill(MINROW, 0, MAXROW-2, MAXCOL-1, ' ', C_READW);
|
||||||
@ -837,8 +830,7 @@ void MakeMsg(int mode, GMsg* omsg, bool ignore_replyto) {
|
|||||||
case MODE_REPLYCOMMENT:
|
case MODE_REPLYCOMMENT:
|
||||||
if(CurrArea != OrigArea)
|
if(CurrArea != OrigArea)
|
||||||
AA->SetXlatimport(AL.AreaIdToPtr(OrigArea)->Xlatimport());
|
AA->SetXlatimport(AL.AreaIdToPtr(OrigArea)->Xlatimport());
|
||||||
omsg->attr.tou0();
|
omsg->TextToLines(-CFG->quotemargin, true, false);
|
||||||
omsg->TextToLines(-CFG->quotemargin, false);
|
|
||||||
if(ignore_replyto)
|
if(ignore_replyto)
|
||||||
*omsg->ireplyto = NUL;
|
*omsg->ireplyto = NUL;
|
||||||
if(omsg->attr.rot())
|
if(omsg->attr.rot())
|
||||||
|
@ -175,7 +175,7 @@ Line* DeleteLine(Line* line);
|
|||||||
Line* FirstLine(Line* line);
|
Line* FirstLine(Line* line);
|
||||||
Line* InsertLine(Line* newline, Line* oldline, int pos);
|
Line* InsertLine(Line* newline, Line* oldline, int pos);
|
||||||
Line* LastLine(Line* line);
|
Line* LastLine(Line* line);
|
||||||
void MakeLineIndex(GMsg* msg, int rmargin, bool header_recode = true);
|
void MakeLineIndex(GMsg* msg, int rmargin, bool getvalue, bool header_recode);
|
||||||
void MsgLineReIndex(GMsg* msg, int viewhidden=-1, int viewkludge=-1, int viewquote=-1);
|
void MsgLineReIndex(GMsg* msg, int viewhidden=-1, int viewkludge=-1, int viewquote=-1);
|
||||||
char* XlatStr(char* dest, const char* src, int level, Chs* chrtbl, int qpencoded=false, bool i51=false);
|
char* XlatStr(char* dest, const char* src, int level, Chs* chrtbl, int qpencoded=false, bool i51=false);
|
||||||
char* mime_header_decode(char* decoded, const char* encoded, char* charset = NULL);
|
char* mime_header_decode(char* decoded, const char* encoded, char* charset = NULL);
|
||||||
@ -221,7 +221,7 @@ void Rot13(GMsg* msg);
|
|||||||
void ResetMsg(GMsg* msg);
|
void ResetMsg(GMsg* msg);
|
||||||
int DoCarboncopy(GMsg* msg, GMsg** carbon);
|
int DoCarboncopy(GMsg* msg, GMsg** carbon);
|
||||||
void DoCrosspost(GMsg* msg, std::vector<int> &postareas);
|
void DoCrosspost(GMsg* msg, std::vector<int> &postareas);
|
||||||
char* ParseInternetAddr(char* __string, char* __name, char* __addr);
|
char* ParseInternetAddr(char* __string, char* __name, char* __addr, bool detect_charset = true);
|
||||||
|
|
||||||
|
|
||||||
// ------------------------------------------------------------------
|
// ------------------------------------------------------------------
|
||||||
|
@ -233,7 +233,6 @@ int ImportQWK() {
|
|||||||
AA->istossed = true;
|
AA->istossed = true;
|
||||||
update_statuslinef("%s: %u", AA->echoid(), imported);
|
update_statuslinef("%s: %u", AA->echoid(), imported);
|
||||||
|
|
||||||
msg->attr.tou0();
|
|
||||||
msg->TextToLines(CFG->dispmargin-1);
|
msg->TextToLines(CFG->dispmargin-1);
|
||||||
if(msg->messageid or msg->references or msg->inreplyto or *msg->ifrom) {
|
if(msg->messageid or msg->references or msg->inreplyto or *msg->ifrom) {
|
||||||
char kbuf[256];
|
char kbuf[256];
|
||||||
|
@ -585,9 +585,8 @@ int ExternUtil(GMsg *msg, ExtUtil *extutil) {
|
|||||||
WipeFile(tmpfile, 0);
|
WipeFile(tmpfile, 0);
|
||||||
|
|
||||||
EDIT->HardLines(hardlines);
|
EDIT->HardLines(hardlines);
|
||||||
msg->attr.tou1(); // Ignore any kludge address found
|
// Ignore any kludge address found
|
||||||
msg->TextToLines(CFG->dispmargin-(int)CFG->switches.get(disppagebar));
|
msg->TextToLines(CFG->dispmargin-(int)CFG->switches.get(disppagebar), false);
|
||||||
msg->attr.tou0();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return YES;
|
return YES;
|
||||||
@ -690,7 +689,7 @@ void ReadPeekURLs(GMsg* msg) {
|
|||||||
--end;
|
--end;
|
||||||
if(begin < end) {
|
if(begin < end) {
|
||||||
buf[0] = ' ';
|
buf[0] = ' ';
|
||||||
strxcpy(buf+1, ptr, MinV((end-ptr)+1, MAXCOL-2-2-2));
|
strxcpy(buf+1, ptr, MinV((long)((end-ptr)+1), (long)(MAXCOL-2-2-2)));
|
||||||
strcat(buf, " ");
|
strcat(buf, " ");
|
||||||
for(i = urls.begin(); i != urls.end(); i++)
|
for(i = urls.begin(); i != urls.end(); i++)
|
||||||
if(strieql(*i, buf))
|
if(strieql(*i, buf))
|
||||||
|
@ -235,7 +235,7 @@ void ProcessSoupMsg(char* lbuf, GMsg* msg, int& msgs, char* areaname, int tossto
|
|||||||
if(MatchRFC(mptr, "From: ")) {
|
if(MatchRFC(mptr, "From: ")) {
|
||||||
INam fromname;
|
INam fromname;
|
||||||
IAdr fromaddr;
|
IAdr fromaddr;
|
||||||
ParseInternetAddr(mptr, fromname, fromaddr);
|
ParseInternetAddr(mptr, fromname, fromaddr, false);
|
||||||
strxcpy(msg->by, *fromname ? fromname : fromaddr, sizeof(msg->by));
|
strxcpy(msg->by, *fromname ? fromname : fromaddr, sizeof(msg->by));
|
||||||
if(AA->Internetgate().addr.net) {
|
if(AA->Internetgate().addr.net) {
|
||||||
char abuf[40];
|
char abuf[40];
|
||||||
@ -254,7 +254,7 @@ void ProcessSoupMsg(char* lbuf, GMsg* msg, int& msgs, char* areaname, int tossto
|
|||||||
strxcpy(msg->ito, mptr, sizeof(msg->ito));
|
strxcpy(msg->ito, mptr, sizeof(msg->ito));
|
||||||
INam toname;
|
INam toname;
|
||||||
IAdr toaddr;
|
IAdr toaddr;
|
||||||
ParseInternetAddr(mptr, toname, toaddr);
|
ParseInternetAddr(mptr, toname, toaddr, false);
|
||||||
strxcpy(msg->to, *toname ? toname : toaddr, sizeof(msg->to));
|
strxcpy(msg->to, *toname ? toname : toaddr, sizeof(msg->to));
|
||||||
}
|
}
|
||||||
else if(MatchRFC(mptr, "X-Comment-To: ")) {
|
else if(MatchRFC(mptr, "X-Comment-To: ")) {
|
||||||
@ -275,7 +275,7 @@ void ProcessSoupMsg(char* lbuf, GMsg* msg, int& msgs, char* areaname, int tossto
|
|||||||
else if(MatchRFC(mptr, "X-To: ")) {
|
else if(MatchRFC(mptr, "X-To: ")) {
|
||||||
INam toname;
|
INam toname;
|
||||||
IAdr toaddr;
|
IAdr toaddr;
|
||||||
ParseInternetAddr(mptr, toname, toaddr);
|
ParseInternetAddr(mptr, toname, toaddr, false);
|
||||||
strxcpy(msg->to, *toname ? toname : toaddr, sizeof(msg->to));
|
strxcpy(msg->to, *toname ? toname : toaddr, sizeof(msg->to));
|
||||||
}
|
}
|
||||||
else if(MatchRFC(mptr, "Subject: ")) {
|
else if(MatchRFC(mptr, "Subject: ")) {
|
||||||
@ -310,13 +310,13 @@ void ProcessSoupMsg(char* lbuf, GMsg* msg, int& msgs, char* areaname, int tossto
|
|||||||
else if(MatchRFC(mptr, "Sender: ")) {
|
else if(MatchRFC(mptr, "Sender: ")) {
|
||||||
INam sendername;
|
INam sendername;
|
||||||
IAdr senderaddr;
|
IAdr senderaddr;
|
||||||
ParseInternetAddr(mptr, sendername, senderaddr);
|
ParseInternetAddr(mptr, sendername, senderaddr, false);
|
||||||
CurrArea = CheckMailinglists(senderaddr, CurrArea);
|
CurrArea = CheckMailinglists(senderaddr, CurrArea);
|
||||||
}
|
}
|
||||||
else if(MatchRFC(mptr, "X-Mailing-List: ")) {
|
else if(MatchRFC(mptr, "X-Mailing-List: ")) {
|
||||||
INam listname;
|
INam listname;
|
||||||
IAdr listaddr;
|
IAdr listaddr;
|
||||||
ParseInternetAddr(mptr, listname, listaddr);
|
ParseInternetAddr(mptr, listname, listaddr, false);
|
||||||
CurrArea = CheckMailinglists(listaddr, CurrArea);
|
CurrArea = CheckMailinglists(listaddr, CurrArea);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ public:
|
|||||||
bool to_you() { return (you_and_I & TO_YOU); }
|
bool to_you() { return (you_and_I & TO_YOU); }
|
||||||
bool by_you() { return (you_and_I & BY_YOU); }
|
bool by_you() { return (you_and_I & BY_YOU); }
|
||||||
|
|
||||||
void TextToLines(int __line_width, bool header_recode = true);
|
void TextToLines(int __line_width, bool getvalue = true, bool header_recode = true);
|
||||||
void LinesToText();
|
void LinesToText();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user