Пример #1
0
        public MainForm()
        {
            InitializeComponent();

            nobg = Image.FromFile(nobgpng);

            // init control lists
            dumbLabels = new List <Label>
            {
                hplabel, cslabel, arlabel, odlabel,
                label2, label4, label5
            };
            diffDisplays = new List <TextBox>
            {
                HPDisplay, CSDisplay, ARDisplay, ODDisplay
            };
            diffSliders = new List <OptionSlider>
            {
                HPSlider, CSSlider, ARSlider, ODSlider
            };

            // load user settings
            if (Directory.Exists(Properties.Settings.Default.SongsFolder))
            {
                userSongsFolder = Properties.Settings.Default.SongsFolder;
            }

            // Init object instances
            osuReader = OsuMemoryReader.Instance.GetInstanceForWindowTitleHint("");
            editor    = new BeatmapEditor(this);

            // Add event handlers (observers)
            editor.StateChanged     += ToggleDumbLabels;
            editor.StateChanged     += ToggleGenerateButton;
            editor.StateChanged     += ToggleHpCsArOdDisplay;
            editor.StateChanged     += ToggleDifficultyDisplay;
            editor.StateChanged     += ToggleBpmUpDown;
            editor.StateChanged     += ToggleBpmDisplay;
            editor.BeatmapSwitched  += UpdateSongDisplay;
            editor.BeatmapModified  += UpdateBpmDisplay;
            editor.BeatmapModified  += UpdateHpCsArOdDisplay;
            editor.BeatmapModified  += UpdateDifficultyDisplay;
            editor.BeatmapModified  += ToggleGenerateButton;
            editor.BeatmapModified  += UpdateBpmUpDown;
            editor.ControlsModified += UpdateLockButtons;
            editor.ControlsModified += UpdateScaleButtons;
            editor.ControlsModified += UpdateChanGePitchButton;

            // need controls to show up as initially disabled
            editor.ForceEventStateChanged();
            editor.ForceEventBeatmapSwitched();
            editor.ForceEventControlsModified();

            BeatmapUpdateTimer.Start();
            OsuRunningTimer.Start();
        }
Пример #2
0
        public MainForm()
        {
            Directory.SetCurrentDirectory(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location));
            InitializeComponent();
            Height = 493;

            // init control lists
            dumbLabels = new List <Label>
            {
                hplabel, cslabel, arlabel, odlabel,
                BpmMultiplierLabel, OriginalBpmLabel, NewBpmLabel
            };
            diffDisplays = new List <TextBox>
            {
                HPDisplay, CSDisplay, ARDisplay, ODDisplay
            };
            diffSliders = new List <OptionSlider>
            {
                HPSlider, CSSlider, ARSlider, ODSlider
            };
            checkControls = new List <OsuCheckBox>
            {
                NoSpinnersCheck, HRCheck, ScaleARCheck, ScaleODCheck, ChangePitchCheck, highQualityMp3Check
            };

            ApplyFonts();

            // load user settings
            if (Directory.Exists(Properties.Settings.Default.SongsFolder))
            {
                userSongsFolder = Properties.Settings.Default.SongsFolder;
            }

            // load hotkeys
            Hotkeys = new List <Keys>();
            Hotkeys.Add(Properties.Settings.Default.HotkeyCreateMap);
            Hotkeys.Add(Properties.Settings.Default.HotkeyProfile1);
            Hotkeys.Add(Properties.Settings.Default.HotkeyProfile2);
            Hotkeys.Add(Properties.Settings.Default.HotkeyProfile3);
            Hotkeys.Add(Properties.Settings.Default.HotkeyProfile4);

            // Init object instances
            osuReader = OsuMemoryReader.Instance.GetInstanceForWindowTitleHint("");
            editor    = new BeatmapEditor(this);

            // Add event handlers (observers)
            editor.StateChanged     += ToggleDumbLabels;
            editor.StateChanged     += TogglePrettyButtons;
            editor.StateChanged     += ToggleHpCsArOdDisplay;
            editor.StateChanged     += ToggleBpmInputControls;
            editor.StateChanged     += ToggleBpmDisplay;
            editor.StateChanged     += ToggleLockButtons;
            editor.StateChanged     += UpdateProfiles;
            middlePanel.MaximumSize  = new Size(999, 999);
            BottomPanel.MaximumSize  = new Size(999, 999);
            editor.StateChanged     += RearrangeLayout;
            editor.BeatmapSwitched  += UpdateSongDisplay;
            editor.BeatmapModified  += UpdateBpmDisplay;
            editor.BeatmapModified  += UpdateHpCsArOdDisplay;
            editor.BeatmapModified  += UpdateDifficultyDisplay;
            editor.BeatmapModified  += TogglePrettyButtons;
            editor.BeatmapModified  += UpdateRateInputControls;
            editor.ControlsModified += UpdateLockButtons;
            editor.ControlsModified += UpdateCheckBoxes;
            editor.ControlsModified += UpdateProfiles;

            // Install keyboard hooks
            // Notice: The only purpose of the keyboard hook is for shortcuts. Nothing else!
            ApplyHotkeys();

            // need controls to show up as initially disabled
            editor.ForceEventStateChanged();
            editor.ForceEventBeatmapSwitched();
            editor.ForceEventControlsModified();

            BeatmapUpdateTimer.Start();
            OsuRunningTimer.Start();
            formAnimationTimer.Start();

            Focus();
