Code:
class block_text {
public:
void type(const char text_to_type[] = "", int columns = 1, int rows = 1) {
column = columns;
row = rows;
original_column = column;
original_row = column;
set_position(column, row);
for (int i = 0; i < strlen(text_to_type); i++) {
switch (text_to_type[i]) {
case '\n':
type_newline();
break;
case '\t':
case ' ':
type_space();
break;
case 'A':
type_A();
break;
case 'B':
type_B();
break;
case 'C':
type_C();
break;
case 'D':
type_D();
break;
case 'E':
type_E();
break;
case 'F':
type_F();
break;
case 'G':
type_G();
break;
case 'H':
type_H();
break;
case 'I':
type_I();
break;
case 'J':
type_J();
break;
case 'K':
type_K();
break;
case 'L':
type_L();
break;
case 'M':
type_M();
break;
case 'N':
type_N();
break;
case 'O':
type_O();
break;
case 'P':
type_P();
break;
case 'Q':
type_Q();
break;
case 'R':
type_R();
break;
case 'S':
type_S();
break;
case 'T':
type_T();
break;
case 'U':
type_U();
break;
case 'V':
type_V();
break;
case 'W':
type_W();
break;
case 'X':
type_X();
break;
case 'Y':
type_Y();
break;
case 'Z':
type_Z();
break;
case '!':
type_excl();
case '?':
type_ques();
case '~':
type_bloc();
default:
break;
}
}
}
private:
int column = 1, original_column = 1;
int row = 1, original_row = 1;
void type_newline() {
row = row + 6;
column = original_row;
}
void type_space() {
column = column + 1;
}
void type_A() {
set_position(column, row);
std::cout << " " << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_B() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_C() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_D() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_E() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
set_position(column, row + 1);
std::cout << (char)219 << (char)219;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
set_position(column, row + 3);
std::cout << (char)219 << (char)219;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
column = column + 7;
}
void type_F() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
set_position(column, row + 1);
std::cout << (char)219 << (char)219;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
set_position(column, row + 3);
std::cout << (char)219 << (char)219;
set_position(column, row + 4);
std::cout << (char)219 << (char)219;
column = column + 7;
}
void type_G() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
set_position(column, row + 1);
std::cout << (char)219 << (char)219;
set_position(column, row + 2);
std::cout << (char)219 << (char)219;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219;
column = column + 7;
}
void type_H() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_I() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_J() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_K() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_L() {
set_position(column, row);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_M() {
set_position(column, row);
std::cout << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_N() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_O() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_P() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_Q() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_R() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_S() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row+1);
std::cout << (char)219 << (char)219 << " " << std::endl;
set_position(column, row+2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row+3);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row+4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_T() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_U() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << (char)219 << (char)219 << " " << std::endl;
column = column + 7;
}
void type_V() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
column = column + 7;
}
void type_W() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << " " << (char)219 << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << " " << (char)219 << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_X() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << (char)219 << (char)219 << " " << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_Y() {
set_position(column, row);
std::cout << (char)219 << (char)219 << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << " " << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << " " << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
column = column + 7;
}
void type_Z() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_excl() {
set_position(column, row);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << std::endl;
column = column + 7;
}
void type_ques() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << " " << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << " " << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << " " << (char)219 << (char)219 << " " << std::endl;
column = column + 7;
}
void type_bloc() {
set_position(column, row);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 1);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 2);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 3);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
set_position(column, row + 4);
std::cout << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << (char)219 << std::endl;
column = column + 7;
}