Skip to content

Commit

Permalink
#4 Remove unnecessary null pointer checks
Browse files Browse the repository at this point in the history
#3 Follow the C++ standard rules regarding reserved names
  • Loading branch information
fred1218zh committed Mar 24, 2017
1 parent 98d7565 commit fe92599
Show file tree
Hide file tree
Showing 9 changed files with 68 additions and 82 deletions.
6 changes: 2 additions & 4 deletions inc/slib/core/detail/scoped.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,8 @@ namespace slib
template <class T>
SLIB_INLINE void ScopedPtr<T>::release()
{
if (ptr) {
delete ptr;
ptr = sl_null;
}
delete ptr;
ptr = sl_null;
}

template <class T>
Expand Down
16 changes: 8 additions & 8 deletions src/slib/graphics/brush_android.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@ namespace slib
SLIB_JNI_INT_FIELD(color);
SLIB_JNI_END_CLASS

class _Android_BrushObject : public Referable
class Android_BrushObject : public Referable
{
public:
JniGlobal<jobject> m_brush;

public:
_Android_BrushObject(const BrushDesc& desc)
Android_BrushObject(const BrushDesc& desc)
{
JniLocal<jobject> jbrush = _JAndroidBrush::init.newObject(sl_null);
if (jbrush.isNotNull()) {
Expand All @@ -45,23 +45,23 @@ namespace slib
}
};

class _Brush : public Brush
class Brush_Ext : public Brush
{
public:
_Android_BrushObject* getPlatformObject()
Android_BrushObject* getPlatformObject()
{
if (m_platformObject.isNull()) {
SpinLocker lock(&m_lock);
if (m_platformObject.isNull()) {
m_platformObject = new _Android_BrushObject(m_desc);
m_platformObject = new Android_BrushObject(m_desc);
}
}
return (_Android_BrushObject*)(m_platformObject.get());;
return (Android_BrushObject*)(m_platformObject.get());;
}

jobject getPlatformHandle()
{
_Android_BrushObject* po = getPlatformObject();
Android_BrushObject* po = getPlatformObject();
if (po) {
return po->m_brush.get();
}
Expand All @@ -72,7 +72,7 @@ namespace slib
jobject GraphicsPlatform::getBrushHandle(Brush* brush)
{
if (brush) {
return ((_Brush*)brush)->getPlatformHandle();
return ((Brush_Ext*)brush)->getPlatformHandle();
}
return 0;
}
Expand Down
22 changes: 10 additions & 12 deletions src/slib/graphics/brush_gdiplus.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@
namespace slib
{

class _Gdiplus_BrushObject : public Referable
class Gdiplus_BrushObject : public Referable
{
public:
Gdiplus::Brush* m_brush;

public:
_Gdiplus_BrushObject(const BrushDesc& desc)
Gdiplus_BrushObject(const BrushDesc& desc)
{
m_brush = NULL;
const Color& _color = desc.color;
Expand All @@ -40,32 +40,30 @@ namespace slib
}
}

~_Gdiplus_BrushObject()
~Gdiplus_BrushObject()
{
if (m_brush) {
delete m_brush;
}
delete m_brush;
}

};

class _Brush : public Brush
class Brush_Ext : public Brush
{
public:
_Gdiplus_BrushObject* getPlatformObject()
Gdiplus_BrushObject* getPlatformObject()
{
if (m_platformObject.isNull()) {
SpinLocker lock(&m_lock);
if (m_platformObject.isNull()) {
m_platformObject = new _Gdiplus_BrushObject(m_desc);
m_platformObject = new Gdiplus_BrushObject(m_desc);
}
}
return (_Gdiplus_BrushObject*)(m_platformObject.get());;
return (Gdiplus_BrushObject*)(m_platformObject.get());;
}

Gdiplus::Brush* getPlatformHandle()
{
_Gdiplus_BrushObject* po = getPlatformObject();
Gdiplus_BrushObject* po = getPlatformObject();
if (po) {
return po->m_brush;
}
Expand All @@ -76,7 +74,7 @@ namespace slib
Gdiplus::Brush* GraphicsPlatform::getBrushHandle(Brush* brush)
{
if (brush) {
return ((_Brush*)brush)->getPlatformHandle();
return ((Brush_Ext*)brush)->getPlatformHandle();
}
return NULL;
}
Expand Down
16 changes: 8 additions & 8 deletions src/slib/graphics/font_android.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,13 @@ namespace slib
return Size::zero();
}

class _Android_FontObject : public Referable
class Android_FontObject : public Referable
{
public:
JniGlobal<jobject> m_font;

public:
_Android_FontObject(const FontDesc& desc)
Android_FontObject(const FontDesc& desc)
{
int style = 0;
if (desc.flagBold) {
Expand All @@ -97,23 +97,23 @@ namespace slib

};

class _Font : public Font
class Font_Ext : public Font
{
public:
_Android_FontObject* getPlatformObject()
Android_FontObject* getPlatformObject()
{
if (m_platformObject.isNull()) {
SpinLocker lock(&m_lock);
if (m_platformObject.isNull()) {
m_platformObject = new _Android_FontObject(m_desc);
m_platformObject = new Android_FontObject(m_desc);
}
}
return (_Android_FontObject*)(m_platformObject.get());;
return (Android_FontObject*)(m_platformObject.get());;
}

jobject getPlatformHandle()
{
_Android_FontObject* po = getPlatformObject();
Android_FontObject* po = getPlatformObject();
if (po) {
return po->m_font.get();
}
Expand All @@ -124,7 +124,7 @@ namespace slib
jobject GraphicsPlatform::getNativeFont(Font* font)
{
if (font) {
return ((_Font*)font)->getPlatformHandle();
return ((Font_Ext*)font)->getPlatformHandle();
}
return 0;
}
Expand Down
22 changes: 11 additions & 11 deletions src/slib/graphics/font_apple.mm
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
return ret;
}

class _Apple_FontObject : public Referable
class Apple_FontObject : public Referable
{
public:
CTFontRef m_fontCoreText;
Expand All @@ -85,7 +85,7 @@
SpinLock m_lock;

public:
_Apple_FontObject()
Apple_FontObject()
{
m_fontCoreText = nil;
m_flagCreatedCoreText = sl_false;
Expand All @@ -95,7 +95,7 @@
m_lastUIScaleFactor = 0;
}

~_Apple_FontObject()
~Apple_FontObject()
{
if (m_fontCoreText) {
CFRelease(m_fontCoreText);
Expand Down Expand Up @@ -201,23 +201,23 @@ void _createCoreText(const FontDesc& desc)

};

class _Font : public Font
class Font_Ext : public Font
{
public:
_Apple_FontObject* getPlatformObject()
Apple_FontObject* getPlatformObject()
{
if (m_platformObject.isNull()) {
SpinLocker lock(&m_lock);
if (m_platformObject.isNull()) {
m_platformObject = new _Apple_FontObject;
m_platformObject = new Apple_FontObject;
}
}
return (_Apple_FontObject*)(m_platformObject.get());;
return (Apple_FontObject*)(m_platformObject.get());;
}

CTFontRef getCoreText()
{
_Apple_FontObject* po = getPlatformObject();
Apple_FontObject* po = getPlatformObject();
if (po) {
po->_createCoreText(m_desc);
return po->m_fontCoreText;
Expand All @@ -227,7 +227,7 @@ CTFontRef getCoreText()

UIFont* getUI(CGFloat scaleFactor)
{
_Apple_FontObject* po = getPlatformObject();
Apple_FontObject* po = getPlatformObject();
if (po) {
return po->_createUI(m_desc, scaleFactor);
}
Expand All @@ -239,7 +239,7 @@ CTFontRef getCoreText()
CTFontRef GraphicsPlatform::getCoreTextFont(Font* _font)
{
if (_font) {
_Font* font = (_Font*)_font;
Font_Ext* font = (Font_Ext*)_font;
return font->getCoreText();
}
return NULL;
Expand All @@ -252,7 +252,7 @@ CTFontRef getCoreText()
#endif
{
if (_font) {
_Font* font = (_Font*)_font;
Font_Ext* font = (Font_Ext*)_font;
return font->getUI(scaleFactor);
}
return nil;
Expand Down
18 changes: 9 additions & 9 deletions src/slib/graphics/font_cairo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,13 @@ namespace slib
return Size::zero();
}

class _Cairo_FontObject : public Referable
class Cairo_FontObject : public Referable
{
public:
cairo_scaled_font_t* m_font;

public:
_Cairo_FontObject(const FontDesc& desc)
Cairo_FontObject(const FontDesc& desc)
{
cairo_scaled_font_t* font = sl_null;
cairo_font_slant_t slant = desc.flagItalic ? CAIRO_FONT_SLANT_ITALIC : CAIRO_FONT_SLANT_NORMAL;
Expand All @@ -71,7 +71,7 @@ namespace slib
m_font = font;
}

~_Cairo_FontObject()
~Cairo_FontObject()
{
if (m_font) {
::cairo_scaled_font_destroy(m_font);
Expand All @@ -80,23 +80,23 @@ namespace slib

};

class _Font : public Font
class Font_Ext : public Font
{
public:
_Cairo_FontObject* getPlatformObject()
Cairo_FontObject* getPlatformObject()
{
if (m_platformObject.isNull()) {
SpinLocker lock(&m_lock);
if (m_platformObject.isNull()) {
m_platformObject = new _Cairo_FontObject(m_desc);
m_platformObject = new Cairo_FontObject(m_desc);
}
}
return (_Cairo_FontObject*)(m_platformObject.get());;
return (Cairo_FontObject*)(m_platformObject.get());;
}

cairo_scaled_font_t* getPlatformHandle()
{
_Cairo_FontObject* po = getPlatformObject();
Cairo_FontObject* po = getPlatformObject();
if (po) {
return po->m_font;
}
Expand All @@ -107,7 +107,7 @@ namespace slib
cairo_scaled_font_t* GraphicsPlatform::getCairoFont(Font* font)
{
if (font) {
return ((_Font*)font)->getPlatformHandle();
return ((Font_Ext*)font)->getPlatformHandle();
}
return 0;
}
Expand Down

2 comments on commit fe92599

@elfring
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you mix changes for different issues in this commit?

@fred1218zh
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll avoid this for further commits. Thanks.

Please sign in to comment.