(Verdammt - sollte besser im ObjC/Cocoa-Bereich und nicht bei Xcode landen - kann das jmd. bitte verschieben?)
So, jetzt schreibe ich hier auch mal wieder was in diesem ziemlich toten Forum. Immerhin kein Spam diesmal
I beziehe mich z.T. auf: NSBrowser, NSTreeController und NSTreeNode: Der Rateweg zum Ziel...
Ich baue grad nen File-Browser, und wollte es mir einfach machen. Habe einen NSOutlineView mit einem NSTreeController versehen und damit klappt das alles recht gut. Nur den Rechtklick auf ein unselektiertes Item muss man noch besonders behandeln, sonst ist das alles sehr schnörkellos elegant.
Dann fügte ich einen NSTabView hinzu - in einem Tab ist nun der NSOutlineView und in den anderen habe ich einen NSBrowser gelegt. Der NSBrowser soll den selben NSTreeController verwenden. Das geht auch, zumindest für die Anzeige, aber dann bleiben seltsame Effekte:
1. Die Selektion, die der NSTreeController verwaltet, wirkt nur im OutlineView aber nicht im Browser. Dort muss ich dann selbst die Selektion auswerten. Ist das normal, oder habe ich nur ein Binding vergessen? Beim OutlineView braucht es ja offenbar keine gesonderten Bindings, damit das Selection-Handling funktioniert.
2. Ich kann keine Rechtsklicks im NSBrowser abfangen, indem ich eine Subclass von NSBrowser mache und dort z.B. rightMouseDown: oder mouseDown: oder performClick: implementiere - die werden alle nicht aufgerufen (bei der Subclass von NSOutlineView klappt das dagegen) - nur doClick: kommt an. Ist das einfach nur unvollständig / schlecht von Apple implementiert oder mache ich da was falsch?
Ich könnte auch ein Demo-Prj machen, falls das jmd. interessiert. Alles in gutem alten ObjC
So, jetzt schreibe ich hier auch mal wieder was in diesem ziemlich toten Forum. Immerhin kein Spam diesmal

I beziehe mich z.T. auf: NSBrowser, NSTreeController und NSTreeNode: Der Rateweg zum Ziel...
Ich baue grad nen File-Browser, und wollte es mir einfach machen. Habe einen NSOutlineView mit einem NSTreeController versehen und damit klappt das alles recht gut. Nur den Rechtklick auf ein unselektiertes Item muss man noch besonders behandeln, sonst ist das alles sehr schnörkellos elegant.
Dann fügte ich einen NSTabView hinzu - in einem Tab ist nun der NSOutlineView und in den anderen habe ich einen NSBrowser gelegt. Der NSBrowser soll den selben NSTreeController verwenden. Das geht auch, zumindest für die Anzeige, aber dann bleiben seltsame Effekte:
1. Die Selektion, die der NSTreeController verwaltet, wirkt nur im OutlineView aber nicht im Browser. Dort muss ich dann selbst die Selektion auswerten. Ist das normal, oder habe ich nur ein Binding vergessen? Beim OutlineView braucht es ja offenbar keine gesonderten Bindings, damit das Selection-Handling funktioniert.
2. Ich kann keine Rechtsklicks im NSBrowser abfangen, indem ich eine Subclass von NSBrowser mache und dort z.B. rightMouseDown: oder mouseDown: oder performClick: implementiere - die werden alle nicht aufgerufen (bei der Subclass von NSOutlineView klappt das dagegen) - nur doClick: kommt an. Ist das einfach nur unvollständig / schlecht von Apple implementiert oder mache ich da was falsch?
Ich könnte auch ein Demo-Prj machen, falls das jmd. interessiert. Alles in gutem alten ObjC

Apps: apps.tempel.org (Find Any File, iBored, iClip, Prefs Editor)
Blog: http://blog.tempel.org
Über mich: tempel.org/AboutThomasTempelmann
Blog: http://blog.tempel.org
Über mich: tempel.org/AboutThomasTempelmann
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von tempelmann ()