Commit Graph

49 Commits

Author SHA1 Message Date
Thilo Graf
74e08ddb50 CComponentsWindow: add member to set button font and use infobar font as default 2016-04-07 17:29:10 +02:00
Thilo Graf
63533b6dbd CComponentsWindow: fix default header color 2016-02-26 14:57:05 +01:00
Thilo Graf
4bd3173d41 CComponentsWindow: add return value to addWindowCCItem(), fix footer color
- return value of addWindowCCItem() = current id of added body item
- assignment of footer color was missing
2015-12-28 18:13:21 +01:00
Thilo Graf
7659dd4642 CComponentsWindow: add member setWindowHeaderTextColor()
To modifiy header text color.
2015-12-27 14:42:30 +01:00
Thilo Graf
8e99559d90 CComponentsWindow: add method to set header color 2015-12-27 14:42:30 +01:00
Thilo Graf
0146511f38 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
2015-12-27 14:42:27 +01:00
Thilo Graf
64c84fb490 CComponents: move variable cc_gradientData, paintGradient into base class
Variable now usable via g_settings in all subclasses. enable/disable.
TODO: gradient type handling
2014-09-25 11:07:45 +04:00
Thilo Graf
c1f70dbbb8 CComponentsWindow, CMenuWidget: apply gradiant settings to header 2014-09-25 11:07:28 +04:00
Thilo Graf
88ce62ea84 CComponentsForm/CComponentsWindow: add page scroll handling
This provides page scroll with up/down, left/right or combined.
Usage of exec() methods with implemented signals allows a
generic implematation of button or other message handling with
signal/slot solutions.

still to do: page cache
2014-09-25 11:02:55 +04:00
Thilo Graf
672757606c CComponents: implement scroll functionality into CComponentsForm
CComponentsForm provides page scroll if found more
than one pre defined page and is working with all derivated sub classes from CComponentsForm .

Pages are defined with setPageNumber(0...n) in items (1st page = 0). The item page number property is
defined in variable cc_page_number. The highest page number sets the
count of pages inside container to required value. Thats compellingly!

To show a page, we can use setCurrentPage(0...n ) and paintCurPage() or use directly paintPage(0...n).
Note: global paint() will show the current page. Default page is 0 (as first).
Use setCurrentPage(0...n) to change this before first call of paint().
Note: In CComponentsWindow class, these methods are applied to window body.

For examples, take a look into CTestMenu
2014-06-27 20:49:41 +02:00
Thilo Graf
f21c119517 CComponentsWindow: add possibilty to add sidebars in window objects
This allows to add objects in to window on left or right site. eg. for
navigation icons or other similar stuff. Default this feature is disabled.
to enable with methode enableSidebar(TYPE); With parameter
CC_WINDOW_LEFT_SIDEBAR, CC_WINDOW_RIGHT_SIDEBAR or both.
Width of sidebar can be changed with methode setWidthSidebar(int)
2014-06-23 18:43:47 +02:00
Thilo Graf
6fe7b452c1 CComponentsHeader: rework context button handling
CComponentsHeader uses now CComponentsIconForm, which is now derived
from CComponentsFrmChain. Some methods should be now simplified and
allow to handle some modifications easier.
2014-04-02 08:40:21 +02:00
Thilo Graf
750691fbbf CComponents: use neutrino debug mode for debug output 2014-04-02 08:40:21 +02:00
Thilo Graf
23d7b62cf0 CComponents: add new parameter 'parent'
Use strictly CComponentsForm as parent parameter in constructors.
Some parts have been cleaned up (Constructors, init methodes removed)

New parameter makes it possible already add current item in constructor.
So in mostly situations is it not necessary to use explicit addCCItem(),
but addCCItem()is still valid and necessary in certain situations.

Affected are all cc-classes and their derivates.
Some classes must or can be adapted later. The function is
not currently restricted, because usage of parent parameter is not explicit
defined in constructors, see CImageInfo, here yet are used addCCItem()
methodes.

Generally this parameter is located in the constructors before bool has_shadow,
but it is not sure whether it would be better to use this parameter as the first.
That remains to be clarified.
2014-03-03 09:43:39 +01:00
Thilo Graf
8a897103ac CComponentsItem: move/rename doCenter()to base class CComponentsItem
So it's possible to use this method for all cc-items.
setCenterPos() comes now with parameter 'along_mode' (CC_ALONG_X, CC_ALONG_Y).
So it's possible to center in x or y direction. As default are
both directions predefined.
2014-03-03 08:54:10 +01:00
Thilo Graf
c6221581ed CComponentsWindow: fix missing define of header position
Position is strictly top and left within of Window
2014-02-07 09:31:30 +01:00
Thilo Graf
a6eb67d456 CComponentsWindow: remove redundant init of header and footer 2014-02-05 11:56:48 +01:00
Thilo Graf
9482613d4c CComponentsWindowMax: add missing parameters to constructors 2014-02-05 11:56:47 +01:00
Thilo Graf
9d3febd080 CComponentsWindow: fix handling of window size
On some several cases it's possible that full resulution is not
visible on SD output or video-out modes like 576i/p.
So it's makes more sense to use current osd-settings for max size and
position.
This fixes also current behavior of Imageinfo.
2014-02-05 11:56:47 +01:00
Thilo Graf
d35da1afb6 CComponentsWindow: cleanup 2014-01-24 23:38:19 +01:00
Thilo Graf
66ae096372 CComponentsWindow: adapt header and footer corners for parent window
Corners of header and footer were not adapted to parent form.
It's unsightly, if these elements are not using the same corner types
like the parent window.
2014-01-24 23:13:49 +01:00
Thilo Graf
8cad2a3ca5 CComponentsWindow: add member doCenter()
Allows centering of window on screen, mostly senseful for
window objects without parent
2014-01-24 23:13:41 +01:00
Thilo Graf
21e0321c53 CComponentsWindow: rework constructors, add CComponentsWindowMax
Member initVarWindow() now used with parameters, so it's  possible
to remove multiple code in constructors, but some class must be
renamed to CComponentsWindowMax.
2014-01-24 23:12:51 +01:00
Thilo Graf
04574fc6eb CComponents: split some header files
Should bring more overview and less susceptibility to conflicts (merge etc)

