Exemple #1
0
    public override void draw(float w, float h)
    {
        // TODO: Update outside of draw.
        // TODO: Incorporate deltaTime.
        // TODO: Make smooth deltaTime variables.

        float headerFrac = .3f, menuFrac = 1 - headerFrac;

        GUIX.beginClip(new Rect(0, h * headerFrac, w, h * menuFrac));
        menu.draw(w, h * menuFrac);
        GUIX.endClip();

        // Draw BG.
        Rect bgRect = new Rect(0, 0, w, h * headerFrac);

        GUIX.beginClip(bgRect);
        GUIX.beginColor(Color.white);
        TextureUtility.drawTexture(bgRect, bg, AspectType.CROP_IN_REGION);
        GUIX.endColor();
        GUIX.endClip();

        // Draw logo.
        float aspect = TextureUtility.getAspectRatio(logo);

        float logoW = w / 3, logoH = logoW / aspect;
        Rect  logoRegion = new Rect(w - logoW, 0, logoW, logoH);

        logoRegion = TextureUtility.drawTexture(logoRegion, logo, AspectType.FIT_IN_REGION);
        if (GUIX.didTapInsideRect(logoRegion))
        {
            onClick();
            Application.OpenURL("https://www.iusb.edu/civil-rights/");
        }
        drawTouchRing(logoRegion);
    }
Exemple #2
0
    public override bool draw(float w, float h)
    {
        Rect rect = new Rect(0, 0, w, h);

        GUIX.fillRect(rect, color);
        if (GUIX.didTapInsideRect(rect))
        {
            onClick();
            return(true);
        }
        else
        {
            return(false);
        }
    }
Exemple #3
0
    public override bool draw(float w, float h)
    {
        Rect rect = TextureUtility.drawTexture(new Rect(0, 0, w, h), texture, color, aspectType);

        drawTouchRing(rect);

        if (GUIX.didTapInsideRect(rect))
        {
            onClick();
            return(true);
        }
        else
        {
            return(false);
        }
    }
Exemple #4
0
    public override bool draw(float w)
    {
        float x = 0, h = getPixelHeight(w);

        bool alreadyClicked = false;

        Rect position = new Rect(0, 0, w, h + 1);

        GUIX.fillRect(position, color);

        if (doXPad)
        {
            float pad = CrhcConstants.PADDING_H.getAs(NumberType.PIXELS);
            w -= 2 * pad;
            x += pad;
        }

        float y = 0;

        if (doYPadTop)
        {
            y += CrhcConstants.PADDING_V.getAs(NumberType.PIXELS);
            h -= CrhcConstants.PADDING_V.getAs(NumberType.PIXELS);
        }
        if (doYPadBottom)
        {
            h -= CrhcConstants.PADDING_V.getAs(NumberType.PIXELS);
        }

        IItem item;
        float totalPriority = 0, sw;

        foreach (Pair pair in items)
        {
            totalPriority += pair.priority;
        }

        foreach (Pair pair in items)
        {
            item = pair.item;
            sw   = pair.priority / totalPriority * w;

            GUIX.beginClip(new Rect(x, y, sw, h));
            alreadyClicked = item.draw(sw, h) || alreadyClicked;
            GUIX.endClip();
            x += sw;
        }

        drawTouchRing(position);

        if (doSupercedeChildClick || !alreadyClicked)
        {
            if (GUIX.didTapInsideRect(position))
            {
                onClick();
                return(true);
            }
            else
            {
                return(false);
            }
        }
        else
        {
            return(false);
        }
    }