Ich habe da noch ein kleines Problem. Ich würde gerne das Event "PageBeforeCreateControls" mehrfach verwenden. Zum einen soll es ohne Filter eingesetzt werden, zum anderen als spezielle Variante nur in der Schiffsansicht. Ich habe die Events dazu so eingetragen:
Code:
Var ShiplistFilter As CGuiEventFilter;
Var ShipviewFilter As CGuiEventFilter;
ShiplistFilter = CGuiEventFilter.Create().AddControl(EGuiControl.ShipList_ShipTable);
ShipviewFilter = CGuiEventFilter.Create().AddPage(EGuiPage.Ship);
ScriptContext.EnableExtension();
// Schiffsliste-Events
ScriptContext.RegisterEvent(EGuiEventType.PageBeforeCreateControls, AddressOf CallBack_BeforeCreateControls);
ScriptContext.RegisterEvent(EGuiEventType.TableBeforeCreate, AddressOf CallBack_TableBeforeCreate, ShiplistFilter);
ScriptContext.RegisterEvent(EGuiEventType.TableAfterRowAdded, AddressOf CallBack_RowAdded, ShiplistFilter);
ScriptContext.RegisterEvent(EGuiEventType.TableAfterHeadAdded, * AddressOf* CallBack_HeadAdded, * ShiplistFilter);
// Schiffsansicht-Events
ScriptContext.RegisterEvent(EGuiEventType.PageBeforeCreateControls, AddressOf CallBack_ShipView, ShipviewFilter);
ScriptContext.ActivateEvents();
ScriptContext.WriteAppLog('Handelsscript Extension geladen!');
}
Jetzt habe ich das Problem, dass in der Schiffsansicht das Callback "CallBack_ShipView" nicht aufgerufen wird, sondern nur "CallBack_BeforeCreateControls". Hat da jemand eine Idee wie ich beide Callbacks aufrufen lassen kann? Wenn ich für das Schiffsansicht Event ein anderes EGuiEvenetType Event verwende, funktioniert es.