Пример #1
0
SDatum* iDatum_allocate(u8* data, s32 dataLength)
{
    SDatum* datumNew;


    // Allocate our new datum
    datumNew = (SDatum*)malloc(sizeof(SDatum));
    if (datumNew)
    {
        // Initialize
        memset(datumNew, 0, sizeof(SDatum));

        // Copy over the content
        if (data)
        {
            // We may need to set the length
            if (dataLength < 0)
                dataLength = (s32)strlen((s8*)data);

            // Initialize
            memset(datumNew, 0, sizeof(SDatum));

            // Populate
            iDatum_duplicate(datumNew, data, dataLength);
        }
    }

    // Indicate our status
    return(datumNew);
}
Пример #2
0
//////////
//
// Function: LOWER()
// Converts every character in the string to lowercase.
//
//////
// Version 0.57
// Last update:
//     Jul.12.2014
//////
// Change log:
//     Jul.12.2014 - Initial creation
//////
// Parameters:
//     pString		-- Character, the string to lower
//
//////
// Returns:
//    Character		-- The string with all lowercase characters converted to lowercase
//////
	void function_lower(SThisCode* thisCode, SFunctionParms* rpar)
	{
		SVariable*	varString = rpar->params[0];
		s32			lnI;
        SVariable*	result;


		//////////
		// Parameter 1 must be character
		//////
			rpar->returns[0] = NULL;
			if (!iVariable_isValid(varString) || iVariable_getType(varString) != _VAR_TYPE_CHARACTER)
			{
				iError_reportByNumber(thisCode, _ERROR_P1_IS_INCORRECT, iVariable_getRelatedComp(thisCode, varString), false);
				return;
			}


		//////////
        // Create our return result
		//////
	        result = iVariable_create(thisCode, _VAR_TYPE_CHARACTER, NULL, true);
			if (!result)
			{
				iError_report(thisCode, cgcInternalError, false);
				return;
			}


		//////////
        // Copy the source string
		//////
	        iDatum_duplicate(&result->value, &varString->value);


		//////////
		// Lower every character
		//////
			for (lnI = 0; lnI < result->value.length; lnI++)
			{
				if (result->value.data[lnI] >= 'A' && result->value.data[lnI] <= 'Z')
					result->value.data[lnI] += 0x20;
			}


		//////////
        // Return our converted result
		//////
			rpar->returns[0] = result;

	}
Пример #3
0
	void iiVjr_init_createGlobalSystemVariable(SVariable** var, s32 tnType, cu8* tcName, cs8* tcInitValue, u32 tnInitValueLength)
	{
		// Create it
		if (!tcInitValue)		*var = iVariable_create(NULL, tnType, NULL, true);
		else					*var = iVariable_createAndPopulate_byText(NULL, tnType, tcInitValue, tnInitValueLength, false);

		// Name it
		iDatum_duplicate(&(*var)->name, tcName, -1);

		// Mark it as a system variable
		(*var)->isSysVar = true;

		// Append it to global variables
		iLl_appendExistingNodeAtEnd((SLL**)&varGlobals, (SLL*)*var);
	}
Пример #4
0
//////////
//
// Called to add something to the indicated file, line, or component
//
//////
	// Note:  valueTextTemplate is expected to include a %d parameter for tnValueCode, and a %s parameter for the associated text
	void iilsa_append_extraInfo(s32			tnValueCode,
								cs8*		valueTextTemplate,
								cs8*		tcValueText,
								SLine*		line,
								SComp*		comp,
								SLsaFile*	file,
								s32			tnValueBaseAddto,
								s32			tn_eiType)
	{
		s32				lnLength;
		s8				buffer[1024];
		SExtraInfo*		ei;


		//////////
		// Generate the error
		//////
			sprintf(buffer, valueTextTemplate, tnValueCode + tnValueBaseAddto, tcValueText);
			lnLength = strlen(buffer);


		//////////
		// Store the error
		//////
			     if (line)		ei = iExtraInfo_allocate(&line->extra_info, tn_eiType);
			else if (comp)		ei = iExtraInfo_allocate(&comp->extra_info, tn_eiType);
			else if (file)		ei = iExtraInfo_allocate(&file->extra_info, tn_eiType);


		//////////
		// Store the related error message
		//////
			if (ei)
				iDatum_duplicate(&ei->info, (cvp*)buffer);


		//////////
		// Print it
		//////
			printf(buffer);

			// Append a trailing CR if it doesn't already have one
			if (*(u16*)&buffer[lnLength - 2] != 'n\\' && *(u16*)&buffer[lnLength - 4] != 'n\\')
				printf("\n");

	}
