new LogConsole api, android logcat toolwindow
[fedora-idea.git] / platform / lang-impl / src / com / intellij / ide / todo / SmartTodoItemPointer.java
blobc933f9f6e5d333af5558e57d9f766dc83ed4675b
1 package com.intellij.ide.todo;
3 import com.intellij.openapi.editor.Document;
4 import com.intellij.openapi.editor.RangeMarker;
5 import com.intellij.openapi.util.TextRange;
6 import com.intellij.psi.search.TodoItem;
7 import org.jetbrains.annotations.NotNull;
9 /**
10 * @author Vladimir Kondratyev
12 public final class SmartTodoItemPointer {
13 private final TodoItem myTodoItem;
14 private final Document myDocument;
15 private final RangeMarker myRangeMarker;
17 public SmartTodoItemPointer(@NotNull TodoItem todoItem,@NotNull Document document){
18 myTodoItem=todoItem;
19 myDocument=document;
20 TextRange textRange=myTodoItem.getTextRange();
21 myRangeMarker=document.createRangeMarker(textRange);
24 public TodoItem getTodoItem(){
25 return myTodoItem;
28 public Document getDocument(){
29 return myDocument;
32 public RangeMarker getRangeMarker(){
33 return myRangeMarker;
36 public boolean equals(Object obj){
37 if(!(obj instanceof SmartTodoItemPointer)){
38 return false;
40 SmartTodoItemPointer pointer=(SmartTodoItemPointer)obj;
41 return myTodoItem.getFile().equals(pointer.myTodoItem.getFile())&&
42 myRangeMarker.getStartOffset()==pointer.myRangeMarker.getStartOffset()&&
43 myRangeMarker.getEndOffset()==pointer.myRangeMarker.getEndOffset()&&
44 myTodoItem.getPattern().equals(pointer.myTodoItem.getPattern());
47 public int hashCode(){
48 return myTodoItem.getFile().hashCode();