X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fsixth%2Fe3d%2Fgui%2FTextPointer.java;h=91cd6e696c72f8d35ef2a0aead54e963c2f42b58;hb=a2131986d65a769e3d589e4e0370d4af0ce10c38;hp=8ba9f9f171ef20076f3f9c1957b388c17c630918;hpb=a40c9c2a3ef372ea0f2c87af644ca2302315baca;p=sixth-3d.git diff --git a/src/main/java/eu/svjatoslav/sixth/e3d/gui/TextPointer.java b/src/main/java/eu/svjatoslav/sixth/e3d/gui/TextPointer.java index 8ba9f9f..91cd6e6 100755 --- a/src/main/java/eu/svjatoslav/sixth/e3d/gui/TextPointer.java +++ b/src/main/java/eu/svjatoslav/sixth/e3d/gui/TextPointer.java @@ -1,12 +1,27 @@ /* - * Sixth 3D engine. Author: Svjatoslav Agejenko. + * Sixth 3D engine. Author: Svjatoslav Agejenko. * This project is released under Creative Commons Zero (CC0) license. */ package eu.svjatoslav.sixth.e3d.gui; +import static java.lang.Integer.compare; + +/** + * A pointer to a character in a text using row and column. + *
+ * It can be used to represent a cursor position in a text.
+ * Also, it can be used to represent beginning and end of a selection.
+ */
public class TextPointer implements Comparable
+ * This pointer is considered to be between the pointers if it is bigger or equal to the start pointer
+ * and smaller than the end pointer.
+ *
+ * @param start The start pointer.
+ * @param end The end pointer.
+ * @return True if this pointer is between the specified pointers.
+ */
public boolean isBetween(final TextPointer start, final TextPointer end) {
if (start == null)
@@ -56,6 +90,7 @@ public class TextPointer implements Comparable
+ *
+ */
@Override
public int compareTo(final TextPointer textPointer) {
- if (textPointer.row > row)
+ if (row < textPointer.row)
return -1;
- if (textPointer.row < row)
+ if (row > textPointer.row)
return 1;
- return Integer.compare(column, textPointer.column);
-
+ return compare(column, textPointer.column);
}
+ /**
+ * Checks if this pointer is between the argument pointers.
+ *