diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2015-03-23 15:26:56 -0300 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2015-03-23 15:26:56 -0300 |
commit | d0c72c3fb29d535f5bb12b651e3bcaa516650199 (patch) | |
tree | 2c01b7d96d50a7f47334093a1ed8ff4962cec204 /Panel.c | |
parent | 1084a3ff8faf3aa98e8e9fbdab97a08a2c40482e (diff) |
Move FunctionBar inside Panel
Diffstat (limited to 'Panel.c')
-rw-r--r-- | Panel.c | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -24,6 +24,7 @@ in the source distribution for its full text. /*{ #include "Object.h" #include "Vector.h" +#include "FunctionBar.h" typedef struct Panel_ Panel; @@ -61,6 +62,8 @@ struct Panel_ { int scrollV; short scrollH; bool needsRedraw; + FunctionBar* currentBar; + FunctionBar* defaultBar; RichString header; }; @@ -86,11 +89,11 @@ PanelClass Panel_class = { .eventHandler = Panel_selectByTyping }; -Panel* Panel_new(int x, int y, int w, int h, bool owner, ObjectClass* type) { +Panel* Panel_new(int x, int y, int w, int h, bool owner, ObjectClass* type, FunctionBar* fuBar) { Panel* this; this = malloc(sizeof(Panel)); Object_setClass(this, Class(Panel)); - Panel_init(this, x, y, w, h, type, owner); + Panel_init(this, x, y, w, h, type, owner, fuBar); return this; } @@ -100,7 +103,7 @@ void Panel_delete(Object* cast) { free(this); } -void Panel_init(Panel* this, int x, int y, int w, int h, ObjectClass* type, bool owner) { +void Panel_init(Panel* this, int x, int y, int w, int h, ObjectClass* type, bool owner, FunctionBar* fuBar) { this->x = x; this->y = y; this->w = w; @@ -113,12 +116,15 @@ void Panel_init(Panel* this, int x, int y, int w, int h, ObjectClass* type, bool this->oldSelected = 0; this->needsRedraw = true; RichString_beginAllocated(this->header); + this->defaultBar = fuBar; + this->currentBar = fuBar; } void Panel_done(Panel* this) { assert (this != NULL); free(this->eventHandlerState); Vector_delete(this->items); + FunctionBar_delete(this->defaultBar); RichString_end(this->header); } |