#if DEBUG
            //spectrogramButton_Click(this, EventArgs.Empty);
#endif
        }
Пример #3
0
        //[DllImport("kernel32.dll", SetLastError = true)]
        //[return: MarshalAs(UnmanagedType.Bool)]
        //static extern bool AllocConsole();
        #endregion

        public MainForm()
        {
            InitializeComponent();

            nobg = Image.FromFile(nobgpng);

            // init control lists
            dumbLabels = new List <Label>
            {
                hplabel, cslabel, arlabel, odlabel,
                BpmMultiplierLabel, OriginalBpmLabel, NewBpmLabel
            };
            diffDisplays = new List <TextBox>
            {
                HPDisplay, CSDisplay, ARDisplay, ODDisplay
            };
            diffSliders = new List <OptionSlider>
            {
                HPSlider, CSSlider, ARSlider, ODSlider
            };
            checkControls = new List <OsuCheckBox>
            {
                NoSpinnersCheck, HRCheck, ScaleARCheck, ScaleODCheck, ChangePitchCheck
            };

            ApplyFonts();

            // load user settings
            if (Directory.Exists(Properties.Settings.Default.SongsFolder))
            {
                userSongsFolder = Properties.Settings.Default.SongsFolder;
            }

            // Init object instances
            osuReader = OsuMemoryReader.Instance.GetInstanceForWindowTitleHint("");
            editor    = new BeatmapEditor(this);

            // Add event handlers (observers)
            editor.StateChanged     += ToggleDumbLabels;
            editor.StateChanged     += TogglePrettyButtons;
            editor.StateChanged     += ToggleHpCsArOdDisplay;
            editor.StateChanged     += ToggleDifficultyDisplay;
            editor.StateChanged     += ToggleBpmInputControls;
            editor.StateChanged     += ToggleBpmDisplay;
            editor.StateChanged     += ToggleLockButtons;
            editor.BeatmapSwitched  += UpdateSongDisplay;
            editor.BeatmapModified  += UpdateBpmDisplay;
            editor.BeatmapModified  += UpdateHpCsArOdDisplay;
            editor.BeatmapModified  += UpdateDifficultyDisplay;
            editor.BeatmapModified  += TogglePrettyButtons;
            editor.BeatmapModified  += UpdateRateInputControls;
            editor.ControlsModified += UpdateLockButtons;
            editor.ControlsModified += UpdateChecks;

            // need controls to show up as initially disabled
            editor.ForceEventStateChanged();
            editor.ForceEventBeatmapSwitched();
            editor.ForceEventControlsModified();

            // Install keyboard hooks
            // (note! this is only for the create map hotkey!!)
            kbhook.HookedKeys.Add(Keys.X);
            kbhook.KeyDown += new KeyEventHandler(CreateMapHotkeyHandler);

            BeatmapUpdateTimer.Start();
            OsuRunningTimer.Start();

            this.Focus();
        }