Changeset 301 for trunk/dll/mle.c
- Timestamp:
- Jun 27, 2006, 2:19:38 AM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/mle.c
r123 r301 9 9 Copyright (c) 2004 Steven H.Levine 10 10 11 Revisions 01 Aug 04 SHL - Rework lstrip/rstrip usage 11 01 Aug 04 SHL Rework lstrip/rstrip usage 12 16 Apr 06 SHL MLEexportfile: rework to avoid wrap problems 12 13 13 14 ***********************************************************************/ … … 39 40 40 41 41 LONG MLEgetlinetext (HWND h,LONG l,CHAR *buf,INT maxlen) {42 42 LONG MLEgetlinetext (HWND h,LONG l,CHAR *buf,INT maxlen) 43 { 43 44 /* get text of line l from MLE */ 44 45 … … 51 52 52 53 53 LONG MLEdeleteline (HWND h,LONG l) {54 54 LONG MLEdeleteline (HWND h,LONG l) 55 { 55 56 /* delete line l from MLE */ 56 57 … … 63 64 64 65 65 LONG MLEdeletecurline (HWND h) {66 66 LONG MLEdeletecurline (HWND h) 67 { 67 68 /* delete current line from MLE */ 68 69 … … 74 75 75 76 76 LONG MLEdeletetoeol (HWND h) {77 77 LONG MLEdeletetoeol (HWND h) 78 { 78 79 /* delete from cursor pos to end of line */ 79 80 … … 88 89 89 90 90 VOID MLEclearall (HWND h) {91 91 VOID MLEclearall (HWND h) 92 { 92 93 /* remove all text from MLE */ 93 94 LONG len; … … 99 100 100 101 101 LONG MLEtextatcursor (HWND h,CHAR *buffer,INT buflen) {102 102 LONG MLEtextatcursor (HWND h,CHAR *buffer,INT buflen) 103 { 103 104 /* place up to buflen chars of text from cursor pos into buffer 104 105 * return # of chars imported … … 112 113 113 114 114 LONG MLEtextatpos (HWND h,IPT i,CHAR *buffer,INT buflen) {115 115 LONG MLEtextatpos (HWND h,IPT i,CHAR *buffer,INT buflen) 116 { 116 117 /* place up to buflen chars of text from pos i in buffer 117 118 * return # of chars imported … … 126 127 127 128 128 LONG MLEsizeofsel (HWND h) {129 129 LONG MLEsizeofsel (HWND h) 130 { 130 131 /* return length of selected text */ 131 132 … … 146 147 #pragma alloc_text(FMMLE3,MLEdoblock,MLEquotepara,MLEinternet) 147 148 148 VOID MLEinternet (HWND h,BOOL ftp) {149 149 VOID MLEinternet (HWND h,BOOL ftp) 150 { 150 151 CHAR *temp = NULL; 151 152 IPT ancpos,curpos,here; … … 196 197 197 198 198 BOOL MLEdoblock (HWND h,INT action,CHAR *filename) {199 199 BOOL MLEdoblock (HWND h,INT action,CHAR *filename) 200 { 200 201 /* perform action on text in selection */ 201 202 … … 385 386 386 387 387 BOOL MLEquotepara (HWND h,CHAR *initials,BOOL fQuoteOld) {388 388 BOOL MLEquotepara (HWND h,CHAR *initials,BOOL fQuoteOld) 389 { 389 390 LONG num; 390 391 CHAR lineend[2],line[8],*p; … … 422 423 423 424 424 BOOL MLEAutoLoad (HWND h,CHAR *filename) {425 425 BOOL MLEAutoLoad (HWND h,CHAR *filename) 426 { 426 427 XMLEWNDPTR *vw; 427 428 … … 440 441 441 442 442 BOOL MLEHexLoad (HWND h,CHAR *filename) {443 443 BOOL MLEHexLoad (HWND h,CHAR *filename) 444 { 444 445 /* insert a file into the current position in the MLE */ 445 446 … … 581 582 582 583 583 BOOL MLEinsertfile (HWND h,CHAR *filename) {584 584 BOOL MLEinsertfile (HWND h,CHAR *filename) 585 { 585 586 /* insert a file into the current position in the MLE */ 586 587 … … 755 756 756 757 757 VOID LoadThread (VOID *arg) {758 758 VOID LoadThread (VOID *arg) 759 { 759 760 BKGLOAD *bkg; 760 761 BOOL fSuccess; … … 819 820 #pragma alloc_text(FMMLE5,MLEloadfile,MLEexportfile) 820 821 821 BOOL MLEloadfile (HWND h,CHAR *filename) {822 822 BOOL MLEloadfile (HWND h,CHAR *filename) 823 { 823 824 /* load a file into the MLE, getting rid of whatever was already 824 825 * there. Note this returns without erasing existing text if the … … 841 842 842 843 BOOL MLEexportfile (HWND h,CHAR *filename,INT tabspaces, 843 BOOL striptraillines,BOOL striptrailspaces) {844 844 BOOL striptraillines,BOOL striptrailspaces) 845 { 845 846 /* save the MLE contents as a file. Format the output so that 846 847 * the file is CR/LF terminated as presented in the MLE. 847 848 */ 848 849 849 FILE *fp; 850 CHAR *buffer = NULL,*p; 851 BOOL retn = TRUE; 850 FILE *fp = NULL; 851 CHAR *buffer = NULL; 852 CHAR *p; 853 BOOL ok = TRUE; 852 854 INT blanklines = 0; 853 854 // saymsg(MB_ENTER,h,DEBUG_STRING,"len = %ld",MLEgetlen(h)); 855 BOOL fWrap = MLEgetwrap(h); 856 857 // saymsg(MB_ENTER,h,DEBUG_STRING,"len = %ld",MLEgetlen(h)); 855 858 if(!MLEgetlen(h)) /* nothing to save; forget it */ 856 859 return TRUE; 860 861 MLEsetwrap(h, FALSE); // Need wrap off to export MLFIE_NOTRANS 857 862 858 863 if(striptraillines) { … … 868 873 break; 869 874 } 870 if(!MLEgetlen(h)) /* nothing to save; forget it */ 875 if(!MLEgetlen(h)) 876 { 877 /* nothing to save; forget it */ 878 MLEsetwrap(h, fWrap); // Restore 871 879 return TRUE; 880 } 872 881 } 873 882 … … 935 944 } 936 945 strcat(buffer,"\n"); 937 //buffer = translate_out(buffer,4095,h,filename);946 // buffer = translate_out(buffer,4095,h,filename); 938 947 if(fwrite(buffer,1,strlen(buffer),fp) < 1) { 939 948 saymsg(MB_ENTER, … … 943 952 break; 944 953 } 945 } 946 fclose(fp); 954 } // for lines 947 955 } 948 956 else 949 retn = FALSE; 957 ok = FALSE; 958 } 959 else 960 ok = FALSE; 961 962 MLEsetwrap(h, fWrap); // Restore 963 964 if (fp) 965 fclose(fp); 966 if (buffer) 950 967 DosFreeMem(buffer); 951 } 952 else 953 retn = FALSE; 954 return retn; 968 969 return ok; 955 970 } 956 971 … … 958 973 #pragma alloc_text(FMMLE3,MLEfindfirst,MLEfindnext,SandRDlgProc) 959 974 960 MRESULT EXPENTRY SandRDlgProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) {961 975 MRESULT EXPENTRY SandRDlgProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2) 976 { 962 977 /* initiate search(/replace)s in edit mode */ 963 978 … … 1096 1111 1097 1112 1098 BOOL MLEfindfirst (HWND hwnd,SRCHPTR *vw) {1099 1113 BOOL MLEfindfirst (HWND hwnd,SRCHPTR *vw) 1114 { 1100 1115 if(MLEsizeofsel(vw->hwndmle) < 256L) { 1101 1116 MLEgetseltext(vw->hwndmle,vw->search); … … 1109 1124 1110 1125 1111 INT MLEfindnext (HWND hwnd,SRCHPTR *vw) {1112 1126 INT MLEfindnext (HWND hwnd,SRCHPTR *vw) 1127 { 1113 1128 if(!*vw->search) 1114 1129 return -1; … … 1142 1157 return 0; 1143 1158 } 1144
Note:
See TracChangeset
for help on using the changeset viewer.