void PolishKeyboardData::initRightKeySymbolCode()
{
    const QChar chs[] = {'_', '"', ',',
                         QChar(0x00AD), '\'', ';',
                         QChar(0x00AB), QChar(0x00BB)};
    for (int i = 0; i < 8; i++)
    {
        ODataPtr dd(createData(QString(chs[i])));
        right_symbol_codes_.push_back(dd);
    }
    right_symbol_codes_.push_back(ODataPtr(createEnterData()));
}
void HebrewKeyboardData::initBottomKeyCode()
{
    const QChar chs[] = {'+', '-', '.', '"', ','};
    for (int i=0; i<5; i++)
    {
        ODataPtr dd(createData(QString(chs[i])));
        bottom_codes_.push_back(dd);
    }

    bottom_codes_.push_back(ODataPtr(createSpaceData()));
    bottom_codes_.push_back(ODataPtr(createBackspaceData()));

    const QChar chs_next[] = {'\'', ';'};
    for (int i=0; i<2; i++)
    {
        ODataPtr dd(createData(QString(chs_next[i])));
        bottom_codes_.push_back(dd);
    }

    bottom_codes_.push_back(ODataPtr(createEnterData()));
}
void HebrewKeyboardData::initBottomKeyShiftCode()
{
    const QChar chs[] = {'\\', '/', '[', ']', '='};
    for (int i=0; i<5; i++)
    {
        ODataPtr dd(createData(QString(chs[i])));
        bottom_shift_codes_.push_back(dd);
    }

    bottom_shift_codes_.push_back(ODataPtr(createSpaceData()));
    bottom_shift_codes_.push_back(ODataPtr(createBackspaceData()));

    const QChar chs_next[] = {'?', ':'};
    for (int i=0; i<2; i++)
    {
        ODataPtr dd(createData(QString(chs_next[i])));
        bottom_shift_codes_.push_back(dd);
    }

    bottom_shift_codes_.push_back(ODataPtr(createEnterData()));
}
void RussianKeyboardData::initBottomKeyCode()
{
    const QChar chs[] = {'.', ',', QChar(0x0437), QChar(0x0445),
            QChar(0x0434), ' '};
    for (int i=0; i<6; i++)
    {
        ODataPtr dd(createData(QString(chs[i])));
        bottom_codes_.push_back(dd);
    }

    ODataPtr dd(createBackspaceData());
    bottom_codes_.push_back(dd);

    const QChar chs_next[] = {QChar(0x0436), QChar(0x044D)};
    for (int i=0; i<2; i++)
    {
        ODataPtr dd(createData(QString(chs_next[i])));
        bottom_codes_.push_back(dd);
    }

    bottom_codes_.push_back(ODataPtr(createEnterData()));
}
void RussianKeyboardData::initBottomKeyShiftCode()
{
    const QChar chs[] = {'\'', QChar(0x0445).toUpper(), QChar(0x044A).toUpper(),
                         QChar(0x0451).toUpper(), QChar(0x0437).toUpper()};
    for (int i=0; i<5; i++)
    {
        ODataPtr dd(createData(QString(chs[i])));
        bottom_shift_codes_.push_back(dd);
    }

    bottom_shift_codes_.push_back(ODataPtr(createSpaceData()));
    ODataPtr dd(createBackspaceData());
    bottom_shift_codes_.push_back(dd);

    const QChar chs_next[] = {QChar(0x0436).toUpper(), QChar(0x044D).toUpper()};
    for (int i=0; i<2; i++)
    {
        ODataPtr dd (createData(QString(chs_next[i])));
        bottom_shift_codes_.push_back(dd);
    }

    bottom_shift_codes_.push_back(ODataPtr(createEnterData()));
}