diff --git a/modules/gui/pymod/scene/color_options_widget.py b/modules/gui/pymod/scene/color_options_widget.py
index 13e33f7c68c52e17e858d5e8d0aa356a8433c08c..1d8e95cf6ec5ff9402daec6b917dcc5ea2d06742 100644
--- a/modules/gui/pymod/scene/color_options_widget.py
+++ b/modules/gui/pymod/scene/color_options_widget.py
@@ -146,7 +146,10 @@ class ByElementWidget(QtGui.QWidget):
       
   def ChangeViewColor(self, entity, view):
     if isinstance(entity, gfx.Entity) and isinstance(view, mol.EntityView):
-      beco=gfx.ByElementColorOp(mol.QueryViewWrapper(view))
+      if self.parent_.GetCarbonsOnly():
+        beco=gfx.ByElementColorOp(mol.QueryViewWrapper(mol.Query("ele=C"), view))
+      else:
+        beco=gfx.ByElementColorOp(mol.QueryViewWrapper(view))
       entity.Apply(beco)
       
   def GetText(self):
@@ -185,7 +188,10 @@ class ByChainWidget(QtGui.QWidget):
       
   def ChangeViewColor(self, entity, view):
     if isinstance(entity, gfx.Entity) and isinstance(view, mol.EntityView):
-      bco=gfx.ByChainColorOp(mol.QueryViewWrapper(view))
+      if self.parent_.GetCarbonsOnly():
+        bco=gfx.ByChainColorOp(mol.QueryViewWrapper(mol.Query("ele=C"),view))
+      else:
+        bco=gfx.ByChainColorOp(mol.QueryViewWrapper(view))
       entity.Apply(bco)
       
   def GetText(self):
@@ -234,7 +240,10 @@ class ByEntityWidget(QtGui.QWidget):
      
   def ChangeViewColor(self, entity, view):
     if isinstance(entity, gfx.Entity) and isinstance(view, mol.EntityView):
-      bco=gfx.ByChainColorOp(mol.QueryViewWrapper(view))
+      if self.parent_.GetCarbonsOnly():
+        bco=gfx.ByChainColorOp(mol.QueryViewWrapper(mol.Query("ele=C"),view))
+      else:
+        bco=gfx.ByChainColorOp(mol.QueryViewWrapper(view))
       entity.Apply(bco)
       
   def GetText(self):
diff --git a/modules/gui/pymod/scene/gradient_editor_widget.py b/modules/gui/pymod/scene/gradient_editor_widget.py
index 34c11a24ac0d70b2a2026308365ad8f351a64005..ee61e2721ab80a2f5c80692f91d8be861356fb81 100644
--- a/modules/gui/pymod/scene/gradient_editor_widget.py
+++ b/modules/gui/pymod/scene/gradient_editor_widget.py
@@ -90,7 +90,10 @@ class GradientEditor(QtGui.QWidget):
 
   def ChangeViewColor(self, entity, view):
     if isinstance(entity, gfx.Entity) and isinstance(view, mol.EntityView):
-      glco=gfx.GradientLevelColorOp(mol.QueryViewWrapper(view),self.props[self.prop_combo_box_.currentIndex()],self.gradient_edit_.GetGfxGradient(),mol.Prop.Level.UNSPECIFIED)
+      if self.parent_.GetCarbonsOnly():
+        glco=gfx.GradientLevelColorOp(mol.QueryViewWrapper(mol.Query("ele=C"),view),self.props[self.prop_combo_box_.currentIndex()],self.gradient_edit_.GetGfxGradient(),mol.Prop.Level.UNSPECIFIED)
+      else:
+        glco=gfx.GradientLevelColorOp(mol.QueryViewWrapper(view),self.props[self.prop_combo_box_.currentIndex()],self.gradient_edit_.GetGfxGradient(),mol.Prop.Level.UNSPECIFIED)
       entity.Apply(glco)
       
 #Gradient Preview
diff --git a/modules/gui/pymod/scene/uniform_color_widget.py b/modules/gui/pymod/scene/uniform_color_widget.py
index db8e5346f3276fac962da07868670c88149e2f88..66461dcff9c391e926e47d77eaa1458fb1f1ce63 100644
--- a/modules/gui/pymod/scene/uniform_color_widget.py
+++ b/modules/gui/pymod/scene/uniform_color_widget.py
@@ -97,7 +97,10 @@ class UniformColorWidget(QtGui.QWidget):
   def ChangeViewColor(self, entity, view):
     if isinstance(entity, gfx.Entity) and isinstance(view, mol.EntityView):
       gfx_color = self.color_select_widget_.GetGfxColor()
-      ufco=gfx.UniformColorOp(mol.QueryViewWrapper(view),gfx_color)
+      if self.parent_.GetCarbonsOnly():
+        ufco=gfx.UniformColorOp(mol.QueryViewWrapper(mol.Query("ele=C"), view),gfx_color)
+      else:
+        ufco=gfx.UniformColorOp(mol.QueryViewWrapper(view),gfx_color)
       entity.Apply(ufco)
     
   def resizeEvent(self, event):