Пример #5
0
//////////
//
// Function: VERSION()
// Based on input, retrieves various version information.
//
//////
// Version 0.58
// Last update:
//     Jul.13.2014
//////
// Change log:
//     Jul.13.2014 - Initial creation
//////
// Parameters:
//     pIndex		-- (Optional) If present, Numeric, in the range 1..5
//
//////
// Returns:
//    Numeric or Character	-- Depending on index, various values are returned
//////
    void function_version(SReturnsParams* rpar)
    {
		SVariable*	varIndex = rpar->ip[0];
        s32			index;
		u32			errorNum;
        bool		error;
		u8*			lptr;
        SVariable*	result;


		//////////
		// Parameter 1 must be numeric
		//////
			rpar->rp[0]	= NULL;
			lptr				= NULL;
			if (!iVariable_isValid(varIndex))
			{
				// They are requesting the default information
				lptr = (u8*)cgcVersionText;

			} else if (!iVariable_isTypeNumeric(varIndex)) {
				// The parameter is not numeric
				iError_report_byNumber(_ERROR_P1_IS_INCORRECT, iVariable_get_relatedComp(varIndex), false);
				return;

			} else {
				// It must be in the range 1..5
				index = iiVariable_getAs_s32(varIndex, false, &error, &errorNum);
				if (error)
				{
					iError_report_byNumber(errorNum, iVariable_get_relatedComp(varIndex), false);
					return;

				} else if (index < 1 || index > 5) {
					// We report our own error
					iError_report((cu8*)"Parameter must be in the range 1..5", false);
					return;
				}
			}


		//////////
        // Create our return result
		//////
			if (lptr || index == 1 || index == 4)
			{
				// Character return
				result = iVariable_create(_VAR_TYPE_CHARACTER, NULL, true);
				if (lptr)
				{
					// Copy the version info
					iDatum_duplicate(&result->value, lptr, -1);

				} else if (index == 1) {
					// Copy the version1 info
					iDatum_duplicate(&result->value, cgcVersion1Text, -1);

				} else {
					// Copy the version4 info
					iDatum_duplicate(&result->value, cgcVersion4Text, -1);
				}

			} else {
				result = iVariable_create(_VAR_TYPE_S32, NULL, true);
				if (index == 2)
				{
					// 0=runtime, 1=standard, 2=professional
					*(s32*)result->value.data = gnVersion2;	// Oh yeah!

				} else if (index == 3) {
					// Localized version
					*(s32*)result->value.data = gnVersion3;	// English

				} else {
					// Version in a form like Major.Minor as M.mm, or 123 for version 1.23
					*(s32*)result->value.data = gnVersion5;
				}
			}
			if (!result)
			{
				iError_report(cgcInternalError, false);
				return;
			}


		//////////
        // Return our converted result
		//////
			rpar->rp[0] = result;

    }
Пример #6
0
//////////
//
// Create a new font
//
//////
	SFont* iFont_create(cu8* tcFontName, u32 tnFontSize, u32 tnFontWeight, u32 tnItalics, u32 tnUnderline)
	{
		s32		lnLength;
		u32		lnI;
		SFont*	font;
		SFont*	fontFirstUnused;


		//////////
		// Make sure
		//////
			if (!gFonts)
				iBuilder_createAndInitialize(&gFonts);


		//////////
		// See if there is an unused slot
		//////
			fontFirstUnused	= NULL;
			lnLength		= (s32)strlen((s8*)tcFontName);
			for (lnI = 0; lnI < gFonts->populatedLength; lnI += sizeof(SFont))
			{
				// Grab the pointer
				font = (SFont*)(gFonts->data_u8 + lnI);

				// If used
				if (!font->isUsed)
				{
					// Mark this one if we haven't found a free slot yet
					fontFirstUnused = font;
					break;
				}
			}


		//////////
		// Allocate a new pointer
		//////
			if (!fontFirstUnused)		font = (SFont*)iBuilder_allocateBytes(gFonts, sizeof(SFont));
			else						font = fontFirstUnused;

			// Double-check
			if (!font)
				return(font);

			// Initialize
			memset(font, 0, sizeof(SFont));


		//////////
		// Populate
		//////
			font->isUsed					= true;
			font->hdc						= CreateCompatibleDC(GetDC(GetDesktopWindow()));
			iDatum_duplicate(&font->name, tcFontName, lnLength + 1);
			font->_size						= tnFontSize;
			font->_weight					= tnFontWeight;
			font->_italics					= tnItalics;
			font->_underline				= tnUnderline;
			font->isItalic					= ((tnItalics == 0)				? false : true);
			font->isBold					= ((tnFontWeight > FW_NORMAL)	? true : false);
			font->isUnderline				= ((tnUnderline == 0)			? false : true);
			iiFont_refresh(font);


		// Indicate our success
		return(font);
	}
