// $Xorg: mousekeys,v 1.3 2000/08/17 19:54:48 cpqbld Exp $
// 
partial default xkb_types "default" {

    type "FIVE_LEVEL_SEMIALPHABETIC" {
	modifiers = Shift+NumLock+Lock+LevelThree;

	map[None] = Level1;
	map[Shift] = Level2;
	preserve[Lock] = Lock;
	map[LevelThree] = Level3;
	map[Shift+LevelThree] = Level4;
	map[Lock+LevelThree] =  Level3;
        map[Lock+Shift+LevelThree] = Level4;
	preserve[Lock+LevelThree] = Lock;
	preserve[Lock+Shift+LevelThree] = Lock;

        map[NumLock] = Level5;
        preserve[NumLock] = NumLock;

	level_name[Level1] = "Base";
	level_name[Level2] = "Shift";
	level_name[Level3] = "Alt Base";
	level_name[Level4] = "Shift Alt";
        level_name[Level5] = "Number";
    };

    type "EIGHT_LEVEL_NUMLOCK" {
	modifiers = Shift+NumLock+LevelThree;

	map[None] = Level1;
	map[Shift] = Level2;
//	preserve[Lock] = Lock;
	map[LevelThree] = Level3;
	map[Shift+LevelThree] = Level4;
//	map[Lock+LevelThree] =  Level3;
//      map[Lock+Shift+LevelThree] = Level4;
//	preserve[Lock+LevelThree] = Lock;
//	preserve[Lock+Shift+LevelThree] = Lock;

        map[NumLock] = Level5;
        preserve[NumLock] = NumLock;
	map[NumLock+Shift] = Level6;
	map[NumLock+LevelThree] = Level7;
	map[NumLock+Shift+LevelThree] = Level8;
//	map[NumLock+Lock+Shift+LevelThree] = Level8;
//	preserve[NumLock+Lock] = Lock;
//	preserve[NumLock+Lock+LevelThree] = Lock;
//	preserve[NumLock+Lock+Shift+LevelThree] = Lock;

	level_name[Level1] = "Base";
	level_name[Level2] = "Shift";
	level_name[Level3] = "Alt Base";
	level_name[Level4] = "Shift Alt";
        level_name[Level5] = "Number";
	level_name[Level6] = "Shift Number";
	level_name[Level7] = "Alt Number";
	level_name[Level8] = "Shift Alt Number";
    };

};

