namespace System.Windows.Forms { public sealed class Cursors { private static Cursor appStarting; private static Cursor arrow; private static Cursor cross; private static Cursor defaultCursor; private static Cursor iBeam; private static Cursor no; private static Cursor sizeAll; private static Cursor sizeNESW; private static Cursor sizeNS; private static Cursor sizeNWSE; private static Cursor sizeWE; private static Cursor upArrow; private static Cursor wait; private static Cursor help; private static Cursor hSplit; private static Cursor vSplit; private static Cursor noMove2D; private static Cursor noMoveHoriz; private static Cursor noMoveVert; private static Cursor panEast; private static Cursor panNE; private static Cursor panNorth; private static Cursor panNW; private static Cursor panSE; private static Cursor panSouth; private static Cursor panSW; private static Cursor panWest; private static Cursor hand; public static Cursor AppStarting => appStarting ??= new Cursor(System.Windows.Input.Cursors.AppStarting, "AppStarting"); public static Cursor Arrow => arrow ??= new Cursor(System.Windows.Input.Cursors.Arrow, "Arrow"); public static Cursor Cross => cross ??= new Cursor(System.Windows.Input.Cursors.Cross, "Cross"); public static Cursor Default => defaultCursor ??= new Cursor(System.Windows.Input.Cursors.Arrow, "Default"); public static Cursor IBeam => iBeam ??= new Cursor(System.Windows.Input.Cursors.IBeam, "IBeam"); public static Cursor No => no ??= new Cursor(System.Windows.Input.Cursors.No, "No"); public static Cursor SizeAll => sizeAll ??= new Cursor(System.Windows.Input.Cursors.SizeAll, "SizeAll"); public static Cursor SizeNESW => sizeNESW ??= new Cursor(System.Windows.Input.Cursors.SizeNESW, "SizeNESW"); public static Cursor SizeNS => sizeNS ??= new Cursor(System.Windows.Input.Cursors.SizeNS, "SizeNS"); public static Cursor SizeNWSE => sizeNWSE ??= new Cursor(System.Windows.Input.Cursors.SizeNWSE, "SizeNWSE"); public static Cursor SizeWE => sizeWE ??= new Cursor(System.Windows.Input.Cursors.SizeWE, "SizeWE"); public static Cursor UpArrow => upArrow ??= new Cursor(System.Windows.Input.Cursors.UpArrow, "UpArrow"); public static Cursor WaitCursor => wait ??= new Cursor(System.Windows.Input.Cursors.Wait, "WaitCursor"); public static Cursor Help => help ??= new Cursor(System.Windows.Input.Cursors.Help, "Help"); public static Cursor HSplit => hSplit ??= GetCursor("hsplit.cur", "HSplit"); public static Cursor VSplit => vSplit ??= GetCursor("vsplit.cur", "VSplit"); public static Cursor NoMove2D => noMove2D ??= new Cursor(System.Windows.Input.Cursors.ScrollAll, "NoMove2D"); public static Cursor NoMoveHoriz => noMoveHoriz ??= new Cursor(System.Windows.Input.Cursors.ScrollWE, "NoMoveHoriz"); public static Cursor NoMoveVert => noMoveVert ??= new Cursor(System.Windows.Input.Cursors.ScrollNS, "NoMoveVert"); public static Cursor PanEast => panEast ??= new Cursor(System.Windows.Input.Cursors.ScrollE, "PanEast"); public static Cursor PanNE => panNE ??= new Cursor(System.Windows.Input.Cursors.ScrollNE, "PanNE"); public static Cursor PanNorth => panNorth ??= new Cursor(System.Windows.Input.Cursors.ScrollN, "PanNorth"); public static Cursor PanNW => panNW ??= new Cursor(System.Windows.Input.Cursors.ScrollNW, "PanNW"); public static Cursor PanSE => panSE ??= new Cursor(System.Windows.Input.Cursors.ScrollSE, "PanSE"); public static Cursor PanSouth => panSouth ??= new Cursor(System.Windows.Input.Cursors.ScrollS, "PanSouth"); public static Cursor PanSW => panSW ??= new Cursor(System.Windows.Input.Cursors.ScrollSW, "PanSW"); public static Cursor PanWest => panWest ??= new Cursor(System.Windows.Input.Cursors.ScrollW, "PanWest"); public static Cursor Hand => hand ??= new Cursor(System.Windows.Input.Cursors.Hand, "Hand"); private static Cursor GetCursor(string resName, string name) { var cursor = ResourceLoader.GetCursor(resName); cursor.name = name; return cursor; } } }