525 case EBACKGROUND: b.append(background); break;
526 case EUNDERLINE: b.append(underline); break;
527 case ESTRIKETHROUGH: b.append(strikethrough); break;
528 case ERUN_DIRECTION: b.append(runDirection); break;
529 case EBIDI_EMBEDDING: b.append(bidiEmbedding); break;
530 case EJUSTIFICATION: b.append(justification); break;
531 case EINPUT_METHOD_HIGHLIGHT: b.append(imHighlight); break;
532 case EINPUT_METHOD_UNDERLINE: b.append(imUnderline); break;
533 case ESWAP_COLORS: b.append(swapColors); break;
534 case ENUMERIC_SHAPING: b.append(numericShaping); break;
535 case EKERNING: b.append(kerning); break;
536 case ELIGATURES: b.append(ligatures); break;
537 case ETRACKING: b.append(tracking); break;
538 default: throw new InternalError();
539 }
540 if ((nondefault & ea.mask) == 0) {
541 b.append('*');
542 }
543 }
544 }
545 b.append("[btx=" + baselineTransform + ", ctx=" + charTransform + "]");
546 b.append('}');
547 return b.toString();
548 }
549
550 // internal utilities
551
552 private static boolean equals(Object lhs, Object rhs) {
553 return lhs == null ? rhs == null : lhs.equals(rhs);
554 }
555
556 private void update(EAttribute a) {
557 defined |= a.mask;
558 if (i_validate(a)) {
559 if (i_equals(a, DEFAULT)) {
560 nondefault &= ~a.mask;
561 } else {
562 nondefault |= a.mask;
563 }
564 } else {
565 setDefault(a);
|
525 case EBACKGROUND: b.append(background); break;
526 case EUNDERLINE: b.append(underline); break;
527 case ESTRIKETHROUGH: b.append(strikethrough); break;
528 case ERUN_DIRECTION: b.append(runDirection); break;
529 case EBIDI_EMBEDDING: b.append(bidiEmbedding); break;
530 case EJUSTIFICATION: b.append(justification); break;
531 case EINPUT_METHOD_HIGHLIGHT: b.append(imHighlight); break;
532 case EINPUT_METHOD_UNDERLINE: b.append(imUnderline); break;
533 case ESWAP_COLORS: b.append(swapColors); break;
534 case ENUMERIC_SHAPING: b.append(numericShaping); break;
535 case EKERNING: b.append(kerning); break;
536 case ELIGATURES: b.append(ligatures); break;
537 case ETRACKING: b.append(tracking); break;
538 default: throw new InternalError();
539 }
540 if ((nondefault & ea.mask) == 0) {
541 b.append('*');
542 }
543 }
544 }
545 b.append("[btx=").append(baselineTransform).append(", ctx=").append(charTransform).append(']');
546 b.append('}');
547 return b.toString();
548 }
549
550 // internal utilities
551
552 private static boolean equals(Object lhs, Object rhs) {
553 return lhs == null ? rhs == null : lhs.equals(rhs);
554 }
555
556 private void update(EAttribute a) {
557 defined |= a.mask;
558 if (i_validate(a)) {
559 if (i_equals(a, DEFAULT)) {
560 nondefault &= ~a.mask;
561 } else {
562 nondefault |= a.mask;
563 }
564 } else {
565 setDefault(a);
|