⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 object.cc

📁 基于SDL实现的GUI
💻 CC
字号:
#include <assert.h>#include <string.h>#include <stdlib.h>#include "SDL_gui.h"GUI_Object::GUI_Object(const char *aname){	assert(aname != NULL);		name = strdup(aname);	refcount = 1;}GUI_Object::~GUI_Object(void){	free(name);}void GUI_Object::IncRef(void){	refcount++;}int GUI_Object::DecRef(void){	if (--refcount <= 0)	{		delete this;		return 1;	}	return 0;}const char *GUI_Object::GetName(void){	return name;}void GUI_Object::SetName(const char *s){	free(name);	name = strdup(s);}int GUI_Object::CheckName(const char *aname){	return strcmp(name, aname);}extern "C" {GUI_Object *GUI_ObjectCreate(const char *s){	return new GUI_Object(s);}const char *GUI_ObjectGetName(GUI_Object *object){	return object->GetName();}void GUI_ObjectSetName(GUI_Object *object, const char *s){	object->SetName(s);}void GUI_ObjectIncRef(GUI_Object *object){	if (object)		object->IncRef();}int GUI_ObjectDecRef(GUI_Object *object){	if (object)		return object->DecRef();	return 0;}int GUI_ObjectKeep(GUI_Object **target, GUI_Object *source){	if (source != *target)	{		GUI_ObjectIncRef(source);		GUI_ObjectDecRef(*target);		(*target) = source;		return 1;	}	return 0;}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -