head	 1.51;
branch   ;
access   ;
symbols  V80:1.12 V76d:1.1;
locks    ; strict;
comment  @ * @;


1.51
date	 94.09.18.22.50.26;  author jcooper;  state Exp;
branches ;
next	 1.50;

1.50
date	 94.09.18.00.01.54;  author jcooper;  state Exp;
branches ;
next	 1.49;

1.49
date	 94.09.06.12.47.30;  author rushing;  state Exp;
branches ;
next	 1.48;

1.48
date	 94.09.02.23.49.59;  author rushing;  state Exp;
branches ;
next	 1.47;

1.47
date	 94.09.02.19.22.36;  author martin;  state Exp;
branches ;
next	 1.46;

1.46
date	 94.08.24.18.40.15;  author mrr;  state Exp;
branches ;
next	 1.45;

1.45
date	 94.08.24.17.59.26;  author jcooper;  state Exp;
branches ;
next	 1.44;

1.44
date	 94.08.23.23.07.06;  author martin;  state Exp;
branches ;
next	 1.43;

1.43
date	 94.08.11.02.25.59;  author dumoulin;  state Exp;
branches ;
next	 1.42;

1.42
date	 94.08.11.00.15.51;  author jcooper;  state Exp;
branches ;
next	 1.41;

1.41
date	 94.08.04.05.47.33;  author dumoulin;  state Exp;
branches ;
next	 1.40;

1.40
date	 94.08.02.05.00.16;  author dumoulin;  state Exp;
branches ;
next	 1.39;

1.39
date	 94.07.28.21.14.19;  author dumoulin;  state Exp;
branches ;
next	 1.38;

1.38
date	 94.07.26.22.17.28;  author dumoulin;  state Exp;
branches ;
next	 1.37;

1.37
date	 94.07.25.18.51.48;  author jcooper;  state Exp;
branches ;
next	 1.36;

1.36
date	 94.07.01.03.44.54;  author dumoulin;  state Exp;
branches ;
next	 1.35;

1.35
date	 94.06.30.16.38.39;  author dumoulin;  state Exp;
branches ;
next	 1.34;

1.34
date	 94.06.23.23.05.54;  author dumoulin;  state Exp;
branches ;
next	 1.33;

1.33
date	 94.06.09.18.39.34;  author rushing;  state Exp;
branches ;
next	 1.32;

1.32
date	 94.06.06.22.08.22;  author rushing;  state Exp;
branches ;
next	 1.31;

1.31
date	 94.06.01.19.00.00;  author gardnerd;  state Exp;
branches ;
next	 1.30;

1.30
date	 94.05.23.18.37.00;  author jcooper;  state Exp;
branches ;
next	 1.29;

1.29
date	 94.05.19.02.02.10;  author rushing;  state Exp;
branches ;
next	 1.28;

1.28
date	 94.02.24.21.25.08;  author jcoop;  state Exp;
branches ;
next	 1.27;

1.27
date	 94.02.16.21.04.46;  author cnolan;  state Exp;
branches ;
next	 1.26;

1.26
date	 94.02.09.01.33.36;  author cnolan;  state Exp;
branches ;
next	 1.25;

1.25
date	 94.01.24.17.39.47;  author jcoop;  state Exp;
branches ;
next	 1.24;

1.24
date	 94.01.16.00.27.38;  author jcoop;  state Exp;
branches ;
next	 1.23;

1.23
date	 94.01.12.19.25.59;  author mrr;  state Exp;
branches ;
next	 1.22;

1.22
date	 93.12.08.01.29.07;  author rushing;  state Exp;
branches ;
next	 1.21;

1.21
date	 93.08.25.18.53.17;  author mbretherton;  state Exp;
branches ;
next	 1.20;

1.20
date	 93.08.25.17.04.57;  author mbretherton;  state Exp;
branches ;
next	 1.19;

1.19
date	 93.08.18.21.49.21;  author rushing;  state Exp;
branches ;
next	 1.18;

1.18
date	 93.08.05.20.06.07;  author jcoop;  state Exp;
branches ;
next	 1.17;

1.17
date	 93.07.13.16.03.04;  author riordan;  state Exp;
branches ;
next	 1.16;

1.16
date	 93.07.06.21.09.09;  author cnolan;  state Exp;
branches ;
next	 1.15;

1.15
date	 93.06.28.17.51.39;  author rushing;  state Exp;
branches ;
next	 1.14;

1.14
date	 93.06.25.20.26.07;  author dumoulin;  state Exp;
branches ;
next	 1.13;

1.13
date	 93.06.24.17.13.14;  author riordan;  state Exp;
branches ;
next	 1.12;

1.12
date	 93.06.11.00.12.13;  author rushing;  state Exp;
branches ;
next	 1.11;

1.11
date	 93.06.10.18.27.50;  author rushing;  state Exp;
branches ;
next	 1.10;

1.10
date	 93.06.08.19.42.17;  author rushing;  state Exp;
branches ;
next	 1.9;

1.9
date	 93.06.01.18.16.44;  author rushing;  state Exp;
branches ;
next	 1.8;

1.8
date	 93.05.29.03.32.30;  author rushing;  state Exp;
branches ;
next	 1.7;

1.7
date	 93.05.28.18.23.23;  author rushing;  state Exp;
branches ;
next	 1.6;

1.6
date	 93.05.24.23.28.04;  author rushing;  state Exp;
branches ;
next	 1.5;

1.5
date	 93.05.18.22.11.40;  author rushing;  state Exp;
branches ;
next	 1.4;

1.4
date	 93.05.13.16.17.12;  author rushing;  state Exp;
branches ;
next	 1.3;

1.3
date	 93.05.01.01.36.56;  author rushing;  state Exp;
branches ;
next	 1.2;

1.2
date	 93.03.30.20.46.27;  author DUMOULIN;  state Exp;
branches ;
next	 1.1;

1.1
date	 93.02.16.20.54.42;  author rushing;  state Exp;
branches ;
next	 ;


desc
@winvn version 0.76 placed into RCS
@


1.51
log
@New Window menu with cascade, etc
@
text
@/*
 * $Id: winvn.h 1.50 1994/09/18 00:01:54 jcooper Exp $
 */

#ifdef WIN32         
  #define __far far
  #define huge far
  #define       __near near
#endif               

#define ID_ABOUT 100

int PASCAL WinMain(HINSTANCE, HINSTANCE, LPSTR, int);
BOOL WinVnInit(HINSTANCE hInstance, LPSTR lpCmdLine);

/* Functions define in Ini-News.c */
int fnLocateFiles (HINSTANCE hInstance, LPSTR lpCmdLine);

/* (SMR) Changed parameter lists to conform with 3.1 windows.h. */
long WINAPI WinVnConfWndProc(HWND, UINT, WPARAM, LPARAM);
long FAR PASCAL WinVnViewWndProc(HWND, UINT, WPARAM, LPARAM);
long WINAPI WinVnArtWndProc(HWND, UINT, WPARAM, LPARAM);

