DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (af5845922999)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsITreeView.idl"

interface nsIMsgDBHdr;

    /* //TODO JavaDoc
       When implementing a js custom column handler (of type nsITreeView) you must implement the following
       functions:
       1. isEditable
       2. GetCellProperties
       3. GetImageSrc
       4. GetCellText
       5. CycleCell
       6. GetSortStringForRow
       7. GetSortLongForRow
       8. isString

       You can, at your option, implement
       9.  GetRowProperties.

       With Bug 1192696, Grouped By Sort was implemented for custom columns.
       Implementers should consider that the value returned by GetSortStringForRow
       will be displayed in the grouped header row, as well as be used as the
       sort string.

      If implementing a c++ custom column handler, you must define all
      nsITreeView and nsIMsgCustomColumnHandler methods.
    */


[scriptable, uuid(00f75b13-3ac4-4a17-a8b9-c6e4dd1b3f32)]
interface nsIMsgCustomColumnHandler : nsITreeView
{
  AString getSortStringForRow(in nsIMsgDBHdr aHdr);
  unsigned long getSortLongForRow(in nsIMsgDBHdr aHdr);
  boolean isString();
};