// ĠCopyright Ġ 2 0 0 0 - 2 0 2 1 ĠJetBrains Ġs . r . o . Ġand Ġcontributors . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġcom . intellij . collabor ation . ui . coder e view . commits Ċ Ċ import Ġcom . intellij . ui . Simple Colo red Component Ċ import Ġcom . intellij . ui . Simple Text Attributes Ċ import Ġcom . intellij . ui . speed Search . Speed Search Util Ċ import Ġcom . intellij . util . ui . UI Util Ċ import Ġcom . intellij . util . ui . components . Border LayoutPanel Ċ import Ġcom . intellij . vcs . log . V cs Commit Metadata Ċ import Ġcom . intellij . vcs . log . graph . Default Color Generator Ċ import Ġjava . awt . Component Ċ import Ġjavax . swing . J List Ċ import Ġjavax . swing . List Cell Renderer Ċ Ċ class ĠCommit s List Cell Renderer Ġ: ĠList Cell Renderer < V cs Commit Metadata >, ĠBorder LayoutPanel () Ġ{ ĊĠ Ġprivate Ġval Ġnode Component Ġ= ĠCommit Node Component (). apply Ġ{ ĊĠĠĠ Ġforeground Ġ= ĠDefault Color Generator (). getColor ( 1 ) ĊĠ Ġ} ĊĠ Ġprivate Ġval Ġmessage Component Ġ= ĠSimple Colo red Component () ĊĊĠ Ġinit Ġ{ ĊĠĠĠ ĠaddTo Left ( node Component ) ĊĠĠĠ ĠaddTo Center ( message Component ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠgetList Cell Renderer Component ( list : ĠJ List < out ĠV cs Commit Metadata >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue : ĠV cs Commit Metadata ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindex : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Selected : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcell Has Focus : ĠBoolean ): ĠComponent Ġ{ ĊĠĠĠ Ġmessage Component . clear () ĊĠĠĠ Ġmessage Component . append ( value ?. subject . or Empty (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSimple Text Attributes ( Simple Text Attributes . STYLE _ PLAIN , ĠUI Util . getList Foreground ( isSelected , Ġcell Has Focus ))) ĊĠĠĠ ĠSpeed Search Util . apply Speed Search Highlighting ( list , Ġmessage Component , Ġtrue , Ġis Selected ) ĊĊĠĠĠ Ġval Ġsize Ġ= Ġlist . model . size ĊĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠ Ġsize Ġ<= Ġ 1 Ġ-> Ġnode Component . type Ġ= ĠCommit Node Component . Type . SINGLE ĊĠĠĠĠĠ Ġindex Ġ== Ġ 0 Ġ-> Ġnode Component . type Ġ= ĠCommit Node Component . Type . FIRST ĊĠĠĠĠĠ Ġindex Ġ== Ġsize Ġ- Ġ 1 Ġ-> Ġnode Component . type Ġ= ĠCommit Node Component . Type . LAST ĊĠĠĠĠĠ Ġelse Ġ-> Ġnode Component . type Ġ= ĠCommit Node Component . Type . MIDDLE ĊĠĠĠ Ġ} ĊĠĠĠ Ġthis . background Ġ= ĠUI Util . getList Background ( isSelected , Ġcell Has Focus ) ĊĠĠĠ Ġreturn Ġthis ĊĠ Ġ} Ċ }