Пример #7
0
//////////
//
// Function: LEFT()
// Returns the left N characters of a string.
//
//////
// Version 0.57
// Last update:
//     Jul.12.2014
//////
// Change log:
//     Jul.12.2014 - Initial creation
//////
// Parameters:
//     pString		-- Character, the string to trim
//     pCount		-- Numeric, the number of characters to copy
//
//////
// Returns:
//    Character		-- The string of the left N characters
//////
	void function_left(SThisCode* thisCode, SFunctionParms* rpar)
	{
		SVariable*	varString	= rpar->params[0];
		SVariable*	varCount	= rpar->params[1];
		s32			lnLength;
		u32			errorNum;
		bool		error;
        SVariable*	result;


		//////////
		// Parameter 1 must be character
		//////
			rpar->returns[0] = NULL;
			if (!iVariable_isValid(varString) || iVariable_getType(varString) != _VAR_TYPE_CHARACTER)
			{
				iError_reportByNumber(thisCode, _ERROR_P1_IS_INCORRECT, iVariable_getRelatedComp(thisCode, varString), false);
				return;
			}


		//////////
		// Parameter 2 must be numeric
		//////
			if (!iVariable_isValid(varCount) || !iVariable_isTypeNumeric(varCount))
			{
				iError_reportByNumber(thisCode, _ERROR_P2_IS_INCORRECT, iVariable_getRelatedComp(thisCode, varCount), false);
				return;
			}


		//////////
        // Find out how long they want our string to be
		//////
			lnLength = iiVariable_getAs_s32(thisCode, varCount, false, &error, &errorNum);
			if (error)
			{
				iError_reportByNumber(thisCode, errorNum, iVariable_getRelatedComp(thisCode, varCount), false);
				return;
			}


		//////////
        // Create our return result
		//////
	        result = iVariable_create(thisCode, _VAR_TYPE_CHARACTER, NULL, true);
			if (!result)
			{
				iError_report(thisCode, cgcInternalError, false);
				return;
			}


		//////////
        // Copy as much of the source string as will fit
		//////
			if (lnLength > 0)
				iDatum_duplicate(&result->value, varString->value.data_u8, min(varString->value.length, lnLength));


		//////////
        // Return our converted result
		//////
			rpar->returns[0] = result;

	}
