components: rework classes

- outsourced some classes cc_item.cpp/h, cc_draw.cpp/h
- added extra methodes for simple use of some basic components extra.cpp/h
- rework clock handling: use timer class, reworked members for
  enable/disable clock with external timer events,
  tryed to fix some display issues related with infoclock and
  time osd clock in moviebrowser, channellist, menuus
- reworked hide/kill handling, removed parameter for hide(), try to use
  cached backgrounds for other constallations, paint cache, image cache (all beta)
- reworked shadow/frame handling, add shadow modes for left/right
  arrangement, TODO: repaint for existant instances required
- reworked color gradient assignment (beta)

... Note: I had a data crash in my local git tree
and i tryed to restore my historie, but most was lost. Therefore here
the commit is large
This commit is contained in:
2015-11-18 18:08:23 +01:00
parent a2171dad4a
commit 0146511f38
68 changed files with 3207 additions and 1682 deletions

View File

@@ -32,6 +32,7 @@
#include "cc_item_text.h"
#include "cc_item_picture.h"
#include "cc_item.h"
#include <string>
//! Sub class of CComponentsItem. Shows box with text and optional icon on screen.
@@ -69,7 +70,7 @@ class CComponentsInfoBox : public CComponentsText
const int mode = CTextBox::AUTO_WIDTH,
Font* font_text = NULL,
CComponentsForm *parent = NULL,
bool has_shadow = CC_SHADOW_OFF,
int shadow_mode = CC_SHADOW_OFF,
fb_pixel_t color_text = COL_MENUCONTENT_TEXT,
fb_pixel_t color_frame = COL_MENUCONTENT_PLUS_6,
fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0,
@@ -78,13 +79,11 @@ class CComponentsInfoBox : public CComponentsText
~CComponentsInfoBox();
///set property: space around fram and beetween picture and textbox
inline void setSpaceOffset(const int offset){x_offset = offset;};
void setSpaceOffset(const int offset){x_offset = offset;};
///set property: path or name of displayed image, parameter as string
void setPicture(const std::string& picture_name);
///set property: path or name of displayed image, parameter as const char*
void setPicture(const char* picture_name);
///set property: gradient behavior
void enableGradient(bool enable) { col_body_gradient = enable; }
///paint item
void paint(bool do_save_bg = CC_SAVE_SCREEN_YES);
};