Diff

Differences From Artifact [1e7b2a5cc2]:

To Artifact [8273562940]:


1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
	for(i=0; i<IpDxLEN; i++)
	    IpDx[i] = fnt_width;
    }

    x *= fnt_width;
    y *= font_height;

    if (attr & ATTR_ACTCURS) {
	attr &= (bold_mode == BOLD_COLOURS ? 0x300200 : 0x300300);
	attr ^= ATTR_CUR_XOR;
    }

    nfont = 0;
    if (cfg.vtmode == VT_OEMONLY)
	nfont |= FONT_OEM;







|







1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
	for(i=0; i<IpDxLEN; i++)
	    IpDx[i] = fnt_width;
    }

    x *= fnt_width;
    y *= font_height;

    if ((attr & ATTR_ACTCURS) && cfg.cursor_type == 0) {
	attr &= (bold_mode == BOLD_COLOURS ? 0x300200 : 0x300300);
	attr ^= ATTR_CUR_XOR;
    }

    nfont = 0;
    if (cfg.vtmode == VT_OEMONLY)
	nfont |= FONT_OEM;
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835





















1836
1837
1838
1839
1840
1841
1842
        HPEN oldpen;
	oldpen = SelectObject (hdc, CreatePen(PS_SOLID, 0, fg));
	MoveToEx (hdc, x, y+descent, NULL);
	LineTo (hdc, x+len*fnt_width, y+descent);
        oldpen = SelectObject (hdc, oldpen);
        DeleteObject (oldpen);
    }
    if (attr & ATTR_PASCURS) {
	POINT pts[5];
        HPEN oldpen;
	pts[0].x = pts[1].x = pts[4].x = x;
	pts[2].x = pts[3].x = x+fnt_width-1;
	pts[0].y = pts[3].y = pts[4].y = y;
	pts[1].y = pts[2].y = y+font_height-1;
	oldpen = SelectObject (hdc, CreatePen(PS_SOLID, 0, colours[23]));
	Polyline (hdc, pts, 5);





















        oldpen = SelectObject (hdc, oldpen);
        DeleteObject (oldpen);
    }
}

static int check_compose(int first, int second) {








|








>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
        HPEN oldpen;
	oldpen = SelectObject (hdc, CreatePen(PS_SOLID, 0, fg));
	MoveToEx (hdc, x, y+descent, NULL);
	LineTo (hdc, x+len*fnt_width, y+descent);
        oldpen = SelectObject (hdc, oldpen);
        DeleteObject (oldpen);
    }
    if ((attr & ATTR_PASCURS) && cfg.cursor.type == 0) {
	POINT pts[5];
        HPEN oldpen;
	pts[0].x = pts[1].x = pts[4].x = x;
	pts[2].x = pts[3].x = x+fnt_width-1;
	pts[0].y = pts[3].y = pts[4].y = y;
	pts[1].y = pts[2].y = y+font_height-1;
	oldpen = SelectObject (hdc, CreatePen(PS_SOLID, 0, colours[23]));
	Polyline (hdc, pts, 5);
        oldpen = SelectObject (hdc, oldpen);
        DeleteObject (oldpen);
    }
    if ((attr & (ATTR_ACTCURS | ATTR_PASCURS)) && cfg.cursor_type != 0) {
        HPEN oldpen;
	int pentype;
	if (attr & ATTR_PASCURS)
	    pentype = PS_DOTTED;
	else
	    pentype = PS_SOLID;
	oldpen = SelectObject (hdc, CreatePen(pentype, 0, colours[23]));
	if (cfg.cursor_type == 1) {
	    MoveToEx (hdc, x, y+descent, NULL);
	    LineTo (hdc, x+fnt_width-1, y+descent);
	} else {
	    int xadjust = 0;
	    if (attr & ATTR_RIGHTCURS)
		xadjust = fnt_width-1;
	    MoveToEx (hdc, x+xadjust, y, NULL);
	    LineTo (hdc, x+xadjust, y+font_height-1);
	}
        oldpen = SelectObject (hdc, oldpen);
        DeleteObject (oldpen);
    }
}

static int check_compose(int first, int second) {