Mejora de los NumberFormatedTextFields

This commit is contained in:
Daniel Cortes
2019-01-06 00:28:02 -03:00
parent 5497e39aee
commit f1c199487a
7 changed files with 187 additions and 374 deletions

353
.idea/workspace.xml generated
View File

@@ -11,11 +11,13 @@
</component>
<component name="ChangeListManager">
<list default="true" id="a633d35a-56a6-4479-b4c4-f97198052fb7" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/uiDesigner.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/uiDesigner.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/dist/caja.jar" beforeDir="false" afterPath="$PROJECT_DIR$/dist/caja.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/dist/database.sqlite" beforeDir="false" afterPath="$PROJECT_DIR$/dist/database.sqlite" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/target/" />
<ignored path=".idea/" />
@@ -71,64 +73,7 @@
<favorites_list name="caja" />
</component>
<component name="FileEditorManager">
<leaf>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="253">
<caret line="159" column="36" selection-start-line="159" selection-start-column="36" selection-end-line="159" selection-end-column="36" />
<folding>
<element signature="docComment;class#ArqueoController#0" />
<element signature="docComment;method#ArqueoController#0;class#ArqueoController#0" />
<element signature="method#ArqueoController#0;class#ArqueoController#0" />
<element signature="docComment;method#updateCaja#0;class#ArqueoController#0" />
<element signature="method#updateCaja#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#fillResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEgresos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="e#6767#6856#1" />
<element signature="e#6860#6947#1" />
<element signature="docComment;method#setUpViewEvents#0;class#ArqueoController#0" />
<element signature="method#setUpViewEvents#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentosActionListener#0;class#ArqueoController#0" />
<element signature="method#guardarDocumentosActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentos#0;class#ArqueoController#0" />
<element signature="method#guardarDocumentos#0;class#ArqueoController#0" />
<element signature="e#12466#12757#1" />
<element signature="docComment;method#validateDocumentosInput#0;class#ArqueoController#0" />
<element signature="method#validateDocumentosInput#0;class#ArqueoController#0" />
<element signature="docComment;method#validateDocumentosValor#0;class#ArqueoController#0" />
<element signature="method#validateDocumentosValor#0;class#ArqueoController#0" />
<element signature="e#13746#13890#1" />
<element signature="e#13921#14054#1" />
<element signature="e#14113#14244#1" />
<element signature="e#14279#14431#1" />
<element signature="docComment;method#hiddeDocumentosErrorMessages#0;class#ArqueoController#0" />
<element signature="method#hiddeDocumentosErrorMessages#0;class#ArqueoController#0" />
<element signature="docComment;method#normalizeDocumentosInput#0;class#ArqueoController#0" />
<element signature="method#normalizeDocumentosInput#0;class#ArqueoController#0" />
<element signature="class#GuardarEfectivoAction#0;class#ArqueoController#0" />
<element signature="n#!!block;n#GuardarEfectivoAction#0;n#GuardarEfectivoAction#0;n#ArqueoController#0" />
<element signature="class#GuardarDocumentosAction#0;class#ArqueoController#0" />
<element signature="n#!!block;n#GuardarDocumentosAction#0;n#GuardarDocumentosAction#0;n#ArqueoController#0" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300" />
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
@@ -238,10 +183,10 @@
<option value="$PROJECT_DIR$/src/danielcortes/xyz/models/ingreso/SQLiteIngresoDAO.java" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/IngresosView.form" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/components/JNumberFormatedTextField.java" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.java" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java" />
<option value="$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java" />
</list>
</option>
</component>
@@ -334,7 +279,7 @@
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="xyz" type="462c0819:PsiDirectoryNode" />
<item name="views" type="462c0819:PsiDirectoryNode" />
<item name="ArqueoView" type="e9f4de52:FormNode" />
<item name="components" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="caja" type="b2602c69:ProjectViewProjectNode" />
@@ -360,7 +305,7 @@
<property name="UI_DESIGNER_EDITOR_MODE.UIDesignerToolWindowManager.STATE" value="ToolWindow" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1546737874455" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1546738137665" />
<property name="com.intellij.ide.scratch.LRUPopupBuilder$1/Change SQL Dialect" value="SQLite" />
<property name="database.console.LAST_STATE" value="false" />
<property name="extract.method.default.visibility" value="private" />
@@ -542,7 +487,8 @@
<workItem from="1546482678909" duration="5004000" />
<workItem from="1546533252017" duration="4537000" />
<workItem from="1546719990258" duration="3560000" />
<workItem from="1546732125785" duration="5101000" />
<workItem from="1546732125785" duration="5958000" />
<workItem from="1546743888328" duration="1369000" />
</task>
<task id="LOCAL-00001" summary="First!! :3 Existe una pequeña base de proyecto por ahora">
<created>1545280618093</created>
@@ -747,11 +693,18 @@
<option name="project" value="LOCAL" />
<updated>1546736429914</updated>
</task>
<option name="localTasksCounter" value="30" />
<task id="LOCAL-00030" summary="Cambiados JTextFields del resumen de arqueo por NumberFormatedTextFields">
<created>1546737934935</created>
<option name="number" value="00030" />
<option name="presentableId" value="LOCAL-00030" />
<option name="project" value="LOCAL" />
<updated>1546737934935</updated>
</task>
<option name="localTasksCounter" value="31" />
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="210653000" />
<option name="totallyTimeSpent" value="212879000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
@@ -764,9 +717,8 @@
</component>
<component name="ToolWindowManager">
<frame x="0" y="-18" width="1366" height="765" extended-state="6" />
<editor active="true" />
<layout>
<window_info content_ui="combo" id="Project" order="0" sideWeight="0.49438202" weight="0.20776255" />
<window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.49438202" visible="true" weight="0.20776255" />
<window_info id="Image Layers" order="1" />
<window_info id="Designer" order="2" />
<window_info x="458" y="95" width="450" height="453" id="UI Designer" order="3" weight="0.32952815" />
@@ -855,7 +807,6 @@
<component name="VcsManagerConfiguration">
<option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="CHECK_NEW_TODO" value="false" />
<MESSAGE value="Cambiado el egresotablemodel para que acepte un egreso como modelo para llenar la tabla" />
<MESSAGE value="Ahora el modelo de egreso se autocarga con el objeto de tipo egreso en vez de con su id" />
<MESSAGE value="Validacion cuando se guarda un egreso desde la vista" />
<MESSAGE value="Creada seccion de ingresos completa." />
@@ -880,7 +831,8 @@
<MESSAGE value="Reordenado el resumen de arqueo para mayor claridad" />
<MESSAGE value="Agregado nro z inicial y nro z final a tabla ingresos" />
<MESSAGE value="Creacion de number formated text field y implementacion de prueba como campos de efectivo" />
<option name="LAST_COMMIT_MESSAGE" value="Creacion de number formated text field y implementacion de prueba como campos de efectivo" />
<MESSAGE value="Cambiados JTextFields del resumen de arqueo por NumberFormatedTextFields" />
<option name="LAST_COMMIT_MESSAGE" value="Cambiados JTextFields del resumen de arqueo por NumberFormatedTextFields" />
</component>
<component name="antWorkspaceConfiguration">
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
@@ -1294,10 +1246,109 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/IngresosView.form">
<provider selected="true" editor-type-id="ui-designer" />
</entry>
<entry file="jar:///usr/lib/jvm/java-11-openjdk/lib/src.zip!/java.base/java/text/NumberFormat.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-6105">
<caret line="267" column="31" selection-start-line="267" selection-start-column="24" selection-end-line="267" selection-end-column="31" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form">
<provider selected="true" editor-type-id="ui-designer" />
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="209">
<caret line="128" column="5" selection-start-line="128" selection-start-column="5" selection-end-line="128" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#2586#2587#0" expanded="true" />
<element signature="e#2621#2622#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret line="211" selection-start-line="211" selection-end-line="211" />
<folding>
<element signature="docComment;class#ArqueoController#0" />
<element signature="docComment;method#ArqueoController#0;class#ArqueoController#0" />
<element signature="method#ArqueoController#0;class#ArqueoController#0" />
<element signature="docComment;method#updateCaja#0;class#ArqueoController#0" />
<element signature="method#updateCaja#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#fillResumen#0;class#ArqueoController#0" />
<element signature="method#fillResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEfectivo#0;class#ArqueoController#0" />
<element signature="method#updateResumenEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenDocumentos#0;class#ArqueoController#0" />
<element signature="method#updateResumenDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEgresos#0;class#ArqueoController#0" />
<element signature="method#updateResumenEgresos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="e#6688#6777#1" />
<element signature="e#6781#6868#1" />
<element signature="docComment;method#setUpViewEvents#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentosActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentos#0;class#ArqueoController#0" />
<element signature="e#12995#12996#0" expanded="true" />
<element signature="e#13047#13048#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="301">
<caret line="97" selection-start-line="97" selection-end-line="97" />
<folding>
<element signature="docComment;class#NumberFormatedTextField#0" />
<element signature="docComment;method#NumberFormatedTextField#0;class#NumberFormatedTextField#0" />
<element signature="method#NumberFormatedTextField#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#setValue#0;class#NumberFormatedTextField#0" />
<element signature="method#setValue#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#getValue#0;class#NumberFormatedTextField#0" />
<element signature="method#getValue#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#readValue#0;class#NumberFormatedTextField#0" />
<element signature="method#readValue#0;class#NumberFormatedTextField#0" />
<element signature="e#2346#2525#0" />
<element signature="e#2437#2515#1" />
<element signature="e#2551#2595#0" />
<element signature="docComment;method#formatText#0;class#NumberFormatedTextField#0" />
<element signature="n#!!block;n#formatText#0;n#NumberFormatedTextField#0" />
<element signature="class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#focusGained#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#focusLost#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="method#focusLost#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#keyTyped#0;class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
<element signature="method#keyTyped#0;class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
<element signature="e#3601#3811#1" />
<element signature="e#3623#3709#0" />
<element signature="e#3736#3797#0" />
<element signature="e#3905#3949#1" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/controllers/IngresosController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="299">
<caret line="277" column="63" selection-start-line="277" selection-start-column="63" selection-end-line="277" selection-end-column="63" />
<state relative-caret-position="669">
<caret line="488" column="4" selection-start-line="488" selection-start-column="4" selection-end-line="488" selection-end-column="4" />
<folding>
<element signature="docComment;class#IngresosController#0" />
<element signature="docComment;method#IngresosController#0;class#IngresosController#0" />
@@ -1312,50 +1363,32 @@
<element signature="docComment;method#fillIngresosTable#0;class#IngresosController#0" />
<element signature="method#fillIngresosTable#0;class#IngresosController#0" />
<element signature="docComment;method#setupViewEvents#0;class#IngresosController#0" />
<element signature="e#6018#6105#1" />
<element signature="docComment;method#guardarActionListener#0;class#IngresosController#0" />
<element signature="docComment;method#eliminarActionListener#0;class#IngresosController#0" />
<element signature="method#eliminarActionListener#0;class#IngresosController#0" />
<element signature="e#7738#8039#1" />
<element signature="docComment;method#editarActionListener#0;class#IngresosController#0" />
<element signature="docComment;method#updateTotalIngresos#0;class#IngresosController#0" />
<element signature="method#updateTotalIngresos#0;class#IngresosController#0" />
<element signature="docComment;method#updateButtonsEnabled#0;class#IngresosController#0" />
<element signature="method#updateButtonsEnabled#0;class#IngresosController#0" />
<element signature="e#9848#9977#1" />
<element signature="e#9981#10112#1" />
<element signature="docComment;method#guardarIngreso#0;class#IngresosController#0" />
<element signature="method#guardarIngreso#0;class#IngresosController#0" />
<element signature="e#10577#11144#1" />
<element signature="docComment;method#editarIngreso#0;class#IngresosController#0" />
<element signature="docComment;method#validateInput#0;class#IngresosController#0" />
<element signature="method#validateInput#0;class#IngresosController#0" />
<element signature="docComment;method#validateCaja#0;class#IngresosController#0" />
<element signature="docComment;method#validateValor#0;class#IngresosController#0" />
<element signature="method#validateValor#0;class#IngresosController#0" />
<element signature="e#13936#14110#1" />
<element signature="e#14141#14304#1" />
<element signature="e#14363#14524#1" />
<element signature="e#14557#14739#1" />
<element signature="docComment;method#validateNroZInicial#0;class#IngresosController#0" />
<element signature="method#validateNroZInicial#0;class#IngresosController#0" />
<element signature="e#15183#15367#1" />
<element signature="e#15404#15577#1" />
<element signature="docComment;method#validateNroZFinal#0;class#IngresosController#0" />
<element signature="method#validateNroZFinal#0;class#IngresosController#0" />
<element signature="e#16011#16191#1" />
<element signature="e#16226#16395#1" />
<element signature="docComment;method#validateNroInicial#0;class#IngresosController#0" />
<element signature="method#validateNroInicial#0;class#IngresosController#0" />
<element signature="e#16834#17018#1" />
<element signature="e#17054#17227#1" />
<element signature="docComment;method#validateNroFinal#0;class#IngresosController#0" />
<element signature="method#validateNroFinal#0;class#IngresosController#0" />
<element signature="e#17658#17838#1" />
<element signature="e#17872#18041#1" />
<element signature="docComment;method#validateTipoIngreso#0;class#IngresosController#0" />
<element signature="method#validateTipoIngreso#0;class#IngresosController#0" />
<element signature="e#18407#18593#1" />
<element signature="docComment;method#hideErrorMessages#0;class#IngresosController#0" />
<element signature="method#hideErrorMessages#0;class#IngresosController#0" />
<element signature="docComment;method#clearInputs#0;class#IngresosController#0" />
@@ -1372,146 +1405,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/IngresosView.form">
<provider selected="true" editor-type-id="ui-designer" />
</entry>
<entry file="jar:///usr/lib/jvm/java-11-openjdk/lib/src.zip!/java.base/java/text/NumberFormat.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-6105">
<caret line="267" column="31" selection-start-line="267" selection-start-column="24" selection-end-line="267" selection-end-column="31" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/components/NumberFormatedTextField.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="66" lean-forward="true" selection-start-line="66" selection-end-line="66" />
<folding>
<element signature="imports" expanded="true" />
<element signature="method#NumberFormatedTextField#0;class#NumberFormatedTextField#0" />
<element signature="method#readValue#0;class#NumberFormatedTextField#0" />
<element signature="n#!!block;n#formatText#0;n#NumberFormatedTextField#0" />
<element signature="class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#focusGained#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#focusLost#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="method#focusLost#0;class#FieldFocusListener#0;class#NumberFormatedTextField#0" />
<element signature="class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
<element signature="docComment;method#keyTyped#0;class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
<element signature="method#keyTyped#0;class#FieldKeyAdapter#0;class#NumberFormatedTextField#0" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.form">
<provider selected="true" editor-type-id="ui-designer" />
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/views/ArqueoView.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1677">
<caret line="60" column="37" selection-start-line="60" selection-start-column="37" selection-end-line="60" selection-end-column="37" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#2595#2596#0" expanded="true" />
<element signature="e#2653#2654#0" expanded="true" />
<element signature="e#2690#2691#0" expanded="true" />
<element signature="e#2746#2747#0" expanded="true" />
<element signature="e#2781#2782#0" expanded="true" />
<element signature="e#2838#2839#0" expanded="true" />
<element signature="e#2874#2875#0" expanded="true" />
<element signature="e#2929#2930#0" expanded="true" />
<element signature="e#2963#2964#0" expanded="true" />
<element signature="e#3015#3016#0" expanded="true" />
<element signature="e#3046#3047#0" expanded="true" />
<element signature="e#3105#3106#0" expanded="true" />
<element signature="e#3143#3144#0" expanded="true" />
<element signature="e#3196#3197#0" expanded="true" />
<element signature="e#3228#3229#0" expanded="true" />
<element signature="e#3286#3287#0" expanded="true" />
<element signature="e#3323#3324#0" expanded="true" />
<element signature="e#3376#3377#0" expanded="true" />
<element signature="e#3408#3409#0" expanded="true" />
<element signature="e#3451#3452#0" expanded="true" />
<element signature="e#3486#3487#0" expanded="true" />
<element signature="e#3530#3531#0" expanded="true" />
<element signature="e#3566#3567#0" expanded="true" />
<element signature="e#3623#3624#0" expanded="true" />
<element signature="e#3659#3660#0" expanded="true" />
<element signature="e#3718#3719#0" expanded="true" />
<element signature="e#3756#3757#0" expanded="true" />
<element signature="e#3812#3813#0" expanded="true" />
<element signature="e#3847#3848#0" expanded="true" />
<element signature="e#3903#3904#0" expanded="true" />
<element signature="e#3938#3939#0" expanded="true" />
<element signature="e#3987#3988#0" expanded="true" />
<element signature="e#4031#4032#0" expanded="true" />
<element signature="e#4082#4083#0" expanded="true" />
<element signature="e#4128#4129#0" expanded="true" />
<element signature="e#4167#4168#0" expanded="true" />
<element signature="e#4202#4203#0" expanded="true" />
<element signature="e#4242#4243#0" expanded="true" />
<element signature="e#4278#4279#0" expanded="true" />
<element signature="e#4337#4338#0" expanded="true" />
<element signature="e#4375#4376#0" expanded="true" />
<element signature="e#4434#4435#0" expanded="true" />
<element signature="e#4472#4473#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/danielcortes/xyz/controllers/ArqueoController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="253">
<caret line="159" column="36" selection-start-line="159" selection-start-column="36" selection-end-line="159" selection-end-column="36" />
<folding>
<element signature="docComment;class#ArqueoController#0" />
<element signature="docComment;method#ArqueoController#0;class#ArqueoController#0" />
<element signature="method#ArqueoController#0;class#ArqueoController#0" />
<element signature="docComment;method#updateCaja#0;class#ArqueoController#0" />
<element signature="method#updateCaja#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="method#fillEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="method#fillDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#fillResumen#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenDocumentos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenEgresos#0;class#ArqueoController#0" />
<element signature="docComment;method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="method#updateResumenArqueo#0;class#ArqueoController#0" />
<element signature="e#6767#6856#1" />
<element signature="e#6860#6947#1" />
<element signature="docComment;method#setUpViewEvents#0;class#ArqueoController#0" />
<element signature="method#setUpViewEvents#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivoActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentosActionListener#0;class#ArqueoController#0" />
<element signature="method#guardarDocumentosActionListener#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="method#guardarEfectivo#0;class#ArqueoController#0" />
<element signature="docComment;method#guardarDocumentos#0;class#ArqueoController#0" />
<element signature="method#guardarDocumentos#0;class#ArqueoController#0" />
<element signature="e#12466#12757#1" />
<element signature="docComment;method#validateDocumentosInput#0;class#ArqueoController#0" />
<element signature="method#validateDocumentosInput#0;class#ArqueoController#0" />
<element signature="docComment;method#validateDocumentosValor#0;class#ArqueoController#0" />
<element signature="method#validateDocumentosValor#0;class#ArqueoController#0" />
<element signature="e#13746#13890#1" />
<element signature="e#13921#14054#1" />
<element signature="e#14113#14244#1" />
<element signature="e#14279#14431#1" />
<element signature="docComment;method#hiddeDocumentosErrorMessages#0;class#ArqueoController#0" />
<element signature="method#hiddeDocumentosErrorMessages#0;class#ArqueoController#0" />
<element signature="docComment;method#normalizeDocumentosInput#0;class#ArqueoController#0" />
<element signature="method#normalizeDocumentosInput#0;class#ArqueoController#0" />
<element signature="class#GuardarEfectivoAction#0;class#ArqueoController#0" />
<element signature="n#!!block;n#GuardarEfectivoAction#0;n#GuardarEfectivoAction#0;n#ArqueoController#0" />
<element signature="class#GuardarDocumentosAction#0;class#ArqueoController#0" />
<element signature="n#!!block;n#GuardarDocumentosAction#0;n#GuardarDocumentosAction#0;n#ArqueoController#0" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>

