private BaseLayout createContentLayout()
        {
            contentHolder = new LinearLayout();
            contentHolder.setSizeParams(new SizeParams(MATCH_PARENT, MATCH_PARENT));
            contentHolder.invertDirection = true;

            contentHolder.addItem(createSwitchViewLayout());

            SizeParams fityPercentWidthSizeParams = new SizeParams();

            fityPercentWidthSizeParams.WidthPercent = 50.0f;
            fityPercentWidthSizeParams.Height       = MATCH_PARENT;

            jsonInput = new LinearLayout();
            jsonInput.setSizeParams(new SizeParams(MATCH_PARENT, MATCH_PARENT));
            jsonInput.setDirection(Direction.HORIZONTAL);

            LinearLayout json1Column = new LinearLayout();

            json1Column.setSizeParams(fityPercentWidthSizeParams);
            json1Column.addItem(createJsonHeaderLayout("Left JSON"));
            EditTextLayout json1Text = new EditTextLayout();

            json1Text.edgeColor = new Color(0, 122, 204);
            json1Text.setSizeParams(new SizeParams(MATCH_PARENT, FILL));
            json1Column.addItem(json1Text);
            json1Text.susbcribeToTextChanges(() =>
            {
                model.setjson1(json1Text.getText());
            });
            json1Text.setText(Properties.Resources.TextFile1);

            LinearLayout json2Column = new LinearLayout();

            json2Column.setSizeParams(fityPercentWidthSizeParams);
            json2Column.addItem(createJsonHeaderLayout("Right JSON"));
            EditTextLayout json2Text = new EditTextLayout();

            json2Text.edgeColor = new Color(0, 122, 204);
            json2Text.setSizeParams(new SizeParams(MATCH_PARENT, FILL));
            json2Column.addItem(json2Text);
            json2Text.susbcribeToTextChanges(() =>
            {
                model.setjson2(json2Text.getText());
            });
            json2Text.setText(Properties.Resources.TextFile1);

            jsonInput.addItem(json1Column);
            jsonInput.addItem(json2Column);

            jsonResultLayout = new JsonLayout();

            contentHolder.addItem(jsonInput);

            return(contentHolder);
        }
        private BaseLayout createKeyLayout()
        {
            int marginSize = 10;

            LinearLayout horizontalStack = new LinearLayout();

            horizontalStack.setDirection(LinearLayout.Direction.HORIZONTAL);
            horizontalStack.setSizeParams(new SizeParams(FILL, WRAP_CONTENTS));
            horizontalStack.invertDirection = true;

            ButtonLayout deleteButton = new ButtonLayout();

            deleteButton.setSizeParams(new SizeParams(25, MATCH_PARENT));
            deleteButton.color = buttonRed;

            TextBoxLayout delText = new TextBoxLayout();

            delText.setSizeParams(new SizeParams(WRAP_CONTENTS, WRAP_CONTENTS));
            delText.text     = "X";
            delText.textSize = 11;

            deleteButton.setContents(delText);

            ColoredLayout blankLeftMargin = new ColoredLayout();

            blankLeftMargin.color.a = 0;
            blankLeftMargin.setSizeParams(new SizeParams(marginSize, 0));

            keyEditText           = new EditTextLayout();
            keyEditText.edgeColor = LayoutLoader.buttonBlue;
            keyEditText.setSizeParams(new SizeParams(FILL, 22));
            keyEditText.singleLine = true;
            keyEditText.susbcribeToTextChanges(() =>
            {
                if (onKeyChanged != null)
                {
                    onKeyChanged();
                }
            });

            horizontalStack.addItem(blankLeftMargin);
            horizontalStack.addItem(deleteButton);

            horizontalStack.addItem(blankLeftMargin);
            horizontalStack.addItem(keyEditText);

            LinearLayout leftLay = new LinearLayout();

            leftLay.setSizeParams(new SizeParams(FILL, WRAP_CONTENTS));
            leftLay.setDirection(Direction.HORIZONTAL);
            leftLay.addItem(blankLeftMargin);
            leftLay.addItem(horizontalStack);

            ColoredLayout blankTopMargin = new ColoredLayout();

            blankTopMargin.color.a = 0;
            blankTopMargin.setSizeParams(new SizeParams(0, marginSize));

            LinearLayout topLay = new LinearLayout();

            topLay.setSizeParams(new SizeParams(FILL, WRAP_CONTENTS));
            topLay.setDirection(Direction.VERTICAL);
            topLay.invertDirection = true;

            topLay.addItem(blankTopMargin);
            topLay.addItem(leftLay);

            deleteButton.metaData = topLay;
            deleteButton.setOnClickListener(() =>
            {
                if (onKeyDeletePressed != null)
                {
                    onKeyDeletePressed();
                }
            });

            return(topLay);
        }