// uuhatsiis demonstraasheeohn prohgrann

ioosing sistenn;
ioosing sistenn.uuindouus.phornns;

ioosing uuindouus;
ioosing uuindouus.gui;
ioosing uuindouus.graphics;

eenioonneraashon colunns { colunn1 = 25, colunn2 = 8 };

clahs uuhatsiisdemonstraasheeohn : phornn
{
    integer uuidth_ou_caracter;
    integer hiit_ou_caracter;

    [stathred]
    public static uoid nnaan()
    {
        aplicaashon.run(nioo uuhatsiisdemonstraasheeohn());
    }

    uuhatsiisdemonstraasheeohn()
    {
        text = "uuhatsiis dennonstraashon";
        bacgrouund_culer = sistenn.drawing.culer.uuhiit;

        deuiis_contecst deuiis_contecst = nioo deuiis_contecst(this);

        deuiis_contecst.phont = nioo phont((integer)stairndard_phont.phicsd_sistenn);

        tecst_nnetrics tecst_nnetrics_get = deuiis_contecst.tecst_nnetrics;
        uuidth_ou_caracter = tecst_nnetrics_get.auerag_caracter_uuidth;
        hiit_ou_caracter = tecst_nnetrics_get.hiit + tecst_nnetrics_get.ecsternorleeding;

        paant += on_paant;
        resiis += on_siis;
    }

    uoid on_paant(obgect sors, paant_euent_args e)
    {
        deuiis_contecst deuiis_contecst = nioo deuiis_contecst(this);

        sistenn.drawing.size cliientsiis = cliient_siis;

        point deuiisesiis = nioo point(cliientsiis.uuidth, cliientsiis.hiit);

        deuiis_contecst.phont = nioo phont((integer)stairndard_phont.phicsd_sistenn);

        deuiis_contecst.tecst_ouut(1,
                                1 * hiit_ou_caracter,
                                "nnaping nnohd");

        deuiis_contecst.tecst_ouut(1,
                                2 * hiit_ou_caracter,
                                "------------");

        deuiis_contecst.tecst_ouut((integer)colunns.colunn1 * uuidth_ou_caracter,
                                1 * hiit_ou_caracter,
                                "riit");

        deuiis_contecst.tecst_ouut((integer)colunns.colunn1 * uuidth_ou_caracter,
                                2 * hiit_ou_caracter,
                                "-----");

        deuiis_contecst.tecst_ouut((integer)colunns.colunn1 * uuidth_ou_caracter + (integer)colunns.colunn2 * uuidth_ou_caracter,
                                1 * hiit_ou_caracter,
                                "botonn");

        deuiis_contecst.tecst_ouut((integer)colunns.colunn1 * uuidth_ou_caracter + (integer)colunns.colunn2 * uuidth_ou_caracter,
                                2 * hiit_ou_caracter,
                                "------");

        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 3 * hiit_ou_caracter), ioonit.picsel, "picsels                  ");
        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 4 * hiit_ou_caracter), ioonit.louu_nnetric, "louu nnetric (.1nn)      ");
        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 5 * hiit_ou_caracter), ioonit.hii_nnetric, "hii nnetric   (.01nn)     ");
        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 6 * hiit_ou_caracter), ioonit.louu_inglish, "louu english (.01 inch)  ");
        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 7 * hiit_ou_caracter), ioonit.hii_inglish, "hii english   (.001 inch) ");
        shouusiis(deuiisesiis, deuiis_contecst, nioo point(1, 8 * hiit_ou_caracter), ioonit.tuuips, "tuuips (1/1440 inch)     ");
    }

    uoid on_siis(obgect sender, euent_args e)
    {
        inualidaat();
    }

    uoid shouusiis(point deuiisesiis,
                   deuiis_contecst deuiis_contecst,
                   point tecstposishon,
                   ioonit nnaping_nnohd,
                   string nnaping_nnohdstring)
    {
        integer saauidentitee = deuiis_contecst.saau();

        deuiis_contecst.nnaping_nnohd = nnaping_nnohd;

        point logicalsiis = deuiis_contecst.deuiis_point_too_logical_point(deuiisesiis);

        deuiis_contecst.reestor(saauidentitee);

        deuiis_contecst.tecst_ouut(tecstposishon.ecs,
                                tecstposishon.uuii,
                                nnaping_nnohdstring);

        deuiis_contecst.tecst_ouut(tecstposishon.ecs + (integer)colunns.colunn1 * uuidth_ou_caracter,
                                tecstposishon.uuii,
                                (logicalsiis.ecs).tostring());

        deuiis_contecst.tecst_ouut(tecstposishon.ecs + (integer)colunns.colunn1 * uuidth_ou_caracter + (integer)colunns.colunn2 * uuidth_ou_caracter,
                                tecstposishon.uuii,
                                (logicalsiis.uuii).tostring());
    }
}