# Multi-item control with numerous possible view styles class Wx::ListCtrl # Make these ruby enumerables so find, find_all, map are available include Enumerable # Passes each valid item index into the passed block def each 0.upto(item_count - 1) { | i | yield i } end # Returns an Array containing the indexes of the currently selected # items def get_selections selections = [] item = get_next_item(-1, Wx::LIST_NEXT_ALL, Wx::LIST_STATE_SELECTED) while item >= 0 selections << item item = get_next_item(item, Wx::LIST_NEXT_ALL, Wx::LIST_STATE_SELECTED) end selections end # Stub version for LC_VIRTUAL controls that does nothing; may be # overridden in subclasses. def on_get_item_attr(i) nil end # Stub version for LC_VIRTUAL|LC_REPORT controls that does nothing; # may be overridden in subclasses. def on_get_item_column_image(i, col) -1 end end