private void mainCanvas_MouseUp(object sender, MouseButtonEventArgs e) { Point clickPosition = e.GetPosition(mainCanvas); GraphicalTemperatureIndication selectedObject = findSelectedObject(clickPosition); currentSelectedObject = selectedObject; }
private void displayIndication(int posX, int posY) { GraphicalTemperatureIndication selectedIndication = graphicalTemperatureIndications[posX, posY]; SolidColorBrush solidColorBrush = new SolidColorBrush(); solidColorBrush.Color = colors[ConvertFromAnalogToRGBValue(selectedIndication.value, 0, 255, 0, 764)]; selectedIndication.rectangle.Fill = solidColorBrush; mainCanvas.Children.Remove(selectedIndication.textBlock); selectedIndication.textBlock = Text(posX * 41 + 7, posY * 41 + 12, selectedIndication.value.ToString(), Color.FromRgb(0, 0, 0)); mainCanvas.Children.Add(selectedIndication.textBlock); }
private Rectangle drawRectangle(int posX, int posY, GraphicalTemperatureIndication graphicalTemperatureIndication) { Rectangle rectangle = new Rectangle(); Canvas.SetTop(rectangle, posY * 41); Canvas.SetLeft(rectangle, posX * 41); rectangle.Width = 40; rectangle.Height = 40; graphicalTemperatureIndication.minPos = new Point(posX * 41, posY * 41); graphicalTemperatureIndication.maxPos = new Point(posX * 41 + 40, posY * 41 + 40); SolidColorBrush solidColorBrush = new SolidColorBrush(); solidColorBrush.Color = Color.FromRgb(0, 0, 0); rectangle.Fill = solidColorBrush; mainCanvas.Children.Add(rectangle); return(rectangle); }
public MainWindow() { InitializeComponent(); for (int i = 0; i <= 7; i++) { for (int j = 0; j <= 7; j++) { graphicalTemperatureIndications[j, i] = new GraphicalTemperatureIndication(); graphicalTemperatureIndications[j, i].rectangle = drawRectangle(j, i, graphicalTemperatureIndications[j, i]); graphicalTemperatureIndications[j, i].posX = j; graphicalTemperatureIndications[j, i].posY = i; } } generatePalette(); foreach (GraphicalTemperatureIndication graphicalTemperatureIndication in graphicalTemperatureIndications) { displayIndication(graphicalTemperatureIndication.posX, graphicalTemperatureIndication.posY); } }