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?

有帮助吗?

解决方案

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

其他提示

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.

Have you tried to modify NSPathControlItem/attributedTitle:

(Limitation: macOS 10.10+)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top