The finite-element-based solution of partial differential equations often requires the solution of large systems of linear equations. Krylov subspace methods are efficient solvers when combined with effective preconditioners. We consider block preconditioners that are applicable to problems that have different types of degree of freedom (e.g., velocity and pressure in a fluid simulation). We discuss the development of an object-oriented parallel block preconditioning framework within oomph-lib, the object-oriented, multi-physics, finite-element library, available as open-source software at http://www.oomph-lib.org. We demonstrate the performance of this framework for problems from non-linear elasticity, fluid mechanics, and fluid-structure interaction.