Support Board
Date/Time: Mon, 10 Feb 2025 01:39:04 +0000
[Programming Help] - Retracement Levels not displaying on custom price projection
View Count: 641
[2020-08-19 20:19:44] |
User895355 - Posts: 55 |
In my custom price projection (which is a control button). On SC_POINTER_BUTTON_DOWN, the tool starts the draw, then on SC_POINTER_MOVE, the tool updates it's values. When I SC_POINTER_BUTTON_DOWN again, I would like the tool to draw the projected lines. (Custom RetracementLevels). This doesn't happen. My code below; /** menu code not displayed */
s_UseTool Tool; //Tool.Clear(); if (r_LineNumber != 0) Tool.LineNumber = r_LineNumber; Tool.ChartNumber = sc.ChartNumber; Tool.DrawingType = DRAWING_PRICE_PROJECTION; Tool.LineStyle = LINESTYLE_DASH; Tool.Color = RGB(255, 0, 255); // Magenta Tool.AddMethod = UTAM_ADD_OR_ADJUST; Tool.ShowPrice = 1; Tool.ShowPercent = 1; Tool.RoundToTickSize = 0; Tool.TextAlignment = DT_VCENTER; // label vertical alignment if (sc.MenuEventID != 0) { if (sc.PointerEventType == SC_POINTER_BUTTON_DOWN && sc.BlockChartDrawingSelection == 0) { sc.BlockChartDrawingSelection = 1; Tool.BeginIndex = sc.ActiveToolIndex; Tool.EndIndex = sc.ActiveToolIndex + 10; Tool.BeginValue = sc.ActiveToolYValue; BeginIndex.SetInt(sc.ActiveToolIndex); StopVal.SetFloat(sc.ActiveToolYValue); } else if (sc.PointerEventType == SC_POINTER_BUTTON_DOWN && sc.BlockChartDrawingSelection == 1) { float corridor = StartVal.GetFloat() - StopVal.GetFloat(); float target1 = StartVal.GetFloat() + (corridor) * float(210 * 0.01); float target2 = StartVal.GetFloat() + (corridor) * float(400 * 0.01); Tool.RetracementLevels[0] = StopVal.GetFloat(); Tool.RetracementLevels[1] = StartVal.GetFloat(); Tool.RetracementLevels[2] = target1; Tool.RetracementLevels[3] = target2; sc.BlockChartDrawingSelection = 0; MessageText.Append(MessageText.Format("target1: %f", target1)); } else if (sc.PointerEventType == SC_POINTER_BUTTON_UP) /* MessageText.Append("Pointer Up Event, ") */; else if (sc.PointerEventType == SC_POINTER_MOVE && sc.BlockChartDrawingSelection == 1) { Tool.ThirdIndex = sc.ActiveToolIndex; Tool.ThirdValue = sc.ActiveToolYValue; Tool.EndValue = sc.ActiveToolYValue; StartVal.SetFloat(sc.ActiveToolYValue); } } sc.UseTool(Tool); r_LineNumber = Tool.LineNumber; |
To post a message in this thread, you need to log in with your Sierra Chart account: