org.netbeans.modules.properties |
Contains the basic functionality of the Properties module.
Properties Module Architecture (l10n)
String Handling
String use escaping schema while writing them down to
file. It should the only place tackling with escaping.
All other string should Java strings.
Editors Relations
The content is stored in modifiable external file.
It can be edited in text editor, in visulal editor
or directly via an API.
These representations need to be reasonable synchronized.
Text => Struct
autoParse():113, org.netbeans.modules.properties.StructHandler
notifyModified():232, org.netbeans.modules.properties.PropertiesEditorSupport
insertUpdate():1554, org.openide.text.CloneableEditorSupport$Listener
fireInsertUpdate():184, javax.swing.text.AbstractDocument
fireInsertUpdate():1020, org.netbeans.editor.BaseDocument
insertString():583, org.netbeans.editor.BaseDocument
TableView => struct => text => struct
It does not recognize that struct modification caused
the text change and needlessly handles that text change
autoParse():113, org.netbeans.modules.properties.StructHandler
notifyModified():232, org.netbeans.modules.properties.PropertiesEditorSupport
insertUpdate():1554, org.openide.text.CloneableEditorSupport$Listener
fireInsertUpdate():184, javax.swing.text.AbstractDocument
fireInsertUpdate():1020, org.netbeans.editor.BaseDocument
insertString():583, org.netbeans.editor.BaseDocument
run():84, org.openide.text.PositionBounds$1
runAtomicAsUser():906, org.netbeans.editor.BaseDocument
runAtomic():217, org.netbeans.editor.GuardedDocument
runAtomic():329, org.openide.text.NbDocument
setText():108, org.openide.text.PositionBounds
print():98, org.netbeans.modules.properties.Element
setValue():156, org.netbeans.modules.properties.Element$Basic
setKey():370, org.netbeans.modules.properties.Element$ItemElem
renameItem():164, org.netbeans.modules.properties.PropertiesStructure
setValueAt():174, org.netbeans.modules.properties.PropertiesTableModel
autoparse() does not recognize that struct was not created and always
recreates it -
FIXED #31593.
Class Diagrams
Issues
PropertiesTableModel.StringPair
Layered TableModels, single properties file TableModel,
GroupingTableModel and SortingTableModel. Still need to
maintain table cell -> document position mapping e.g.
by a wrapper values.
|
Java Source File Name | Type | Comment |
BundleEditPanel.java | Class | Panel which shows bundle of .properties files encapsulated by PropertiesDataObject in one table view. |
BundleNodeCustomizer.java | Class | Customizer for bundle node (PropertiesDataNode ) which represents
bundle of .properties files with same basic name and set of Locales. |
BundleStructure.java | Class | Structure of a bundle of .properties files. |
Element.java | Class | Base class for representations of elements in properties files. |
ElementTest.java | Class | |
FileEntryNode.java | Class | Standard node representing a PresentableFileEntry . |
FindPanel.java | Class | Find panel for Resource Bundles table view component. |
FindPerformer.java | Class | FindPerformer is a performer of the FindAction which is invoked on Resource Bundles table view component. |
KeyComparator.java | Class | Comparator for comparing property keys (Strings). |
KeyNode.java | Class | Node representing a key-value-comment item in one .properties file. |
LangRenameAction.java | Class | Renames a PropertiesLocaleNode node,
i.e. |
LocaleNodeCustomizer.java | Class | Customizer for locale node (PropertiesLocaleNode ). |
LocalePanel.java | Class | Panel to allow user convenient to choose locale. |
PresentableFileEntry.java | Class | Object that represents one FileEntry and has support
for presentation of this entry as a node. |
PropertiesDataLoader.java | Class | Data loader which recognizes properties files. |
PropertiesDataLoaderBeanInfo.java | Class | BeanInfo for properties loader. |
PropertiesDataNode.java | Class | Node representing a PropertiesDataObject . |
PropertiesDataObject.java | Class | Object that provides main functionality for properties data loader. |
PropertiesEditorSupport.java | Class | Support for viewing .properties files (EditCookie) by opening them in a text editor. |
PropertiesEncoding.java | Class | |
PropertiesEncodingTest.java | Class | |
PropertiesFileEntry.java | Class | Item in a set of properties files represented by a single
PropertiesDataObject . |
PropertiesLocaleNode.java | Class | Node representing a single properties file. |
PropertiesOpen.java | Class | Support for opening bundle of .properties files (OpenCookie) in table view editor. |
PropertiesParser.java | Class | Parser of .properties files. |
PropertiesRequestProcessor.java | Class | Provides an
org.openide.util.RequestProcessor instance for the Properties module. |
PropertiesStructure.java | Class | Element structure for one .properties file tightly
bound with that file's document. |
PropertiesTableCellEditor.java | Class | |
PropertiesTableModel.java | Class | Model for the properties edit table. |
PropertyBundleEvent.java | Class | Notification of a change in a property bundle. |
PropertyBundleListener.java | Interface | Defines an interface for objects to be notified of changes to a bundle. |
PropertyBundleSupport.java | Class | Support for PropertyBundle events, registering listeners, firing events. |
PropertyPanel.java | Class | Panel for customizing Element.ItemElem element. |
StructHandler.java | Class | Class for handling structure of a single .properties file. |
TableViewSettings.java | Class | Template for table editor setting registered in Lookup. |
Util.java | Class | Miscellaneous utilities for properties(reosurce bundles) module. |
UtilConvert.java | Class | Contains conversion utilities which allow reading and storing a properties file
while preserving formatting and comments that user may have entered.
Huge portions of this class marked by // prj40 trunk compatability
are there only for being able to run unmodified i18n module code in
prj40_prototype branch and trunk. |