diff --git a/bricks/uitype.js b/bricks/uitype.js index 3ee9545..da6a7e0 100644 --- a/bricks/uitype.js +++ b/bricks/uitype.js @@ -34,7 +34,7 @@ bricks.add_ViewBuilder('code', function(opts){ }); bricks.add_ViewBuilder('password', function(opts){ var options = bricks.extend({}, opts); - options.otext = '******'; + options.otext = opts.user_data ? '******' : (opts.value || '******'); options.i18n = true; return new bricks.Text(options); }); diff --git a/bricks/uitypesdef.js b/bricks/uitypesdef.js index 26b8b0a..1e478ca 100644 --- a/bricks/uitypesdef.js +++ b/bricks/uitypesdef.js @@ -87,6 +87,7 @@ var strInputBuilder = function(desc, rec) { bricks.uitypesdef.setInputBuilder('str', strInputBuilder); var passwordViewBuilder = function(desc, rec){ + if (!rec) return new buildText(desc.label || desc.name || '******'); return new buildText('******'); } bricks.uitypesdef.setViewBuilder('password', passwordViewBuilder); diff --git a/bricks/views.js b/bricks/views.js index b6606ca..ccb5aea 100644 --- a/bricks/views.js +++ b/bricks/views.js @@ -31,7 +31,7 @@ uitypesdef.setViewKlass('str', ViewStr); var ViewPassword = function(desc){ var w = Text({ - 'text':"****", + 'text': desc.row_data ? "****" : (desc.value || desc.label || desc.name || "****"), 'halign':'left' }) if (desc.row_data)