net.sf.ij_plugins.ui.progress

ProgressReporter

trait ProgressReporter extends AnyRef

Reports progress of an operation to its listeners. Progress starts at 0.0 and finishes at 1.0, so 0.3 means 30% progress.

Example usage:

class CounterWithProgress(marker: Char) extends ProgressReporter {
  def count(max: Int) {
    val progressIncrement = Math.max(max / 10, 1)

    println("Counting " + max + " '" + marker + "'.")

    for (i <- 1 to max) {
      print(marker)
      if (i % progressIncrement == 0) notifyProgressListeners(i, max)
    }

    println("\nCounting done.")
  }
}

object ProgressReporterExample extends App {
  // Create counter
  val counter = new CounterWithProgress('+')

  // Add progress listener
  counter.addProgressListener(e => println(f"\nProgress notification: ${e.progressPercent}%3.0f%%"))

  // Count
  counter.count(100)
}
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ProgressReporter
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def addProgressListener[R](op: (ProgressEvent) ⇒ R): Unit

    Add progress listener.

  7. def addProgressListener(l: ProgressListener): Unit

    Add progress listener.

    Add progress listener.

    l

    listener to add.

  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def currentProgress: Double

    Report what fraction of the processing task was already completed.

    Report what fraction of the processing task was already completed. Progress value is between 0 and 1 (meaning 100% completed). For instance, 0.25 means that 25% con the processing was completed.

    returns

    current progress.

  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  20. def notifyProgressListeners(count: Long, max: Long, message: String = ""): Unit

    Set new progress value and notify listeners.

    Set new progress value and notify listeners. Progress is calculated from count and max values:

    progress = count.toDouble / max.toDouble
    message

    message that will be send to listeners within ProgressEvent

    Attributes
    protected
  21. def notifyProgressListeners(progress: Double): Unit

    Attributes
    protected
  22. def notifyProgressListeners(progress: Double, message: String): Unit

    Set new progress value and notify listeners.

    Set new progress value and notify listeners.

    progress

    new value of currentProgress. The value must be not less than 0 and not more than 1.

    message

    message that will be send to listeners within ProgressEvent

    Attributes
    protected
  23. def notifyProgressListeners(): Unit

    Notify listeners of current value of progress.

    Notify listeners of current value of progress. Progress message is an empty string.

    Attributes
    protected
    See also

    #notifyProgressListeners(double)

  24. def removeAllProgressListener(): Unit

    Remove all progress listener.

  25. def removeProgressListener(l: ProgressListener): Unit

    Remove specific progress listener.

    Remove specific progress listener.

    l

    listener to remove.

  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  27. def toString(): String

    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped