OpText Test Programs - OOP344 20101
OOP344 | Weekly Schedule | Student List | Teams | Project | Student Resources
Contents
BFrame R0.1 test main
OpText Text Editor (AS2) - OOP344 20101
# include "btext.h" # include "bframe.h" int main(int argc, char* argv[], char* env[]) { int ro = 0; int co = 0; bool done = false; int key = 0; bio_init(); int rows = bio_rows(); int cols = bio_cols(); BFrame bframe(8, 30, 5, 10, true); while(!done){ bio_clrscr(); bframe.draw(ro, co); key = bio_getch(); switch(key){ case RIGHT_KEY: if(co + 40 < cols) co++; break; case LEFT_KEY: if(co + 30 > 0) co--; break; case DOWN_KEY: if(ro + 13 < rows ) ro++; break; case UP_KEY: if(ro + 8 > 0 ) ro--; break; case ESCAPE_KEY: done = true; break; } } bio_end(); return 0; }
== 0.1 Executable on matrix: ==
~fardad.soleimanloo/bframetest
OpText R0.3 test main
OpText Text Editor (AS2) - OOP344 20101
# include "btext.h" # include "blabel.h" # include "bedit.h" # include "bform.h" # include <string.h> bool Yes(const char* message, BForm* owner){ int key; BForm YesNo((bio_rows()- 10)/2, (bio_cols()-40)/2, 10, 40, true); YesNo.add(new BLabel(2, 2, 36)).add(new BLabel("(Y)es / (N)o", 4, 12)); YesNo[0].set(message); key = YesNo.edit(0, owner); return key == 'Y' || key == 'y'; } int main() { int insert = 1; int key; bool done = false; bio_init(); BForm F(3, 5, 20, 70, true); F.add(new BLabel("Name:", 3, 2)) .add(new BEdit(2, 10, 20, 40, &insert,true)) .add(new BLabel("Lastname:", 6, 2)) .add(new BEdit(5, 13, 20, 40, &insert, true)) .add(new BLabel("Phone Number", 9,2)) .add(new BEdit(8, 16, 15, 20, &insert, true)); while(!done){ key = F.edit(); switch(key){ case F1_KEY: // Help.edit(); to do later break; case ESCAPE_KEY: if(Yes("Do you really want to quit?", &F)){ done = true; } F.display(OT_CLR_AND_DSPLY_ALL); break; } } bio_end(); return 0; }
0.3 Executable on matrix:
~fardad.soleimanloo/optext0.3
OpText R0.31 test main (with help window)
OpText Text Editor (AS2) - OOP344 20101
# include "btext.h" # include "blabel.h" # include "bedit.h" # include "bform.h" # include <string.h> bool Yes(const char* message, BForm* owner){ int key; BForm YesNo((bio_rows()- 10)/2, (bio_cols()-40)/2, 10, 40, true); YesNo.add(new BLabel(2, 2, 36)).add(new BLabel("(Y)es / (N)o", 4, 12)); YesNo[0].set(message); key = YesNo.edit(0, owner); return key == 'Y' || key == 'y'; } void Help(BForm* owner){ BForm help((bio_rows()- 10)/2, (bio_cols()-40)/2, 10, 40, true); help.add(new BLabel(2, 3,36)) .add(new BLabel("Escape Key: Exit the test program.", 4, 3)) .add(new BLabel("F1 Key: Open this window.", 6, 3)); switch(owner->curField()){ case 2: help[0].set("Enter the name here!"); break; case 4: help[0].set("Enter the Last name here!"); break; case 6: help[0].set("Enter Phone number: (999)999-9999"); } help.edit(0, owner); } int main() { int insert = 1; int key; bool done = false; bio_init(); BForm F(3, 5, 20, 70, true); F.add(new BLabel("Name:", 3, 2)) .add(new BEdit(2, 10, 20, 40, &insert,true)) .add(new BLabel("Lastname:", 6, 2)) .add(new BEdit(5, 13, 20, 40, &insert, true)) .add(new BLabel("Phone Number", 9,2)) .add(new BEdit(8, 16, 15, 20, &insert, true)); while(!done){ key = F.edit(); switch(key){ case F1_KEY: Help(&F); break; case ESCAPE_KEY: if(Yes("Do you really want to quit?", &F)){ done = true; } F.display(OT_CLR_AND_DSPLY_ALL); break; } } bio_end(); return 0; }
0.31 Executable on matrix
~fardad.soleimanloo/optext0.31