Пример #8
0
//////////
//
// Called to create the global system variables
//
//////
	void iVjr_init_createGlobalSystemVariables(void)
	{
		s8				lnVal_s8;
		s32				lnVal_s32;
		f32				lfVal_f32;
		SFunctionParams	lsrpar;


		//////////
		// _startupTime
		//////
			memset(&lsrpar, 0, sizeof(lsrpar));
			function_datetime(NULL, &lsrpar);
			varStartupTime = lsrpar.rp[0];
			iDatum_duplicate(&varStartupTime->name, cgcName_startupTime, -1);
			iLl_appendExistingNodeAtBeginning((SLL**)&varGlobals, (SLL*)varStartupTime);


		//////////
		// The rest...
		//////
			iiVjr_init_createGlobalSystemVariable(&varAlignment,		_VAR_TYPE_CHARACTER,	cgcName_alignment,		(cs8*)&cgc_left[0], sizeof(cgc_left) - 1);
			iiVjr_init_createGlobalSystemVariable(&varAsciiCols,		_VAR_TYPE_S32,			cgcName_asciicols);
			iiVjr_init_createGlobalSystemVariable(&varAsciiRows,		_VAR_TYPE_S32,			cgcName_asciirows);
			iiVjr_init_createGlobalSystemVariable(&varAssist,			_VAR_TYPE_CHARACTER,	cgcName_assist);
			lnVal_s8 = _LOGICAL_TRUE;
			iiVjr_init_createGlobalSystemVariable(&varBox,				_VAR_TYPE_LOGICAL,		cgcName_box,			(cs8*)&lnVal_s8,	1);
			iiVjr_init_createGlobalSystemVariable(&varBeautify,			_VAR_TYPE_CHARACTER,	cgcName_beautify);
			iiVjr_init_createGlobalSystemVariable(&varBrowser,			_VAR_TYPE_CHARACTER,	cgcName_browser);
			iiVjr_init_createGlobalSystemVariable(&varBuilder,			_VAR_TYPE_CHARACTER,	cgcName_builder);
			iiVjr_init_createGlobalSystemVariable(&varCalcMem,			_VAR_TYPE_F64,			cgcName_calcmem);
			iiVjr_init_createGlobalSystemVariable(&varCalcValue,		_VAR_TYPE_F64,			cgcName_calcvalue);
			iiVjr_init_createGlobalSystemVariable(&varCliptext,			_VAR_TYPE_CHARACTER,	cgcName_cliptext);
			iiVjr_init_createGlobalSystemVariable(&varCodesense,		_VAR_TYPE_CHARACTER,	cgcName_codesense);
			iiVjr_init_createGlobalSystemVariable(&varConverter,		_VAR_TYPE_CHARACTER,	cgcName_converter);
			iiVjr_init_createGlobalSystemVariable(&varCoverage,			_VAR_TYPE_CHARACTER,	cgcName_coverage);
			lnVal_s32 = -1;
			iiVjr_init_createGlobalSystemVariable(&varCurobj,			_VAR_TYPE_S32,			cgcName_curobj,			(cs8*)&lnVal_s32,	4);
			lnVal_s32 = GetDoubleClickTime();
			iiVjr_init_createGlobalSystemVariable(&varDblclick,			_VAR_TYPE_S32,			cgcName_dblclick,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varDiaryDate,		_VAR_TYPE_DATE,			cgcName_diarydate);
			iiVjr_init_createGlobalSystemVariable(&varDos,				_VAR_TYPE_LOGICAL,		cgcName_dos);
			iiVjr_init_createGlobalSystemVariable(&varFoxcode,			_VAR_TYPE_CHARACTER,	cgcName_foxcode);
			iiVjr_init_createGlobalSystemVariable(&varFoxdoc,			_VAR_TYPE_CHARACTER,	cgcName_foxdoc);
			iiVjr_init_createGlobalSystemVariable(&varFoxgraph,			_VAR_TYPE_CHARACTER,	cgcName_foxgraph,		(cs8*)&cgcFoxgraphFilename,		sizeof(cgcFoxgraphFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varFoxref,			_VAR_TYPE_CHARACTER,	cgcName_foxref,			(cs8*)&cgcFoxrefFilename,		sizeof(cgcFoxrefFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varFoxtask,			_VAR_TYPE_CHARACTER,	cgcName_foxtask,		(cs8*)&cgcFoxrefFilename,		sizeof(cgcFoxrefFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGallery,			_VAR_TYPE_CHARACTER,	cgcName_gallery,		(cs8*)&cgcFoxgalleryFilename,	sizeof(cgcFoxgalleryFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGengraph,			_VAR_TYPE_CHARACTER,	cgcName_gengraph,		(cs8*)&cgcGengraphFilename,		sizeof(cgcGengraphFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGenhtml,			_VAR_TYPE_CHARACTER,	cgcName_genhtml,		(cs8*)&cgcGenhtmlFilename,		sizeof(cgcGenhtmlFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGenmenu,			_VAR_TYPE_CHARACTER,	cgcName_genmenu,		(cs8*)&cgcGenmenuFilename,		sizeof(cgcGenmenuFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGenpd,			_VAR_TYPE_CHARACTER,	cgcName_genpd);
			iiVjr_init_createGlobalSystemVariable(&varFoxref,			_VAR_TYPE_CHARACTER,	cgcName_foxref);
			iiVjr_init_createGlobalSystemVariable(&varFoxtask,			_VAR_TYPE_CHARACTER,	cgcName_foxtask);
			iiVjr_init_createGlobalSystemVariable(&varGallery,			_VAR_TYPE_CHARACTER,	cgcName_gallery);
			iiVjr_init_createGlobalSystemVariable(&varGenhtml,			_VAR_TYPE_CHARACTER,	cgcName_genhtml);
			iiVjr_init_createGlobalSystemVariable(&varGenmenu,			_VAR_TYPE_CHARACTER,	cgcName_genmenu);
			iiVjr_init_createGlobalSystemVariable(&varGetexpr,			_VAR_TYPE_CHARACTER,	cgcName_getexpr);
			iiVjr_init_createGlobalSystemVariable(&varGenscrn,			_VAR_TYPE_CHARACTER,	cgcName_genscrn,		(cs8*)&cgcGenscrnFilename,		sizeof(cgcGenscrnFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varGenxtab,			_VAR_TYPE_CHARACTER,	cgcName_genxtab);
			iiVjr_init_createGlobalSystemVariable(&varGetexpr,			_VAR_TYPE_CHARACTER,	cgcName_getexpr);
			lfVal_f32 = 0.5;
			iiVjr_init_createGlobalSystemVariable(&varIncseek,			_VAR_TYPE_S32,			cgcName_incseek,		(cs8*)&lfVal_f32,	4);
			iiVjr_init_createGlobalSystemVariable(&varInclude,			_VAR_TYPE_CHARACTER,	cgcName_include);
			iiVjr_init_createGlobalSystemVariable(&varIndent,			_VAR_TYPE_S32,			cgcName_indent);		// Defaults to 0
			iiVjr_init_createGlobalSystemVariable(&varLmargin,			_VAR_TYPE_S32,			cgcName_lmargin);		// Defaults to 0
			iiVjr_init_createGlobalSystemVariable(&varMac,				_VAR_TYPE_LOGICAL,		cgcName_mac);			// Defaults to .f.
			iiVjr_init_createGlobalSystemVariable(&varMeta1,			_VAR_TYPE_S64,			cgcName_meta1);
			iiVjr_init_createGlobalSystemVariable(&varMeta2,			_VAR_TYPE_S64,			cgcName_meta2);
			iiVjr_init_createGlobalSystemVariable(&varMeta3,			_VAR_TYPE_S64,			cgcName_meta3);
			iiVjr_init_createGlobalSystemVariable(&varMeta4,			_VAR_TYPE_S64,			cgcName_meta4);
			iiVjr_init_createGlobalSystemVariable(&varMeta5,			_VAR_TYPE_CHARACTER,	cgcName_meta5);
			iiVjr_init_createGlobalSystemVariable(&varMeta6,			_VAR_TYPE_CHARACTER,	cgcName_meta6);
			iiVjr_init_createGlobalSystemVariable(&varMeta7,			_VAR_TYPE_LOGICAL,		cgcName_meta7);
			iiVjr_init_createGlobalSystemVariable(&varMeta8,			_VAR_TYPE_LOGICAL,		cgcName_meta8);
			iiVjr_init_createGlobalSystemVariable(&varMeta9,			_VAR_TYPE_LOGICAL,		cgcName_meta9);
			iiVjr_init_createGlobalSystemVariable(&varMenudesigner,		_VAR_TYPE_CHARACTER,	cgcName_menudesigner);
			iiVjr_init_createGlobalSystemVariable(&varMline,			_VAR_TYPE_S32,			cgcName_mline);
			iiVjr_init_createGlobalSystemVariable(&varObjectBrowser,	_VAR_TYPE_CHARACTER,	cgcName_objectbrowser);
			iiVjr_init_createGlobalSystemVariable(&varPadvance,			_VAR_TYPE_CHARACTER,	cgcName_padvance,		(cs8*)&cgcFormfeed[0], sizeof(cgcFormfeed) - 1);
			iiVjr_init_createGlobalSystemVariable(&varPageno,			_VAR_TYPE_S32,			cgcName_pageno);
			iiVjr_init_createGlobalSystemVariable(&varPagetotal,		_VAR_TYPE_S32,			cgcName_pagetotal);
			iiVjr_init_createGlobalSystemVariable(&varPretext,			_VAR_TYPE_CHARACTER,	cgcName_pretext);
			lnVal_s32 = 1;
			iiVjr_init_createGlobalSystemVariable(&varPbpage,			_VAR_TYPE_S32,			cgcName_pbpage,			(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varPcolno,			_VAR_TYPE_S32,			cgcName_pcolno);
			iiVjr_init_createGlobalSystemVariable(&varPcopies,			_VAR_TYPE_S32,			cgcName_pcopies,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varPdriver,			_VAR_TYPE_CHARACTER,	cgcName_pdriver);
			iiVjr_init_createGlobalSystemVariable(&varPdsetup,			_VAR_TYPE_CHARACTER,	cgcName_pdsetup);
			iiVjr_init_createGlobalSystemVariable(&varPecode,			_VAR_TYPE_CHARACTER,	cgcName_pecode);
			iiVjr_init_createGlobalSystemVariable(&varPeject,			_VAR_TYPE_CHARACTER,	cgcName_peject,			(cs8*)&cgcNone[0], sizeof(cgcNone) - 1);
			lnVal_s32 = 32767;
			iiVjr_init_createGlobalSystemVariable(&varPepage,			_VAR_TYPE_S32,			cgcName_pepage,			(cs8*)&lnVal_s32,	4);
			lnVal_s32 = 66;
			iiVjr_init_createGlobalSystemVariable(&varPlength,			_VAR_TYPE_S32,			cgcName_plength,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varPlineno,			_VAR_TYPE_S32,			cgcName_plineno);
			iiVjr_init_createGlobalSystemVariable(&varPloffset,			_VAR_TYPE_S32,			cgcName_ploffset);
			iiVjr_init_createGlobalSystemVariable(&varPpitch,			_VAR_TYPE_CHARACTER,	cgcName_ppitch,			(cs8*)&cgcDefault[0], sizeof(cgcDefault) - 1);
			iiVjr_init_createGlobalSystemVariable(&varPquality,			_VAR_TYPE_LOGICAL,		cgcName_pquality);
			iiVjr_init_createGlobalSystemVariable(&varPretext,			_VAR_TYPE_CHARACTER,	cgcName_pretext);
			iiVjr_init_createGlobalSystemVariable(&varPscode,			_VAR_TYPE_CHARACTER,	cgcName_pscode);
			iiVjr_init_createGlobalSystemVariable(&varPspacing,			_VAR_TYPE_S32,			cgcName_pspacing,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varPwait,			_VAR_TYPE_LOGICAL,		cgcName_pwait);
			iiVjr_init_createGlobalSystemVariable(&varReportBuilder,	_VAR_TYPE_CHARACTER,	cgcName_reportbuilder,	(cs8*)&cgcReportBuilderFilename[0],	sizeof(cgcReportBuilderFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varReportOutput,		_VAR_TYPE_CHARACTER,	cgcName_reportoutput,	(cs8*)&cgcReportOutputFilename[0],	sizeof(cgcReportOutputFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varReportpreview,	_VAR_TYPE_CHARACTER,	cgcName_reportpreview,	(cs8*)&cgcReportPreviewFilename[0],	sizeof(cgcReportPreviewFilename) - 1);
			lnVal_s32 = 80;
			iiVjr_init_createGlobalSystemVariable(&varRmargin,			_VAR_TYPE_S32,			cgcName_rmargin,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varRunactivedoc,		_VAR_TYPE_CHARACTER,	cgcName_runactivedoc,	(cs8*)&cgcRunActiveDocFilename[0],	sizeof(cgcRunActiveDocFilename) - 1);

			iiVjr_init_createGlobalSystemVariable(&varSamples,			_VAR_TYPE_CHARACTER,	cgcName_samples,		(cs8*)&cgcSamples[0],				sizeof(cgcSamples) - 1);
			iiVjr_init_createGlobalSystemVariable(&varScctext,			_VAR_TYPE_CHARACTER,	cgcName_scctext,		(cs8*)&cgcScctextFilename[0],		sizeof(cgcScctextFilename) - 1);
			// varScreen is initialized as _screen system-wide
			iiVjr_init_createGlobalSystemVariable(&varShell,			_VAR_TYPE_CHARACTER,	cgcName_shell);
			iiVjr_init_createGlobalSystemVariable(&varSpellchk,			_VAR_TYPE_CHARACTER,	cgcName_spellchk,		(cs8*)&cgcSpellchkFilename[0],		sizeof(cgcSpellchkFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varStartup,			_VAR_TYPE_CHARACTER,	cgcName_startup,		(cs8*)&cgcStartupPrgFilename[0],	sizeof(cgcStartupPrgFilename) - 1);
			// varStartupTime is set above
			iiVjr_init_createGlobalSystemVariable(&varTabs,				_VAR_TYPE_CHARACTER,	cgcName_tabs);
			iiVjr_init_createGlobalSystemVariable(&varTasklist,			_VAR_TYPE_CHARACTER,	cgcName_tasklist,		(cs8*)&cgcTasklistFilename[0],		sizeof(cgcTasklistFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varTaskpane,			_VAR_TYPE_CHARACTER,	cgcName_taskpane,		(cs8*)&cgcTaskpaneFilename[0],		sizeof(cgcTaskpaneFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varTally,			_VAR_TYPE_S64,			cgcName_tally);
			lnVal_s32 = -1;
			iiVjr_init_createGlobalSystemVariable(&varText,				_VAR_TYPE_CHARACTER,	cgcName_text,			(cs8*)&lnVal_s32,	4);
			lnVal_s32 = 1;
			iiVjr_init_createGlobalSystemVariable(&varThrottle,			_VAR_TYPE_S32,			cgcName_throttle,		(cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varToolbox,			_VAR_TYPE_CHARACTER,	cgcName_toolbox,		(cs8*)&cgcToolboxFilename[0],		sizeof(cgcToolboxFilename) - 1);
			lnVal_s32 = -1;
			iiVjr_init_createGlobalSystemVariable(&varTooltiptimeout,	_VAR_TYPE_S32,			cgcName_tooltiptimeout, (cs8*)&lnVal_s32,	4);
			iiVjr_init_createGlobalSystemVariable(&varTransport,		_VAR_TYPE_CHARACTER,	cgcName_transport);
			iiVjr_init_createGlobalSystemVariable(&varTriggerlevel,		_VAR_TYPE_S32,			cgcName_triggerlevel);
			iiVjr_init_createGlobalSystemVariable(&varUnix,				_VAR_TYPE_LOGICAL,		cgcName_unix);
			// varVfp is initialized as _vjr system-wide
			lnVal_s8 = _LOGICAL_TRUE;
			iiVjr_init_createGlobalSystemVariable(&varWindows,			_VAR_TYPE_LOGICAL,		cgcName_windows,		(cs8*)&lnVal_s8,	1);
			iiVjr_init_createGlobalSystemVariable(&varWizard,			_VAR_TYPE_CHARACTER,	cgcName_wizard,			(cs8*)&cgcWizardFilename[0],		sizeof(cgcWizardFilename) - 1);
			iiVjr_init_createGlobalSystemVariable(&varWrap,				_VAR_TYPE_LOGICAL,		cgcName_wrap,			".F." );

	}
Пример #9
0
void iiDatum_duplicate_fromComp(SDatum* datum, SComp* comp)
{
    iDatum_duplicate(datum, comp->line->sourceCode->data_cs8 + comp->start, comp->length);
}
Пример #10
0
void iDatum_duplicate_fromComp(SDatum* datum, SComp* comp)
{
    // Make sure our environment is sane
    if (datum && comp && comp->line && comp->line->sourceCode && comp->line->sourceCode->data_cs8 && comp->length != 0)
        iDatum_duplicate(datum, comp->line->sourceCode->data_cs8 + comp->start, comp->length);
}
Пример #11
0
void iDatum_duplicate(SDatum* datumDst, SDatum* datumSrc)
{
    // Make sure our environment is sane
    if (datumDst && datumSrc && datumSrc->data)
        iDatum_duplicate(datumDst, datumSrc->data_u8, datumSrc->length);
}
Пример #12
0
void iDatum_duplicate(SDatum* datum, cs8* data, s32 dataLength)
{
    iDatum_duplicate(datum, (u8*)data, dataLength);
}