private void DoConditionsEditor(Rect rect, ConditionsController conditions)
        {
            var hasConditions = conditions.getBlocksCount() > 0;

            if (GUI.Button(rect, hasConditions ? conditionsTex : noConditionsTex, noBackgroundSkin.button))
            {
                ConditionEditorWindow.ShowAtPosition(conditions, new Rect(rect.x + rect.width, rect.y, 0, 0));
            }
        }
 protected void check(ConditionsController conditions, string desc)
 {
     for (int i = 0; i < conditions.getBlocksCount(); i++)
     {
         for (int j = 0; j < conditions.getConditionCount(i); j++)
         {
             Dictionary <string, string> properties = conditions.getCondition(i, j);
             if (properties.ContainsKey(ConditionsController.CONDITION_ID))
             {
                 check(properties[ConditionsController.CONDITION_ID], desc + " (ID)");
             }
             if (properties.ContainsKey(ConditionsController.CONDITION_STATE))
             {
                 // CHECK!!!
                 check(properties[ConditionsController.CONDITION_STATE], desc + " ()");
             }
             if (properties.ContainsKey(ConditionsController.CONDITION_VALUE))
             {
                 // CHECK!!!
                 check(properties[ConditionsController.CONDITION_VALUE], desc + " ()");
             }
         }
     }
 }