This is an old revision of the document!
notes for http://home.gna.org/undertype/
keys
QList<QGraphicsItem*> it = selectedItems();
if ( it.isEmpty() && event->modifiers().testFlag ( Qt::ControlModifier ) && event->modifiers().testFlag ( Qt::ShiftModifier ) )
{
switch ( event->key() )
{
case Qt::Key_Right : slotJustifyItsVeryBadInterletter ( 0.005 );
break;
case Qt::Key_Left : slotJustifyItsVeryBadInterletter ( -0.005 );
break;
default:break;
}
}
else if ( it.isEmpty() && event->modifiers().testFlag ( Qt::ControlModifier ) )
{
switch ( event->key() )
{
case Qt::Key_Right : slotJustifyBlanks ( 0.01 );
break;
case Qt::Key_Left : slotJustifyBlanks ( -0.01 );
break;
default:break;
}
}
else if ( it.isEmpty() )
{
QGraphicsView * v = views().first();
switch ( event->key() )
{
case Qt::Key_Up: v->scale ( 1.2,1.2 );
break;
case Qt::Key_Down : v->scale ( 1.0/1.2,1.0/1.2 );
break;
case Qt::Key_Right : slotJustifyBlanks ( 0.1 );
break;
case Qt::Key_Left : slotJustifyBlanks ( -0.1 );
break;
default:break;
}
}
else
{
if ( event->key() == Qt::Key_Delete )
{
for ( uint i = 0; i < it.count();++i )
{
removeItem ( it[i] );
glyphs.removeAll ( static_cast<ULGlyphItem*> ( it[i] ) );
}
}
else if ( event->key() == Qt::Key_E )
{
wantEdit ( static_cast<ULGlyphItem*> ( it.first() ) );
}
else
{
for ( uint i = 0; i < it.count();++i )
static_cast<ULGlyphItem*> ( it[i] )->keyForeign ( event );
}
previewLine(); } }