BIN
dist/caja.jar vendored

Binary file not shown.

BIN
dist/database.sqlite vendored

Binary file not shown.

View File

@@ -107,8 +107,8 @@ public class ArqueoController {
*/
private void fillDocumentos() {
this.documentos = this.documentosDAO.findByCaja(caja);
this.view.getTarjetasField().setText(String.valueOf(documentos.getTarjetas()));
this.view.getChequesField().setText(String.valueOf(documentos.getCheques()));
this.view.getTarjetasField().setValue(documentos.getTarjetas());
this.view.getChequesField().setValue(documentos.getCheques());
}
/**
@@ -197,6 +197,7 @@ public class ArqueoController {
this.view.getCienField().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"nextField");
this.view.getCincuentaField().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"nextField");
this.view.getDiezField().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"save");
this.view.getGuardarEfectivoButton().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"save");
this.view.getVeinteMilField().getActionMap().put("nextField", new NextAction(this.view.getDiezMilField()));
this.view.getDiezMilField().getActionMap().put("nextField", new NextAction(this.view.getCincoMilField()));
@@ -207,16 +208,15 @@ public class ArqueoController {
this.view.getCienField().getActionMap().put("nextField", new NextAction(this.view.getCincuentaField()));
this.view.getCincuentaField().getActionMap().put("nextField", new NextAction(this.view.getDiezField()));
this.view.getDiezField().getActionMap().put("save", new GuardarEfectivoAction(this));
this.view.getGuardarEfectivoButton().getActionMap().put("save", new GuardarEfectivoAction(this));
this.view.getChequesField().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"nextField");
this.view.getTarjetasField().getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("ENTER"),"save");
this.view.getChequesField().getActionMap().put("nextField", new NextAction(this.view.getTarjetasField()));
this.view.getTarjetasField().getActionMap().put("save", new GuardarDocumentosAction(this));
this.view.getGuardarDocumentosButton().getActionMap().put("save", new GuardarDocumentosAction(this));
this.view.getGuardarEfectivoButton().addActionListener(e -> guardarEfectivoActionListener());
this.view.getGuardarDocumentosButton().addActionListener(e -> guardarDocumentosActionListener());
}
/**
@@ -233,8 +233,7 @@ public class ArqueoController {
* Primero llama a normalizar el input, luego a esconder los mensajes de error y finalmente a guardar los documentos
*/
private void guardarDocumentosActionListener(){
this.normalizeDocumentosInput();
this.hiddeDocumentosErrorMessages();
this.view.getGuardarDocumentosButton().requestFocus();
this.guardarDocumentos();
}
@@ -273,87 +272,20 @@ public class ArqueoController {
* llama a updateResumenDocumentos y updateResumenArqueo para actualizar los datos de documentosField y arqueoField
*/
private void guardarDocumentos() {
String tarjetas = this.view.getTarjetasField().getText();
String cheques = this.view.getChequesField().getText();
int tarjetas = this.view.getTarjetasField().getValue();
int cheques = this.view.getChequesField().getValue();
if (this.validateDocumentosInput(tarjetas, cheques)) {
this.documentos.setTarjetas(Integer.valueOf(tarjetas));
this.documentos.setCheques(Integer.valueOf(cheques));
this.documentos.setTarjetas(tarjetas);
this.documentos.setCheques(cheques);
this.documentosDAO.updateDocumentos(documentos);
this.updateResumenDocumentos();
this.updateResumenArqueo();
}
}
/**
* Llama a las validaciones necesarias el input de Documentos
* @return si es que todas las validaciones fueron correctas
*/
private boolean validateDocumentosInput(String tarjetas, String cheques) {
boolean tarjetasValidation = validateDocumentosValor(tarjetas, this.view.getErrorTarjetas());
boolean chequesValidation = validateDocumentosValor(cheques, this.view.getErrorCheques());
return tarjetasValidation && chequesValidation;
}
/**
* Valida el valor entregado contra las siguientes pruebas
* - Es null
* - Esta vacio
* - Los caracteres no son solamente digitos
* - El largo es mayor que diez
* Setea un mensaje de error correspondiente en el errorLabel entregado.
* @return cuando cualquiera de los casos anteriores sea true se retorna falso, si no retorna true.
*/
private boolean validateDocumentosValor(String valor, JLabel errorLabel) {
if (valor == null) {
errorLabel.setText("Hubo un problema con los datos");
errorLabel.setVisible(true);
return false;
}
if (valor.isEmpty()) {
errorLabel.setText("El campo esta vacio");
errorLabel.setVisible(true);
return false;
}
if (!valor.chars().allMatch(Character::isDigit)) {
errorLabel.setText("Deben ser numeros");
errorLabel.setVisible(true);
return false;
}
if (valor.length() > 10) {
errorLabel.setText("El numero ingresado es demasiado largo");
errorLabel.setVisible(true);
return false;
}
return true;
}
/**
* Esconde los mensajes de error en los campos de documentos
*/
private void hiddeDocumentosErrorMessages(){
this.view.getErrorTarjetas().setVisible(false);
this.view.getErrorCheques().setVisible(false);
}
/**
* Ejecuta trim sobre todos los campos de documentos
*/
private void normalizeDocumentosInput() {
this.view.getChequesField().setText(this.view.getChequesField().getText().trim());
this.view.getTarjetasField().setText(this.view.getTarjetasField().getText().trim());
}
private class GuardarEfectivoAction extends AbstractAction {
ArqueoController controller;
GuardarEfectivoAction(ArqueoController controller){
this.controller = controller;
}
@@ -366,6 +298,7 @@ public class ArqueoController {
private class GuardarDocumentosAction extends AbstractAction {
ArqueoController controller;
GuardarDocumentosAction(ArqueoController controller){
this.controller = controller;
}

View File

@@ -335,7 +335,7 @@
</component>
</children>
</grid>
<grid id="1ca11" layout-manager="GridLayoutManager" row-count="5" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<grid id="1ca11" layout-manager="GridLayoutManager" row-count="3" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="10" left="10" bottom="10" right="10"/>
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
@@ -345,52 +345,42 @@
<font/>
</border>
<children>
<component id="1b69f" class="javax.swing.JTextField" binding="chequesField">
<component id="65787" class="danielcortes.xyz.views.components.NumberFormatedTextField" binding="chequesField">
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="150" height="-1"/>
</grid>
</constraints>
<properties>
<text value="0"/>
<text value=""/>
</properties>
</component>
<component id="d49a7" class="javax.swing.JLabel">
<constraints>
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Tarjetas de Credito"/>
</properties>
</component>
<component id="7049f" class="javax.swing.JTextField" binding="tarjetasField">
<component id="8b1b9" class="danielcortes.xyz.views.components.NumberFormatedTextField" binding="tarjetasField">
<constraints>
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="150" height="-1"/>
</grid>
</constraints>
<properties>
<text value="0"/>
<text value=""/>
</properties>
</component>
<component id="1681b" class="javax.swing.JButton" binding="guardarDocumentosButton">
<constraints>
<grid row="4" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
<grid row="2" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Guardar"/>
</properties>
</component>
<component id="a438" class="javax.swing.JLabel" binding="errorCheques">
<constraints>
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<foreground color="-65536"/>
<text value="Error"/>
<visible value="false"/>
</properties>
</component>
<component id="b855f" class="javax.swing.JLabel">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="4" fill="0" indent="0" use-parent-layout="false"/>
@@ -399,16 +389,6 @@
<text value="Cheques al Dia"/>
</properties>
</component>
<component id="4f33f" class="javax.swing.JLabel" binding="errorTarjetas">
<constraints>
<grid row="3" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<foreground color="-65536"/>
<text value="Error"/>
<visible value="false"/>
</properties>
</component>
</children>
</grid>
</children>

View File

@@ -45,16 +45,14 @@ public class ArqueoView {
private NumberFormatedTextField cienField;
private NumberFormatedTextField cincuentaField;
private NumberFormatedTextField diezField;
private JTextField chequesField;
private JTextField tarjetasField;
private NumberFormatedTextField chequesField;
private NumberFormatedTextField tarjetasField;
private NumberFormatedTextField efectivoField;
private NumberFormatedTextField documentosField;
private NumberFormatedTextField egresosField;
private NumberFormatedTextField rendidoField;
private JButton guardarEfectivoButton;
private JButton guardarDocumentosButton;
private JLabel errorCheques;
private JLabel errorTarjetas;
private NumberFormatedTextField diferenciaField;
private NumberFormatedTextField debeRendirField;
@@ -98,11 +96,11 @@ public class ArqueoView {
return diezField;
}
public JTextField getChequesField() {
public NumberFormatedTextField getChequesField() {
return chequesField;
}
public JTextField getTarjetasField() {
public NumberFormatedTextField getTarjetasField() {
return tarjetasField;
}
@@ -130,14 +128,6 @@ public class ArqueoView {
return guardarDocumentosButton;
}
public JLabel getErrorCheques() {
return errorCheques;
}
public JLabel getErrorTarjetas() {
return errorTarjetas;
}
public NumberFormatedTextField getDiferenciaField() {
return diferenciaField;
}
@@ -282,34 +272,24 @@ public class ArqueoView {
guardarEfectivoButton.setText("Guardar");
panel3.add(guardarEfectivoButton, new GridConstraints(9, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(200, -1), null, 0, false));
final JPanel panel4 = new JPanel();
panel4.setLayout(new GridLayoutManager(5, 2, new Insets(10, 10, 10, 10), -1, -1));
panel4.setLayout(new GridLayoutManager(3, 2, new Insets(10, 10, 10, 10), -1, -1));
panel2.add(panel4, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
panel4.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Detalle Documentos", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, this.$$$getFont$$$(null, -1, -1, panel4.getFont())));
chequesField = new JTextField();
chequesField.setText("0");
chequesField = new NumberFormatedTextField();
chequesField.setText("");
panel4.add(chequesField, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false));
final JLabel label16 = new JLabel();
label16.setText("Tarjetas de Credito");
panel4.add(label16, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
tarjetasField = new JTextField();
tarjetasField.setText("0");
panel4.add(tarjetasField, new GridConstraints(2, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false));
panel4.add(label16, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
tarjetasField = new NumberFormatedTextField();
tarjetasField.setText("");
panel4.add(tarjetasField, new GridConstraints(1, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false));
guardarDocumentosButton = new JButton();
guardarDocumentosButton.setText("Guardar");
panel4.add(guardarDocumentosButton, new GridConstraints(4, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
errorCheques = new JLabel();
errorCheques.setForeground(new Color(-65536));
errorCheques.setText("Error");
errorCheques.setVisible(false);
panel4.add(errorCheques, new GridConstraints(1, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
panel4.add(guardarDocumentosButton, new GridConstraints(2, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
final JLabel label17 = new JLabel();
label17.setText("Cheques al Dia");
panel4.add(label17, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_EAST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
errorTarjetas = new JLabel();
errorTarjetas.setForeground(new Color(-65536));
errorTarjetas.setText("Error");
errorTarjetas.setVisible(false);
panel4.add(errorTarjetas, new GridConstraints(3, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
final Spacer spacer1 = new Spacer();
contentPanel.add(spacer1, new GridConstraints(2, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_VERTICAL, 1, GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false));
}

View File

@@ -32,10 +32,20 @@ import java.awt.event.KeyEvent;
import java.text.NumberFormat;
import java.text.ParseException;
/**
* Crea un JTextField que formatea automaticamente su texto como un integer el cual se puede obtener
* con el metodo getValue. Ademas de tener comportamientos especiales:
* - Al ganar foco se selecciona todo el texto.
* - Al perder foco formatea el texto como numero.
* - Solo se pueden ingresar 9 digitos.
*/
public class NumberFormatedTextField extends JTextField {
private int value;
private NumberFormat nf;
/**
* Crea una instacia del objeto
*/
public NumberFormatedTextField() {
super();
@@ -45,15 +55,29 @@ public class NumberFormatedTextField extends JTextField {
this.addKeyListener(new FieldKeyAdapter());
}
/**
* Guarda el integer entregado y lo muestra en el campo.
*/
public void setValue(int value){
this.value = value;
this.setText(nf.format(value));
}
/**
* Llama a readValue por un bug seguramente relacionado con el focus listener:
* - No actualizaba el valor al momento de hacer requestfocus a otro componente, probablemente porque no alcanza
* a realizarse la accion antes que ocurra la siguiente
*
* Fuerza a que se lea el valor en el textfield antes de retornarlo
*/
public int getValue(){
this.readValue();
return this.value;
}
/**
* Lee el valor en el texto y lo almacena en la instancia
*/
private void readValue(){
try {
String currentText = this.getText();
@@ -65,6 +89,9 @@ public class NumberFormatedTextField extends JTextField {
}
}
/**
* Formatea el value y lo muestra en el field
*/
private void formatText(){
this.setText(nf.format(this.value));
}