Serenity Operating System
1/*
2 * Copyright (c) 2020, Itamar S. <itamar8910@gmail.com>
3 *
4 * SPDX-License-Identifier: BSD-2-Clause
5 */
6
7#include "GitFilesModel.h"
8
9namespace HackStudio {
10
11NonnullRefPtr<GitFilesModel> GitFilesModel::create(Vector<DeprecatedString>&& files)
12{
13 return adopt_ref(*new GitFilesModel(move(files)));
14}
15
16GitFilesModel::GitFilesModel(Vector<DeprecatedString>&& files)
17 : m_files(move(files))
18{
19}
20
21GUI::Variant GitFilesModel::data(const GUI::ModelIndex& index, GUI::ModelRole role) const
22{
23 if (role == GUI::ModelRole::Display) {
24 return m_files.at(index.row());
25 }
26 return {};
27}
28
29GUI::ModelIndex GitFilesModel::index(int row, int column, const GUI::ModelIndex&) const
30{
31 if (row < 0 || row >= static_cast<int>(m_files.size()))
32 return {};
33 return create_index(row, column, &m_files.at(row));
34}
35
36};