📄 gbx_class_init.c
字号:
/*************************************************************************** class_init.c Native class initializer (c) 2000-2004 Beno顃 Minisini <gambas@users.sourceforge.net> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.***************************************************************************/#define __GBX_CLASS_INIT_C#include "gb_common.h"#include "gb_alloc.h"#include "gb_error.h"#include "gb_limit.h"#include "gbx_library.h"#include "gbx_c_gambas.h"#include "gbx_c_class.h"#include "gbx_c_error.h"#include "gbx_c_collection.h"#include "gbx_c_file.h"#include "gbx_c_application.h"#include "gbx_c_array.h"#include "gbx_c_process.h"#include "gbx_c_subcollection.h"#include "gbx_c_string.h"#include "gbx_c_settings.h"#include "gbx_class.h"PUBLIC CLASS *CLASS_Class = NULL;PUBLIC CLASS *CLASS_Collection = NULL;PUBLIC CLASS *CLASS_Symbol = NULL;PUBLIC CLASS *CLASS_File = NULL;PUBLIC CLASS *CLASS_Stream = NULL;PUBLIC CLASS *CLASS_Application = NULL;PUBLIC CLASS *CLASS_AppArgs = NULL;PUBLIC CLASS *CLASS_AppEnv = NULL;PUBLIC CLASS *CLASS_Process = NULL;PUBLIC CLASS *CLASS_Library = NULL;PUBLIC CLASS *CLASS_Array = NULL;PUBLIC CLASS *CLASS_IntegerArray = NULL;PUBLIC CLASS *CLASS_FloatArray = NULL;PUBLIC CLASS *CLASS_DateArray = NULL;PUBLIC CLASS *CLASS_StringArray = NULL;PUBLIC CLASS *CLASS_ObjectArray = NULL;PUBLIC CLASS *CLASS_VariantArray = NULL;PUBLIC CLASS *CLASS_ShortArray = NULL;PUBLIC CLASS *CLASS_ByteArray = NULL;PUBLIC CLASS *CLASS_SubCollection = NULL;PUBLIC CLASS *CLASS_String = NULL;/* NOTE: La premi鑢e classe de la table des symboles DOIT ETRE la classe Class !*/typedef struct { GB_DESC *desc; CLASS **class; } CLASS_INIT;PRIVATE CLASS_INIT init_list[] ={ { NATIVE_Gambas, NULL }, { NATIVE_Symbol, NULL }, { NATIVE_ClassSymbols, NULL }, { NATIVE_Class, NULL }, { NATIVE_Classes, NULL }, { NATIVE_Library, NULL }, { NATIVE_Libraries, NULL }, { NATIVE_Object, NULL }, { NATIVE_Collection, &CLASS_Collection }, { NATIVE_Error, NULL }, { NATIVE_Stream, &CLASS_Stream }, { NATIVE_FilePerm, NULL }, { NATIVE_File, &CLASS_File }, { NATIVE_AppEnv, &CLASS_AppEnv }, { NATIVE_AppArgs, &CLASS_AppArgs }, { NATIVE_App, &CLASS_Application }, { NATIVE_Process, &CLASS_Process }, { NATIVE_System, NULL }, { NATIVE_String, NULL }, { NATIVE_Settings, NULL }, { NATIVE_Array, &CLASS_Array }, { NATIVE_IntegerArray, &CLASS_IntegerArray }, { NATIVE_FloatArray, &CLASS_FloatArray }, { NATIVE_DateArray, &CLASS_DateArray }, { NATIVE_StringArray, &CLASS_StringArray }, { NATIVE_ObjectArray, &CLASS_ObjectArray }, { NATIVE_VariantArray, &CLASS_VariantArray }, { NATIVE_ShortArray, &CLASS_ShortArray }, { NATIVE_ByteArray, &CLASS_ByteArray }, { NATIVE_SubCollection, &CLASS_SubCollection }, { NULL }};PUBLIC void CLASS_init_native(void){ CLASS_INIT *init; CLASS *class; CLASS_Class = CLASS_find("Class"); /* La classe Class doit 阾re la premi鑢e de la table */ CLASS_Symbol = CLASS_find("Symbol"); CLASS_Library = CLASS_find("Component"); LIBRARY_Current = LIBRARY_create(NULL); for (init = init_list; init->desc; init++) { class = CLASS_register(init->desc); if (init->class != NULL) *init->class = class; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -