Panel constructor