blob: 98dbd1a18e8757c7a097f1f3644e4c662bcf3791 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_201) on Thu Jul 23 15:58:40 CEST 2020 -->
<title>DefaultFormatterFactory</title>
<meta name="date" content="2020-07-23">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DefaultFormatterFactory";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultFormatterFactory.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.html" title="class in org.eclipse.nebula.widgets.formattedtext"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DoubleFormatter.html" title="class in org.eclipse.nebula.widgets.formattedtext"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/nebula/widgets/formattedtext/DefaultFormatterFactory.html" target="_top">Frames</a></li>
<li><a href="DefaultFormatterFactory.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.nebula.widgets.formattedtext</div>
<h2 title="Class DefaultFormatterFactory" class="title">Class DefaultFormatterFactory</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.eclipse.nebula.widgets.formattedtext.DefaultFormatterFactory</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">DefaultFormatterFactory</span>
extends java.lang.Object</pre>
<div class="block">Factory for the default formatters.<p>
This factory is called by <code>FormattedText</code> when a value is setted
and no formatter has been provided by constructor or <code>setFormatter()</code>.
The default formatter is based on the class of the value. The cache is
searched first for the exact value's class. If no formatter is found, then
it is searched for any class that is an ancestor of the value's class.
The cache is a <code>HashMap</code> and the order of search cannot be
garanteed. The first valid ancestor found is returned.<p>
Default formatters provided by the factory are:
<ul>
<li><code>DateFormatter</code> for <code>Date</code> values</li>
<li><code>NumberFormatter</code> for <code>Number</code> values</li>
</ul>
Other formatters can be added with the <code>register()</code> method. Each
formatter class must implement <code>ITextFormatter</code> and must have a
default constructor.<p>
This class is not intended to be instanciated.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="../../../../../org/eclipse/nebula/widgets/formattedtext/ITextFormatter.html" title="interface in org.eclipse.nebula.widgets.formattedtext">ITextFormatter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DefaultFormatterFactory.html#createFormatter-java.lang.Class-">createFormatter</a></span>(java.lang.Class&lt;? extends java.lang.Object&gt;&nbsp;c)</code>
<div class="block">Creates a new default formatter for the given class.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../org/eclipse/nebula/widgets/formattedtext/ITextFormatter.html" title="interface in org.eclipse.nebula.widgets.formattedtext">ITextFormatter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DefaultFormatterFactory.html#createFormatter-java.lang.Object-">createFormatter</a></span>(java.lang.Object&nbsp;value)</code>
<div class="block">Creates a new default formatter for the given value.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DefaultFormatterFactory.html#register-java.lang.Class-java.lang.Class-">register</a></span>(java.lang.Class&lt;?&gt;&nbsp;c,
java.lang.Class&lt;?&gt;&nbsp;f)</code>
<div class="block">Registers a new formatter class for a given class of values.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="createFormatter-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createFormatter</h4>
<pre>public static&nbsp;<a href="../../../../../org/eclipse/nebula/widgets/formattedtext/ITextFormatter.html" title="interface in org.eclipse.nebula.widgets.formattedtext">ITextFormatter</a>&nbsp;createFormatter(java.lang.Object&nbsp;value)</pre>
<div class="block">Creates a new default formatter for the given value. The formatter is based
on the value's class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>value</code> - Value for which to create a formatter</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New formatter corresponding to the value's class, or null if the
class is unknown.</dd>
</dl>
</li>
</ul>
<a name="createFormatter-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createFormatter</h4>
<pre>public static&nbsp;<a href="../../../../../org/eclipse/nebula/widgets/formattedtext/ITextFormatter.html" title="interface in org.eclipse.nebula.widgets.formattedtext">ITextFormatter</a>&nbsp;createFormatter(java.lang.Class&lt;? extends java.lang.Object&gt;&nbsp;c)</pre>
<div class="block">Creates a new default formatter for the given class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - Class for which to create a formatter</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New formatter corresponding to the class, or null if the class is unknown.</dd>
</dl>
</li>
</ul>
<a name="register-java.lang.Class-java.lang.Class-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>register</h4>
<pre>public static&nbsp;void&nbsp;register(java.lang.Class&lt;?&gt;&nbsp;c,
java.lang.Class&lt;?&gt;&nbsp;f)</pre>
<div class="block">Registers a new formatter class for a given class of values. The formatter
class must implement the <code>ITextFormatter</code> interface.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - Class of values</dd>
<dd><code>f</code> - Class of the formatter</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultFormatterFactory.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.html" title="class in org.eclipse.nebula.widgets.formattedtext"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/nebula/widgets/formattedtext/DoubleFormatter.html" title="class in org.eclipse.nebula.widgets.formattedtext"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/nebula/widgets/formattedtext/DefaultFormatterFactory.html" target="_top">Frames</a></li>
<li><a href="DefaultFormatterFactory.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>