void FormUndoProxy::Undo( void )
		{
			Parent->CopyFrom(Buffer);

			if (EditorID.length())
			{
				if (_stricmp(EditorID.c_str(), Parent->GetEditorID()))
				{

					if (TESForm::LookupByEditorID(EditorID.c_str()) == nullptr)
					{
						// copy editorID if it's been changed and no other form's using it
						if (Parent->SetEditorID(EditorID.c_str()) == false)
						{
							BGSEEUNDOSTACK->Print("Couldn't copy editorID from undo proxy to form %08X", GetFormID());
						}
					}
					else
					{
						BGSEEUNDOSTACK->Print("Couldn't undo editorID for proxy %08X - Old editorID is in use", GetFormID());
					}
				}
			}

			Parent->SetFromActiveFile(Modified);
		}
Example #2
0
Boolean CLoadForm::OnRun(EventPtr pEvent, Boolean& bHandled)
{
   if (!checkSelectedDBRecord()) { return true; }
   copySelectedDBRecord();
   CIRexxApp* pApp = (CIRexxApp *)CIRexxApp::GetInstance();
   pApp->setLoadPosition(m_grid.GetSelection());
   pApp->BALR(GetFormID(), ConsoleForm);
   return true;
}
Example #3
0
ScriptToken* ScriptToken::ToBasicToken() const
{
	if (CanConvertTo(kTokenType_String))
		return Create(GetString());
	else if (CanConvertTo(kTokenType_Array))
		return CreateArray(GetArray());
	else if (CanConvertTo(kTokenType_Form))
		return CreateForm(GetFormID());
	else if (CanConvertTo(kTokenType_Number))
		return Create(GetNumber());
	else
		return NULL;
}
Example #4
0
Boolean CLoadForm::OnRunWithArgs(EventPtr pEvent, Boolean& bHandled)
{
   if (!checkSelectedDBRecord()) { return true; }
   copySelectedDBRecord();
   CArgsForm frmArgs;
   if (frmArgs.DoModal()) {
      CIRexxApp* pApp = (CIRexxApp *)CIRexxApp::GetInstance();
      pApp->setArgs(frmArgs.m_strArgsField, frmArgs.m_strArgsField.GetLength());
      pApp->setLoadPosition(m_grid.GetSelection());
      pApp->BALR(GetFormID(), ConsoleForm);
   }
   return true;
}