diff options
author | Miles Parker | 2013-10-07 21:55:37 +0000 |
---|---|---|
committer | Miles Parker | 2014-02-07 19:15:12 +0000 |
commit | 61e460ef1390b9900298c0dc505d6523e7737e69 (patch) | |
tree | 7f8e902698e4f8cd9fdd6dbd105085c8dcbd573f /org.eclipse.mylyn.reviews.core | |
parent | ea0aebfa41766833d10f6def977ca9d45f0b3cdb (diff) | |
download | org.eclipse.mylyn.reviews-61e460ef1390b9900298c0dc505d6523e7737e69.tar.gz org.eclipse.mylyn.reviews-61e460ef1390b9900298c0dc505d6523e7737e69.tar.xz org.eclipse.mylyn.reviews-61e460ef1390b9900298c0dc505d6523e7737e69.zip |
391615: comments by other users should stand out
•Added support for "isMine" for model comments
•Use person me icon for ReviewExplorer for self-authored comments
•Use person me icon for Compare Editor for self-authored comments
Change-Id: I0a7623ed93941b03b371990fff07e15ac3869d3a
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=391615
Diffstat (limited to 'org.eclipse.mylyn.reviews.core')
4 files changed, 78 insertions, 1 deletions
diff --git a/org.eclipse.mylyn.reviews.core/model/reviews.ecore b/org.eclipse.mylyn.reviews.core/model/reviews.ecore index 11bf4b0fd..2f059d7bb 100644 --- a/org.eclipse.mylyn.reviews.core/model/reviews.ecore +++ b/org.eclipse.mylyn.reviews.core/model/reviews.ecore @@ -53,6 +53,8 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="item" eType="#//CommentContainer" eOpposite="#//CommentContainer/comments"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="mine" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" + changeable="false" volatile="true" transient="true" derived="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="ReviewItem" abstract="true" eSuperTypes="#//CommentContainer"> <eStructuralFeatures xsi:type="ecore:EReference" name="addedBy" lowerBound="1" diff --git a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/core/model/IComment.java b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/core/model/IComment.java index dc110de42..40a7fd7e6 100644 --- a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/core/model/IComment.java +++ b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/core/model/IComment.java @@ -26,6 +26,7 @@ import java.util.List; * <li>{@link org.eclipse.mylyn.reviews.core.model.IComment#getReview <em>Review</em>}</li> * <li>{@link org.eclipse.mylyn.reviews.core.model.IComment#getTitle <em>Title</em>}</li> * <li>{@link org.eclipse.mylyn.reviews.core.model.IComment#getItem <em>Item</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.core.model.IComment#isMine <em>Mine</em>}</li> * </ul> * </p> * @@ -225,4 +226,16 @@ public interface IComment extends IIndexed, IDated { */ void setItem(ICommentContainer value); + /** + * Returns the value of the '<em><b>Mine</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Mine</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Mine</em>' attribute. + * @generated + */ + boolean isMine(); + } // IComment diff --git a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/Comment.java b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/Comment.java index 4af18a52b..1e63fc27e 100644 --- a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/Comment.java +++ b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/Comment.java @@ -29,6 +29,7 @@ import org.eclipse.mylyn.reviews.core.model.IComment; import org.eclipse.mylyn.reviews.core.model.ICommentContainer; import org.eclipse.mylyn.reviews.core.model.IDated; import org.eclipse.mylyn.reviews.core.model.ILocation; +import org.eclipse.mylyn.reviews.core.model.IRepository; import org.eclipse.mylyn.reviews.core.model.IReview; import org.eclipse.mylyn.reviews.core.model.IReviewItem; import org.eclipse.mylyn.reviews.core.model.IUser; @@ -50,6 +51,7 @@ import org.eclipse.mylyn.reviews.core.model.IUser; * <li>{@link org.eclipse.mylyn.reviews.internal.core.model.Comment#getReview <em>Review</em>}</li> * <li>{@link org.eclipse.mylyn.reviews.internal.core.model.Comment#getTitle <em>Title</em>}</li> * <li>{@link org.eclipse.mylyn.reviews.internal.core.model.Comment#getItem <em>Item</em>}</li> + * <li>{@link org.eclipse.mylyn.reviews.internal.core.model.Comment#isMine <em>Mine</em>}</li> * </ul> * </p> * @@ -225,6 +227,16 @@ public class Comment extends EObjectImpl implements IComment { protected String title = TITLE_EDEFAULT; /** + * The default value of the '{@link #isMine() <em>Mine</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #isMine() + * @generated + * @ordered + */ + protected static final boolean MINE_EDEFAULT = false; + + /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated @@ -521,6 +533,18 @@ public class Comment extends EObjectImpl implements IComment { /** * <!-- begin-user-doc --> <!-- end-user-doc --> * + * @generated NOT + */ + public boolean isMine() { + IRepository repos = getReview() != null ? getReview().getRepository() : null; + return getAuthor() != null + && repos != null + && (repos.getAccount() == getAuthor() || (repos.getAccount().getEmail().equals(getAuthor().getEmail()))); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * * @generated */ @Override @@ -601,6 +625,8 @@ public class Comment extends EObjectImpl implements IComment { return getItem(); } return basicGetItem(); + case ReviewsPackage.COMMENT__MINE: + return isMine(); } return super.eGet(featureID, resolve, coreType); } @@ -726,6 +752,8 @@ public class Comment extends EObjectImpl implements IComment { return TITLE_EDEFAULT == null ? title != null : !TITLE_EDEFAULT.equals(title); case ReviewsPackage.COMMENT__ITEM: return basicGetItem() != null; + case ReviewsPackage.COMMENT__MINE: + return isMine() != MINE_EDEFAULT; } return super.eIsSet(featureID); } diff --git a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage.java b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage.java index a69e25eb3..e6dde01a3 100644 --- a/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage.java +++ b/org.eclipse.mylyn.reviews.core/src/org/eclipse/mylyn/reviews/internal/core/model/ReviewsPackage.java @@ -566,12 +566,20 @@ public class ReviewsPackage extends EPackageImpl { public static final int COMMENT__ITEM = INDEXED_FEATURE_COUNT + 10; /** + * The feature id for the '<em><b>Mine</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + public static final int COMMENT__MINE = INDEXED_FEATURE_COUNT + 11; + + /** * The number of structural features of the '<em>Comment</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated * @ordered */ - public static final int COMMENT_FEATURE_COUNT = INDEXED_FEATURE_COUNT + 11; + public static final int COMMENT_FEATURE_COUNT = INDEXED_FEATURE_COUNT + 12; /** * The meta object id for the '{@link org.eclipse.mylyn.reviews.internal.core.model.ReviewItem <em>Review Item</em>} @@ -2196,6 +2204,19 @@ public class ReviewsPackage extends EPackageImpl { } /** + * Returns the meta object for the attribute '{@link org.eclipse.mylyn.reviews.core.model.IComment#isMine + * <em>Mine</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Mine</em>'. + * @see org.eclipse.mylyn.reviews.core.model.IComment#isMine() + * @see #getComment() + * @generated + */ + public EAttribute getComment_Mine() { + return (EAttribute) commentEClass.getEStructuralFeatures().get(9); + } + + /** * Returns the meta object for class '{@link org.eclipse.mylyn.reviews.core.model.IReviewItem <em>Review Item</em>} * '. <!-- begin-user-doc --> <!-- end-user-doc --> * @@ -3139,6 +3160,7 @@ public class ReviewsPackage extends EPackageImpl { createEReference(commentEClass, COMMENT__REVIEW); createEAttribute(commentEClass, COMMENT__TITLE); createEReference(commentEClass, COMMENT__ITEM); + createEAttribute(commentEClass, COMMENT__MINE); reviewItemEClass = createEClass(REVIEW_ITEM); createEReference(reviewItemEClass, REVIEW_ITEM__ADDED_BY); @@ -3402,6 +3424,10 @@ public class ReviewsPackage extends EPackageImpl { this.getCommentContainer(), this.getCommentContainer_Comments(), "item", null, 0, 1, IComment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ + initEAttribute( + getComment_Mine(), + ecorePackage.getEBoolean(), + "mine", null, 1, 1, IComment.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ initEClass(reviewItemEClass, IReviewItem.class, "ReviewItem", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ @@ -3943,6 +3969,14 @@ public class ReviewsPackage extends EPackageImpl { public static final EReference COMMENT__ITEM = eINSTANCE.getComment_Item(); /** + * The meta object literal for the '<em><b>Mine</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + public static final EAttribute COMMENT__MINE = eINSTANCE.getComment_Mine(); + + /** * The meta object literal for the '{@link org.eclipse.mylyn.reviews.internal.core.model.ReviewItem * <em>Review Item</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> * |