/* This file is part of Telegram Desktop, the official desktop application for the Telegram messaging service. For license and copyright information please follow this link: https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #include "layout/layout_position.h" namespace Layout { namespace { constexpr auto kMatrixRowShift = 40000; } // namespace Layout::Position IndexToPosition(int index) { return { (index >= 0) ? (index / kMatrixRowShift) : -1, (index >= 0) ? (index % kMatrixRowShift) : -1 }; } int PositionToIndex(int row, int column) { return row * kMatrixRowShift + column; } int PositionToIndex(const Layout::Position &position) { return PositionToIndex(position.row, position.column); } } // namespace Layout