*
* The MIT License (MIT)
*
- * Copyright (C) 2016 Kevin Lamonte
+ * Copyright (C) 2019 Kevin Lamonte
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
/**
* TProgressBar implements a simple progress bar.
*/
-public final class TProgressBar extends TWidget {
+public class TProgressBar extends TWidget {
+
+ // ------------------------------------------------------------------------
+ // Variables --------------------------------------------------------------
+ // ------------------------------------------------------------------------
/**
* Value that corresponds to 0% progress.
*/
private int minValue = 0;
- /**
- * Get the value that corresponds to 0% progress.
- *
- * @return the value that corresponds to 0% progress
- */
- public int getMinValue() {
- return minValue;
- }
-
- /**
- * Set the value that corresponds to 0% progress.
- *
- * @param minValue the value that corresponds to 0% progress
- */
- public void setMinValue(final int minValue) {
- this.minValue = minValue;
- }
-
/**
* Value that corresponds to 100% progress.
*/
private int maxValue = 100;
- /**
- * Get the value that corresponds to 100% progress.
- *
- * @return the value that corresponds to 100% progress
- */
- public int getMaxValue() {
- return maxValue;
- }
-
- /**
- * Set the value that corresponds to 100% progress.
- *
- * @param maxValue the value that corresponds to 100% progress
- */
- public void setMaxValue(final int maxValue) {
- this.maxValue = maxValue;
- }
-
/**
* Current value of the progress.
*/
private int value = 0;
- /**
- * Get the current value of the progress.
- *
- * @return the current value of the progress
- */
- public int getValue() {
- return value;
- }
-
- /**
- * Set the current value of the progress.
- *
- * @param value the current value of the progress
- */
- public void setValue(final int value) {
- this.value = value;
- }
+ // ------------------------------------------------------------------------
+ // Constructors -----------------------------------------------------------
+ // ------------------------------------------------------------------------
/**
* Public constructor.
this.value = value;
}
+ // ------------------------------------------------------------------------
+ // Event handlers ---------------------------------------------------------
+ // ------------------------------------------------------------------------
+
+
+ // ------------------------------------------------------------------------
+ // TWidget ----------------------------------------------------------------
+ // ------------------------------------------------------------------------
+
/**
* Draw a static progress bar.
*/
int progressInt = (int)(progress * 100);
int progressUnit = 100 / (getWidth() - 2);
- getScreen().putCharXY(0, 0, GraphicsChars.CP437[0xC3], incompleteColor);
+ putCharXY(0, 0, GraphicsChars.CP437[0xC3], incompleteColor);
for (int i = 0; i < getWidth() - 2; i++) {
float iProgress = (float)i / (getWidth() - 2);
int iProgressInt = (int)(iProgress * 100);
if (iProgressInt <= progressInt - progressUnit) {
- getScreen().putCharXY(i + 1, 0, GraphicsChars.BOX,
- completeColor);
+ putCharXY(i + 1, 0, GraphicsChars.BOX, completeColor);
} else {
- getScreen().putCharXY(i + 1, 0, GraphicsChars.SINGLE_BAR,
- incompleteColor);
+ putCharXY(i + 1, 0, GraphicsChars.SINGLE_BAR, incompleteColor);
}
}
if (value >= maxValue) {
- getScreen().putCharXY(getWidth() - 2, 0, GraphicsChars.BOX,
- completeColor);
+ putCharXY(getWidth() - 2, 0, GraphicsChars.BOX, completeColor);
} else {
- getScreen().putCharXY(getWidth() - 2, 0, GraphicsChars.SINGLE_BAR,
+ putCharXY(getWidth() - 2, 0, GraphicsChars.SINGLE_BAR,
incompleteColor);
}
- getScreen().putCharXY(getWidth() - 1, 0, GraphicsChars.CP437[0xB4],
+ putCharXY(getWidth() - 1, 0, GraphicsChars.CP437[0xB4],
incompleteColor);
}
+ // ------------------------------------------------------------------------
+ // TProgressBar -----------------------------------------------------------
+ // ------------------------------------------------------------------------
+
+ /**
+ * Get the value that corresponds to 0% progress.
+ *
+ * @return the value that corresponds to 0% progress
+ */
+ public int getMinValue() {
+ return minValue;
+ }
+
+ /**
+ * Set the value that corresponds to 0% progress.
+ *
+ * @param minValue the value that corresponds to 0% progress
+ */
+ public void setMinValue(final int minValue) {
+ this.minValue = minValue;
+ }
+
+ /**
+ * Get the value that corresponds to 100% progress.
+ *
+ * @return the value that corresponds to 100% progress
+ */
+ public int getMaxValue() {
+ return maxValue;
+ }
+
+ /**
+ * Set the value that corresponds to 100% progress.
+ *
+ * @param maxValue the value that corresponds to 100% progress
+ */
+ public void setMaxValue(final int maxValue) {
+ this.maxValue = maxValue;
+ }
+
+ /**
+ * Get the current value of the progress.
+ *
+ * @return the current value of the progress
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * Set the current value of the progress.
+ *
+ * @param value the current value of the progress
+ */
+ public void setValue(final int value) {
+ this.value = value;
+ }
+
}