: 'angle-tool',
    component: AngleMeasurementTool,
  },
  {
    name: '2D Ruler',
    icon: 'length-tool',
    component: RulerMeasurementTool,
  },
  {
    name: '2D Text',
    icon: 'text-tool',
    component: TextAnnotationTool,
  },
];

// ----------------------------------------------------------------------------

const ComponentToTool = {};
ToolList.forEach((tool) => {
  ComponentToTool[tool.component.name] = tool;
});

// ----------------------------------------------------------------------------

export default {
  name: 'MeasurementTools',
  props: ['enabled'],
  components: {
    PopUp,
    PalettePicker,
    SvgIcon,
    SourceSelect,
  },
  data() {
    return {
      uiToolList: ToolList,
      activeToolIndex: undefined,
      activeToolId: -1,
      targetPid: -1,
      pendingTool: null,
      palette: WIDGETS,
    };
  },
  computed: {
   ...mapState('widgets', ['measurements']),
    tools() {
      // format:
      // { name:str, component:str, data:{} }
      let tools = [];
      if (this.measurements[this.targetPid]) {
        const measurements = this.measurements[this.targetPid];
        tools = tools.concat(
          measurements.map((m) => ({
           ...ComponentToTool[m.componentName],
            data: m.data,
          }))
        );
      }

      if (this.pendingTool) {
        tools = tools.concat(this.pendingTool);
      }

      return tools;
    },
    targetProxy() {
      return this.$proxyManager.getProxyById(this.targetPid);
    },
  },
  watch: {
    enabled(enable) {
      if (enable) {
        this.enableActiveTool();
      } else {
        this.clearActiveTool();
      }
    },
    targetPid() {
      if (this.enabled) {
        this.clearActiveTool();
      }
    },
  },
  methods: {
   ...mapActions('widgets', [
      'addMeasurementTool',
     'removeMeasurementTool',
      'updateMeasurementTool',
    ]),
    setTargetDataset(sourceId) {
      this.targetPid = sourceId;
    },
    toggleActiveTool(toolIndex) {
      if (this.enabled) {
        if (toolIndex === undefined) {
          this.$emit('enable', false);
        } else {
          this.removeTool(this.activeToolIndex);
          this.activeToolIndex = toolIndex;
          this.enableActiveTool();
        }
      } else if (toolIndex!== undefined) {
        this.activeToolIndex = toolIndex;
        this.$emit('enable', true);
      }
    },
    enableActiveTool() {
      if (this.targetPid!== -1 && this.activeToolIndex!== undefined) {
        this.pendingTool = ToolList[this.activeToolIndex];
      }
    },
    clearActiveTool() {
      this.pendingTool = null;
      this.activeToolIndex = undefined;
      this.activeToolId = -1;
    },
    removeTool(index) {
      if (this.pendingTool && index === this.tools.length - 1) {
        this.pendingTool = null;
        this.clearActiveTool();
      } else {
        this.removeMeasurementTool({
          datasetId: this.targetPid,
          index,
        });
      }
    },
    saveToolData(toolIndex, data) {
      // If pendingTool's data is saved, that means we need to commit
      // pendingTool to the store.
      if (this.pendingTool && toolIndex === this.tools.length - 1) {
        this.addMeasurementTool({
          datasetId: this.targetPid,
          componentName: this.pendingTool.component.name,
          data,
        });
        this.pendingTool = null;
        this.$emit('enable', false);
      } else {
        this.updateMeasurementTool({
          datasetId: this.targetPid,
          index: toolIndex,
          data,
        });
      }
    },
  },
};
Farrell Family (father Eddie, son Frankie, daughter Catie) are based in East Cornwall and Plymouth, and sing and play material from the English, Scottish, Irish and more recently the Cornish radical traditions.
Their first CD “The William Morris Songbook” (2014) is their tribute to the life and work of the great nineteenth century designer and political radical William Morris, and is a collection of radical songs, some traditional, some modern, all of which deal with social and green issues, from the fourteenth to the twenty-first centuries.
They also write their own topical material dealing with contemporary red/green topics such as the spread of solar farms and wind turbines, and the crisis in the NHS.
Expect also a few Phil Ochs numbers!
Artistic freedom needs to be explicitly recognised alongside media freedom, as an integral part of freedom of expression.
Ahead of the 35th UPR session, Freemuse filed five reports to the UN’s official mechanism for reviewing the human rights record of all member states.
In 2019, LGBTI artists and art continue to be at greater risk when it comes to expressing themselves artistically.
Censorship due to nudity has become an issue amongst digital spaces making it harder for artists to share their work.
A Montreal museum's social media ads featuring Pablo Picasso masterpieces were rejected by Facebook because of the site's nudity policy.
Interested in learning more about boiler services? Click here.
It's coming to that time of year when homeowners are turning their boilers back on for the winter. Before you flip the switch, perform this boiler check list to make sure your boiler is ready for a winter of hard work.
• If you lowered your boiler flame for the summer, change the setting back to high.
• Make sure all valves are open.
• Test your sump pump by pouring water into it.
• Calibrate all operating controls.
• Clean tubes, fuel oil strainers, and steam traps.
• Check all gauges and switches to make sure they're working properly.
• Check for leaks or dirt around the boiler; they could indicate a problem.
• Inspect the thermostat for proper operation.
• Oil motors, if necessary.
• Look for cracks in the heat exchanger. If there are cracks, they can introduce carbon monoxide into the home.
Do you have any tips for preparing your heating system for the winter?Approximately 40 percent of people with diabetes develop nephropathy,
the leading cause of kidney failure
SAN DIEGO – June 12, 2005 – Eli Lilly and Company today announced encouraging results from a one-year, pilot study examining the effect of ruboxistaurin mesylate (proposed brand name ArxxantTM) in persons with type 2 diabetes and kidney disease (also known as “diabetic nephropathy”). Data reported at the American Diabetes Association (ADA) Annual Meeting in San Diego showed that ruboxistaurin, in addition to treatment with angiotensin converting enzyme inhibitors (ACE inhibitors), angiotensin receptor blockers (ARBs), or both, significantly reduced albuminuria (an indicator of diabetic kidney damage ) by 24%, compared to a nonsignificant 9% reduction in patients taking placebo.
“The results from this study are very encouraging for people with type 2 diabetes who may suffer from diabetic nephropathy,” said Katherine R. Tuttle, MD, lead investigator of the study, from Providence Medical Research Center and The Heart Institute of Spokane, Spokane, Wash. “The significant improvement of albuminuria with ruboxistaurin in patients already treated with ACE inhibitors or ARBs indicates that the drug may be helpful in further slowing the progression of kidney disease, thereby delaying the incidence of kidney failure and related complications.”
Albuminuria is a condition in which the kidneys lose increased amounts of albumin (a protein marker of kidney damage) into the urine, and is considered the first clinical indication of diabetic nephropathy. Diabetic nephropathy is a diabetic microvascular complication (DMC) caused by damage to the small blood vessels in the kidneys. It occurs in approximately 40 percent of people with diabetes and is the leading cause of kidney failure in the United States and the developed world.
Reductions in albuminuria with ruboxistaurin were seen after one month of treatment and remained consistent throughout the study. In addition, patients taking placebo experienced a significant loss of kidney function after 1 year, however kidney function was stable in patients treated with ruboxistaurin.
Ruboxistaurin is a specific protein kinase C beta-inhibitor (PKC???), the first of a new class of diabetes treatments in development to treat diabetic microvascular complications (DMCs) associated with type 1 and type 2 diabetes. DMCs result from damage to small blood vessels in the