// The geomeries are zoomed about 3x because of text size in xkbprint. An
// example for visualizing a keyboard layout is given below.
//
// setxkbmap -model nokiarm680 -layout us -print > rm680.xkb
// xkbcomp rm680.xkb
// xkbprint -color rm680.xkm

xkb_geometry "nokiarm680b2" {

    description= "Nokia RM-680";
    width= 346.5; // 11x8.5mm + 2x11mm border
    height= 102.0; // 4x7mm + 2x3mm border

    shape.cornerRadius= 1.5;
    shape "NORM"  { { [25.5,21.0] } };
    shape "SPCE"  { { [76.5,21.0] } };

    section.left= 33.0;
    row.left= 0.0;
    key.shape= "NORM";
    key.gap= 0;
    section "Keys" {
	top= 0;
	row {
	    top= 9.0;
	    keys { <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
		   { <BKSP>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 30.0;
	    keys { <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
		   <AC06>, <AC07>, <AC08>, <AC09>, <AC11>,
		   { <RTRN>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 51.0;
	    keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
		   <AB06>, <AB07>, <AB08>, <AB09>, <UP>,
		   { <RCTL>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 72.0;
	    keys { { <LWIN>, "NORM", color="grey20" },
		   { <LFSH>, "NORM", color="grey20" },
		   { <COMP>, "NORM", color="grey20" },
		   <AB10>,
		   { <SPCE>, "SPCE", color="white" },
		   <AC12>,
		   <LEFT>, <DOWN>, <RGHT>
	    };
	};
    }; // End of "Keys" section

}; // End of "rm680" geometry

xkb_geometry "nokiarm680" {

    description= "Nokia RM-680";
    width= 346.5; // 11x8.5mm + 2x11mm border
    height= 102.0; // 4x7mm + 2x3mm border

    shape.cornerRadius= 1.5;
    shape "NORM"  { { [25.5,21.0] } };
    shape "SPCE"  { { [76.5,21.0] } };

    section.left= 33.0;
    row.left= 0.0;
    key.shape= "NORM";
    key.gap= 0;
    section "Keys" {
	top= 0;
	row {
	    top= 9.0;
	    keys { <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
		   { <BKSP>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 30.0;
	    keys { <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
		   <AC06>, <AC07>, <AC08>, <AC09>, <AC11>,
		   { <RTRN>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 51.0;
	    keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
		   <AB06>, <AB07>, <AB08>, <AB09>, <UP>,
		   { <RCTL>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 72.0;
	    keys { { <LWIN>, "NORM", color="grey20" },
		   { <LFSH>, "NORM", color="grey20" },
		   { <COMP>, "NORM", color="grey20" },
		   <AB10>,
		   { <SPCE>, "SPCE", color="white" },
		   <AC12>,
		   <LEFT>, <DOWN>, <RGHT>
	    };
	};
    }; // End of "Keys" section

}; // End of "rm680" geometry

xkb_geometry "nokiarx51" {

    description= "Nokia RX-51";
    width= 273; // 13x6mm + 2x1.5mm border + 2x5mm border
    height= 54; // 3x5mm + 2x1.5mm border

    shape.cornerRadius= 1.5;
    shape "NORM"  { { [18,15] } };
    shape "SPCE"  { { [54,15] } };
    shape "FRAME" { cornerRadius= 2.5, { [243,54] } };

    solid "FRAME" {
	shape= "FRAME";
	color= "white";
	top= 0;
	left= 15;
    };

    section.left= 15;
    row.left= 4.5;
    key.shape= "NORM";
    key.gap= 0;
    section "Keys" {
	top= 0;
	row {
	    top= 4.5;
	    keys { { <LCTL>, "NORM", color="grey20" },
		   <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, <AB08>,
		   { <BKSP>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 19.5;
	    keys { { <RALT>, "NORM", color="grey20" },
		   <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
		   <AC06>, <AC07>, <AC08>, <AC09>, <AB09>, <UP>,
		   { <RTRN>, "NORM", color="grey20" }
	    };
	};
	row {
	    top= 34.5;
	    keys { { <LFSH>, "NORM", color="grey20" },
		   <AB01>, <AB02>, <AB03>, <AB04>, <AB05>, <AB06>, <AB07>,
		   { <SPCE>, "SPCE", color="white" },
		   <LEFT>, <DOWN>, <RGHT>
	    };
	};
    }; // End of "Keys" section

}; // End of "rx51" geometry

xkb_geometry "nokiarx44" {

    description= "Nokia RX-44";
    width= 346.5; // 11x8.5mm + 2x11mm border
    height= 102.0; // 4x7mm + 2x3mm border

    shape.cornerRadius= 1.5;
    shape "NORM"  { { [25.5,21.0] } };
    shape "FUNC"  { { [38.25,21.0] } };
    shape "SPCE"  { { [76.5,21.0] } };

    section.left= 33.0;
    row.left= 0.0;
    key.shape= "NORM";
    key.gap= 0;
    section "Keys" {
	top= 0;
	row {
	    top= 9.0;
	    keys { <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
		   <BKSP>
	    };
	};
	row {
	    top= 30.0;
	    keys { <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
		   <AC06>, <AC07>, <AC08>, <AC09>, <AC11>,
		   <RTRN>
	    };
	};
	row {
	    top= 51.0;
	    keys { <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
		   <AB06>, <AB07>, <AC10>, <AE11>, <AE12>,
		   <RTRN>
	    };
	};
	row {
	    top= 72.0;
	    keys { { <FN>, "FUNC", color="grey20" },
		   <LFSH>, <COMP>,
		   { <SPCE>, "SPCE", color="grey20" },
		   <AB08>, <AB09>, <RCTL>,
                   { <LFSH>, "FUNC", color="grey20" }
	    };
	};
    }; // End of "Keys" section

}; // End of "rx44" geometry
