Serenity Operating System
at master 36 lines 830 B view raw
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};