VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/vrfMainMenu.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2012 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00007 
00008 #pragma once
00009 
00010 #include <vrfGuiCoreQt/vrfGuiCoreQt.h>
00011 #include <vrfGuiCoreQt/DtConfigurableMenu.h>
00012 #include <vrvCore/DtVrvApplication.h>
00013 #include <vrvCore/DtMenuConfiguration.h>
00014 #include <vrvCoreQt/DtQtMenuAssembler.h>
00015 
00016 namespace makVrf
00017 {
00025    class DT_DLL_VRFGUICOREQT DtVrfMainMenuConfiguration : public DtSubMenuConfiguration
00026    {
00027    public:
00030       DtVrfMainMenuConfiguration(makVrv::DtDe& de);
00031 
00034       virtual ~DtVrfMainMenuConfiguration();
00035 
00040       virtual void addMenuPath(const makVrv::DtMenuPath& path, int weight = -1);
00041 
00045       virtual void removeMenuPath(const makVrv::DtMenuPath& path);
00046 
00050       virtual void addMenuPathAfter(const makVrv::DtMenuPath& newPath, const makVrv::DtMenuPath& relativeTo);
00051 
00055       virtual void addMenuPathBefore(const makVrv::DtMenuPath& newPath, const makVrv::DtMenuPath& relativeTo);
00056 
00057    protected:
00058       makVrv::DtDe& myDe;
00059       makVrv::DtVrvApplication* myApp;
00060    };
00061 
00068    class DT_DLL_VRFGUICOREQT DtVrfMainMenuAssembler : public DtConfigurableMenuAssembler
00069    {
00070    public:
00073       DtVrfMainMenuAssembler(makVrv::DtDe& de);
00074 
00077       virtual ~DtVrfMainMenuAssembler();
00078 
00081       virtual void registerMenu(makVrv::DtMenu* menu);
00082 
00085       virtual void unregisterMenu(makVrv::DtMenu* menu, bool deleteBuilder = true);
00086 
00089       virtual void registerItem(makVrv::DtMenuItem* item);
00090 
00093       virtual void unregisterItem(makVrv::DtMenuItem* item, bool deleteBuilder = true);
00094 
00095    protected:
00097       virtual void registerMenu(makVrv::DtMenuItem*);
00098 
00100       virtual void unregisterMenu(makVrv::DtMenuItem*, bool);
00101 
00102       makVrv::DtDe& myDe;
00103    };
00104 
00110    class DT_DLL_VRFGUICOREQT DtVrfMainMenu : public DtConfigurableMenu
00111    { 
00112    public:
00115       virtual ~DtVrfMainMenu();
00116 
00119       static DtVrfMainMenu& instance(makVrv::DtDe& de);
00120 
00123       virtual DtSubMenuConfiguration& menuConfiguration();
00124 
00129       virtual DtConfigurableMenuAssembler& menuAssembler();
00130       
00131    protected:
00134       DtVrfMainMenu(makVrv::DtDe&);
00135 
00138       virtual void createMenuConfiguration(makVrv::DtDe&);
00139 
00142       virtual QMenu* createMenu(makVrv::DtDe&, QWidget*);
00143 
00144       makVrv::DtDe& myDe;
00145       static DtVrfMainMenu* theInstance;
00146       DtVrfMainMenuConfiguration myConfig;
00147       DtVrfMainMenuAssembler myAssembler;
00148    }; 
00149 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)