License texts updated.
2014-01-06 22:27:59 +01:00
Thilo Graf
8442b39c28 CComponents: replace __FUNCTION__ with __func__
__func__ is more suitable for portability
2013-12-18 15:13:19 +01:00
[CST] Focus
dd7c7fc7ae components: cleanup destructors - remove calls to functions,
already called inside base classes destructors
2013-11-29 17:27:10 +04:00
[CST] Focus
062b10be2a components: remove initVarForm calls in classes derived from CComponentsForm 2013-11-29 17:27:10 +04:00
Thilo Graf
0ae3d34ceb CComponentsWindow: add missing member paint()
This is a partial revert of cbeb9f3ac6
2013-11-17 20:53:45 +01:00
Thilo Graf
cbeb9f3ac6 CComponentsWindow: remove paint() member
The derived member of ComponentsForm() should be sufficiently
and should serve its purpose.
2013-11-11 00:19:48 +01:00
Thilo Graf
64c6eb5945 CComponentsHeader: add possibility to modify text alignment
usable in header and its derived classes and in class CComponentsWindow
2013-10-24 21:19:07 +02:00
Thilo Graf
5323e92a6f CComponentsWindow: add member showHeader()
Provides show or hide window header
2013-10-24 21:19:06 +02:00
Thilo Graf
3438b23f68 CComponentsItem: move function isAdded() to CComponentsItem class 2013-10-19 01:25:23 +02:00
Thilo Graf
566698377d CComponentsWindow: fix fit of footer if using frame
Footer has been overpainted frame on bottom.
2013-09-19 08:24:39 +02:00
Thilo Graf
b9f35bfc6d CComponentsWindow: fix max width of base items, if frame was set
Header, body and footer were too wide on the right side.
2013-09-19 08:24:39 +02:00
Thilo Graf
4eb26988e9 CComponentsForm/CComponentsWindow: add new members
CComponentsForm: Overload member removeCCItem so we can use
cc_item as parameter.
CComponentsWindow: add member bool showFooter().
This allows to hide a footer in window.
2013-09-19 08:24:38 +02:00
Thilo Graf
ac53313da4 CComponentsWindow: fix missing init of footer 2013-06-25 11:36:04 +02:00
Thilo Graf
3fe6a376a5 CComponentsWindow: remove unused member 2013-06-23 23:28:20 +02:00
Thilo Graf
2a7c712f25 CComponentsWindow: add more functionality
Window comes now with footer and body
2013-06-16 00:34:08 +02:00
Thilo Graf
8e46f63900 CComponentsHeader: rename some members for plausible usage in subclasses
Some members are usable in subclasses, but  current names could be not
suitable or not  plausible with respect to the name of subclass.
2013-05-27 11:58:05 +02:00
Thilo Graf
39a4e3400e CComponentsForm: add own header for form classes 2013-04-16 08:26:56 +02:00
Thilo Graf
cc31a41f43 CComponentsWindow/Header: fix add of header buttons
setHeaderButtons was without effect
2013-03-24 21:14:10 +01:00
Thilo Graf
0dc4686874 fix license text, sorry, was a c&p error 2013-03-21 11:37:00 +01:00
Thilo Graf
ca42d9ba74 CComponentsHeader/Window: add possibility to return header height 2013-03-18 12:04:47 +01:00
Thilo Graf
d87d0754e0 CComponentsWindow: add constructors with parameters for caption and icon 2013-03-18 12:04:35 +01:00
Thilo Graf
4a931af6ef CComponentsForm/Header/Icons/Window: try to fix multiple inits and paints
Some items had multiple inits and some calls of clearCCItems()
have caused segfaults, hope this fix this.
2013-03-18 12:04:25 +01:00
Thilo Graf
da356d94da CComponentsHeader/Icon: use inherited destructor
Inherited destructor contains identic code.
2013-03-18 12:04:21 +01:00
Thilo Graf
de330ac39c CComponentsWindow: remove refresh()
initCCWItems() does the same, but is private
2013-03-18 12:04:16 +01:00
Thilo Graf
74b2dde248 CComponentsWindow: using current screen settings for default dimensions 2013-03-18 12:04:13 +01:00
Thilo Graf
3ed9af87ad CComponents: split cc_base.cpp
It's easier to work with smaller files.
Most files contain only one cc-class and their names are
derived on the particular class that is contained therein.
2013-03-06 11:28:18 +01:00