Go to the documentation of this file.00001
00002
00003
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