예제 #1
0
 public TimeLineDrawParameter(Graphics graphics, int width, int height, Image backGroundImage, PPDSheet sheet, float bpm,
                              float bpmStart, int interval, DisplayLineMode displayMode, int leftOffset, float currentTime, DisplayBeatType beatType)
 {
     Graphics        = graphics;
     Width           = width;
     Height          = height;
     BackGroundImage = backGroundImage;
     Sheet           = sheet;
     BPM             = bpm;
     BPMStart        = bpmStart;
     Interval        = interval;
     DisplayMode     = displayMode;
     LeftOffset      = leftOffset;
     CurrentTime     = currentTime;
     BeatType        = beatType;
     BeatSplitCount  = (int)beatType + 2;
 }
예제 #2
0
        private void ChangeDisplayData()
        {
            LayerDisplay sld = SelectedLayer;

            if (sld != null && (sld != lastld || sld.PPDData.BPM != lastBPM || sld.PPDData.BPMStart != lastBPMOffset ||
                                sld.PPDData.DisplayWidth != lastDisplayWidth || sld.PPDData.BeatType != lastBeatType))
            {
                WindowUtility.Seekmain.SetSelectedSheetInfo(sld.PPDData.BPM, sld.PPDData.BPMStart, sld.PPDData.DisplayWidth,
                                                            sld.PPDData.DisplayMode, sld.PPDData.BeatType);
                lastld                              = sld;
                lastBPM                             = sld.PPDData.BPM;
                lastBPMOffset                       = sld.PPDData.BPMStart;
                lastDisplayWidth                    = sld.PPDData.DisplayWidth;
                lastDisplayMode                     = sld.PPDData.DisplayMode;
                lastBeatType                        = sld.PPDData.BeatType;
                WindowUtility.MainForm.BPM          = lastBPM;
                WindowUtility.MainForm.BPMOffset    = lastBPMOffset;
                WindowUtility.MainForm.DisplayWidth = lastDisplayWidth;
                WindowUtility.MainForm.DisplayMode  = lastDisplayMode;
                WindowUtility.MainForm.BeatType     = lastBeatType;
            }
        }
예제 #3
0
        public void AddLayer(string name, float bpm, float bpmoffset, int displaywidth, bool visible, DisplayLineMode displayMode, DisplayBeatType beatType)
        {
            var ld = CreateLayerDisplay(name, bpm, bpmoffset, displaywidth, displayMode, beatType);

            ld.DisplayVisible = visible;
            AddLayerToPanel(ld);
        }
예제 #4
0
        private LayerDisplay CreateLayerDisplay(string layername, float bpm, float bpmoffset, int displaywidth, DisplayLineMode displayMode, DisplayBeatType beatType)
        {
            var ld = new LayerDisplay();

            ld.SetLang();
            ld.DisplayName                 = layername;
            ld.BPM                         = BPMtext + " " + bpm;
            ld.PPDData.BPM                 = bpm;
            ld.PPDData.BPMStart            = bpmoffset;
            ld.PPDData.DisplayWidth        = displaywidth;
            ld.PPDData.DisplayName         = layername;
            ld.PPDData.DisplayMode         = displayMode;
            ld.PPDData.BeatType            = beatType;
            ld.MouseDown                  += ld_MouseDown;
            ld.MouseMove                  += ld_MouseMove;
            ld.MouseUp                    += ld_MouseUp;
            ld.SelectStateChanged         += ld_SelectStateChanged;
            ld.Deleted                    += ld_Deleted;
            ld.Duplicated                 += ld_Duplicated;
            ld.VisibleStateChanged        += ld_VisibleStateChanged;
            ld.PPDData.DisplayDataChanged += PPDData_DisplayDataChanged;
            ld.PPDData.CommandChanged     += PPDData_CommandChanged;
            return(ld);
        }