protected override void OnRenderInitialized(RenderGraphics g) { theme = RenderTheme.CreateResourcesForGraphics(g); bmpTracks[Channel.Square1] = g.CreateBitmapFromResource("Square"); bmpTracks[Channel.Square2] = g.CreateBitmapFromResource("Square"); bmpTracks[Channel.Triangle] = g.CreateBitmapFromResource("Triangle"); bmpTracks[Channel.Noise] = g.CreateBitmapFromResource("Noise"); bmpTracks[Channel.DPCM] = g.CreateBitmapFromResource("DPCM"); bmpGhostNote = g.CreateBitmapFromResource("GhostSmall"); seekBarBrush = g.CreateSolidBrush(ThemeBase.SeekBarColor); whiteKeyBrush = g.CreateHorizontalGradientBrush(0, trackNameSizeX, ThemeBase.LightGreyFillColor1, ThemeBase.LightGreyFillColor2); patternHeaderBrush = g.CreateVerticalGradientBrush(0, patternHeaderSizeY, ThemeBase.LightGreyFillColor1, ThemeBase.LightGreyFillColor2); selectedPatternVisibleBrush = g.CreateSolidBrush(Color.FromArgb(64, ThemeBase.LightGreyFillColor1)); selectedPatternInvisibleBrush = g.CreateSolidBrush(Color.FromArgb(32, ThemeBase.LightGreyFillColor1)); seekGeometry = g.CreateConvexPath(new[] { new Point(-headerSizeY / 2, 1), new Point(0, headerSizeY - 2), new Point(headerSizeY / 2, 1) }); }