COPKGManager: add possibility to manage source feeds for packages

Feeds are saved in opkg config file.

NOTE:Existing config file will be overwrite, so must be reconfigured
via gui.
Source names are strictly numbered src 0...10 (maximmal 10 at the moment)

FIXME: input mask in keyboardinput class is too small for some adresses, large
address names are cutted and makes entries useless
This commit is contained in:
2015-02-04 11:12:18 +01:00
parent ee56b75567
commit aad5db705f
7 changed files with 123 additions and 10 deletions

View File

@@ -5,7 +5,7 @@
OPKG-Manager Class for Neutrino-GUI
Implementation:
Copyright (C) 2012 T. Graf 'dbt'
Copyright (C) 2012-2015 T. Graf 'dbt'
www.dbox2-tuning.net
Adaptions:
@@ -33,20 +33,28 @@
#include <gui/widget/menue.h>
#include <driver/framebuffer.h>
#include <configfile.h>
#include <string>
#include <vector>
#include <map>
#define OPKG_MAX_FEEDS 10
class COPKGManager : public CMenuTarget
{
private:
int width;
std::string tmp_str;
CFrameBuffer *frameBuffer;
CConfigFile opkg_conf;
void saveConfig();
void loadConfig();
struct pkg;
//config
std::string config_src[OPKG_MAX_FEEDS];
std::vector<std::string> config_dest;
std::map<std::string,pkg> pkg_map;
std::vector<pkg*> pkg_vec;
@@ -84,6 +92,7 @@ class COPKGManager : public CMenuTarget
std::string getKeyInfo(const std::string& input, const std::string& pkg_info_key, const std::string& delimiters);
int showMenu();
void showMenuConfigFeed(CMenuWidget *feed_menu);
void updateMenu();
void refreshMenu();
bool badpackage(std::string &s);