# Class LimiteContenu

java.lang.Object
javax.swing.text.AbstractDocument
javax.swing.text.PlainDocument
fr.iutfbleau.papillon.LimiteContenu

All Implemented Interfaces:
  `Serializable, Document`

public class LimiteContenu extends PlainDocument
La classe `LimiteContenu` permet de limiter le nombre de caractères pouvant être saisis dans un champ de texte Swing.

Elle hérite de `PlainDocument` et empêche toute insertion dépassant la limite définie.

See Also:
  - Serialized Form

## Nested Class Summary

### Nested classes/interfaces inherited from class AbstractDocument

`AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement`

## Field Summary

### Fields inherited from class PlainDocument

`lineLimitAttribute, tabSizeAttribute`

### Fields inherited from class AbstractDocument

`BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName`

### Fields inherited from interface Document

`StreamDescriptionProperty, TitleProperty`

## Constructor Summary

Constructors
Constructor
Description
`LimiteContenu(int limite)`
Constructeur qui définit la limite de caractères.

## Method Summary

Modifier and Type
Method
Description
`void`
`insertString(int offset, String str, AttributeSet attr)`
Insère une chaîne dans le document si elle ne dépasse pas la limite autorisée.

### Methods inherited from class PlainDocument

`createDefaultRoot, getDefaultRootElement, getParagraphElement, insertUpdate, removeUpdate`

### Methods inherited from class AbstractDocument

`addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### LimiteContenu

public LimiteContenu(int limite)
Constructeur qui définit la limite de caractères.

Parameters:
  `limite` - le nombre maximum de caractères autorisés

## Method Details

### insertString

public void insertString(int offset, String str, AttributeSet attr) throws BadLocationException
Insère une chaîne dans le document si elle ne dépasse pas la limite autorisée.

Specified by:
  `insertString` in interface `Document`
Overrides:
  `insertString` in class `PlainDocument`
Parameters:
  `offset` - la position d’insertion
  `str` - la chaîne à insérer
  `attr` - les attributs du texte
Throws:
  `BadLocationException` - si la position est invalide