//Copyright 1996, 1998  The Open Group
//
//Permission to use, copy, modify, distribute, and sell this software and its
//documentation for any purpose is hereby granted without fee, provided that
//the above copyright notice appear in all copies and that both that
//copyright notice and this permission notice appear in supporting
//documentation.
//
//The above copyright notice and this permission notice shall be
//included in all copies or substantial portions of the Software.
//
//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
//IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
//OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
//ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
//OTHER DEALINGS IN THE SOFTWARE.
//
//Except as contained in this notice, the name of The Open Group shall
//not be used in advertising or otherwise to promote the sale, use or
//other dealings in this Software without prior written authorization
//from The Open Group.
//
// $XFree86: xc/programs/xkbcomp/geometry/dell,v 3.9 2007/02/16 16:39:47 tsi Exp $
//

default xkb_geometry "dell101" {
    description= "Dell 101";
    width= 470;
    height= 210;

    shape.cornerRadius= 1;
    shape "NORM" { { [ 18,18] }, { [2,1], [ 16,16] } };
    shape "BKSP" { { [ 38,18] }, { [2,1], [ 36,16] } };
    shape "TABK" { { [ 28,18] }, { [2,1], [ 26,16] } };
    shape "BKSL" { { [ 28,18] }, { [2,1], [ 26,16] } };
    shape "RTRN" { { [ 42,18] }, { [2,1], [ 40,16] } };
    shape "CAPS" { { [ 33,18] }, { [ 28,18] }, { [2,1], [ 26,16] } };
    shape "LFSH" { { [ 42,18] }, { [2,1], [ 40,16] } };
    shape "RTSH" { { [ 52,18] }, { [2,1], [ 50,16] } };
    shape "MODK" { { [ 27,18] }, { [2,1], [ 25,16] } };
    shape "SPCE" { { [133,18] }, { [2,1], [131,16] } };
    shape "KP0"  { { [ 37,18] }, { [2,1], [ 35,16] } };
    shape "KPAD" { { [ 18,37] }, { [2,1], [ 16,35] } };

    shape "LEDS" { cornerRadius= 0, { [ 75 ,20 ] } };
    shape "LED"  { cornerRadius= 0, { [  5,  1 ] } };
    solid "LedPanel" {
	shape= "LEDS";
	top=  52;
	left= 377;
	color= "grey10";
    };

    indicator.onColor= "green";
    indicator.offColor= "green30";
    indicator.top= 67;
    indicator.shape= "LED";
    indicator "Num Lock"     { left= 382; };
    indicator "Caps Lock"    { left= 407; };
    indicator "Scroll Lock"  { left= 433; };
    text.top= 55;
    text.color= "black";
    text "NumLockLabel"		{ left= 378; text="Num\nLock"; };
    text "CapsLockLabel"	{ left= 403; text="Caps\nLock"; };
    text "ScrollLockLabel"	{ left= 428; text="Scroll\nLock"; };

    section.left= 19;
    row.left= 1;
    key.shape= "NORM";
    key.gap=  1;
    section "Function" {
	top= 52;
	row {
	    top= 1;
	    keys {  { <ESC>, color="grey20" },
		    { <FK01>, 20 }, <FK02>, <FK03>, <FK04>,
		    { <FK05>, 11 }, <FK06>, <FK07>, <FK08>,
		    { <FK09>, 11 }, <FK10>, <FK11>, <FK12>,
		    { <PRSC>, 8 }, <SCLK>, <PAUS> 
	    };
	};
    }; // End of "Function" section

    section "Alpha" {
	top= 91;
	row {
	    top= 1;
	    keys { <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
		   <AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
		   <AE10>, <AE11>, <AE12>,
		   { <BKSP>, "BKSP", color="grey20" }
	    };
	};
	row {
	    top= 20;
	    keys { { <TAB>, "TABK", color="grey20" },
		   <AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
		   <AD11>, <AD12>, { <BKSL>, "BKSL" }
	    };
	};
	row {
	    top= 39;
	    keys { { <CAPS>, "CAPS", color="grey20" },
		   <AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
		   <AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
		   <AC11>, { <RTRN>, "RTRN", color="grey20" }
	    };
	};
	row {
	    top= 58;
	    keys { { <LFSH>, "LFSH", color="grey20" },
		    <AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
		    <AB06>, <AB07>, <AB08>, <AB09>, <AB10>, 
		    { <RTSH>, "RTSH", color="grey20" }
	    };
	};
	row {
	    top= 77;
	    key.shape= "MODK";
	    key.color= "grey20";
	    keys { <LCTL>, { <LALT>, 21 },
		   { <SPCE>, "SPCE", color="white" },
		   <RALT>, { <RCTL>, 21 }
	    };
	};
    }; // End of "Alpha" section

    section "Editing" {
	top= 91;
	left= 312;
	key.color= "grey20";
	row {
	    top= 1;
	    keys { <INS>, <HOME>, <PGUP> };
	};
        row {
	    top= 20;
	    keys { <DELE>, <END>, <PGDN> };
	};
	row {
	    top= 58;
	    left= 20;
	    keys { <UP> };
	};
	row {
	    top= 77;
	    keys { <LEFT>, <DOWN>, <RGHT> };
	};
    }; // End of "Editing" section

    section "Keypad" {
	top= 91;
	left= 376;
	row {
	    top= 1;
	    key.color= "grey20";
	    keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
	};
	row {
	    top= 20;
	    keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
	};
	row {
	    top= 39;
	    keys { <KP4>, <KP5>, <KP6> };
	};
	row {
	    top= 58;
	    keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
	};
	row {
	    top= 77;
	    keys { { <KP0>, "KP0" }, <KPDL> };
	};
    }; // End of "Keypad" section

    alias <AC00> = <CAPS>;
    alias <AA00> = <LCTL>;

}; // End of "default" geometry


