Those are done using Column Icons. Which are set in the preferences, under Look & feel on the "Column icons" tab.
There you can create rules to set the icon. The rules can be simple or advanced.
The simple rules are created by selecting various options. For example, the green tick is from a rule that looks like:
Code:
Set the icon with no text of Kobo % Read to ok.png
if the following conditions are met:
If the Kobo % Read column is equal to value: 100
That is done through the dialog and selecting the appropriate options.
The reading icon uses an advanced rule with code in it like:
Code:
program:
test(
or(
and(
cmp(field('#kobo_percent_read'), 0, '', '', 'Y'),
cmp(field('#kobo_percent_read'), 100, 'Y', '', '')
),
str_in_list(field('#status'), ',', 'Reading', 'y', '')
),
'bookmarks.png',
'')
That is in calibre's template code and is basically testing if the percent read is between 0 and 100 or the status column has the value "Reading" to use the icon "bookmark.png".
When creating the rules there are options for whether to include the columns text and whether to allow adding multiple columns. You need to play with them a bit to get the desired effects. I did this long enough ago that I don't remember exactly how the different combinations work.