Esempio n. 1
0
void SpecRuler2D::allocateBody( Glyph* body, Allocation& interior ) 
{
	// Dies funktioniert minimal, d.h. wenn Request nicht vorhanden.
    Allotment& x = interior.getAllotment( DimensionX );
	x.setSpan( x.getSpan() - d_width );
	x.setOrigin( x.getOrigin() );
    Allotment& y = interior.getAllotment( DimensionY );
	y.setSpan( y.getSpan() - d_height );
	y.setOrigin( y.getOrigin() );
	return;

}
Esempio n. 2
0
void Border::allocateBody( Glyph* body, Twips thickness, Allocation& interior ) 
{
	// Dies funktioniert minimal, d.h. wenn Request nicht vorhanden.
    Allotment& x = interior.getAllotment( DimensionX );
	x.setSpan( x.getSpan() - 2 * thickness );
	x.setOrigin( x.getOrigin() + thickness );
    Allotment& y = interior.getAllotment( DimensionY );
	y.setSpan( y.getSpan() - 2 * thickness );
	y.setOrigin( y.getOrigin() + thickness );
	return;

	// Stammt aus BevelFrame: wozu das ganze? Scheint zu funktionieren.
    Requisition reqest;
    body->request( reqest );
    Allotment& ax = interior.getAllotment( DimensionX );
    Twips x_span = ax.getSpan() - 2 * thickness;
    Twips x_offset = thickness;
    Twips x_align = ax.getAlignment();


    const Requirement& rx = reqest.getRequirement( DimensionX );
    if( rx.isDefined() ) 
	{
		Twips x_usable = rx.getNatural() + rx.getStretch();
		if( x_span > x_usable ) 
		{
			x_offset += 0 * ( x_span - x_usable );	// d_alignX
			x_span = x_usable;
		}
    }
    ax.setSpan( x_span );
    ax.move( x_offset * ( AlignmentMax - 2 * x_align ) );

    Allotment& ay = interior.getAllotment( DimensionY );
    Twips y_span = ay.getSpan() - 2 * thickness;
    Twips y_offset = thickness;
    Twips y_align = ay.getAlignment();


    const Requirement& ry = reqest.getRequirement( DimensionY );
    if( ry.isDefined() ) 
	{
		Twips y_usable = ry.getNatural() + ry.getStretch();
		if( y_span > y_usable ) 
		{
			y_offset += 0 * ( y_span - y_usable );	// d_alignY
			y_span = y_usable;
		}
    }
    ay.setSpan( y_span );
    ay.move( y_offset * ( AlignmentMax - 2 * y_align ) );
}
Esempio n. 3
0
	void execute()
	{
		Allocation r;
		getAllocation( r );
		ViewAreaMdl* mdl = d_view->getViewArea();
		Allocation a = mdl->getAllocation();
		PpmCube c;
		c.assign( 1, PpmRange() );
		Dimension dim = d_view->getDir();
		c[ DimX ].first = mdl->toPpm( r.getAllotment( dim ).getBegin(), 
			a.getAllotment( dim ).getBegin(), dim );
		c[ DimX ].second = mdl->toPpm( r.getAllotment( dim ).getEnd(), 
			a.getAllotment( dim ).getBegin(), dim );
		d_view->selectPeak( c );
		Command::execute();
	}
Esempio n. 4
0
void StripRuler2D::allocateBody( Glyph* body, Allocation& interior ) 
{
    Allotment& y = interior.getAllotment( DimensionY );
	y.setSpan( y.getSpan() - ( d_hUpper + d_hLower ) );
	y.setOrigin( y.getOrigin() + d_hUpper );
}