// Created by Alexander Pohoyda <alexander.pohoyda@gmx.net>
// Geometry specification for DELL Inspiron keyboard.
// Compatible Models: Inspiron 8000

xkb_geometry "intl" {
    description = "DELL Inspiron 8000 (international layout)";
    width = 287;
    height = 150;
    baseColor = "grey80";
    labelColor = "white";

    shape "ESC"  { cornerRadius = 1, { [18, 12] }, { [1.5, 0], [16.5, 11] } };
    shape "FN0"  { cornerRadius = 1, { [16, 12] }, { [1.5, 0], [14.5, 11] } };
    shape "NORM" { cornerRadius = 1, { [18, 18] }, { [3, 0], [15, 14] } };
    shape "BKSP" { cornerRadius = 1, { [34, 18] }, { [3, 0], [31, 14] } };
    shape "TABK" { cornerRadius = 1, { [27, 18] }, { [3, 0], [24, 14] } };
    shape "CAPS" { cornerRadius = 1, { [31, 18] }, { [3, 0], [28, 14] } };
    shape "LFSH" { cornerRadius = 1, { [23, 18] }, { [3, 0], [20, 14] } };
    shape "RTSH" { cornerRadius = 1, { [48, 18] }, { [3, 0], [45, 14] } };

    shape "SPCE" { cornerRadius = 1, { [92, 18] }, { [3, 0], [89, 14] } };
    shape "ARRS" { cornerRadius = 1, { [17, 13] }, { [2, 1], [15, 12] } };
    shape "RTRN" { cornerRadius = 1, { [25, 0], [25, 37], [4, 37], [4, 18],
                                       [0, 18], [0, 0] },
                                     { [22, 0], [22, 33], [7, 33],
				       [7, 14], [3, 14], [3, 0] } };

    shape "KEYS" { cornerRadius = 1,
                   { [0, 13], [161, 13],
	             [161, 0], [283, 0], [283, 133], [226, 133],
	             [226, 124], [0, 124] } };
    solid "KeyPanel" {
	shape = "KEYS";
	left = 2;
	top = 5;
	color = "black";
    };

    shape "POWER" { cornerRadius = 8, { [16, 16] } };
    solid "PowerButton" {
	shape = "POWER";
	left = 25;
	top = 1;
	color = "grey20";
    };

    shape "POWER1" { cornerRadius = 6, { [12, 12] } };
    solid "PowerButton1" {
	shape = "POWER1";
	left = 27;
	top = 3;
	color = "grey10";
    };

    shape "POWER2" { cornerRadius = 5, { [10, 10] } };
    solid "PowerButton2" {
	shape = "POWER2";
	left = 28;
	top = 4;
	color = "grey20";
    };

    shape "VOL" { cornerRadius = 3, { [6, 6] } };
    solid "VolumeControlUp" {
	shape = "VOL";
	left = 50;
	top = 2;
	color = "grey20";
    };
    solid "VolumeControlDown" {
	shape = "VOL";
	left = 50;
	top = 10;
	color = "grey20";
    };

    shape "VOLBAR" { cornerRadius = 0, { [2, 2] } };
    solid "VolumeControlMiddle" {
	shape = "VOLBAR";
	left = 52;
	top = 8;
	color = "grey20";
    };

    shape "LED"  { cornerRadius = 2, { [3, 3] } };
    indicator.onColor = "green";
    indicator.offColor = "grey10";
    indicator.top = 4;
    indicator.shape = "LED";
    indicator "NumLock"     { left = 74; };
    indicator "CapsLock"    { left = 94; };
    indicator "ScrollLock"  { left = 114; };

    key.gap = 1;
    key.color = "grey60";

    section "Function" {
	left = 2;
	top = 5;
	key.shape = "FN0";
	row {
	    top = 1;
            left = 161;
	    keys {  <MENU>, <PRSC>, <SCLK>, <PAUS> };
	};
	row {
	    top = 14;
	    keys {  { <ESC>, "ESC" },
                    { <FK01>, 3 }, <FK02>, <FK03>, <FK04>,
		    { <FK05>, 3 }, <FK06>, <FK07>, <FK08>,
		    { <FK09>, 3 }, <FK10>, <FK11>, <FK12>
	    };
	};
    }; // End of "Function" section

    section "Control" {
	left = 2;
	top = 109;
	key.shape = "LFSH";
	row {
	    top = 1;
	    keys { { <LCTL>, "TABK" }, { <FN>, "NORM" },
                   { <LWIN>, "NORM" }, <LALT>,
		   { <SPCE>, "SPCE" }, { <RALT>, "NORM" },
                   <RCTL>
	    };
	};
    }; // End of "Control" section

    section "Editing" {
	top = 5;
	left = 233;
        key.shape = "FN0";
	row {
	    top = 1;
	    keys { <INS>, <HOME>, <PGUP> };
	};
        row {
	    top = 14;
	    keys { <DELE>, <END>, <PGDN> };
	};
    }; // End of "Editing" section

    section "Navigation" {
	top = 109;
	left = 229;
	key.shape = "ARRS";
	row {
	    top = 1;
	    left = 18;
	    keys { <UP> };
	};
	row {
	    top = 15;
	    keys { <LEFT>, <DOWN>, <RGHT> };
	};
    }; // End of "Navigation" section

    section "Alpha" {
	left = 2;
	top = 33;
	key.color = "grey60";
	key.shape = "NORM";
	row {
	    top = 1;
	    keys { <AE00>, <AE01>, <AE02>, <AE03>, <AE04>,
		   <AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
		   <AE10>, <AE11>, <AE12>, { <BKSP>, "BKSP" }
	    };
	};
	row {
	    top = 20;
	    keys { { <TAB>, "TABK" },
		   <AD01>, <AD02>, <AD03>, <AD04>, <AD05>, 
		   <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, 
		   <AD11>, <AD12>, { <RTRN>, "RTRN" }
	    };
	};
	row {
	    top = 39;
	    keys { { <CAPS>, "CAPS" },
		   <AC01>, <AC02>, <AC03>, <AC04>, <AC05>, 
		   <AC06>, <AC07>, <AC08>, <AC09>, <AC10>, 
		   <AC11>, <AC12>
	    };
	};
	row {
	    top = 58;
	    keys { { <LFSH>, "LFSH" }, <LSGT>,
		   <AB01>, <AB02>, <AB03>, <AB04>, <AB05>, 
		   <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
		   { <RTSH>, "RTSH" }
	    };
	};
    }; // End of "Alpha" section
    
    shape "STIK" { cornerRadius = 4, { [7, 7] } };
    solid "Stick" {
	color = "blue";
	shape = "STIK";
	top = 85;
	left = 126;
    };
};
