Init bookmark manager

This commit is contained in:
Charles J. Cliffe 2016-09-14 19:46:57 -04:00
parent bf7d67751e
commit ba7a0d8cd3
5 changed files with 75 additions and 3 deletions

View File

@ -247,6 +247,7 @@ SET (cubicsdr_sources
src/DemodLabelDialog.cpp
src/IOThread.cpp
src/ModemProperties.cpp
src/BookmarkMgr.cpp
src/sdr/SDRDeviceInfo.cpp
src/sdr/SDRPostThread.cpp
src/sdr/SDREnumerator.cpp
@ -349,6 +350,7 @@ SET (cubicsdr_headers
src/DemodLabelDialog.h
src/IOThread.h
src/ModemProperties.h
src/BookmarkMgr.h
src/sdr/SDRDeviceInfo.h
src/sdr/SDRPostThread.h
src/sdr/SDREnumerator.h
@ -525,6 +527,7 @@ SOURCE_GROUP("_ext-CubicVR2" REGULAR_EXPRESSION "external/cubicvr2/.*${REG_EXT}"
include_directories (
${PROJECT_SOURCE_DIR}/src/forms/SDRDevices
${PROJECT_SOURCE_DIR}/src/forms/DigitalConsole
${PROJECT_SOURCE_DIR}/src/forms/Bookmark
${PROJECT_SOURCE_DIR}/src/sdr
${PROJECT_SOURCE_DIR}/src/demod
${PROJECT_SOURCE_DIR}/src/modules

View File

@ -19,6 +19,8 @@
#include "ModemProperties.h"
//#include "UITestCanvas.h"
#include "FrequencyDialog.h"
#include "BookmarkMgr.h"
#include "BookmarkView.h"
#include <map>

28
src/BookmarkMgr.cpp Normal file
View File

@ -0,0 +1,28 @@
#include "BookmarkMgr.h"
void BookmarkMgr::saveToFile(std::string bookmarkFn) {
}
void BookmarkMgr::loadFromFile(std::string bookmarkFn) {
}
void BookmarkMgr::addBookmark(std::string group, DemodulatorInstance *demod) {
std::lock_guard < std::mutex > lock(busy_lock);
}
BookmarkList BookmarkMgr::getBookmarks(std::string group, std::string folder) {
std::lock_guard < std::mutex > lock(busy_lock);
BookmarkList results;
return results;
}

38
src/BookmarkMgr.h Normal file
View File

@ -0,0 +1,38 @@
#pragma once
#include <vector>
#include <map>
#include "DataTree.h"
#include "DemodulatorInstance.h"
class BookmarkEntry {
public:
std::mutex busy_lock;
std::string folder;
std::string type;
std::string label;
long long frequency;
int bandwidth;
DataNode *node;
};
typedef std::vector<BookmarkEntry *> BookmarkList;
typedef std::map<std::string, std::map<long long, BookmarkEntry *> > BookmarkMap;
class BookmarkMgr {
public:
void saveToFile(std::string bookmarkFn);
void loadFromFile(std::string bookmarkFn);
void addBookmark(std::string group, DemodulatorInstance *demod);
BookmarkList getBookmarks(std::string group, std::string folder = "");
protected:
BookmarkMap bmData;
std::mutex busy_lock;
};

View File

@ -2,13 +2,13 @@
#include "BookmarkPanel.h"
#include "BookmarkMgr.h"
class BookmarkView : public BookmarkPanel {
public:
BookmarkView( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxTAB_TRAVERSAL );
void updateActiveList();
void saveToFile(std::string bookmarkFn);
void loadFromFile(std::string bookmarkFn);
protected:
void onTreeBeginLabelEdit( wxTreeEvent& event );
@ -22,5 +22,6 @@ protected:
void onBookmark( wxCommandEvent& event );
void onActivate( wxCommandEvent& event );
void onRemove( wxCommandEvent& event );
};