# include "visualisation.h"
:: visualisation (QWidget * parent): (parent)
{
}
visualisation :: paintEvent (QPaintEvent *)
{spacerX = (this-> width () - 620)/2; spacerY = (this-> height () - 100)/2; * painter = new 14));
// ======================================= mid = 15 * floor (* fakePos/15); real_mid = * realPos - (* fakePos - mid); start = real_mid - 15; end = real_mid + 15; x = -300; (int i = start; i <= end; i + +)
{c; (i <0 | | i> = ribbon-> count ()) = spaceSymbol; = ribbon-> at (i);> setPen (QPen (QColor (Qt :: black)));> drawText (300 + x + spacerX, 60 + spacerY, 20, 20, Qt :: AlignCenter, c);> drawRect (300 + x + spacerX, 60 + spacerY, 20 , 25); + = 20;
}> setBrush (QBrush (QColor (Qt :: black)));> drawPie (300 + 20 * (* fakePos - mid) + spacerX, 80 + spacerY, 20, 20, 240 * 16, 60 * 16);> drawText (0, 30 + spacerY, this-> width (), 20, Qt :: AlignCenter, resultText);
> drawRect (300 + spacerX, spacerY, 20, 25);> setPen (QPen (QColor (Qt :: white)));> drawText (300 + spacerX, 2 + spacerY , 20, 20, Qt :: AlignCenter, * state);
// =======================================> ; restore ();> end ();
}
visualisation :: setRibbon (QList * r)
{= r;
}
visualisation :: setSpaceSymbol (QChar c)
{= c;
}
visualisation :: setFakePos (int * pos)
{= pos;
}
visualisation :: setRealPos (int * pos)
{= pos;
} visualisation :: setState (QChar * c)
{= c;
}
visualisation :: setResultText (const QString str)
{
resultText = str;
}
ДОДАТОК 2
Результати розрахунку на ЕОМ контрольного прикладу
Введення послідовності символів
В
Результат обробки вхідного рядка
В