Permalink
Browse files

Merge pull request #3834 from jimfcarroll/fix-14754

[fix] Attempted fix for issue 14754. Closes #14754
  • Loading branch information...
2 parents 4f9e989 + 0f7e173 commit 18c68fb1164ff81220686a333ed0f60559fe21a6 Jim Carroll committed Dec 18, 2013
@@ -585,8 +585,7 @@ namespace XBMCAddon
long _textOffsetX, long _textOffsetY,
long alignment, const char* font, const char* _textColor,
const char* _disabledColor, long angle,
- const char* _shadowColor, const char* _focusedColor,
- const char* TextureRadioFocus, const char* TextureRadioNoFocus) :
+ const char* _shadowColor, const char* _focusedColor) :
strFont("font13"), textColor(0xffffffff), disabledColor(0x60ffffff),
textOffsetX(_textOffsetX), textOffsetY(_textOffsetY), align(alignment), iAngle(angle),
shadowColor(0), focusedColor(0xffffffff)
@@ -1295,30 +1295,30 @@ namespace XBMCAddon
/**
* ControlRadioButton class.
*
- * ControlRadioButton(x, y, width, height, label[, focusOnTexture, noFocusOnTexture,
- * focusOffTexture, noFocusOffTexture, focusTexture, noFocusTexture,
+ * ControlRadioButton(x, y, width, height, label[, focusOnTexture, noFocusOnTexture,\n
+ * focusOffTexture, noFocusOffTexture, focusTexture, noFocusTexture,\n
* textOffsetX, textOffsetY, alignment, font, textColor, disabledColor])
*
- * x : integer - x coordinate of control.
- * y : integer - y coordinate of control.
- * width : integer - width of control.
- * height : integer - height of control.
- * label : string or unicode - text string.
- * focusOnTexture : [opt] string - filename for radio ON focused texture.
- * noFocusOnTexture : [opt] string - filename for radio ON not focused texture.
- * focusOfTexture : [opt] string - filename for radio OFF focused texture.
- * noFocusOffTexture : [opt] string - filename for radio OFF not focused texture.
- * focusTexture : [opt] string - filename for radio ON texture (deprecated, use focusOnTexture and noFocusOnTexture).
- * noFocusTexture : [opt] string - filename for radio OFF texture (deprecated, use focusOffTexture and noFocusOffTexture).
- * textOffsetX : [opt] integer - horizontal text offset
- * textOffsetY : [opt] integer - vertical text offset
- * alignment : [opt] integer - alignment of label - *Note, see xbfont.h
- * font : [opt] string - font used for label text. (e.g. 'font13')
- * textColor : [opt] hexstring - color of enabled checkmark's label. (e.g. '0xFFFFFFFF')
+ * x : integer - x coordinate of control.\n
+ * y : integer - y coordinate of control.\n
+ * width : integer - width of control.\n
+ * height : integer - height of control.\n
+ * label : string or unicode - text string.\n
+ * focusOnTexture : [opt] string - filename for radio ON focused texture.\n
+ * noFocusOnTexture : [opt] string - filename for radio ON not focused texture.\n
+ * focusOfTexture : [opt] string - filename for radio OFF focused texture.\n
+ * noFocusOffTexture : [opt] string - filename for radio OFF not focused texture.\n
+ * focusTexture : [opt] string - filename for radio ON texture (deprecated, use focusOnTexture and noFocusOnTexture).\n
+ * noFocusTexture : [opt] string - filename for radio OFF texture (deprecated, use focusOffTexture and noFocusOffTexture).\n
+ * textOffsetX : [opt] integer - horizontal text offset\n
+ * textOffsetY : [opt] integer - vertical text offset\n
+ * alignment : [opt] integer - alignment of label - *Note, see xbfont.h\n
+ * font : [opt] string - font used for label text. (e.g. 'font13')\n
+ * textColor : [opt] hexstring - color of enabled checkmark's label. (e.g. '0xFFFFFFFF')\n
* disabledColor : [opt] hexstring - color of disabled checkmark's label. (e.g. '0xFFFF3300')
*
- * *Note, You can use the above as keywords for arguments and skip certain optional arguments.
- * Once you use a keyword, all following arguments require the keyword.
+ * *Note, You can use the above as keywords for arguments and skip certain optional arguments.\n
+ * Once you use a keyword, all following arguments require the keyword.\n
* After you create the control, you need to add it to the window with addControl().
*
* example:
@@ -1336,9 +1336,7 @@ namespace XBMCAddon
long _alignment = (XBFONT_LEFT | XBFONT_CENTER_Y),
const char* font = NULL, const char* textColor = NULL,
const char* disabledColor = NULL, long angle = 0,
- const char* shadowColor = NULL, const char* focusedColor = NULL,
- const char* TextureRadioFocus = NULL,
- const char* TextureRadioNoFocus = NULL);
+ const char* shadowColor = NULL, const char* focusedColor = NULL);
// setSelected() Method
/**
@@ -83,7 +83,7 @@ namespace XBMCAddon
CGUIWindow* ProxyExistingWindowInterceptor::get() { XBMC_TRACE; return cguiwindow; }
- Window::Window() throw (WindowException):
+ Window::Window(bool discrim) throw (WindowException):
isDisposed(false), window(NULL), iWindowId(-1),
iOldWindowId(0), iCurrentControlId(3000), bModal(false), m_actionEvent(true),
canPulse(true), existingWindow(false), destroyAfterDeInit(false)
@@ -134,7 +134,10 @@ namespace XBMCAddon
bool existingWindow;
bool destroyAfterDeInit;
- Window() throw (WindowException);
+ // This only takes a boolean to allow subclasses to explicitly use it. A default
+ // constructor can be used as a concrete class and we need to tell the difference.
+ // subclasses should use this constructor and not the other.
+ Window(bool discrim) throw (WindowException);
virtual void deallocating();
@@ -169,7 +172,7 @@ namespace XBMCAddon
#endif
public:
- Window(int existingWindowId) throw (WindowException);
+ Window(int existingWindowId = -1) throw (WindowException);
virtual ~Window();
@@ -28,7 +28,7 @@ namespace XBMCAddon
namespace xbmcgui
{
WindowDialog::WindowDialog() throw(WindowException) :
- WindowDialogMixin(this)
+ Window(true), WindowDialogMixin(this)
{
CSingleLock lock(g_graphicsContext);
setWindow(new Interceptor<CGUIWindow>("CGUIWindow",this,getNextAvailalbeWindowId()));
@@ -97,7 +97,8 @@ namespace XBMCAddon
WindowXML::WindowXML(const String& xmlFilename,
const String& scriptPath,
const String& defaultSkin,
- const String& defaultRes) throw(WindowException)
+ const String& defaultRes) throw(WindowException) :
+ Window(true)
{
XBMC_TRACE;
RESOLUTION_INFO res;

0 comments on commit 18c68fb

Please sign in to comment.