Example #1
0
HMenu::HMenu(HMenuData *Item,int ItemCount):
	SubMenu(nullptr),
	Item(Item),
	ItemCount(ItemCount),
	VExitCode(-1)
{
	SetDynamicallyBorn(FALSE);
	SetRestoreScreenMode(TRUE);
	FrameManager->ModalizeFrame(this);
}
Example #2
0
void Search::init()
{
	SetMacroMode(MACROAREA_SEARCH);
	SetRestoreScreenMode(true);

	m_FindEdit = std::make_unique<EditControl>(shared_from_this(), this);
	m_FindEdit->SetEditBeyondEnd(false);
	m_FindEdit->SetObjectColor(COL_DIALOGEDIT);

	InitPositionAndSize();
}
Example #3
0
FolderTree::FolderTree(string &strResultFolder,int iModalMode,int IsStandalone,bool IsFullScreen):
	Tree(nullptr),
	FindEdit(nullptr),
	ModalMode(iModalMode),
	IsFullScreen(IsFullScreen),
	IsStandalone(IsStandalone),
	PrevMacroMode(CtrlObject->Macro.GetMode())
{
	SetDynamicallyBorn(FALSE);
	SetRestoreScreenMode(TRUE);
	if (ModalMode != MODALTREE_FREE)
		strResultFolder.Clear();
	KeyBarVisible = TRUE;  // Заставим обновлятся кейбар
	//TopScreen=new SaveScreen;
	SetCoords();

	if ((Tree=new TreeList(FALSE)))
	{
		CtrlObject->Macro.SetMode(MACRO_FINDFOLDER);
		MacroMode = MACRO_FINDFOLDER;
		strLastName.Clear();
		Tree->SetModalMode(ModalMode);
		Tree->SetPosition(X1,Y1,X2,Y2);

		if (ModalMode == MODALTREE_FREE)
			Tree->SetRootDir(strResultFolder);

		Tree->SetVisible(TRUE);
		Tree->Update(0);

		// если было прерывание в процессе сканирования и это было дерево копира...
		if (Tree->GetExitCode())
		{
			if (!(FindEdit=new Edit))
			{
				SetExitCode(XC_OPEN_ERROR);
				return;
			}

			FindEdit->SetEditBeyondEnd(FALSE);
			FindEdit->SetPersistentBlocks(Global->Opt->Dialogs.EditBlock);
			InitKeyBar();
			FrameManager->ExecuteModal(this); //OT
		}

		strResultFolder = strNewFolder;
	}
	else
	{
		SetExitCode(XC_OPEN_ERROR);
	}
}
Example #4
0
void FolderTree::init(string &strResultFolder)
{
	m_windowKeyBar = std::make_unique<KeyBar>(shared_from_this());

	SetRestoreScreenMode(true);
	if (ModalMode != MODALTREE_FREE)
		strResultFolder.clear();
	m_KeyBarVisible = TRUE;  // Заставим обновляться кейбар
	//TopScreen=new SaveScreen;
	SetCoords();

	Tree.reset(new TreeList(nullptr, false));

		SetMacroMode(MACROAREA_FINDFOLDER);
		strLastName.clear();
		Tree->SetModalMode(ModalMode);
		Tree->SetPosition(m_X1,m_Y1,m_X2,m_Y2);

		if (ModalMode == MODALTREE_FREE)
			Tree->SetRootDir(strResultFolder);

		Tree->SetVisible(true);
		Tree->Update(0);

		// если было прерывание в процессе сканирования и это было дерево копира...
		if (Tree->GetExitCode())
		{
			FindEdit = std::make_unique<EditControl>(shared_from_this(),shared_from_this().get());
			FindEdit->SetEditBeyondEnd(false);
			FindEdit->SetPersistentBlocks(Global->Opt->Dialogs.EditBlock);
			InitKeyBar();
			Global->WindowManager->ExecuteWindow(shared_from_this()); //OT
			Global->WindowManager->ExecuteModal(shared_from_this()); //OT
		}

		strResultFolder = strNewFolder;
}