Improvements to editor

This commit is contained in:
Andrew Pamment 2021-12-14 22:15:06 +10:00
parent 0aa48c58e2
commit a189d44134
2 changed files with 361 additions and 2 deletions

12
text.c
View File

@ -1,5 +1,5 @@
#include "text.h"
#include "text.xpm"
/**
* Word Processing Program
* Features:
@ -10,7 +10,8 @@
int y_offset = 0; // TODO: move to local scope
int tab_offset = 0;
extern void convert_xpm(char **xpm, unsigned char **buffer);
extern unsigned char *QUINN_Icon;
// #define DEBUG
void print_loc(int x, int y)
@ -27,6 +28,8 @@ int main(int argc, char *argv[])
{
PAGE page;
convert_xpm(text_xpm, &QUINN_Icon);
if(argc > 1)
{
if(file_exists(argv[1]))
@ -148,6 +151,11 @@ void update_status(char *filename, char *info)
{
int oldy, oldx; getyx(stdscr, oldy, oldx);
char status[81];
char title[61];
snprintf(title, 60, "Text: %s", filename);
PDC_set_title(title);
snprintf(status, 80, "F4: Quit F5: Save F6: Save As File: %-25.25s %s", filename, info);

351
text.xpm Normal file
View File

@ -0,0 +1,351 @@
/* XPM */
static char * text_xpm[] = {
"64 64 284 2",
" c None",
". c #1C0F16",
"+ c #1F1118",
"@ c #180D13",
"# c #4A293B",
"$ c #B1618B",
"% c #AB5E87",
"& c #402332",
"* c #1C0F17",
"= c #A75C83",
"- c #AD5F88",
"; c #1C1016",
"> c #120C0E",
", c #130F11",
"' c #73415C",
") c #24141C",
"! c #1F1D1E",
"~ c #848484",
"{ c #3E393C",
"] c #442A38",
"^ c #74405B",
"/ c #0B0B07",
"( c #050505",
"_ c #1B1B1B",
": c #161615",
"< c #0F0F0F",
"[ c #0C0C0C",
"} c #0B0B0B",
"| c #0E0E0C",
"1 c #090908",
"2 c #060606",
"3 c #141012",
"4 c #646364",
"5 c #898989",
"6 c #585556",
"7 c #2A1D24",
"8 c #1D1016",
"9 c #12110C",
"0 c #564E39",
"a c #756A4D",
"b c #22211E",
"c c #707070",
"d c #22201D",
"e c #524A36",
"f c #1B1B07",
"g c #1A1919",
"h c #7B7B7B",
"i c #302D2E",
"j c #181610",
"k c #C3B080",
"l c #9A8B65",
"m c #8F815E",
"n c #8E805D",
"o c #252420",
"p c #25231F",
"q c #A19169",
"r c #504D24",
"s c #D8E511",
"t c #868E0C",
"u c #111010",
"v c #6D6D6D",
"w c #6F6E6E",
"x c #161315",
"y c #191711",
"z c #645C47",
"A c #575552",
"B c #73726F",
"C c #72716E",
"D c #232322",
"E c #222121",
"F c #484642",
"G c #5D563D",
"H c #858B13",
"I c #F0FF13",
"J c #B4C00E",
"K c #100F0E",
"L c #171616",
"M c #413E37",
"N c #FFFFFF",
"O c #FCFCFC",
"P c #323232",
"Q c #343434",
"R c #F4F4F4",
"S c #35370C",
"T c #ECFB13",
"U c #8C930B",
"V c #0E0F02",
"W c #44413A",
"X c #848573",
"Y c #B1BC0E",
"Z c #E4F212",
"` c #292C04",
" . c #FBFBFB",
".. c #141414",
"+. c #313131",
"@. c #353535",
"#. c #383838",
"$. c #373737",
"%. c #3D3D3D",
"&. c #3C3C3C",
"*. c #3E3E3E",
"=. c #242424",
"-. c #E2E2E2",
";. c #676C25",
">. c #636908",
",. c #FEFEFE",
"'. c #DDDDDD",
"). c #D2D2D2",
"!. c #CCCCCC",
"~. c #C8C8C8",
"{. c #BBBBBB",
"]. c #AEAEAE",
"^. c #AAAAAA",
"/. c #B2B2B2",
"(. c #5D5F42",
"_. c #D8E611",
":. c #C9D510",
"<. c #272903",
"[. c #B8B9B2",
"}. c #8E961C",
"|. c #3B3E05",
"1. c #F8F8F8",
"2. c #55582C",
"3. c #EDFC13",
"4. c #969F0D",
"5. c #ECECEC",
"6. c #C0C0C0",
"7. c #666753",
"8. c #BAC613",
"9. c #E7F512",
"0. c #2A2C07",
"a. c #C4C4C4",
"b. c #444444",
"c. c #555A0E",
"d. c #6E7213",
"e. c #1C1A10",
"f. c #5C5E40",
"g. c #DCEA11",
"h. c #CCD910",
"i. c #5E592F",
"j. c #201E15",
"k. c #B0B1A9",
"l. c #91991A",
"m. c #41440C",
"n. c #B7A578",
"o. c #F6F6F6",
"p. c #52552A",
"q. c #EEFD13",
"r. c #A2AB15",
"s. c #343320",
"t. c #F7F7F7",
"u. c #D5D5D5",
"v. c #6B6D59",
"w. c #BBC712",
"x. c #575936",
"y. c #413E36",
"z. c #D6D6D6",
"A. c #2F2F2F",
"B. c #292929",
"C. c #555A0C",
"D. c #767C1D",
"E. c #CECECB",
"F. c #5B5D3E",
"G. c #DDEB12",
"H. c #CEDB11",
"I. c #717359",
"J. c #ACADA4",
"K. c #959D1A",
"L. c #5A5D27",
"M. c #525528",
"N. c #A4AE16",
"O. c #9D9E90",
"P. c #EBEBEB",
"Q. c #8F8F8F",
"R. c #4E4F3B",
"S. c #C0CC11",
"T. c #E8F612",
"U. c #3E401E",
"V. c #C6C6C6",
"W. c #E7E7E7",
"X. c #757575",
"Y. c #656564",
"Z. c #606513",
"`. c #6D7312",
" + c #5F5F5B",
".+ c #BCBCBC",
"++ c #5D5F3D",
"@+ c #E1EF12",
"#+ c #CFDC11",
"$+ c #6F7157",
"%+ c #A8A99E",
"&+ c #98A119",
"*+ c #5A5E26",
"=+ c #F5F5F5",
"-+ c #575A29",
";+ c #EFFE13",
">+ c #A7B116",
",+ c #9A9B8C",
"'+ c #CECECE",
")+ c #1E1F09",
"!+ c #C1CE0F",
"~+ c #272906",
"{+ c #939393",
"]+ c #F0F0F0",
"^+ c #C8C8C7",
"/+ c #6E741F",
"(+ c #787F1C",
"_+ c #BCBCB8",
":+ c #F9F9F9",
"<+ c #575939",
"[+ c #E2F012",
"}+ c #D0DD10",
"|+ c #6C6E54",
"1+ c #A4A59A",
"2+ c #9CA519",
"3+ c #5A5E25",
"4+ c #F2F2F2",
"5+ c #545727",
"6+ c #AEB816",
"7+ c #979889",
"8+ c #252711",
"9+ c #C3CF10",
"0+ c #E9F812",
"a+ c #2D300B",
"b+ c #DBDBDB",
"c+ c #A9A9A7",
"d+ c #70751D",
"e+ c #7A8019",
"f+ c #ACACA7",
"g+ c #37332D",
"h+ c #2A280E",
"i+ c #DCE911",
"j+ c #D2DF11",
"k+ c #6A6C52",
"l+ c #4E433D",
"m+ c #805D47",
"n+ c #1A150E",
"o+ c #90990D",
"p+ c #5C6025",
"q+ c #EAEAEA",
"r+ c #E3E3E3",
"s+ c #C1C1C1",
"t+ c #5F4A3D",
"u+ c #B18061",
"v+ c #A07357",
"w+ c #2C2219",
"x+ c #36350E",
"y+ c #848575",
"z+ c #EFEFEF",
"A+ c #212121",
"B+ c #1B1917",
"C+ c #87614A",
"D+ c #644938",
"E+ c #16120E",
"F+ c #59534E",
"G+ c #AC7C5E",
"H+ c #A8795C",
"I+ c #4C3F36",
"J+ c #8B8987",
"K+ c #4C423C",
"L+ c #8E684F",
"M+ c #423A36",
"N+ c #D1D1D1",
"O+ c #070605",
"P+ c #65605D",
"Q+ c #5E5C5C",
"R+ c #413E35",
"S+ c #423E35",
"T+ c #EEEEEE",
"U+ c #C3C3C3",
"V+ c #514B3D",
"W+ c #A2926A",
"X+ c #3D392F",
"Y+ c #2C2A24",
"Z+ c #454034",
"`+ c #AE9D72",
" @ c #201C15",
".@ c #14110D",
"+@ c #A4946C",
"@@ c #AB9A70",
"#@ c #13110C",
"$@ c #0C0B09",
"%@ c #060504",
"&@ c #0C0B08",
" ",
" . + @ ",
" # $ % & ",
" * = $ $ - ; ",
" > , ' $ $ $ ) ",
" ! ~ { ] - ^ ",
" / / / / / / / / / / / ( _ : : < < [ } | 1 [ 2 / / / / / / / / / / 3 4 5 5 6 7 8 ",
" 9 0 a a a a a a a a a a a b c c c c c c c c c c d a a a a a a a a a a e f g h 5 5 i ",
" j k k l m m m m m m m m n o c c c c c c c c c c p m m m m m m m m q k r s t u v w x ",
" y k z A B B B B B B B B C D c c c c c c c c c c E B B B B B B B B F G H I I J K L ",
" y k M N N N N N N N N N O P c c c c c c c c c c Q N N N N N N N N R S T I I I U V ",
" y k W N N N N N N N N N O P c c c c c c c c c c Q N N N N N N N N X Y I I I Z ` ",
" y k W N N N N N N N N N ...P +.@.#.#.$.%.%.&.*.=.N N N N N N N -.;.I I I I >. ",
" y k W N N N N N N N N N ,.'.'.).!.!.~.{.{.{.].^./.N N N N N N N (._.I I I :.<. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N N N [.}.I I I I |. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N N 1.2.3.I I I 4. ",
" y k W N 5.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.7.8.I I I 9.0. ",
" y k W N a.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.&.c.I I I I d.e. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N f.g.I I I h.i.j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N k.l.I I I I m.n.j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N o.p.q.I I I r.s.k j. ",
" y k W N t.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.u.v.w.I I I 9.x.y.k j. ",
" y k W N z.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.B.C.I I I I D.E.y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N F.G.I I I H.I.N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N J.K.I I I I L.5.N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N o.M.q.I I I N.O.N N y.k j. ",
" y k W N P.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.R.S.I I I T.U.V.N N y.k j. ",
" y k W N W.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.Y.Z.I I I I `. +.+N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N ++@+I I I #+$+N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N %+&+I I I I *+P.N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N =+-+;+I I I >+,+N N N N N y.k j. ",
" y k W N '+................................)+!+I I I T.~+......{+N N y.k j. ",
" y k W N O ]+]+]+]+]+]+]+]+]+]+]+]+]+]+]+^+/+I I I I (+_+]+]+]+:+N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N <+[+I I I }+|+N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N 1+2+I I I I 3+P.N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N 4+5+;+I I I 6+7+N N N N N N N N y.k j. ",
" y k W N P.B.B.B.B.B.B.B.B.B.B.B.B.B.8+9+I I I 0+a+B.B.B.B.B.B.~ N N y.k j. ",
" y k W N O b+b+b+b+b+b+b+b+b+b+b+b+c+d+I I I I e+f+b+b+b+b+b+b+P.N N y.k j. ",
" y k W N N N N N N N N N N N N N N g+h+i+I I j+k+N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N l+m+n+o+I p+q+N N N N N N N N N N y.k j. ",
" y k W N ,.r+r+r+r+r+r+r+r+r+r+r+s+t+u+v+w+x+y+r+r+r+r+r+r+r+r+z+N N y.k j. ",
" y k W N ]+A+A+A+A+A+A+A+A+A+A+A+B+C+u+u+D+E+A+A+A+A+A+A+A+A+A+h N N y.k j. ",
" y k W N N N N N N N N N N N N N F+G+H+I+J+N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N K+L+M+N+N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N ^.O+P+o.N N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N A.Q+N N N N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N b+N N N N N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N y.k j. ",
" y k W N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N R+k j. ",
" y k S+z.T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+T+U+V+k j. ",
" y k W+X+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Y+Z+`+k j. ",
" y k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k @ ",
" .@+@k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k @@#@ ",
" $@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@&@ ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "};