Merged r3888 from branch
This commit is contained in:
parent
8512ba8d39
commit
f2cd272786
|
@ -18,14 +18,12 @@ row hbox hbox label
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
row > toolbarbutton
|
|
||||||
{
|
|
||||||
margin-right: 5px;
|
|
||||||
-moz-image-region: rect(2px, 14px, 18px, 0px);
|
|
||||||
}
|
|
||||||
|
|
||||||
row vbox[fieldname=abstractNote],
|
row vbox[fieldname=abstractNote],
|
||||||
row vbox[fieldname=extra]
|
row vbox[fieldname=extra]
|
||||||
{
|
{
|
||||||
margin-left: 1px;
|
margin-left: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.creator-type-label image {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
|
@ -551,6 +551,9 @@
|
||||||
<parameter name="defaultRow"/>
|
<parameter name="defaultRow"/>
|
||||||
<body>
|
<body>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
|
// getCreatorFields(), switchCreatorMode() and handleCreatorAutoCompleteSelect()
|
||||||
|
// may need need to be adjusted if this DOM structure changes
|
||||||
|
|
||||||
if (!creator) {
|
if (!creator) {
|
||||||
creator = {
|
creator = {
|
||||||
firstName: '',
|
firstName: '',
|
||||||
|
@ -578,21 +581,26 @@
|
||||||
var typeID = creatorTypeID ?
|
var typeID = creatorTypeID ?
|
||||||
creatorTypeID : this._creatorTypeMenu.childNodes[0].getAttribute('typeid');
|
creatorTypeID : this._creatorTypeMenu.childNodes[0].getAttribute('typeid');
|
||||||
|
|
||||||
var label = document.createElement("toolbarbutton");
|
var typeBox = document.createElement("hbox");
|
||||||
label.setAttribute("label",
|
typeBox.setAttribute("typeid", typeID);
|
||||||
Zotero.getString('creatorTypes.'
|
typeBox.setAttribute("popup", "creator-type-menu");
|
||||||
+ Zotero.CreatorTypes.getName(typeID)) + ":");
|
typeBox.setAttribute("fieldname", 'creator-' + this._creatorCount + '-typeID');
|
||||||
label.setAttribute("typeid", typeID);
|
typeBox.className = 'creator-type-label zotero-clicky';
|
||||||
label.setAttribute("popup", "creator-type-menu");
|
|
||||||
label.setAttribute("fieldname", 'creator-' + this._creatorCount + '-typeID');
|
var img = document.createElement('image');
|
||||||
label.className = 'zotero-clicky';
|
img.setAttribute('src', 'chrome://zotero/skin/arrow-down.gif');
|
||||||
|
typeBox.appendChild(img);
|
||||||
|
|
||||||
|
var label = document.createElement("label");
|
||||||
|
label.setAttribute('value',
|
||||||
|
Zotero.getString('creatorTypes.'+Zotero.CreatorTypes.getName(typeID)) + ":")
|
||||||
|
typeBox.appendChild(label);
|
||||||
|
|
||||||
// getCreatorFields(), switchCreatorMode() and handleCreatorAutoCompleteSelect()
|
|
||||||
// may need need to be adjusted if this DOM structure changes
|
|
||||||
var hbox = document.createElement("hbox");
|
var hbox = document.createElement("hbox");
|
||||||
|
|
||||||
// Name
|
// Name
|
||||||
var firstlast = document.createElement("hbox");
|
var firstlast = document.createElement("hbox");
|
||||||
|
firstlast.className = 'creator-name-box';
|
||||||
firstlast.setAttribute("flex","1");
|
firstlast.setAttribute("flex","1");
|
||||||
var tabindex = this._tabIndexMinCreators + (this._creatorCount * 2);
|
var tabindex = this._tabIndexMinCreators + (this._creatorCount * 2);
|
||||||
var fieldName = 'creator-' + this._creatorCount + '-lastName';
|
var fieldName = 'creator-' + this._creatorCount + '-lastName';
|
||||||
|
@ -669,7 +677,7 @@
|
||||||
addButton.hidden = true;
|
addButton.hidden = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.addDynamicRow(label, hbox, true);
|
this.addDynamicRow(typeBox, hbox, true);
|
||||||
|
|
||||||
// Set single/double field toggle mode
|
// Set single/double field toggle mode
|
||||||
if (creator.fieldMode) {
|
if (creator.fieldMode) {
|
||||||
|
@ -756,7 +764,7 @@
|
||||||
button.setAttribute('image', 'chrome://zotero/skin/textfield-dual.png');
|
button.setAttribute('image', 'chrome://zotero/skin/textfield-dual.png');
|
||||||
button.setAttribute('tooltiptext', Zotero.getString('pane.item.switchFieldMode.two'));
|
button.setAttribute('tooltiptext', Zotero.getString('pane.item.switchFieldMode.two'));
|
||||||
lastName.setAttribute('fieldMode', '1');
|
lastName.setAttribute('fieldMode', '1');
|
||||||
button.setAttribute('onclick', "document.getBindingParent(this).switchCreatorMode(this.parentNode.parentNode, 0)");
|
button.setAttribute('onclick', "document.getBindingParent(this).switchCreatorMode(Zotero.getAncestorByTagName(this, 'row'), 0)");
|
||||||
lastName.setAttribute('flex', '1');
|
lastName.setAttribute('flex', '1');
|
||||||
|
|
||||||
// Remove firstname field from tabindex
|
// Remove firstname field from tabindex
|
||||||
|
@ -787,7 +795,7 @@
|
||||||
button.setAttribute('image', 'chrome://zotero/skin/textfield-single.png');
|
button.setAttribute('image', 'chrome://zotero/skin/textfield-single.png');
|
||||||
button.setAttribute('tooltiptext', Zotero.getString('pane.item.switchFieldMode.one'));
|
button.setAttribute('tooltiptext', Zotero.getString('pane.item.switchFieldMode.one'));
|
||||||
lastName.setAttribute('fieldMode', '0');
|
lastName.setAttribute('fieldMode', '0');
|
||||||
button.setAttribute('onclick', "document.getBindingParent(this).switchCreatorMode(this.parentNode.parentNode, 1)");
|
button.setAttribute('onclick', "document.getBindingParent(this).switchCreatorMode(Zotero.getAncestorByTagName(this, 'row'), 1)");
|
||||||
lastName.setAttribute('flex', '0');
|
lastName.setAttribute('flex', '0');
|
||||||
|
|
||||||
// Add firstname field to tabindex
|
// Add firstname field to tabindex
|
||||||
|
@ -1318,7 +1326,7 @@
|
||||||
label.value = creator[otherField];
|
label.value = creator[otherField];
|
||||||
}
|
}
|
||||||
|
|
||||||
var row = textbox.parentNode.parentNode.parentNode;
|
var row = Zotero.getAncestorByTagName(textbox, 'row');
|
||||||
|
|
||||||
var fields = this.getCreatorFields(row);
|
var fields = this.getCreatorFields(row);
|
||||||
fields[creatorField] = creator[creatorField];
|
fields[creatorField] = creator[creatorField];
|
||||||
|
@ -1465,7 +1473,7 @@
|
||||||
|
|
||||||
// Creator fields
|
// Creator fields
|
||||||
if (field == 'creator') {
|
if (field == 'creator') {
|
||||||
var row = textbox.parentNode.parentNode.parentNode;
|
var row = Zotero.getAncestorByTagName(textbox, 'row');
|
||||||
|
|
||||||
var otherFields = this.getCreatorFields(row);
|
var otherFields = this.getCreatorFields(row);
|
||||||
otherFields[creatorField] = value;
|
otherFields[creatorField] = value;
|
||||||
|
@ -1715,8 +1723,8 @@
|
||||||
<parameter name="row"/>
|
<parameter name="row"/>
|
||||||
<body>
|
<body>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
var typeID = row.getElementsByTagName('toolbarbutton')[0].getAttribute('typeid');
|
var typeID = row.getElementsByClassName('creator-type-label')[0].getAttribute('typeid');
|
||||||
var label1 = row.getElementsByTagName('hbox')[0].firstChild.firstChild;
|
var label1 = row.getElementsByClassName('creator-name-box')[0].firstChild;
|
||||||
var label2 = label1.parentNode.lastChild;
|
var label2 = label1.parentNode.lastChild;
|
||||||
|
|
||||||
var fields = {
|
var fields = {
|
||||||
|
@ -2035,13 +2043,20 @@
|
||||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||||
<popupset>
|
<popupset>
|
||||||
<popup id="creator-type-menu" position="after_start"
|
<popup id="creator-type-menu" position="after_start"
|
||||||
oncommand="var fields = document.getBindingParent(this).getCreatorFields(document.popupNode.parentNode);
|
oncommand="var typeBox = document.popupNode.localName == 'hbox'
|
||||||
|
? document.popupNode : document.popupNode.parentNode;
|
||||||
|
var row = typeBox.parentNode;
|
||||||
var typeID = event.explicitOriginalTarget.getAttribute('typeid');
|
var typeID = event.explicitOriginalTarget.getAttribute('typeid');
|
||||||
fields['creatorTypeID'] = typeID;
|
var fields = document.getBindingParent(this).getCreatorFields(row);
|
||||||
document.popupNode.setAttribute('label',
|
fields.creatorTypeID = typeID;
|
||||||
Zotero.getString('creatorTypes.' + Zotero.CreatorTypes.getName(typeID)) + ':');
|
typeBox.getElementsByTagName('label')[0].setAttribute(
|
||||||
document.popupNode.setAttribute('typeid', typeID);
|
'value',
|
||||||
var index = document.popupNode.getAttribute('fieldname').split('-')[1];
|
Zotero.getString(
|
||||||
|
'creatorTypes.' + Zotero.CreatorTypes.getName(typeID)
|
||||||
|
) + ':'
|
||||||
|
);
|
||||||
|
typeBox.setAttribute('typeid', typeID);
|
||||||
|
var index = typeBox.getAttribute('fieldname').split('-')[1];
|
||||||
document.getBindingParent(this).modifyCreator(index, fields)"/>
|
document.getBindingParent(this).modifyCreator(index, fields)"/>
|
||||||
<popup id="field-menu">
|
<popup id="field-menu">
|
||||||
<menu label="&zotero.item.textTransform;">
|
<menu label="&zotero.item.textTransform;">
|
||||||
|
|
|
@ -838,7 +838,7 @@ var Zotero = new function(){
|
||||||
function getAncestorByTagName(elem, tagName){
|
function getAncestorByTagName(elem, tagName){
|
||||||
while (elem.parentNode){
|
while (elem.parentNode){
|
||||||
elem = elem.parentNode;
|
elem = elem.parentNode;
|
||||||
if (elem.tagName==tagName || elem.tagName=='xul:' + tagName){
|
if (elem.localName == tagName) {
|
||||||
return elem;
|
return elem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
BIN
chrome/skin/default/zotero/arrow-down.gif
Normal file
BIN
chrome/skin/default/zotero/arrow-down.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 53 B |
|
@ -36,8 +36,7 @@ label[singleField=false]:after
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* metadata field names */
|
/* metadata field names */
|
||||||
row > label:first-child,
|
row > label:first-child, .creator-type-label
|
||||||
row > toolbarbutton .toolbarbutton-text /* creator type menu */
|
|
||||||
{
|
{
|
||||||
text-align: right;
|
text-align: right;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
@ -53,25 +52,15 @@ row label
|
||||||
-moz-user-focus: ignore;
|
-moz-user-focus: ignore;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* creator type menu */
|
/* creator type menu */
|
||||||
row > toolbarbutton
|
.creator-type-label {
|
||||||
{
|
-moz-box-align: center;
|
||||||
margin: 0 2px 0 0;
|
-moz-box-pack: end;
|
||||||
padding: 0 0 0 5px;
|
|
||||||
list-style-image: url("chrome://browser/skin/dropmark-nav.png");
|
|
||||||
-moz-image-region: rect(3px, 14px, 19px, 0px);
|
|
||||||
}
|
|
||||||
row > toolbarbutton .toolbarbutton-text
|
|
||||||
{
|
|
||||||
margin-top: -1px;
|
|
||||||
}
|
|
||||||
row > toolbarbutton .toolbarbutton-icon,
|
|
||||||
row > toolbarbutton .toolbarbutton-menu-dropmarker
|
|
||||||
{
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.creator-type-label image {
|
||||||
|
margin: 0 .5em 1px;
|
||||||
|
}
|
||||||
|
|
||||||
/* no space between last name and comma */
|
/* no space between last name and comma */
|
||||||
row hbox label:first-child
|
row hbox label:first-child
|
||||||
|
|
Loading…
Reference in New Issue
Block a user