     
   @method 'sortFunction', (sortColumn) ->
     self = this
-    column = sortColumn || @_sortColumn
-    
-    sortFn = null
-    sortFn ||= column.sort
-    sortFn = ST.makeSortFn column.sortBy if column.sortBy
-    
-    if sortFn
-      if @_reverseSort
-        (a, b) -> sortFn self._list.at(b), self._list.at(a)
+    if column = sortColumn || @_sortColumn
+      sortFn = null
+      sortFn ||= column.sort
+      sortFn = ST.makeSortFn column.sortBy if column.sortBy
+    
+      if sortFn
+        if @_reverseSort
+          (a, b) -> sortFn self._list.at(b), self._list.at(a)
+        else
+          (a, b) -> sortFn self._list.at(a), self._list.at(b)
       else
-        (a, b) -> sortFn self._list.at(a), self._list.at(b)
-    else
-      ST.makeSortFn (index) ->
-        self.cellValue self._list.at(index), column
-      , @_reverseSort
+        ST.makeSortFn (index) ->
+          self.cellValue self._list.at(index), column
+        , @_reverseSort
 
   @method 'setSortColumn', (sortColumn, reverseSort) ->
     self = this

    if oldSortColumn == sortColumn
      @_reverseSort = !@_reverseSort
    else
      @_reverseSort = sortColumn.reverse || false
      
    @_sortColumn = sortColumn
    

  
  @method 'sort', ->
    self = this
    if sortFunction = @sortFunction()
      @_mapping.sort sortFunction
      if @_loaded
        tbody = $('tbody', @_tableElement)
        for index in @_mapping
          tbody.append $('tr.item' + index, @_tableElement)
    
  @method 'render', ->
    @renderTable()