BOOL GetMemo(HWND, HWND, int);
BOOL WINAPI About(HWND, unsigned, WORD, LONG);
BOOL FAR PASCAL WinVnCommDlg(HWND, unsigned, WORD, LONG);
BOOL FAR PASCAL WinVnSaveArtDlg(HWND hDlg,unsigned  iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnSaveArtsDlg(HWND hDlg,unsigned  iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnFindDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnGenericDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnSubjectDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnAuthDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnDoListDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnPersonalInfoDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnMiscDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnAppearanceDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnThresholdDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnLogOptDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnDecodeArtsDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnAttachDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnEncodeDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnSigFileDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnExitDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
BOOL FAR PASCAL WinVnMailDlg(HWND hDlg,unsigned iMessage,WPARAM wParam,LPARAM lParam);
LRESULT CALLBACK VerListDlgProc(HWND hDlg,UINT iMessage,WPARAM wParam,LPARAM lParam);
BOOL FAR PASCAL WinVnSmartFilerDlg(HWND hDlg,unsigned iMessage,WPARAM wParam,LPARAM lParam);
BOOL FAR PASCAL WinVnSelectPathDlg(HWND hDlg,unsigned iMessage,WPARAM wParam,LPARAM lParam);

/* in file WVUSENET.C */
BOOL FAR PASCAL About(HWND, unsigned, WORD, LONG);
//VOID CheckView(HWND);
BOOL CrackGroupLine(char *buf,TypLine *lineptr);
BOOL CursorToTextLine(int X,int Y,TypDoc *DocPtr,TypBlock far **BlockPtr,
  TypLine far **LinePtr);
int  ReadNewsrc(void);
void WriteNewsrc(void);
void SetNetDocTitle(void);
void SetLineFlag(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue);
void GroupAction(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue);
void MakeHelpPathName(char * szFileName, int maxchars);
int cursor_to_char_number (int X, int Y,TypDoc *DocPtr,TypBlock far **BlockPtr,TypLine far **LinePtr);
void SetGroupActiveLines(void);
void SetUserMenus (HWND hWnd, int enable);
void SetConnectMenuItem (HWND hWnd, int enable);

long FileLength(HFILE);
BOOL MoreInit(void);
void InitListFonts ();
void InitArticleFonts ();
void InitPrintFonts ();
void InitStatusFonts ();
void DestroyFonts();
void InitBitmaps();
void DestroyBitmaps();
BOOL MainLoopPass(void);
void Connect ();

void MakeHelpPathName(char * szFileName, int maxchars);
void ReadWinvnProfile();
void WriteWinvnProfile();
void UpdateWinvnProfile();

void DoCommInput(void);
int WinVnDoComm(char *szComm);
char *CommStrtoID(char *CommStr,int *Port, int *Parity,char *szSpeed);
void MoveCursor();
BOOL CursorToTextLine(int X,int Y,TypDoc *DocPtr,TypBlock far **BlockPtr,
  TypLine far **LinePtr);
void ViewArticle(TypDoc *Doc, long artindex ,BOOL Reuse, BOOL showArt, char far *articleID);
void UnlinkArtsInGroup(TypDoc *GroupDoc);
void UpdateSeenArts(TypDoc *Doc);

int CommIDtoStr(int Port, int Parity,char *szSpeed,char *CommStr);

/* in file WVBLOCK.C */
int NewBlock(TypBlock far *CurBlockPtr, TypBlock far **NewBlockPtr);
void SetupEmptyBlock(TypBlock far *BlockPtr,HANDLE hCur, HANDLE hPrev,
  HANDLE hNext,TypDoc *DocPtr);
BOOL DeleteBlock(TypBlock far **CurBlockPtr, TypLine far **CurLinePtr);
int AddLine(TypLine *LineToAdd,TypBlock far **CurBlockPtr,TypLine far **CurAddPtr);
BOOL ReplaceLine(TypLine *LineToAdd,TypBlock far **CurBlockPtr,TypLine far **CurLinePtr);
BOOL DeleteLine(TypBlock far **CurBlockPtr, TypLine far **CurLinePtr);
int NextLine(TypBlock far **BlockPtr,TypLine far **LinePtr);
int PrevLine(TypBlock far **BlockPtr,TypLine far **LinePtr);
int FindString(BOOL StartAtTop);
int NumBlocksInDoc(TypDoc *Doc);
void ForAllLines(TypDoc *Doc,
   void lpfnFunc(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue),
   int wFlag, int wValue);
void ForAllBlocks (TypDoc *Doc, 
   void lpfnFunc(TypDoc *Doc, TypBlock far ** BlockPtr, int wFlag, int wValue),
   int wFlag, int wValue);
void SetForBlock(TypDoc *Doc, TypBlock far ** BlockPtr, int wFlag, int wValue);
BOOL FindLineOrd(TypDoc *Doc,unsigned int LineOrd,TypBlock far **BlockPtr,TypLine  far **LinePtr);
int SearchLine(char *Line,int LineLen,char *Target,int TargLen);
BOOL DoFind(BOOL StartAtTop);
void TopOfDoc(TypDoc *Doc,TypBlock far **BlockPtr,TypLine far **LinePtr);
BOOL ExtractTextLine(TypDoc *Doc,TypLine far *LinePtr,char *Buf,int  BufSize);
BOOL LockLine(HANDLE hBlock,unsigned int LineOff,TypLineID FindLineID,
  TypBlock far **BlockPtr,TypLine far **LinePtr);
void UnlockLine(TypBlock far *BlockPtr,TypLine far *LinePtr,
  HANDLE *hBlock,unsigned int *LineOff,TypLineID *TheLineID);
void PtrToOffset(TypBlock far *BlockPtr,TypLine far *LinePtr,
  HANDLE *hBlock,unsigned int *LineOff,TypLineID *TheLineID);
unsigned int WhatLine(TypBlock far *BlockPtr,TypLine far *LinePtr);
void MoveBytes(void far *Source, void far *Target,int NumBytes);
int InitDoc(TypDoc *Doc,HWND   hWnd,TypDoc *Parent,int DType);
void FreeDoc(TypDoc *Doc);
int mylstrncmp(char far *ptr1,char far *ptr2,int len);
char far *mylstrncpy(char far *ptr1,char far *ptr2, int len);

/* in file WVSCREEN.C */
void ScreenDown(int nLines,int LinesOnScreen,TypBlock far **BlockPtr,
 TypLine far **LinePtr,int *LinesAdvanced);
void ScreenUp(int nLines,TypBlock far **BlockPtr,TypLine far **LinePtr,
 int *LinesBackedUp);
void ScrollIt(TypDoc *Document,WPARAM wParam,LPARAM lParam);
void NewScrollIt(TypDoc *Document,WPARAM wParam,LPARAM lParam);
void HScrollIt(TypDoc *Document,WPARAM wParam,LPARAM lParam);
int LineOnScreen(TypDoc *Doc,HANDLE hTargBlock,unsigned int TargOffset,TypLineID TargLineID);
void NextWindow(TypDoc *Doc);
void AdjustTopSc(TypBlock far *BlockPtr,TypLine far *LinePtr);
void AdjustTopScByDoc (TypDoc *aDoc, unsigned int index);
void ScreenToTop(TypDoc *Doc);
BOOL AdvanceToActive(TypBlock far **BlockPtr,TypLine far **LinePtr);

HFILE MRROpenFile(char *FileName,int Mode,TypMRRFile **MRRFile);
void MRRCloseFile(TypMRRFile *MRRFile);
int MRRReadLine(TypMRRFile *MRRFile,char *Linebuf,int Len);
BOOL MRRWriteLine(TypMRRFile *MRRFile,char far *Linebuf,unsigned int Len);
BOOL MRRWriteDocument(TypDoc *Document,int Offset,char *szFileName,BOOL Append);

BOOL GetNum(char **ptr,long int *num);
COLORREF StrToRGB(char *cstring);
char *RGBToStr(char *buf, COLORREF rgbVal);
char * StringDate(char * s,time_t time);
void DoCommInput(void);
void DoCommState(void);
BOOL WasArtSeen(unsigned long ArtNum,TypGroup far *GroupPtr);
char chROT13(char achar) ;
void strROT13(char *cstring) ;
void strnROT13(char *cstring, int len) ;
BOOL isLineQuotation(char *textptr);
void SetHandleBkBrush(HWND hwnd, HBRUSH handle);

/* more in file wvutil.c */
WndEdit * getWndEdit(WndEdit * WndEdits,HWND hWnd,int numEntries) ;

/* in file wvart.c */
long find_article_by_subject (TypHeader huge *headers,long artindex,long num_headers);
void view_article_by_message_id (TypDoc *Doc, char far *msg_id, long artindex);
void SetArticleRot13Mode(HANDLE hWnd,BOOL RotMode) ;
BOOL GetArticleRot13Mode(HANDLE hWnd);

/* in file wvheader.c */
void ParseAddress(char *headerline,char *addressout,long int addressoutlen,char *nameout,long int nameoutlen);
BOOL GetHeaderLine(TypDoc *Doc,char *Prefix,char *Buf,int  BufLen);
BOOL GetArtHeaderSubject(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL GetArtHeaderTo(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderSubject(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderMessageID(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderReferences(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderDate(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderFrom(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderReplyTo(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderTo(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderNewsgroups(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderOrganization(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderNewsreader(TypDoc *Doc,char   *Buf,long int    BufLen);
BOOL MakeArtHeaderXmailer (TypDoc *Doc,char *Buf,long int BufLen);
BOOL MakeArtBody(TypDoc *Doc,char far **MesBuf,long int  *left, int DocType);
int  CompareStringNoCase(char *str1,char *str2,int slen);
void CopyBuf(char *instr,char **buf,long int *left);
BOOL NextToken(char **cptr);
void AppendTextToEditBuf(char *instr,char far **buf,long int *left);
HWND CreatePostingWnd(HWND hWnd, TypDoc *Doc,int DocType);
BOOL CreatePostingText(TypDoc *Doc,HWND hWndPost,HWND hWndEdit,int DocType);
HANDLE ExtractPostingText (TypDoc *Doc,int DocType);
BOOL FreePostingText ( HANDLE hTextBuffer) ;
BOOL IsLineBlank(char far *line);
BOOL FAR PASCAL editIntercept(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam);
void  prepareEditMenu(HWND parWnd,HWND hWndEdit);
int DoEditCommands(HWND hWndEdit,WPARAM wParam,LPARAM lParam);
void DoEditClose(HWND hWnd,int dirty) ;
BOOL WriteEditLog(HWND hWnd, char *fName , char *mBuf, unsigned int size);

/* In file WVPOST.C */
long FAR PASCAL WinVnPostWndProc(HWND, UINT, WPARAM, LPARAM);

BOOL StartPost(WndEdit * WndPost);
void CompletePost(WndEdit * WndPost, int result);
void FailPost(WndEdit * PostEdit);
BOOL PostText(WndEdit * WndPost);

/* In file WVPOST.C */
long FAR PASCAL WinVnMailWndProc(HWND, UINT, WPARAM, LPARAM);
BOOL StartMail(WndEdit * WndPost);

/* In file WVPRINT.C */      /* JD 930208 */ 
BOOL WINAPI PrinterInit(void);
BOOL WINAPI FreePrinterMemory(void);
BOOL WINAPI DeletePrinterDC(HDC);
HDC WINAPI GetPrinterDC(HWND);
BOOL CALLBACK AbortProc (HDC,int);
DWORD WINAPI PrinterSetup(HWND,DWORD);
//BOOL WINAPI PrintDlgProc(HWND, WORD, WORD, LPARAM); 
LRESULT CALLBACK PrintDlgProc(HWND, UINT, WPARAM, LPARAM);
BOOL WINAPI PrintHeaderP(char *str, int limit);
void WINAPI PrintFile(HWND);
void WINAPI PrintArticle(HWND,TypDoc *Doc);
void WINAPI ReportPrintError(int, HWND);

/* In file WVAUTH.C */
BOOL AuthenticatePosting(BOOL AuthReq);
void AddAuthHeader(HWND hWndEdit);


/* in file wvsckgen.c */
int SetupSock(void);
void PutCommLine(char *line);
void PutCommData(char *data, unsigned int length);
int MRRReadComm(void);
void MRRCloseComm(void);
int MRRInitComm(void);
int send_smtp_message(char * destination, char * message);
int forward_smtp_message (char * destination, TypDoc * Doc);
int cc_smtp_message (char * destination, char * editstr);
int post_edit_data (char * edit_data);

/* In file WVLIST.C */
void StartList(void);
void ProcListLine(unsigned char *ListLine);
void AddGroupToTable(char far *GroupLine);
void InitHashTable(unsigned int);
void InitGroupTable(void);
unsigned int HashGroup(unsigned char huge *gname);
void HashNetGroups(TypDoc *Doc,TypLine far * far * HashTable);
void BuildPtrList(void);
void BuildHashTable(void);
void ProcEndList(void);
int GroupCompare(TypLine const huge * huge *g1,TypLine const huge * huge *g2);
BOOL FAR PASCAL WinVnGroupListDlg(HWND hDlg,unsigned iMessage,WPARAM wParam,LPARAM lParam);
void PositionEndSubscribed(TypBlock far **BlockPtr, TypLine far **LinePtr);
void MergeGroups(int WhereSubscribed);
void CleanUpGroupTable(void);
unsigned long FindNextPrime(unsigned long);

/* In file WVMAIL.C  */
mlPOPSend (HWND hWnd, char *mBuf);
MailClose (HWND hWnd);
void SetMailType (int mailType);
void MailEnableLogout(BOOL enable);
void MailCrashExit(HWND hWnd) ;
int MailInit (HWND hWnd);

/* In file WVMAPI.C */
 mlMAPIInit (HWND hWnd);
 mlMAPILogout (HWND hWnd);
 mlMAPILogon (HWND hWnd);
 mlMAPISend (HWND hWnd,TypDoc *Doc, int DocType);
 mlMAPILogon (HWND hWnd);
 mlMAPIClose (HWND hWnd);

/* JSC additions to WVUTIL.C */

void RemoveTrailingWhiteSpace (char *str);
BOOL IsBlankStr (char *temp);
BOOL isnumber (char *str);
BOOL AskForFont (HWND hParentWnd, char *face, int *size, char *style);
BOOL AskForColor (HWND hParentWnd, COLORREF *color);
BOOL AskForExistingFileName (HWND hParentWnd, char *fileName, char *title);
char *GetEditText (HWND hWndEdit);
LRESULT SetEditText (HWND hWndEdit, char *editMem);
BOOL CreateEditWnd (WndEdit *NewWnd);
BOOL WritePrivateProfileInt(char far *lpAppName,char far *lpKeyName,int intval, char far *lpProFile);
BOOL WritePrivateProfileUInt (char far *lpAppName,char far *lpKeyName, unsigned int intval, char far *lpProFile);
unsigned int GetPrivateProfileUInt (char far *lpAppName,char far *lpKeyName, unsigned int intval, char far *lpProFile);
void RefreshGroupWnds();
void RefreshArticleWnds();
void RefreshStatusWnds();
void BatchSend(int DocType);
void CloseGroupWnds();
void CloseArticleWnds();
void CloseStatusWnds();
void CascadeWindows();
void AddCommLineToDoc (char *line);

BOOL TestCommBusy (HWND hParentWnd, char *msg);
BOOL TestDecodeBusy (HWND hParentWnd, char *msg);

void SetMainMailMenu(HWND);
void SetArticleMailMenu(HWND);
void SetGroupMailMenu(HWND hWnd);
void UpdateAllMailMenus();

/* in file wvfiler.c (jsc) */
char *GetFileExtension (char *tempName, char *fileName);
char *NameWithoutPath (char *tempName, char *fileName);
char *PathWithoutName (char *tempName, char *fileName);
BOOL AskForNewFileName (HWND hParentWnd, char *fileName, char *startDir, BOOL appendOk);
BOOL AskForFilePath (HWND hParentWnd, char *pathName, char *title);
BOOL VerifyFileName (char *fileName);
BOOL SmartFile (HWND hParentWnd, char *fileName);

/* In file WVCODING.C */
void  DecodeInit ();
void  DecodeDone ();
TypCoded *InitCoded ();
BOOL	DecodeLine (TypCoded *thisDecode, char *line); 
void	DecodeFile (HWND hParentWnd);
void	DecodeDoc (HWND hParentWnd, TypDoc *Document);
int 	Encode (TypTextBlock *textBlock, char *fileName, int mode);
void	EncodeToFile (HWND hParentWnd, char *inFile);
BOOL	CompleteThisDecode ();
int	CreateCodingMap (char *map, char *table);
void	CreateStatusArea (HWND hParentWnd);
void	DestroyStatusArea ();
void	UpdateBlockStatus ();

/* In file WVCODEWN.C */
long FAR PASCAL WinVnCodedBlockWndProc (HWND, UINT, WPARAM, LPARAM);
long FAR PASCAL WinVnCodingWndProc  (HWND, UINT, WPARAM, LPARAM);

/* In file WVTXTBLK.C */
TypTextBlock *InitTextBlock (HWND hParentWnd);
void FreeTextBlock (TypTextBlock *textBlock);
BOOL AddLineToTextBlock (TypTextBlock *textBlock, char *line);
BOOL ReplaceLineInTextBlock (TypTextBlock *textBlock, unsigned long num, char *line);
BOOL AddEndedLineToTextBlock (TypTextBlock *textBlock, char *line, int mode);
void ResetTextBlock ();
BOOL ReadFileToTextBlock (HWND hParentWnd, TypTextBlock *block, char *fileName, int mode);

/* in file WVATTACH.C */
void Attach (WndEdit *WndPost, char *fileName, int DocType);
void ProcessAttach (int cancel);
void FinishAttachment (int abort);
int EncodingTypeToNum (char *str);

/* in file headarry.c */
header_p header_elt (header_p headers, long index);
header_p lock_headers (HANDLE header_handle,HANDLE thread_handle);
void unlock_headers (HANDLE header_handle, HANDLE thread_handle);
void free_headers (HANDLE header_handle, HANDLE thread_handle);
void sort_by_threads (HANDLE header_handle, HANDLE thread_handle, long length);
void initialize_header_array (HANDLE header_handle, HANDLE thread_handle, long length);
void set_index_to_identity (HANDLE header_handle, HANDLE thread_handle, long length);
void shell_sort_index_array (header_p headers, thread_array index, long nElements,
              int (*compare) (header_p headers, long elem1,long elem2));
int compare_subject (header_p headers, long elem1, long elem2);
int compare_date (header_p headers, long elem1, long elem2);
int compare_lines (header_p headers, long elem1, long elem2);
int compare_from (header_p headers, long elem1, long elem2);
int compare_artnum (header_p headers, long elem1, long elem2);

/* In file WVCRYPT.C */
void MRREncrypt(unsigned char *plainText,int len,char *cipherText);
int MRRDecrypt(char *cipherText,unsigned char *plainText, int plainMax);      

/* In file WVDEBUGC.C */
long FAR PASCAL 
WinVnDebugCommWndProc (HWND hWnd,unsigned message,WPARAM wParam,LPARAM lParam);

#if 0
/* In file FASTQSRT.C */
void __far __cdecl fastQSort(void far *base, size_t n, size_t size, 
   int (__far __cdecl *cmpFn)(const void far *, const void far *));
#endif

void
ShellSort (void huge * huge * base,
	   size_t nElements,
	   size_t width,
	   int (*compare) (void const huge *elem1, void const huge * elem2));

/* void IncPtr(void **ptr,int incval); */

#define     IDM_UNDO             8
#define     IDM_CUT              9
#define     IDM_COPY             10
#define     IDM_PASTE            11
#define     IDM_CLEAR            12
#define     IDM_SELALL           13

#define     IDM_SHOW_SUBSCR        101
#define     IDM_SHOW_ALL_GROUP     102
#define     IDM_VIEW_SEL_GROUP     103
#define     IDM_SEL_SUBSCR         104
#define     IDM_UNSEL_ALL          105
#define     IDM_EXIT               106
#define     IDM_QUIT               107
#define     IDM_GROUP_TOP          108

#define     IDM_SELECTALL          IDM_SELALL
#define     IDM_CLEARALL           IDM_CLEAR

#define     IDM_SUBSCRIBE          130
#define     IDM_UNSUBSCRIBE        131

#define     IDM_CONFIG_LOG         109
#define     IDM_COMMOPTIONS        110
#define     IDM_CONFIG_PERSONAL    111
#define     IDM_CONFIG_APPEARANCE  112
#define     IDM_CONFIG_MISC        113
#define     IDM_CONFIG_SIGFILE     120
#define     IDM_CONFIG_SMART_FILER 121

#define     IDM_NEW_WIN_GROUP      4
#define     IDM_NEW_WIN_ARTICLE    5

#define     IDM_EDIT               114
#define     IDM_EXCLUDE            115
#define     IDM_DELETE             116
#define     IDM_NEW                117
#define      IDM_DECODE_FILE     118
#define      IDM_ENCODE_FILE     119

#define     IDM_VIEWNEW            122
#define     IDM_VIEWFULL           123

#define     IDM_SESSION            130
#define     IDM_RESET              140
#define     IDM_CONNECT            143
#define     IDM_DISCONNECT         144
#define     IDM_SAVE_WINDOW        141
#define     IDM_SAVE_CONFIG        142

#define     IDM_HELP               150

#define     IDV_APPEND             201
#define     IDV_EDIT               202
#define     IDV_FORGET             203

#define     IDV_NEXT               205

#define     IDV_EXIT               206

#define     IDM_NEXT_ARTICLE       401
#define     IDM_NEXT_SAME_SUBJECT  402
#define     IDM_PREV_ARTICLE       403
#define     IDM_DECODE_ARTICLE     404
#define     IDM_ALWAYSONTOP        405

#define     IDM_SAVE             410
#define     IDM_SAVEAS           411
#define     IDM_PRINT            412
#define     IDM_PRINT_SETUP      413

#define     IDM_POST             420
#define     IDM_ATTACH           421

#define     IDM_FIND             450
#define     IDM_FIND_NEXT_SAME   451
#define     IDM_SEARCH           452
#define     IDM_SEARCH_NEXT      453
#define     IDM_FIND_NEXT_UNSEEN 454

#define     IDM_SEND             470
#define     IDM_CANCEL           471

#define     IDM_MAIL             480
#define     IDM_LOGOUT           481
#define     IDM_REPLY            485

#define     IDM_ROT13            487
#define     IDM_UNROT            488

#define     IDM_UPDATE           490
#define     IDM_FORWARD          495

#define  IDM_SORT_DATE     460
#define  IDM_SORT_SUBJECT  461
#define  IDM_SORT_LINES    462
#define  IDM_SORT_THREADS  463
#define  IDM_SORT_ARTNUM      464
#define IDM_SORT_FROM      465

#define IDM_SAVE_SELECTED  466
#define IDM_DECODE_SELECTED   467
#define IDM_DESELECT_ALL   468
#define IDM_SELECT_ALL     469
#define IDM_SELECT_MATCH   470
#define IDM_RETRIEVE_COMPLETE    471
#define IDM_ARTICLE_RETRIEVE_COMPLETE  472

#define IDM_FONT_GROUPLIST      501
#define IDM_FONT_ARTICLE_LIST   502
#define IDM_FONT_ARTICLE_TEXT   503
#define IDM_FONT_PRINT_TEXT     504
#define IDM_FONT_STATUS_TEXT    505

#define IDM_COLOR_UNSUBSCRIBED  510
#define IDM_COLOR_SUBSCRIBED    511
#define IDM_COLOR_UNSEEN        512
#define IDM_COLOR_SEEN          513
#define IDM_COLOR_LIST_BACKGROUND    514
#define IDM_COLOR_ARTICLE_BACKGROUND 515
#define IDM_COLOR_STATUS_BACKGROUND  516
#define IDM_COLOR_ARTICLE_TEXT       517
#define IDM_COLOR_STATUS_TEXT       518

#define IDM_WINDOW_CASCADE      530
#define IDM_CLOSE_ALL_GROUP     531
#define IDM_CLOSE_ALL_ARTICLE   532
#define IDM_CLOSE_ALL_STATUS    533
#define IDM_CLOSE_ALL           534

#define IDM_SEND_ALL_POST       535
#define IDM_SEND_ALL_MAIL       536

#define IDM_MARK_ALL       600

#define     ID_TIMER            1000

/* Window word values for child windows */
#define GWW_HWNDEDIT    0
#define GWW_CHANGED     2
#define GWW_WORDWRAP    4
#define GWW_UNTITLED    6
#define CBWNDEXTRA      8

/* String Table constants */
#define IDS_FILTERSTRING   0

/* path selection bitmap ids, etc*/
#ifndef WIN32
// Private drive types not covered in Win3.x GetDriveType but in Win32
#define DRIVE_CDROM                 5
#define DRIVE_RAM                   6

// We also need this export from Kernel, normally in windows.inc
void FAR PASCAL DOS3Call(void);
#endif

#define IDB_DRIVEMIN                DRIVE_REMOVABLE
#define IDB_DRIVEFLOPPY             DRIVE_REMOVABLE
#define IDB_DRIVEHARD               DRIVE_FIXED
#define IDB_DRIVENETWORK            DRIVE_REMOTE
#define IDB_DRIVECDROM              DRIVE_CDROM
#define IDB_DRIVERAM                DRIVE_RAM
#define IDB_DRIVEMAX                DRIVE_RAM

#define IDB_FOLDERMIN               10
#define IDB_FOLDERCLOSED            10
#define IDB_FOLDEROPEN              11
#define IDB_FOLDEROPENSELECT        12
#define IDB_FOLDERMAX               12


/*-- Dialog box constants -- */
#include "wvdlg.h" 

@


1.50
log
@declarations for SmartFiler, SelectPath dialogs, and general cleanup
for 92.6
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.48 1994/09/02 23:49:59 rushing Exp $
d305 1
d510 1
d521 8
a528 5
#define IDM_CLOSE_ALL_GROUP     530
#define IDM_CLOSE_ALL_ARTICLE   531
#define IDM_CLOSE_ALL_STATUS    532
#define IDM_SEND_ALL_POST       533
#define IDM_SEND_ALL_MAIL       534
@


1.49
log
@fix maildlg for win32
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.48 1994/09/02 23:49:59 rushing Exp rushing $
d46 2
d66 1
a66 1
long FileLength(HANDLE);
d72 3
d147 1
a147 1
HANDLE MRROpenFile(char *FileName,int Mode,TypMRRFile **MRRFile);
d211 2
d247 1
d285 1
a285 3
char *GetFileExtension (char *tempName, char *fileName);
char *NameWithoutPath (char *tempName, char *fileName);
char *PathWithoutName (char *tempName, char *fileName);
a291 3
BOOL AskForNewFileName (HWND hParentWnd, char *fileName, char *startDir);
BOOL AskForFilePath (HWND hParentWnd, char *pathName, char *title);
BOOL VerifyFileName (char *fileName);
d310 14
d424 1
d460 1
d538 25
@


1.48
log
@fixes for new hashtable stuff, shellsort decl.
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.47 1994/09/02 19:22:36 martin Exp rushing $
d44 1
a44 1
BOOL FAR PASCAL WinVnMailDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
@



1.47
log
@martin fixes
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.46 1994/08/24 18:40:15 mrr Exp martin $
d253 1
a253 1
int GroupCompare(TypLine const far * far *g1,TypLine const far * far *g2);
d371 5
a375 4
void __far ShellSort (void far *,
            size_t, size_t,
            int (*compare)
             (TypLine const far * far *, TypLine const far * far *));
@



1.46
log
@authorization enables post/mail
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.45 1994/08/24 17:59:26 jcooper Exp $
d248 1
a248 1
unsigned int HashGroup(unsigned char far *gname);
d254 1
a254 1
BOOL FAR PASCAL WinVnGroupListDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
@



1.45
log
@misc encoding/decoding changes
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.44 1994/08/23 23:07:06 martin Exp $
d227 2
a228 1
BOOL AuthenticatePosting(void);
d230 1
d308 2
a309 2
void	DecodeInit ();
void	DecodeDone ();
d414 2
a415 2
#define	    IDM_DECODE_FILE	   118
#define	    IDM_ENCODE_FILE	   119
d476 7
a482 7
#define IDM_SAVE_SELECTED	466
#define IDM_DECODE_SELECTED	467
#define IDM_DESELECT_ALL	468
#define IDM_SELECT_ALL		469
#define IDM_SELECT_MATCH	470
#define IDM_RETRIEVE_COMPLETE 	471
#define IDM_ARTICLE_RETRIEVE_COMPLETE 	472
d505 1
a505 1
#define IDM_MARK_ALL			600
d517 1
a517 1
#define IDS_FILTERSTRING	0
@



1.44
log
@new hash table stuff
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.43 1994/08/11 02:25:59 dumoulin Exp $
d138 1
a308 1
void	DestroyCodedBlock (TypCoded *thisCoded);
@



1.43
log
@enabled STRICT compile and cleaned up parameter casting
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.42 1994/08/11 00:15:51 jcooper Exp dumoulin $
d243 1
d247 2
d255 1
@



1.42
log
@change function spec for FinishAttachment and add RETRIEVE_COMPLETE
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.41 1994/08/04 05:47:33 dumoulin Exp $
d14 1
a14 1
BOOL WinVnInit(HANDLE hInstance, LPSTR lpCmdLine);
@



1.41
log
@Changed function spec of PrintDlgProc from BOOL to LRESULT
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.40 1994/08/02 05:00:16 dumoulin Exp dumoulin $
d332 1
a332 1
void FinishAttachment ();
d476 1
@



1.40
log
@change HANDLE to HINSTANCE for better NT compatiblity
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.39 1994/07/28 21:14:19 dumoulin Exp dumoulin $
d45 1
d219 1
a219 1
BOOL CALLBACK PrintDlgProc(HWND, UINT, WPARAM, LPARAM);
@



1.39
log
@yet another attempt at fixing printing
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.38 1994/07/26 22:17:28 dumoulin Exp dumoulin $
d13 1
a13 1
int PASCAL WinMain(HANDLE, HANDLE, LPSTR, int);
d217 2
a218 1
BOOL WINAPI PrintDlgProc(HWND, WORD, WORD, LPARAM);
@



1.38
log
@Changed function prototype for printing function
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.37 1994/07/25 18:51:48 jcooper Exp dumoulin $
d215 1
a215 1
BOOL WINAPI AbortProc (HDC,WORD);
@



1.37
log
@execution of decoded files
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.36 1994/07/01 03:44:54 dumoulin Exp $
d214 1
a214 1
HDC WINAPI GetPrinterDC(HDC);
@



1.36
log
@Converted some FAR PASCAL pointers to WINAPI for better portability
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.35 1994/06/30 16:38:39 dumoulin Exp dumoulin $
d270 1
d278 1
@



1.35
log
@Changed some FAR PASCAL calls to WINAPI calls for better compatibility
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.34 1994/06/23 23:05:54 dumoulin Exp dumoulin $
d22 1
a22 1
long FAR PASCAL WinVnArtWndProc(HWND, UINT, WPARAM, LPARAM);
d444 1
@



1.34
log
@added function specs for new printing functions
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.33 1994/06/09 18:39:34 rushing Exp dumoulin $
d20 1
a20 1
long FAR PASCAL WinVnConfWndProc(HWND, UINT, WPARAM, LPARAM);
d25 1
a25 1
BOOL FAR PASCAL About(HWND, unsigned, WORD, LONG);
d210 12
a221 8
/* In file WVPRINT.C */      /* JD 930208 */
BOOL FAR PASCAL FreePrinterDC(void);
HDC FAR PASCAL GetPrinterDC(HDC);
int FAR PASCAL AbortProc (HDC,WORD);
DWORD FAR PASCAL PrinterSetup(HWND,DWORD);
BOOL FAR PASCAL PrintDlgProc(HWND, WORD, WORD, LPARAM);
void FAR PASCAL PrintFile(HWND);
void FAR PASCAL PrintArticle(HWND,TypDoc *Doc);
a509 2
/* Print Dialog Box constants */
#include <commdlg.h> 
@



1.33
log
@word-wrap, dot-doubling, and default port numbers
@
text
@d2 1
a2 1
 * $Id: winvn.h 1.32 1994/06/06 22:08:22 rushing Exp rushing $
d211 2
d214 1
a214 1
HDC FAR PASCAL GetPrinterDC(void);
d431 1
d504 4
a507 1
#include "wvdlg.h"
@



1.32
log
@id keyword back in, log messages out.
@
text
@d2 1
a2 1
 * $Id: $
d220 1
d229 1
@



1.31
log
@support for horizontal scrolling
@
text
@d2 1
a2 93
 *
 * Revision 1.29  1994/05/19  02:02:10  rushing
 * changes for gensock & version 0.91
 *
 * Revision 1.28  1994/02/24  21:25:08  jcoop
 * jcoop changes
 *
 * Revision 1.27  1994/02/16  21:04:46  cnolan
 * cnolan changes to 90.3
 *
 * Revision 1.26  1994/02/09  01:33:36  cnolan
 * cnolan changes
 *
 * Revision 1.25  1994/01/24  17:39:47  jcoop
 * 90.2 changes
 *
 * Revision 1.24  1994/01/16  00:27:38  jcoop
 * Declarations for jcoop's new stuff
 *
 * Revision 1.23  1994/01/12  19:25:59  mrr
 * mrr mods 4
 * 
 * Revision 1.22  1993/12/08  01:29:07  rushing
 * new version box and cr lf consistency
 *
 * Revision 1.21  1993/08/25  18:53:17  mbretherton
 * MRB merge, mail & post logging
 *
 * Revision 1.20  1993/08/25  17:04:57  mbretherton
 * merge from first newsrc.zip
 *
 * Revision 1.2x  21/7/93 Matthew B.
 *                remove vRef (for Macintosh only)
 *
 * Revision 1.19  1993/08/18  21:49:21  rushing
 * more 16-bit article number fixes.
 *
 * Revision 1.18  1993/08/05  20:06:07  jcoop
 * save multiple articles changes by jcoop@@oakb2s01.apl.com (John S Cooper)
 *
 * Revision 1.17  1993/07/13  16:03:04  riordan
 * MRR mods
 *
 * Revision 1.16  1993/07/06  21:09:09  cnolan
 * win32 support
 *
 * Revision 1.15  1993/06/28  17:51:39  rushing
 * fixed compiler warnings
 *
 * Revision 1.14  1993/06/25  20:26:07  dumoulin
 * Added StringDate to support POSIX standard numeric dates
 *
 * Revision 1.13  1993/06/24  17:13:14  riordan
 * Save window positions between sessions.
 *
 * Revision 1.12  1993/06/11  00:12:13  rushing
 * second merge from Matt Bretherton sources.
 *
 *
 * Revision 1.11  1993/06/10  18:27:50  rushing
 * added set_index_to_identity to prepare for writing article ranges
 *
 * Revision 1.10  1993/06/08  19:42:17  rushing
 * added support for Sort... menu
 *
 * Revision 1.9  1993/06/01  18:16:44  rushing
 * moved header funcs to headarry.c
 *
 * Revision 1.8  1993/05/29  03:32:30  rushing
 * threading support
 *
 * Revision 1.7  1993/05/28  18:23:23  rushing
 * fixed far/huge problem in find_art_by_subject
 *
 * Revision 1.6  1993/05/24  23:28:04  rushing
 * Header formatting refinements (MRB)
 *
 * Revision 1.5  1993/05/18  22:11:40  rushing
 * smtp support
 *
 * Revision 1.4  1993/05/13  16:17:12  rushing
 * article fetch limit support
 *
 * Revision 1.3  1993/05/01  01:36:56  rushing
 * added IDM_UPDATE
 *
 * Revision 1.2  1993/03/30  20:46:27  DUMOULIN
 * MAPI
 *
 * Revision 1.1  1993/02/16  20:54:42  rushing
 * Initial revision
 *
 *
@



1.30
log
@new attach code, session [dis]connect
@
text
@d225 1
@



1.29
log
@changes for gensock & version 0.91
@
text
@d3 3
a5 2
 * $Id: winvn.h 1.28 1994/02/24 21:25:08 jcoop Exp $
 * $Log: winvn.h $
d152 2
d162 1
d387 1
a387 1
void	Encode (TypTextBlock *textBlock, char *fileName, int mode);
d410 3
d495 2
@



1.28
log
@jcoop changes
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.27 1994/02/16 21:04:46 cnolan Exp $
d5 3
d308 2
a309 1
void PutCommLine(char *line,unsigned int nchars);
@



1.27
log
@cnolan changes to 90.3
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.26 1994/02/09 01:33:36 cnolan Exp $
d5 3
d119 1
d132 1
d262 1
d366 1
@



1.26
log
@cnolan changes
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.25 1994/01/24 17:39:47 jcoop Exp $
d5 3
d554 2
@



1.25
log
@90.2 changes
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.24 1994/01/16 00:27:38 jcoop Exp $
d5 3
d233 1
@



1.24
log
@Declarations for jcoop's new stuff
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.23 1994/01/12 19:25:59 mrr Exp $
d5 3
d274 1
a274 1
BOOL StartPost(HWND hWnd);
d279 1
a279 1
BOOL StartMail(WndEdit *MailWnd);
d345 1
d349 5
d541 6
@



1.23
log
@mrr mods 4
@
text
@a0 1

d3 1
a3 1
 * $Id: winvn.h 1.22 1993/12/08 01:29:07 rushing Exp $
d5 3
d114 5
d122 1
a122 1
VOID CheckView(HWND);
a134 4
BOOL WritePrivateProfileInt(char far *lpAppName,char far *lpKeyName,int intval, char far *lpProFile);



d137 4
d143 5
d152 3
a154 1
void ViewArticle(TypDoc *Doc, long artindex ,BOOL Reuse, BOOL showArt);
d213 1
a213 1
BOOL MRRWriteLine(TypMRRFile *MRRFile,char far *Linebuf,int Len);
d217 2
a218 1
DWORD StrToRGB(char *cstring);
d227 2
d266 1
a266 1
BOOL WriteEditLog(HWND hWnd, char *fName , char *mBuf);
d276 1
a276 1
BOOL StartMail(HWND hWnd,int ih);
d326 54
d444 1
d453 2
d462 1
d477 1
a478 2
#define     IDM_POST             420

d483 3
d511 6
a516 5
#define IDM_SAVE_SELECTED  466
#define IDM_DESELECT_ALL   467
#define IDM_SELECT_ALL     468
#define IDM_SELECT_MATCH   469
#define IDM_RETRIEVE_COMPLETE 468
d518 15
d541 3
@



1.22
log
@new version box and cr lf consistency
@
text
@d4 1
a4 1
 * $Id: winvn.h 1.21 1993/08/25 18:53:17 mbretherton Exp rushing $
d6 3
d113 15
a129 5
void ForAllLines(TypDoc *Doc,
   void lpfnFunc(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue),
   int wFlag, int wValue);
void SetLineFlag(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue);
void GroupAction(TypDoc *Doc, TypBlock far **BlockPtr, TypLine far **LinePtr, int wFlag, int wValue);
a131 1
VOID CheckView(HWND);
a134 1
void MakeHelpPathName(char * szFileName, int maxchars);
a138 3
int  ReadNewsrc(void);
void WriteNewsrc(void);
void SetNetDocTitle(void);
a139 2
BOOL CursorToTextLine(int X,int Y,TypDoc *DocPtr,TypBlock far **BlockPtr,
  TypLine far **LinePtr);
d146 1
d158 7
a164 1

d183 1
a183 2
BOOL CrackGroupLine(char *buf,TypLine *lineptr);

d194 1
a215 1
int cursor_to_char_number (int X, int Y,TypDoc *DocPtr,TypBlock far **BlockPtr,TypLine far **LinePtr);
d249 1
a249 1
void WriteEditLog(HWND hWnd, char *fName , char *mBuf);
d318 1
a318 1
			     int (*compare) (header_p headers, long elem1,long elem2));
d327 1
a327 1
int MRRDecrypt(char *cipherText,unsigned char *plainText, int plainMax);
d329 3
d340 3
a342 3
		      size_t, size_t,
		      int (*compare)
			    (TypLine const far * far *, TypLine const far * far *));
d427 11
a437 11
#define	IDM_SORT_DATE		460
#define	IDM_SORT_SUBJECT	461
#define	IDM_SORT_LINES		462
#define	IDM_SORT_THREADS	463
#define	IDM_SORT_ARTNUM		464
#define IDM_SORT_FROM		465

#define IDM_SAVE_SELECTED	466
#define IDM_DESELECT_ALL	467
#define IDM_SELECT_ALL		468
#define IDM_SELECT_MATCH	469
@



1.21
log
@MRB merge, mail & post logging
@
text
@d1 2
a2 1
 /*
d4 1
a4 1
 * $Id: winvn.h 1.20 1993/08/25 17:04:57 mbretherton Exp $
d6 2
a7 3
<<<<<<< winvn.h
 * Revision 1.2x  21/7/93 Matthew B.
 *                remove vRef (for Macintosh only)
a8 1
=======
a10 1
 * ,
a23 1
>>>>>>> 1.20
@



1.20
log
@merge from first newsrc.zip
,
@
text
@d1 1
a1 1
/*
d3 1
a3 1
 * $Id: winvn.h 1.19 1993/08/18 21:49:21 rushing Exp $
d5 1
d9 8
d26 1
d244 1
d246 1
a246 1
BOOL PostText(int ih,int DocType);
@



1.19
log
@more 16-bit article number fixes.
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.18 1993/08/05 20:06:07 jcoop Exp rushing $
d5 6
d72 1
a72 1
  #define	__near near
d101 2
d176 1
a176 1
HANDLE MRROpenFile(char *FileName,int vRef,int Mode,TypMRRFile **MRRFile);
d180 1
a180 1
BOOL MRRWriteDocument(TypDoc *Document,int Offset,char *szFileName,int vRef,BOOL Append);
d191 2
a192 1
BOOL isLineQuotation(char *textptr) ;
d228 3
a230 2
DoEditCommands(HWND hWndEdit,WPARAM wParam,LPARAM lParam);

d234 1
a234 1
BOOL StartPost(int ih);
d318 2
a319 2
	              int (*compare)
                            (TypLine const far * far *, TypLine const far * far *));
d337 1
a337 1
#define     IDM_GROUP_TOP	   108
d345 1
d364 1
a364 1
#define     IDM_SAVE_WINDOW	   141
a371 1
#define     IDV_CREATE             204
d378 1
d380 1
a380 1
#define     IDM_FOLLOWUP         420
d388 1
a388 1
#define     IDM_SEARCH		 452
d391 1
a391 1
#define     IDM_POST             470
d420 5
a424 5
#define GWW_HWNDEDIT	0
#define GWW_CHANGED	2
#define GWW_WORDWRAP	4
#define GWW_UNTITLED	6
#define CBWNDEXTRA	8
@



1.18
log
@save multiple articles changes by jcoop@@oakb2s01.apl.com (John S Cooper)
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.17 1993/07/13 16:03:04 riordan Exp $
d5 3
d179 1
a179 1
BOOL WasArtSeen(long int ArtNum,TypGroup far *GroupPtr);
@



1.17
log
@MRR mods
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.16 1993/07/06 21:09:09 cnolan Exp $
d5 3
d83 1
d116 1
a116 1
void ViewArticle(TypDoc *Doc, long artindex ,BOOL Reuse);
d396 6
@



1.16
log
@win32 support
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.15 1993/06/28 17:51:39 rushing Exp $
d5 3
d287 5
@



1.15
log
@fixed compiler warnings
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.14 1993/06/25 20:26:07 dumoulin Exp rushing $
d5 3
d54 6
d151 2
a152 2
void ScrollIt(TypDoc *Document,WORD wParam,DWORD lParam);
void NewScrollIt(TypDoc *Document,WORD wParam,DWORD lParam);
@



1.14
log
@Added StringDate to support POSIX standard numeric dates
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.13 1993/06/24 17:13:14 riordan Exp dumoulin $
d5 3
d198 1
a198 1
BOOL FAR PASCAL editIntercept(HWND hWnd,unsigned iMessage,WORD wParam,LONG lParam);
d228 1
a228 1

d245 6
a250 5
 mlPOPSend (HWND hWnd, char *mBuf);
 MailClose (HWND hWnd);
 void SetMailType (int mailType);
 void MailEnableLogout(BOOL enable);
 void MailCrashExit(HWND hWnd) ;
@



1.13
log
@Save window positions between sessions.
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.12 1993/06/11 00:12:13 rushing Exp $
d5 3
d154 1
@



1.12
log
@second merge from Matt Bretherton sources.
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.11 1993/06/10 18:27:50 rushing Exp $
d5 2
d8 1
d295 1
a295 1
#define     IDM_GROUP_TOP          108
d321 1
@



1.11
log
@added set_index_to_identity to prepare for writing article ranges
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.10 1993/06/08 19:42:17 rushing Exp rushing $
d5 4
d188 4
d236 4
d244 1
d246 2
d348 1
@



1.10
log
@added support for Sort... menu
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.9 1993/06/01 18:16:44 rushing Exp rushing $
d5 3
d241 1
@



1.9
log
@moved header funcs to headarry.c
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.8 1993/05/29 03:32:30 rushing Exp rushing $
d5 3
a236 2
void sort_by_date (HANDLE header_handle, HANDLE thread_handle, long length);
void sort_by_subject (HANDLE header_handle, HANDLE thread_handle, long length);
d238 7
d336 7
@



1.8
log
@threading support
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.7 1993/05/28 18:23:23 rushing Exp rushing $
d5 3
d228 1
a228 1
/* in file wvutil.c */
d230 1
a230 1
char huge * lock_headers (HANDLE header_handle,HANDLE thread_handle);
d233 4
@



1.7
log
@fixed far/huge problem in find_art_by_subject
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.6 1993/05/24 23:28:04 rushing Exp rushing $
d5 3
d220 1
a220 1
 /* In file WVMAPI.C */
d225 5
a229 1

@



1.6
log
@Header formatting refinements (MRB)
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.5 1993/05/18 22:11:40 rushing Exp $
d5 3
d141 1
a141 1
long find_article_by_subject (TypHeader far *headers,long artindex,long num_headers);
@



1.5
log
@smtp support
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.4 1993/05/13 16:17:12 rushing Exp rushing $
d5 3
d132 11
d145 1
d305 4
@



1.4
log
@article fetch limit support
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.3 1993/05/01 01:36:56 rushing Exp rushing $
d5 3
d38 1
a38 1
BOOL FAR PASCAL WinVnSubjectDlg(HWND hDlg,unsigned iMessage,WORD wParam,LONG lParam);
d143 1
d179 2
d291 1
@



1.3
log
@added IDM_UPDATE
@
text
@d3 1
a3 1
 * $Id: winvn.h 1.2 1993/03/30 20:46:27 DUMOULIN Exp rushing $
d5 3
d41 1
@



1.2
log
@MAPI
@
text
@d3 5
a7 2
 * $Id: winvn.h%v 1.1 1993/02/16 20:54:42 rushing Exp $
 * $Log: winvn.h%v $
d280 1
@



1.1
log
@Initial revision
@
text
@d3 4
a6 2
 * $Id$
 * $Log$
d8 1
d122 2
d138 1
a138 1
HWND CreatePostingWnd(TypDoc *Doc,int DocType);
d140 2
d151 1
a151 1
BOOL StartMail(int ih);
d183 8
d192 1
d277 2
@

