From 3c028a07fd88db17f94da3c54e9b6f4594e1636a Mon Sep 17 00:00:00 2001 From: Robin Krahl Date: Sat, 27 Jun 2015 16:19:12 +0200 Subject: Proper layout for export dialog. Set all labels to the same width and right alignment, and fix the spacing between controls and labels. - update MediaWikiExportServiceProvider.sectionsForTopOfDialog --- .../MediaWikiExportServiceProvider.lua | 269 ++++++++++++--------- 1 file changed, 156 insertions(+), 113 deletions(-) diff --git a/mediawiki.lrdevplugin/MediaWikiExportServiceProvider.lua b/mediawiki.lrdevplugin/MediaWikiExportServiceProvider.lua index 8038ee4..8405cea 100755 --- a/mediawiki.lrdevplugin/MediaWikiExportServiceProvider.lua +++ b/mediawiki.lrdevplugin/MediaWikiExportServiceProvider.lua @@ -131,51 +131,66 @@ MediaWikiExportServiceProvider.processRenderedPhotos = function(functionContext, end MediaWikiExportServiceProvider.sectionsForTopOfDialog = function(viewFactory, propertyTable) + local labelAlignment = 'right'; + local widthLong = 50; + return { { title = LOC '$$$/LrMediaWiki/Section/User/Title=Login Information', synopsis = bind 'username', - viewFactory:row { + viewFactory:column { spacing = viewFactory:control_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/User/Username=Username', - }, + viewFactory:row { + spacing = viewFactory:label_spacing(), + + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/User/Username=Username', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'username', - immediate = true, + viewFactory:edit_field { + value = bind 'username', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/User/Password=Password', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/User/Password=Password', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:password_field { - value = bind 'password', + viewFactory:password_field { + value = bind 'password', + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/User/ApiPath=API path', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/User/ApiPath=API path', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'api_path', - immediate = true, - width_in_chars = 30, - }, + viewFactory:edit_field { + value = bind 'api_path', + immediate = true, + width_in_chars = widthLong, + }, - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/User/ApiPath/Details=Path to the api.php file', + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/User/ApiPath/Details=Path to the api.php file', + }, }, }, }, @@ -183,123 +198,151 @@ MediaWikiExportServiceProvider.sectionsForTopOfDialog = function(viewFactory, pr title = LOC "$$$/LrMediaWiki/Section/Licensing/Title=Upload Information", synopsis = bind 'info_license', - viewFactory:row { + viewFactory:column { spacing = viewFactory:control_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Source=Source', - }, + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:edit_field { - value = bind 'info_source', - immediate = true, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Source=Source', + alignment = labelAlignment, + width = LrView.share "label_width", + }, + + viewFactory:edit_field { + value = bind 'info_source', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Author=Author', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Author=Author', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'info_author', - immediate = true, + viewFactory:edit_field { + value = bind 'info_author', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/License=License', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/License=License', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:combo_box { - value = bind 'info_license', - immediate = true, - width_in_chars = 50, - items = { - '{{Cc-by-sa-4.0}}', - '{{Cc-by-4.0}}', - '{{Cc-zero}}', + viewFactory:combo_box { + value = bind 'info_license', + immediate = true, + width_in_chars = widthLong - 2, + items = { + '{{Cc-by-sa-4.0}}', + '{{Cc-by-4.0}}', + '{{Cc-zero}}', + }, }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Permission=Permission', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Permission=Permission', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'info_permission', - immediate = true, + viewFactory:edit_field { + value = bind 'info_permission', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/OtherTemplates=Other templates', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/OtherTemplates=Other templates', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'info_templates', - immediate = true, + viewFactory:edit_field { + value = bind 'info_templates', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Other=Other fields', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Other=Other fields', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'info_other', - immediate = true, + viewFactory:edit_field { + value = bind 'info_other', + immediate = true, + width_in_chars = widthLong, + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Categories=Categories', - }, + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Categories=Categories', + alignment = labelAlignment, + width = LrView.share "label_width", + }, - viewFactory:edit_field { - value = bind 'info_categories', - immediate = true, - width_in_chars = 30, - height_in_lines = 3, - }, + viewFactory:edit_field { + value = bind 'info_categories', + immediate = true, + width_in_chars = widthLong, + height_in_lines = 3, + }, - viewFactory:static_text { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Categories/Details=separate with ;', + viewFactory:static_text { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Categories/Details=separate with ;', + }, }, - }, - viewFactory:row { - spacing = viewFactory:control_spacing(), + viewFactory:row { + spacing = viewFactory:label_spacing(), - viewFactory:push_button { - title = LOC '$$$/LrMediaWiki/Section/Licensing/Preview=Preview generated wikitext', - action = function(button) - local result, message = MediaWikiInterface.loadFileDescriptionTemplate() - if result then - local wikitext = MediaWikiInterface.buildFileDescription('', propertyTable.info_source, '', propertyTable.info_author, propertyTable.info_license, '\n' .. propertyTable.info_templates, propertyTable.info_other, propertyTable.info_categories, '', '') - LrDialogs.message(LOC '$$$/LrMediaWiki/Section/Licensing/Preview=Preview generated wikitext', wikitext, 'info') - else - LrDialogs.message(LOC '$$$/LrMediaWiki/Export/DescriptionError=Error reading the file description', message, 'error') - end - end, + viewFactory:static_text { + alignment = labelAlignment, + width = LrView.share "label_width", + }, + + viewFactory:push_button { + title = LOC '$$$/LrMediaWiki/Section/Licensing/Preview=Preview generated wikitext', + action = function(button) + local result, message = MediaWikiInterface.loadFileDescriptionTemplate() + if result then + local wikitext = MediaWikiInterface.buildFileDescription('', propertyTable.info_source, '', propertyTable.info_author, propertyTable.info_license, '\n' .. propertyTable.info_templates, propertyTable.info_other, propertyTable.info_categories, '', '') + LrDialogs.message(LOC '$$$/LrMediaWiki/Section/Licensing/Preview=Preview generated wikitext', wikitext, 'info') + else + LrDialogs.message(LOC '$$$/LrMediaWiki/Export/DescriptionError=Error reading the file description', message, 'error') + end + end, + }, }, }, }, -- cgit v1.2.3