blob: 2ca6cb93802b92aea2f98f344c6f4be8785e6a92 [file] [log] [blame]
// Copyright (C) 2016 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package com.google.reviewit;
import android.os.Bundle;
import android.support.annotation.StringRes;
import android.view.View;
import android.view.ViewGroup;
import com.google.gerrit.extensions.common.AccountInfo;
import com.google.reviewit.app.ApprovalData;
import com.google.reviewit.app.Change;
import com.google.reviewit.widget.ApprovalEntry;
import com.google.reviewit.widget.ApprovalsHeader;
import static com.google.reviewit.util.LayoutUtil.matchAndFixedLayout;
public class ApprovalsFragment extends PageFragment {
private Change change;
@Override
protected int getLayout() {
return R.layout.content_approvals;
}
@Override
public @StringRes int getTitle() {
return R.string.approvals_title;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ViewGroup approvalList = vg(R.id.approvalList);
ApprovalData approvalData = change.getApprovalData();
ApprovalsHeader reviewersHeader = new ApprovalsHeader(getContext());
reviewersHeader.init(change, getString(R.string.reviewers), true);
approvalList.addView(reviewersHeader);
addSeparator(approvalList);
for (AccountInfo account : approvalData.reviewers) {
ApprovalEntry approvalEntry = new ApprovalEntry(getContext());
approvalEntry.init(getApp(), change, account);
approvalList.addView(approvalEntry);
addSeparator(approvalList);
}
if (!approvalData.ccs.isEmpty()) {
ApprovalsHeader ccsHeader = new ApprovalsHeader(getContext());
ccsHeader.init(change, getString(R.string.ccs), false);
approvalList.addView(ccsHeader);
addSeparator(approvalList);
for (AccountInfo account : approvalData.ccs) {
ApprovalEntry approvalEntry = new ApprovalEntry(getContext());
approvalEntry.init(getApp(), change, account);
approvalList.addView(approvalEntry);
addSeparator(approvalList);
}
}
}
public void setChange(Change change) {
this.change = change;
}
private void addSeparator(ViewGroup viewGroup) {
View separator = new View(getContext());
separator.setLayoutParams(
matchAndFixedLayout(widgetUtil.dpToPx(1)));
separator.setBackgroundColor(widgetUtil.color(R.color.separator));
viewGroup.addView(separator);
}
}