Change symbols outline color without losing fill pattern
Select your symbols by either clicking them individually whilst holding Ctrl or click the uppermost symbol, hold Shift and click the last symbol you want selected. Then go to Symbol > Change
:
Then select your fill and set the border style:
When you click OK
, the selected symbols should be updated with the new border properties:
EDIT:
To keep your pattern fills, a possible workaround is after you have categorised your layer, change it to Rule-based. This will create expressions for each of your symbol which should match the categorised version. Then create a new rule which has a transparent fill and set your border with the required settings and with no filter/rule:
You should now have features which contain your pattern fill but with the border you have set:
This is a bit of python that does the trick. That layer-renderer-symbol-symbollayer thing is a bit weird at first sight, but ok.
from PyQt4.QtGui import QColor
r = iface.activeLayer().rendererV2()
for s in r.symbols():
s.symbolLayers()[0].setOutlineColor(QColor('#ffff00'))
iface.mapCanvas().refresh()
Just tested this on the console and it works for the first time, but trying it a second time leeds to