Example #1
0
static void OnAirspaceListEnter(WindowControl * Sender, 
				WndListFrame::ListInfo_t *ListInfo) {
  (void)Sender;
  ItemIndex = ListInfo->ItemIndex + ListInfo->ScrollIndex;
  if (ItemIndex>=AIRSPACECLASSCOUNT) {
    ItemIndex = AIRSPACECLASSCOUNT-1;
  }
  if (ItemIndex>=0) {

    if (colormode) {
      int c = dlgAirspaceColoursShowModal();
      if (c>=0) {
	MapWindow::iAirspaceColour[ItemIndex] = c; 
	SetRegistryColour(ItemIndex,MapWindow::iAirspaceColour[ItemIndex]);
	changed = true;
      }
      int p = dlgAirspacePatternsShowModal();
      if (p>=0) {
	MapWindow::iAirspaceBrush[ItemIndex] = p; 
	SetRegistryBrush(ItemIndex,MapWindow::iAirspaceBrush[ItemIndex]);
	changed = true;
      }
    } else {
      int v = (MapWindow::iAirspaceMode[ItemIndex]+1)%4;
      MapWindow::iAirspaceMode[ItemIndex] = v;
      //  wAirspaceList->Redraw();
      SetRegistryAirspaceMode(ItemIndex);
      changed = true;
    }
  }
}
Example #2
0
static void OnAirspaceListEnter(WindowControl * Sender,
				WndListFrame::ListInfo_t *ListInfo) {
  (void)Sender;
  ItemIndex = ListInfo->ItemIndex + ListInfo->ScrollIndex;
  if (ItemIndex>=AIRSPACECLASSCOUNT) {
    ItemIndex = AIRSPACECLASSCOUNT-1;
  }
  if (ItemIndex>=0) {

    if (colormode) {
      int c = dlgAirspaceColoursShowModal();
      if (c>=0) {
	XCSoarInterface::SetSettingsMap().iAirspaceColour[ItemIndex] = c;
	SetRegistryColour(ItemIndex,
                          XCSoarInterface::SettingsMap().iAirspaceColour[ItemIndex]);
	changed = true;
      }
      int p = dlgAirspacePatternsShowModal();
      if (p>=0) {
	XCSoarInterface::SetSettingsMap().iAirspaceBrush[ItemIndex] = p;
	SetRegistryBrush(ItemIndex,
                         XCSoarInterface::SettingsMap().iAirspaceBrush[ItemIndex]);
	changed = true;
      }
    } else {
      int v = (XCSoarInterface::SettingsComputer().iAirspaceMode[ItemIndex]+1)%4;
      XCSoarInterface::SetSettingsComputer().iAirspaceMode[ItemIndex] = v;
      Profile::SetRegistryAirspaceMode(ItemIndex);
      changed = true;
    }
  }
}