/* * Copyright (c) 2010-2016, Sikuli.org, sikulix.com * Released under the MIT License. * */ /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package org.sikuli.idesupport; import javax.swing.text.BadLocationException; import javax.swing.text.StyledDocument; /** * * @author rhocke */ public interface IIndentationLogic { public void setTabWidth(int tabwidth); public int checkDedent(String leadingWhitespace, int line); public void checkIndent(String leadingWhitespace, int line); public boolean shouldAddColon(); public void setLastLineEndsWithColon(); public int shouldChangeLastLineIndentation(); public int shouldChangeNextLineIndentation(); public void reset(); public void addText(String text); public String getLeadingWhitespace(String text) ; public String getLeadingWhitespace(StyledDocument doc, int head, int len) throws BadLocationException; public int atEndOfLine(StyledDocument doc, int cpos, int start, String s, int sLen); }