/*
- * Sixth 3D engine. Copyright ©2012-2017, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 3 of the GNU Lesser General Public License
- * or later as published by the Free Software Foundation.
- *
+ * Sixth 3D engine. Author: Svjatoslav Agejenko.
+ * This project is released under Creative Commons Zero (CC0) license.
*/
-
package eu.svjatoslav.sixth.e3d.gui;
+/**
+ * A pointer to a character in a text.
+ */
public class TextPointer implements Comparable<TextPointer> {
public int row;
if (textPointer.row < row)
return 1;
- if (textPointer.column > column)
- return -1;
- if (textPointer.column < column)
- return 1;
+ return Integer.compare(column, textPointer.column);
- return 0;
}
+ /**
+ * Checks if this pointer is between the specified pointers.
+ *
+ * @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)
if (end == null)
return false;
+ // Make sure that start is smaller than end.
TextPointer smaller;
TextPointer bigger;
bigger = start;
}
+ // Check if this pointer is between the specified pointers.
return (compareTo(smaller) >= 0) && (bigger.compareTo(this) > 0);
-
}
}