let us collectively create a few customizable swing components