package Ġch . compile . bl itz remote . components Ċ Ċ import Ġch . compile . bl itz remote . helpers . Use Cell Renderer Ċ import Ġch . compile . bl itz remote . model . Abstract Blit z TreeNode Ċ import Ġjava . awt . Font Ċ import Ġjavax . swing . J Table Ċ import Ġjavax . swing . table . Default TableCell Renderer Ċ import Ġjavax . swing . table . TableCell Renderer Ċ import Ġkotlin . reflect . full . create Instance Ċ import Ġkotlin . reflect . full . find Annotation Ċ Ċ class ĠProperty Editor ( bl itz TreeNode : ĠAbstract Blit z TreeNode ) Ġ: ĠJ Table ( Property Editor TableModel ( bl itz TreeNode )) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Cell Renderer ( row : ĠInt , Ġcolumn : ĠInt ): ĠTable Cell Renderer Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( column Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠB old Cell Renderer ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġm Ġ= Ġthis . model Ġas ĠProperty Editor TableModel ĊĠĠĠĠĠĠĠ Ġval Ġprop Ġ= Ġm . getProperty Type At ( row ) ĊĠĠĠĠĠĠĠ Ġval Ġuse Cell Renderer Ġ= Ġprop . find Annotation < Use Cell Renderer >() ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( use Cell Renderer Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġuse Cell Renderer . value . create Instance () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . getCell Renderer ( row , Ġcolumn ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠB old Cell Renderer Ġ: ĠDefault TableCell Renderer . UI Resource () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Font ( font : ĠFont ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . setFont ( font . derive Font ( Font . BOLD )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }