[CocoaExt] ContextMenu in TreeView

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

 

FWeinb

ehemals "ich"

Betreff: [CocoaExt] ContextMenu in TreeView

BeitragSo, Apr 25, 2010 11:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe eine TreeView welche ich mit der Funktion CocoaCreateTreeView erzeugt habe, diese Feuer das Event EVENT_GADGETMENU, wenn ein Rechtsklick auf ihr ausgeübt wurde. Meine Frage ist jetzt wie ich ein Context menu an der Zeiger Position realisieren kann. Das es geht beweist, das verhalten der ChaosIDE da ist es auch möglich ein Context Menu in einer TreeView zu haben.

Hier der Code:
BlitzMax: [AUSKLAPPEN]
SuperStrict
Import cocoaext.gui
CocoaRegisterEventCallback(NSApp, EVENT_APPTERMINATE, AppTerminate_CallBack)
Global MyWindow:TGadget = CocoaCreateWindow(AppTitle, NSCenter, NSCenter, 700, 500, Null, NSWindowDocument,NSWindowHasTitlebar|NSWindowisResizable)
CocoaRegisterEventCallback(MyWindow, EVENT_WINDOWCLOSE, AppTerminate_CallBack)
SetMinWindowSize(MyWindow, 700,500)

Global MySplitView:TGadget = CocoaCreateSplitView(0,0,700,500,200,MyWindow,NSVertical|NSSplitViewAutoSaveSettings,150)

Global TreeViewPanle:TGadget = CocoaGetSplitViewFirstView(MySplitView)

Global InfoPanle:TGadget = CocoaGetSplitViewSecondView(MySplitView)


Global MyTreeView:TGadget = CocoaCreateTreeView(0,0,GadgetWidth(TreeViewPanle),500, TreeViewPanle)
SetGadgetColor MyTreeView, 223,228,234
SetGadgetLayout MyTreeView, 1,1,1,1
CocoaRegisterEventCallback(MyTreeView, EVENT_GADGETMENU, OpenMenu_CallBack)

Global RootNode:TGadget = TreeViewRoot(MyTreeView)

NSApp.start()

Function OpenMenu_CallBack(Event:TEvent)
'Öffnen des Context Menüs, aber wie ??
End Function

Function AppTerminate_CallBack(Event:TEvent)
End
End Function
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

d-bug

BeitragSo, Apr 25, 2010 11:53
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzMax: [AUSKLAPPEN]
Function OpenMenu_CallBack(Event:TEvent)
'Initialisiere hier dein Menü. Oder mache ein Globales Menü.
'Als parent des Menüs habe ich NSNull gewählt. NSNull ist auch nur ein leeres Gadget.
PopupWindowMenu(MyWindow, YourMenu)
'PopupWindowMenu gehört zum standard Befehlssatz von MaxGUI
End Function


ChaosEdit hat verschiedene Menüs für die verschiedenen Arten der TreeView-Nodes. Ich habe also den Weg des lokalen Menüs gewählt. Die Art der Node richtet sich bei mir nach dem Text der Parent-Node.
  • Zuletzt bearbeitet von d-bug am So, Apr 25, 2010 11:58, insgesamt einmal bearbeitet
 

FWeinb

ehemals "ich"

BeitragSo, Apr 25, 2010 11:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke. Habe nur in der CocoaExt gesucht. Sollte mir die MaxGui selbst nochmals anschauen.

MfG
ich
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group