Ticket #7148: libs_libmyth-uninit

File libs_libmyth-uninit, 21.4 KB (added by Erik Hovland <erik@…>, 15 years ago)

Fix initialization defects in libmyth

Line 
1Fix initialization issues in libmyth
2
3From: Erik Hovland <erik@hovland.org>
4
5
6---
7
8 mythtv/libs/libmyth/managedlist.cpp   |   25 ++--
9 mythtv/libs/libmyth/mythdialogs.cpp   |   15 ++-
10 mythtv/libs/libmyth/programinfo.cpp   |    2
11 mythtv/libs/libmyth/uilistbtntype.cpp |    8 +
12 mythtv/libs/libmyth/uitypes.cpp       |  194 ++++++++++++++-------------------
13 mythtv/libs/libmyth/uitypes.h         |   13 +-
14 6 files changed, 120 insertions(+), 137 deletions(-)
15
16
17diff --git a/mythtv/libs/libmyth/managedlist.cpp b/mythtv/libs/libmyth/managedlist.cpp
18index 0015124..bfdf9b7 100644
19--- a/mythtv/libs/libmyth/managedlist.cpp
20+++ b/mythtv/libs/libmyth/managedlist.cpp
21@@ -390,12 +390,15 @@ void ManagedListGroup::setParentList(ManagedList* _parent)
22 // SelectManagedListItem
23 //
24 ///////////////////////////////////////////////////////////////////////////////
25-SelectManagedListItem::SelectManagedListItem(
26-    const QString& baseTxt, ManagedListGroup* pGroup, ManagedList* pList,
27-    QObject* _parent, const char* _name)
28-    : ManagedListGroup(baseTxt, pGroup, pList, _parent, _name)
29+SelectManagedListItem::SelectManagedListItem(const QString& baseTxt,
30+                                             ManagedListGroup* pGroup,
31+                                             ManagedList* pList,
32+                                             QObject* _parent,
33+                                             const char* _name)
34+    : ManagedListGroup(baseTxt, pGroup, pList, _parent, _name),
35+      isSet(false), baseText(baseTxt),
36+      lastItem(0)
37 {
38-    baseText = baseTxt;
39     goBack->setText(QString("[ %1 ]").arg(QObject::tr("No Change")));
40 }
41 
42@@ -588,14 +591,14 @@ void SelectManagedListItem::buttonSelected(ManagedListItem* itm)
43 // ManagedList
44 //
45 ///////////////////////////////////////////////////////////////////////////////
46-ManagedList::ManagedList(MythDialog* parent, const char* name) :
47-    QObject(parent)
48+ManagedList::ManagedList(MythDialog* parent, const char* name)
49+    : QObject(parent),
50+      curGroup(NULL), theme(NULL),
51+      listSize(0),    containerName(""),
52+      listName(""),   listRect(0, 0, 0, 0),
53+      locked(false)
54 {
55     setObjectName(name);
56-    listRect = QRect(0, 0, 0, 0);
57-    theme = NULL;
58-    curGroup = NULL;
59-    locked = false;
60 }
61 
62 ManagedListItem *ManagedList::getItem(const QString &itemName)
63diff --git a/mythtv/libs/libmyth/mythdialogs.cpp b/mythtv/libs/libmyth/mythdialogs.cpp
64index 9f84dc1..970296f 100644
65--- a/mythtv/libs/libmyth/mythdialogs.cpp
66+++ b/mythtv/libs/libmyth/mythdialogs.cpp
67@@ -41,7 +41,12 @@ using namespace std;
68  */
69 
70 MythDialog::MythDialog(MythMainWindow *parent, const char *name, bool setsize)
71-    : QFrame(parent), rescode(kDialogCodeAccepted)
72+    : QFrame(parent),
73+      wmult(1.0),       hmult(1.0),
74+      screenwidth(0),   screenheight(0),
75+      xbase(0),         ybase(0),
76+      m_parent(parent), rescode(kDialogCodeAccepted),
77+      in_loop(false)
78 {
79     setObjectName(name);
80     if (!parent)
81@@ -50,7 +55,6 @@ MythDialog::MythDialog(MythMainWindow *parent, const char *name, bool setsize)
82         return;
83     }
84 
85-    in_loop = false;
86     MythUIHelper *ui = GetMythUI();
87 
88     ui->GetScreenSettings(xbase, screenwidth, wmult,
89@@ -72,7 +76,6 @@ MythDialog::MythDialog(MythMainWindow *parent, const char *name, bool setsize)
90     setAutoFillBackground(true);
91 
92     parent->attach(this);
93-    m_parent = parent;
94 }
95 
96 MythDialog::~MythDialog()
97@@ -1072,10 +1075,12 @@ MythThemedDialog::MythThemedDialog(MythMainWindow *parent,
98 
99 MythThemedDialog::MythThemedDialog(MythMainWindow *parent, const char* name,
100                                    bool setsize)
101-                : MythDialog(parent, name, setsize)
102+    : MythDialog(parent, name, setsize),
103+      widget_with_current_focus(NULL), my_background(),
104+      my_foreground(),                 theme(NULL),
105+      context(0),                      redrawRect(0, 0, 0, 0)
106 {
107     setNoErase();
108-    theme = NULL;
109 }
110 
111 bool MythThemedDialog::loadThemedWindow(QString window_name,
112diff --git a/mythtv/libs/libmyth/programinfo.cpp b/mythtv/libs/libmyth/programinfo.cpp
113index 7b03977..bfc6f56 100644
114--- a/mythtv/libs/libmyth/programinfo.cpp
115+++ b/mythtv/libs/libmyth/programinfo.cpp
116@@ -58,6 +58,7 @@ ProgramInfo::ProgramInfo(void) :
117     chanstr(""),
118     chansign(""),
119     channame(""),
120+    m_videoWidth(0),
121     m_videoHeight(0),
122 
123     recpriority(0),
124@@ -149,6 +150,7 @@ ProgramInfo::ProgramInfo(const ProgramInfo &other) :
125     chanstr(other.chanstr),
126     chansign(other.chansign),
127     channame(other.channame),
128+    m_videoWidth(other.m_videoWidth),
129     m_videoHeight(other.m_videoHeight),
130 
131     recpriority(other.recpriority),
132diff --git a/mythtv/libs/libmyth/uilistbtntype.cpp b/mythtv/libs/libmyth/uilistbtntype.cpp
133index fb7aeaa..85d4a5b 100644
134--- a/mythtv/libs/libmyth/uilistbtntype.cpp
135+++ b/mythtv/libs/libmyth/uilistbtntype.cpp
136@@ -140,7 +140,7 @@ bool UIListGenericTree::movePositionUpDown(bool flag)
137 UIListTreeType::UIListTreeType(const QString &name, const QRect &area,
138                                const QRect &levelsize, int levelspacing,
139                                int order)
140-              : UIType(name)
141+              : UIType(name, order, true)
142 {
143     m_totalarea = area;
144     m_levelsize = levelsize;
145@@ -156,7 +156,7 @@ UIListTreeType::UIListTreeType(const QString &name, const QRect &area,
146 
147     m_active = NULL;
148     m_inactive = NULL;
149-    takes_focus = true;
150+//    takes_focus = true;
151 
152     SetItemRegColor(Qt::black,QColor(80,80,80),100);
153     SetItemSelColor(QColor(82,202,56),QColor(52,152,56),255);
154@@ -866,10 +866,9 @@ void UIListTreeType::looseFocus()
155 
156 UIListBtnType::UIListBtnType(const QString& name, const QRect& area,
157                              int order, bool showArrow, bool showScrollArrows)
158-             : UIType(name)
159+             : UIType(name, order, true)
160 {
161     m_parentListTree   = NULL;
162-    m_order            = order;
163     m_rect             = area;
164 
165     m_showArrow        = showArrow;
166@@ -877,7 +876,6 @@ UIListBtnType::UIListBtnType(const QString& name, const QRect& area,
167 
168     m_active           = false;
169     m_visible          = true;
170-    takes_focus        = true;
171     m_showUpArrow      = false;
172     m_showDnArrow      = false;
173 
174diff --git a/mythtv/libs/libmyth/uitypes.cpp b/mythtv/libs/libmyth/uitypes.cpp
175index c4d1982..e3a2a8a 100644
176--- a/mythtv/libs/libmyth/uitypes.cpp
177+++ b/mythtv/libs/libmyth/uitypes.cpp
178@@ -186,20 +186,16 @@ void LayerSet::SetDrawFontShadow(bool state)
179 
180 // **************************************************************
181 
182-UIType::UIType(const QString &name)
183-       : QObject(NULL)
184+UIType::UIType(const QString &name, int order, bool takes_focus, bool has_focus)
185+    : QObject(NULL),
186+      m_wmult(1.0),               m_hmult(1.0),
187+      m_context(-1),              m_order(order),
188+      m_debug(false),             m_name(name),
189+      m_parent(NULL),             m_has_focus(has_focus),
190+      m_takes_focus(takes_focus), screen_area(0, 0, 0, 0),
191+      drawFontShadow(true),       hidden(false)
192 {
193     setObjectName(name);
194-    m_parent = NULL;
195-    m_name = name;
196-    m_debug = false;
197-    m_context = -1;
198-    m_order = -1;
199-    has_focus = false;
200-    takes_focus = false;
201-    screen_area = QRect(0,0,0,0);
202-    drawFontShadow = true;
203-    hidden = false;
204 }
205 
206 void UIType::SetOrder(int order)
207@@ -242,21 +238,21 @@ QString UIType::Name()
208 
209 bool UIType::takeFocus()
210 {
211-    if (takes_focus)
212+    if (m_takes_focus)
213     {
214-        has_focus = true;
215+        m_has_focus = true;
216         refresh();
217         emit takingFocus();
218         return true;
219     }
220-    has_focus = false;
221+    m_has_focus = false;
222     return false;
223 }
224 
225 void UIType::looseFocus()
226 {
227     emit loosingFocus();
228-    has_focus = false;
229+    m_has_focus = false;
230     refresh();
231 }
232 
233@@ -356,22 +352,20 @@ QString UIType::cutDown(const QString &data, QFont *testFont, bool multiline,
234 // **************************************************************
235 
236 UIListType::UIListType(const QString &name, QRect area, int dorder)
237-          : UIType(name)
238+    : UIType(name, dorder, true),
239+      m_selheight(0),    m_justification(0),
240+      m_columns(0),      m_current(-1),
241+      m_active(false),   m_pad(0),
242+      m_count(0),        m_darrow(false),
243+      m_uarrow(false),   m_showSelAlways(true),
244+      m_fill_area(),     m_fill_color(),
245+      m_fill_type(-1),   m_selection(),
246+      m_downarrow(),     m_uparrow(),
247+      m_leftarrow(),     m_rightarrow(),
248+      m_selection_loc(), m_downarrow_loc(),
249+      m_uparrow_loc(),   m_rightarrow_loc(),
250+      m_leftarrow_loc(), m_area(area)
251 {
252-    m_name = name;
253-    m_area = area;
254-    m_order = dorder;
255-    m_active = false;
256-    m_columns = 0;
257-    m_current = -1;
258-    m_count = 0;
259-    m_justification = 0;
260-    m_uarrow = false;
261-    m_darrow = false;
262-    m_fill_type = -1;
263-    m_showSelAlways = true;
264-    has_focus = false;
265-    takes_focus = true;
266 }
267 
268 UIListType::~UIListType()
269@@ -680,7 +674,7 @@ void UIListType::looseFocus()
270 // *****************************************************************
271 
272 UIImageType::UIImageType(const QString &name, const QString &filename, int dorder, QPoint displaypos)
273-           : UIType(name)
274+           : UIType(name, dorder)
275 {
276     m_isvalid = false;
277     m_flex = false;
278@@ -1028,28 +1022,30 @@ void UIRepeatedImageType::refresh()
279 // **************************************************************
280 
281 UIImageGridType::UIImageGridType(const QString &name, int order)
282-    : UIType(name)
283+    : UIType(name, order),
284+      window(NULL),         rowCount(0),
285+      columnCount(0),       itemCount(0),
286+      currentItem(0),       borderWidth(0),
287+      padding(0),           cellWidth(0),
288+      cellHeight(0),        topRow(0),
289+      lastRow(0),           lastColumn(0),
290+      curColumn(0),         curRow(0),
291+      displayRect(),        imageRect(),
292+      checkRect(),          textPos(UIImageGridType::textPosBottom),
293+      textHeight(20),
294+      activeFont(NULL),     inactiveFont(NULL),
295+      selectedFont(NULL),   cutdown(true),
296+      showCheck(false),     showScrollArrows(false),
297+      showSelected(false),  showUpArrow(false),
298+      showDnArrow(false),
299+      normalImage(""),      highlightedImage(""),
300+      selectedImage(""),    defaultImage(""),
301+      normalPixmap(NULL),   highlightedPixmap(NULL),
302+      selectedPixmap(NULL), defaultPixmap(NULL),
303+      allData(new QList<ImageGridItem*>)
304 {
305-    m_name = name;
306-    m_order = order;
307-
308-    activeFont = inactiveFont = selectedFont = NULL;
309-    window = NULL;
310-    defaultPixmap = normalPixmap = selectedPixmap = highlightedPixmap = NULL;
311-
312-    topRow = rowCount = columnCount = itemCount = currentItem =
313-            borderWidth = padding = cellWidth = cellHeight =
314-            lastRow = lastColumn = curColumn = curRow = 0;
315-
316-    textPos = UIImageGridType::textPosBottom;
317-    textHeight = 20;
318-    cutdown = true;
319     setJustification((Qt::AlignLeft | Qt::AlignVCenter));
320     allowFocus(true);
321-    showCheck = false;
322-    showSelected = false;
323-
324-    allData = new QList<ImageGridItem*>;
325 }
326 
327 UIImageGridType::~UIImageGridType(void)
328@@ -1203,7 +1199,7 @@ void UIImageGridType::setJustification(int jst)
329 
330 bool UIImageGridType::handleKeyPress(QString action)
331 {
332-    if (!has_focus)
333+    if (!m_has_focus)
334         return false;
335 
336     if (action == "LEFT")
337@@ -1469,7 +1465,7 @@ void UIImageGridType::drawText(QPainter *p, int curPos, int xpos, int ypos)
338         p->drawRect(textRect);
339     }
340 
341-    fontProp *font = has_focus ? activeFont : inactiveFont;
342+    fontProp *font = m_has_focus ? activeFont : inactiveFont;
343 
344     if (item && item->selected && showSelected)
345         font = selectedFont;
346@@ -1603,10 +1599,9 @@ QSize UIImageGridType::getImageItemSize(void)
347 UITextType::UITextType(const QString &name, fontProp *font,
348                        const QString &text, int dorder, QRect displayrect,
349                        QRect altdisplayrect)
350-           : UIType(name)
351+    : UIType(name, dorder)
352 {
353 
354-    m_name = name;
355     if (text.length())
356         m_message = text;
357     else
358@@ -1618,7 +1613,6 @@ UITextType::UITextType(const QString &name, fontProp *font,
359     m_origdisplaysize = displayrect;
360     m_altdisplaysize = altdisplayrect;
361     m_cutdown = true;
362-    m_order = dorder;
363     m_justification = (Qt::AlignLeft | Qt::AlignTop);
364 }
365 
366@@ -1731,14 +1725,12 @@ void UITextType::calculateScreenArea()
367 
368 UIRemoteEditType::UIRemoteEditType(const QString &name, fontProp *font,
369                        const QString &text, int dorder, QRect displayrect)
370-           : UIType(name)
371+           : UIType(name, dorder, true)
372 {
373     m_font = font;
374     m_text = text;
375     m_displaysize = displayrect;
376-    m_order = dorder;
377     edit = NULL;
378-    takes_focus = true;
379 }
380 
381 void UIRemoteEditType::createEdit(MythThemedDialog* parent)
382@@ -1896,13 +1888,12 @@ void UIRemoteEditType::editorChanged(QString value)
383 // ******************************************************************
384 
385 UIStatusBarType::UIStatusBarType(QString &name, QPoint loc, int dorder)
386-               : UIType(name)
387+    : UIType(name, dorder),
388+      m_used(0),        m_total(100),
389+      m_fillerSpace(0), m_container(),
390+      m_filler(),       m_location(loc),
391+      m_orientation(0)
392 {
393-    m_location = loc;
394-    m_order = dorder;
395-    m_orientation = 0;
396-    m_used = 0;
397-    m_total = 100;
398 }
399 
400 UIStatusBarType::~UIStatusBarType()
401@@ -1991,37 +1982,26 @@ void UIStatusBarType::setOrientation(int x)
402 // *********************************************************************
403 
404 UIManagedTreeListType::UIManagedTreeListType(const QString & name)
405-                     : UIType(name)
406+    : UIType(name),
407+      area(),                   bins(0),
408+      active_bin(0),            my_tree_data(NULL),
409+      current_node(NULL),       active_parent(NULL),
410+      active_node(NULL),        tree_order(-1),
411+      visual_order(-1),         iconAttr(-1),
412+      selectPadding(0),         selectScale(false),
413+      m_justification(Qt::AlignLeft | Qt::AlignVCenter),
414+      highlight_image(),        up_arrow_image(),
415+      down_arrow_image(),       left_arrow_image(),
416+      right_arrow_image(),      show_whole_tree(false),
417+      scrambled_parents(false), color_selectables(false),
418+      selectPoint(0, 0),        upArrowOffset(0, 0),
419+      downArrowOffset(0, 0),    leftArrowOffset(0, 0),
420+      rightArrowOffset(0, 0),   incSearch(""),
421+      bIncSearchContains(false)
422 {
423-    bins = 0;
424     bin_corners.clear();
425     screen_corners.clear();
426     route_to_active.clear();
427-    my_tree_data = NULL;
428-    current_node = NULL;
429-    active_node = NULL;
430-    active_parent = NULL;
431-    m_justification = (Qt::AlignLeft | Qt::AlignVCenter);
432-    active_bin = 0;
433-    tree_order = -1;
434-    visual_order = -1;
435-    iconAttr = -1;
436-    show_whole_tree = false;
437-    scrambled_parents = false;
438-    color_selectables = false;
439-    selectPadding = 0;
440-    selectScale = false;
441-    selectPoint.setX(0);
442-    selectPoint.setY(0);
443-    upArrowOffset.setX(0);
444-    upArrowOffset.setY(0);
445-    downArrowOffset.setX(0);
446-    downArrowOffset.setY(0);
447-    leftArrowOffset.setX(0);
448-    leftArrowOffset.setY(0);
449-    rightArrowOffset.setX(0);
450-    rightArrowOffset.setY(0);
451-    incSearch = "";
452 }
453 
454 UIManagedTreeListType::~UIManagedTreeListType()
455@@ -3464,14 +3444,13 @@ void UIManagedTreeListType::calculateScreenArea()
456 // ********************************************************************
457 
458 UIPushButtonType::UIPushButtonType(const QString &name, QPixmap on, QPixmap off, QPixmap pushed, QPixmap pushedon)
459-                     : UIType(name)
460+    : UIType(name, -1, true)
461 {
462     on_pixmap = on;
463     off_pixmap = off;
464     pushed_pixmap = pushed;
465     pushedon_pixmap = pushedon;
466     currently_pushed = false;
467-    takes_focus = true;
468     m_lockOn = false;
469     connect(&push_timer, SIGNAL(timeout()), this, SLOT(unPush()));
470 }
471@@ -3498,7 +3477,7 @@ void UIPushButtonType::Draw(QPainter *p, int drawlayer, int context)
472 
473     if (currently_pushed)
474     {
475-        if (has_focus && !pushedon_pixmap.isNull())
476+        if (m_has_focus && !pushedon_pixmap.isNull())
477         {
478             p->drawPixmap(m_displaypos.x(), m_displaypos.y(), pushedon_pixmap);
479         }
480@@ -3509,7 +3488,7 @@ void UIPushButtonType::Draw(QPainter *p, int drawlayer, int context)
481     }
482     else
483     {
484-        if (has_focus)
485+        if (m_has_focus)
486         {
487             p->drawPixmap(m_displaypos.x(), m_displaypos.y(), on_pixmap);
488         }
489@@ -3598,14 +3577,13 @@ void UIPushButtonType::calculateScreenArea()
490 // ********************************************************************
491 
492 UITextButtonType::UITextButtonType(const QString &name, QPixmap on, QPixmap off, QPixmap pushed)
493-                     : UIType(name)
494+    : UIType(name, -1, true)
495 {
496     on_pixmap = on;
497     off_pixmap = off;
498     pushed_pixmap = pushed;
499     m_text = "";
500     currently_pushed = false;
501-    takes_focus = true;
502     connect(&push_timer, SIGNAL(timeout()), this, SLOT(unPush()));
503 }
504 
505@@ -3635,7 +3613,7 @@ void UITextButtonType::Draw(QPainter *p, int drawlayer, int context)
506     }
507     else
508     {
509-        if (has_focus)
510+        if (m_has_focus)
511         {
512             p->drawPixmap(m_displaypos.x(), m_displaypos.y(), on_pixmap);
513         }
514@@ -3718,7 +3696,7 @@ void UITextButtonType::calculateScreenArea()
515 UICheckBoxType::UICheckBoxType(const QString &name,
516                                QPixmap checkedp, QPixmap uncheckedp,
517                                QPixmap checked_highp, QPixmap unchecked_highp)
518-               :UIType(name)
519+    : UIType(name, -1, true)
520 {
521     checked_pixmap = checkedp;
522     unchecked_pixmap = uncheckedp;
523@@ -3726,7 +3704,6 @@ UICheckBoxType::UICheckBoxType(const QString &name,
524     unchecked_pixmap_high = unchecked_highp;
525     checked = false;
526     label = "";
527-    takes_focus = true;
528 }
529 
530 void UICheckBoxType::Draw(QPainter *p, int drawlayer, int context)
531@@ -3747,7 +3724,7 @@ void UICheckBoxType::Draw(QPainter *p, int drawlayer, int context)
532         return;
533     }
534 
535-    if (has_focus)
536+    if (m_has_focus)
537     {
538         if (checked)
539         {
540@@ -3864,7 +3841,7 @@ void UISelectorType::Draw(QPainter *p, int drawlayer, int context)
541     }
542     else
543     {
544-        if (has_focus)
545+        if (m_has_focus)
546         {
547             p->drawPixmap(m_displaypos.x(), m_displaypos.y(), on_pixmap);
548         }
549@@ -4007,7 +3984,7 @@ void UIBlackHoleType::calculateScreenArea()
550 // ********************************************************************
551 
552 UIKeyType::UIKeyType(const QString &name)
553-         : UIType(name)
554+         : UIType(name, -1, true)
555 {
556     m_normalImg = m_focusedImg = m_downImg = m_downFocusedImg = NULL;
557     m_normalFont = m_focusedFont = m_downFont = m_downFocusedFont = NULL;
558@@ -4018,8 +3995,6 @@ UIKeyType::UIKeyType(const QString &name)
559     m_bShift = false;
560     m_bAlt = false;
561     m_bToggle = false;
562-
563-    takes_focus = true;
564     connect(&m_pushTimer, SIGNAL(timeout()), this, SLOT(unPush()));
565 }
566 
567@@ -4038,7 +4013,7 @@ void UIKeyType::Draw(QPainter *dr, int drawlayer, int context)
568             // draw the button image
569             if (!m_bDown)
570             {
571-                if (!has_focus)
572+                if (!m_has_focus)
573                 {
574                     dr->drawPixmap(m_pos.x(), m_pos.y(), *m_normalImg);
575                     tempFont = m_normalFont;
576@@ -4051,7 +4026,7 @@ void UIKeyType::Draw(QPainter *dr, int drawlayer, int context)
577             }
578             else
579             {
580-                if (!has_focus)
581+                if (!m_has_focus)
582                 {
583                     dr->drawPixmap(m_pos.x(), m_pos.y(), *m_downImg);
584                     tempFont = m_downFont;
585@@ -4327,9 +4302,8 @@ const QString comps[numcomps][3] = {
586 };
587 
588 UIKeyboardType::UIKeyboardType(const QString &name, int order)
589-                    : UIType(name)
590+    : UIType(name, order)
591 {
592-    m_order = order;
593     m_container = NULL;
594     m_parentEdit = NULL;
595     m_parentDialog = NULL;
596diff --git a/mythtv/libs/libmyth/uitypes.h b/mythtv/libs/libmyth/uitypes.h
597index c373cc3..d9c1833 100644
598--- a/mythtv/libs/libmyth/uitypes.h
599+++ b/mythtv/libs/libmyth/uitypes.h
600@@ -85,7 +85,8 @@ class MPUBLIC UIType : public QObject
601   Q_OBJECT
602 
603   public:
604-    UIType(const QString &name);
605+    UIType(const QString &name, int order = -1, bool takes_focus = false,
606+           bool has_focus = false);
607     virtual ~UIType();
608 
609     void SetOrder(int order);
610@@ -94,12 +95,12 @@ class MPUBLIC UIType : public QObject
611     void SetContext(int con) { m_context = con;}
612     int  GetContext(){return m_context;}
613     void SetDebug(bool db) { m_debug = db; }
614-    void allowFocus(bool yes_or_no){takes_focus = yes_or_no;}
615+    void allowFocus(bool yes_or_no){m_takes_focus = yes_or_no;}
616     void SetDrawFontShadow(bool state) { drawFontShadow = state; }
617     QString Name();
618 
619 
620-    bool    canTakeFocus(){ return takes_focus;}
621+    bool    canTakeFocus(){ return m_takes_focus;}
622     int     getOrder(){return m_order;}
623     virtual void Draw(QPainter *, int, int);
624     virtual void DrawRegion(QPainter *, QRect &, int, int);
625@@ -111,7 +112,7 @@ class MPUBLIC UIType : public QObject
626 
627     bool    isShown(){return !hidden;}
628     bool    isHidden(){return hidden;}
629-    bool    isFocused(){return has_focus;}
630+    bool    isFocused(){return m_has_focus;}
631 
632   public slots:
633 
634@@ -145,8 +146,8 @@ class MPUBLIC UIType : public QObject
635     bool     m_debug;
636     QString  m_name;
637     LayerSet *m_parent;
638-    bool     has_focus;
639-    bool     takes_focus;
640+    bool     m_has_focus;
641+    bool     m_takes_focus;
642     QRect    screen_area;   // The area, in real screen coordinates
643     bool     drawFontShadow;
644     bool     hidden;        // Is this "widget" seen or hidden ?