summaryrefslogtreecommitdiffstats
path: root/widget/nsIMacFinderProgress.idl
blob: 3c568bf1b5618cc756bcf8580ea4564ec6e5ee56 (plain)
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
43
/* -*- Mode: C++; 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 "nsISupports.idl"


[scriptable, function, uuid(6BAE6D1C-7FFD-4354-8D7B-64697E98A801)]
interface nsIMacFinderProgressCanceledCallback : nsISupports
{
  void canceled();
};


[scriptable, uuid(25A0B01F-54D4-4AEF-B2BF-C5764CDC68A8)]
interface nsIMacFinderProgress : nsISupports
{
  /**
  * Initialize and display a new Finder progressbar on the given file
  *
  * @param      path              The path of the file
  *
  * @param      canceledCallback  Callback which is called when cancelation is requested
  */
  void init(in AString path, in nsIMacFinderProgressCanceledCallback canceledCallback);

  /**
  * Update the current and total progess. If currentProgress and totalProgress are both 0,
  * the progress is indetermined
  *
  * @param      currentProgress  The current progress
  *
  * @param      totalProgress    The total progress
  */
  void updateProgress(in unsigned long long currentProgress, in unsigned long long totalProgress);

  /**
  * End displaying the progressbar on the file
  */
  void end();
};