#ifndef _trekmdl_h_ #define _trekmdl_h_ void ExportPaneFactories(INameSpace* pns); // // buttons with sounds for mouse hover and mouse clicks // TRef CreateTrekButton( ButtonFacePane* ppane, bool bToggle = false, SoundID soundClick = positiveButtonClickSound, float repeatRate = 0.0f, float repeatDelay = 0.0f ); TRef CreateTrekButton( Pane* ppaneUp, Pane* ppaneDown, bool bToggle = false, SoundID soundClick = positiveButtonClickSound, float repeatRate = 0.0f, float repeatDelay = 0.0f ); class ValuePane : public Value, public Pane { public: ValuePane(){}; ValuePane(Pane* ppaneChild) : Pane(ppaneChild) {}; DefineSubclassMembers(ValuePane); }; class SectorMapPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class SectorInfoPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class PurchasesPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class PartInfoPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class SelectionPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class SelectModelPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class ChatListPane : public ValuePane { public: virtual void AddChannel(ChatTarget channel) = 0; virtual void RemoveChannel(ChatTarget channel) = 0; virtual void ResetChannels() = 0; virtual void PageUp() = 0; virtual void PageDown() = 0; }; class ChatListPaneFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; class InventoryImageFactory : public IFunction { public: TRef Apply(ObjectStack& stack); }; #endif