1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2017 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6*3ac0a46fSAndroid Build Coastguard Worker 7*3ac0a46fSAndroid Build Coastguard Worker #include "xfa/fxfa/cxfa_texttabstopscontext.h" 8*3ac0a46fSAndroid Build Coastguard Worker 9*3ac0a46fSAndroid Build Coastguard Worker #include <algorithm> 10*3ac0a46fSAndroid Build Coastguard Worker 11*3ac0a46fSAndroid Build Coastguard Worker CXFA_TextTabstopsContext::CXFA_TextTabstopsContext() = default; 12*3ac0a46fSAndroid Build Coastguard Worker 13*3ac0a46fSAndroid Build Coastguard Worker CXFA_TextTabstopsContext::~CXFA_TextTabstopsContext() = default; 14*3ac0a46fSAndroid Build Coastguard Worker Append(uint32_t dwAlign,float fTabstops)15*3ac0a46fSAndroid Build Coastguard Workervoid CXFA_TextTabstopsContext::Append(uint32_t dwAlign, float fTabstops) { 16*3ac0a46fSAndroid Build Coastguard Worker XFA_TABSTOPS tabstop; 17*3ac0a46fSAndroid Build Coastguard Worker tabstop.dwAlign = dwAlign; 18*3ac0a46fSAndroid Build Coastguard Worker tabstop.fTabstops = fTabstops; 19*3ac0a46fSAndroid Build Coastguard Worker 20*3ac0a46fSAndroid Build Coastguard Worker auto it = std::lower_bound(m_tabstops.begin(), m_tabstops.end(), tabstop); 21*3ac0a46fSAndroid Build Coastguard Worker m_tabstops.insert(it, tabstop); 22*3ac0a46fSAndroid Build Coastguard Worker } 23*3ac0a46fSAndroid Build Coastguard Worker RemoveAll()24*3ac0a46fSAndroid Build Coastguard Workervoid CXFA_TextTabstopsContext::RemoveAll() { 25*3ac0a46fSAndroid Build Coastguard Worker m_tabstops.clear(); 26*3ac0a46fSAndroid Build Coastguard Worker } 27*3ac0a46fSAndroid Build Coastguard Worker Reset()28*3ac0a46fSAndroid Build Coastguard Workervoid CXFA_TextTabstopsContext::Reset() { 29*3ac0a46fSAndroid Build Coastguard Worker m_iTabIndex = -1; 30*3ac0a46fSAndroid Build Coastguard Worker m_bHasTabstops = false; 31*3ac0a46fSAndroid Build Coastguard Worker m_fTabWidth = 0; 32*3ac0a46fSAndroid Build Coastguard Worker m_fLeft = 0; 33*3ac0a46fSAndroid Build Coastguard Worker } 34