001 package net.minecraft.src;
002
003 import cpw.mods.fml.common.Side;
004 import cpw.mods.fml.common.asm.SideOnly;
005 import java.awt.Component;
006 import org.lwjgl.input.Mouse;
007
008 @SideOnly(Side.CLIENT)
009 public class MouseHelper
010 {
011 private final Component windowComponent;
012 private final GameSettings field_85184_d;
013
014 /** Mouse delta X this frame */
015 public int deltaX;
016
017 /** Mouse delta Y this frame */
018 public int deltaY;
019
020 public MouseHelper(Component par1Component, GameSettings par2GameSettings)
021 {
022 this.windowComponent = par1Component;
023 this.field_85184_d = par2GameSettings;
024 }
025
026 /**
027 * Grabs the mouse cursor it doesn't move and isn't seen.
028 */
029 public void grabMouseCursor()
030 {
031 Mouse.setGrabbed(true);
032 this.deltaX = 0;
033 this.deltaY = 0;
034 }
035
036 /**
037 * Ungrabs the mouse cursor so it can be moved and set it to the center of the screen
038 */
039 public void ungrabMouseCursor()
040 {
041 Mouse.setCursorPosition(this.windowComponent.getWidth() / 2, this.windowComponent.getHeight() / 2);
042 Mouse.setGrabbed(false);
043 }
044
045 public void mouseXYChange()
046 {
047 this.deltaX = Mouse.getDX();
048 this.deltaY = Mouse.getDY();
049 }
050 }