Customise NSPathControl

1.4k Views Asked by At

I would like to make a custom NSPathControl. NSPathCell has the method + pathComponentCellClass, where you can return the custom class of the component cells. I have a NSPathComponentCell subclass, which I return right there, but it doesn't work. The method does not get called. Why?

In the documentation is says:

Subclasses can override this method to return a custom cell class that is automatically used. By default, the method returns [NSPathComponentCell class], or a specialized subclass thereof.

If this is wrong, is there another way to customise NSPathControl?

3

There are 3 best solutions below

0
IluTov On BEST ANSWER

I found the solution and posted it on github. I subclassed from NSPathControl. It's pretty simple actually.

0
Ken Thomases On

I have found that the component cell class is archived by IB. So, if a path control is set up in IB, it won't use your override of +pathComponentCellClass unless and until you change its URL after loading the NIB. There may be other changes that provoke it, too, like setting the path style.

0
Nuzhdin Vladimir On

Have you tried to modify NSPathControlItem/attributedTitle:

(Limitation: macOS 10.10+)