lgrAnnotationMenuBar.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00008 
00009 #ifndef lgrAnnotationMenuBar_H_
00010 #define lgrAnnotationMenuBar_H_
00011 
00012 #include "lgrAnn.h"
00013 #include "lgrAnnotationFactory.h"
00014 #include <commonWidgets/dynamicMenu.h>
00015 
00016 #include <lgrMenu.h>
00017 
00018 #include <map>
00019 class QStringList;
00020 
00021 namespace MAKLogger
00022 {
00023    class DtLgrAnnotationView;
00024    class DtLgrAnnotationSlots;
00025 
00027    class DT_DLL_LGRANN DtLgrAnnotationMenuBar : public DtLgrMenu
00028    {
00029    public:
00030 
00032       DtLgrAnnotationMenuBar(DtLgrAnnotationView* parent = 0);
00033 
00035       virtual ~DtLgrAnnotationMenuBar();
00036 
00037    private:
00039       DtLgrAnnotationMenuBar(const DtLgrAnnotationMenuBar&);
00041       DtLgrAnnotationMenuBar& operator=(const DtLgrAnnotationMenuBar&);
00042    public:
00043 
00045       virtual void connectToEventHandler(QObject*);
00046 
00048       virtual void postModelUpdate(DtLgrGuiModel& model);
00049 
00051       virtual void connectSlots();
00052 
00054       virtual void addAnnotationToMenu(DtLgrAnnotation* annotation);
00055 
00057       virtual void removeAnnotationFromMenu(DtLgrAnnotation* annotation);
00058 
00061       virtual void updateAnnotationInMenu(DtLgrAnnotation* annotation);
00062 
00064       const MAKCommonWidgets::DtDynamicMenu* createAnnotationMenu() const;
00065 
00067       const MAKCommonWidgets::DtDynamicMenu* selectAnnotationMenu() const;
00068 
00070       const MAKCommonWidgets::DtDynamicGroupMenu* selectedActionMenu() const;
00071 
00073       virtual void enableSelectedAnnotationItems();
00074 
00076       virtual void disableSelectedAnnotationItems();
00077       
00079       virtual void setConversionTypes(QStringList toFormats);
00080 
00082       virtual void setFileSaved(bool isSaved);
00083 
00085       virtual void setFileOpen(bool open);
00086 
00088       virtual void updateSelectAnnotations();
00089       
00090    protected:
00091       
00094       void configureFileMenu();
00095 
00098       void configureViewMenu();
00099 
00102       void configureEditMenu();
00103 
00106       void configureHelpMenu();
00107 
00108       MAKCommonWidgets::DtDynamicMenuItem* myFileOpenItem;
00109       MAKCommonWidgets::DtDynamicMenuItem* myFileImportItem;
00110       MAKCommonWidgets::DtDynamicMenuItem* myFileSaveItem;
00111       MAKCommonWidgets::DtDynamicMenuItem* myFileSaveAsItem;
00112       MAKCommonWidgets::DtDynamicMenuItem* myFileCloseItem;
00113       
00114       MAKCommonWidgets::DtDynamicMenu* myEditCreateAnnotationMenu;
00115       MAKCommonWidgets::DtDynamicMenu* myEditSelectAnnotationMenu;
00116       MAKCommonWidgets::DtDynamicGroupMenu* myEditSelectedActionMenu;
00117 
00118       MAKCommonWidgets::DtDynamicMenuItem* myEditDeleteAnnotationItem;
00119       MAKCommonWidgets::DtDynamicMenuItem* myEditModifyAnnotationItem;
00120       MAKCommonWidgets::DtDynamicMenu* myEditConvertAnnotationMenu;
00121       MAKCommonWidgets::DtDynamicMenuItem* myEditQuickModifyAnnotationItem;
00122 
00123       MAKCommonWidgets::DtDynamicMenuItem* myEditJumpToPreviousAnnotationItem;
00124       MAKCommonWidgets::DtDynamicMenuItem* myEditJumpToNextAnnotationItem;
00125       MAKCommonWidgets::DtDynamicMenuItem* myEditJumpToStartAnnotationItem;
00126       MAKCommonWidgets::DtDynamicMenuItem* myEditJumpToEndAnnotationItem;
00127       MAKCommonWidgets::DtDynamicMenuItem* myEditZoomToAnnotationItem;
00128       MAKCommonWidgets::DtDynamicMenuItem* myEditBoundToAnnotationItem;
00129 
00130       MAKCommonWidgets::DtDynamicMenuItem* myHelpHelpItem;
00131 
00132       typedef std::map<DtLgrAnnotation*,MAKCommonWidgets::DtDynamicMenuItem*> \
00133          AnnotationMenuMap;
00134       AnnotationMenuMap myAnnotationMenuMap;
00135       DtLgrAnnotationView* myAnnotationView;
00136    };
00137 
00138 }
00139 
00140 #endif

Document ID: Generated on Tue Oct 11 19:41:03 EDT 2011 from SVN revision 107422
Copyright © 2005-2011 VT MÄK Inc. All Rights Reserved (www.mak.com)