This commit is contained in:
rob tillaart 2021-01-04 17:31:40 +01:00
parent 032f586b1b
commit 9aaab3d8da
4 changed files with 14 additions and 12 deletions

View File

@ -66,9 +66,9 @@ void ParallelPrinter::reset()
void ParallelPrinter::setTabSize(uint8_t n)
{
// 2,4,6,8 allowed
// 0,2,4,6,8 allowed
// 0 == ignore tabs.
_tabSize = (n > 8) ? 8 : n/2 * 2;
if (_tabSize < 2) _tabSize = 2;
}

View File

@ -35,7 +35,7 @@ public:
uint8_t getPosition() { return _pageNr; };
// n = 2,4,6,8
void setTabSize(uint8_t n);
void setTabSize(uint8_t n) { _tabSize = n; };
uint8_t getTabSize() { return _tabSize; };
// n = 1,2,3
void setLineFeed(uint8_t n) { _lineFeed = constrain(n, 1, 3); };

View File

@ -41,7 +41,7 @@ Have fun!
- **getLineNumber()** idem
- **getPageNumber()** idem
- **getPosition()** idem
- **setTabSize(n)** tabs are replaced by spaces. n = 2,4,6,8
- **setTabSize(n)** tabs are replaced by spaces. n can be 0 or any size!
- **getTabSize()** returns tabSize set
- **setLineFeed(n)** n = 1,2,3 1 = default
- **getLineFeed()** returns lineFeed set

View File

@ -80,16 +80,22 @@ unittest(test_constructor_basic)
assertEqual(1, PP.getLineFeed());
PP.formfeed();
PP.formfeed();
PP.formfeed();
PP.formfeed();
PP.println("This is a test");
PP.println("This is a test");
PP.println("This is a test");
PP.print("Hello World");
// TODO should be line 2 and position 12 or so.
fprintf(stderr, "%d\n", PP.getLineNumber());
fprintf(stderr, "%d\n", PP.getPageNumber());
fprintf(stderr, "%d\n", PP.getPosition());
assertEqual(0, PP.getLineNumber());
assertEqual(0, PP.getPageNumber());
assertEqual(0, PP.getPosition());
assertEqual(1, PP.getLineNumber());
assertEqual(1, PP.getPageNumber());
assertEqual(1, PP.getPosition());
}
@ -97,11 +103,7 @@ unittest(test_tabs_linefeed)
{
ParallelPrinter PP;
fprintf(stderr, "0\t");
PP.setTabSize(0);
assertEqual(2, PP.getTabSize()); // minimum tab size
for (int tab = 2; tab < 10; tab +=2 )
for (int tab = 0; tab < 10; tab +=2 )
{
fprintf(stderr, "%d\t", tab);
PP.setTabSize(tab);