Ejemplo n.º 1
0
void FileViewer::Init(const wchar_t *name,int EnableSwitch,int disableHistory, ///
                      long ViewStartPos,const wchar_t *PluginData,
                      NamesList *ViewNamesList,int ToSaveAs)
{
	RedrawTitle = FALSE;
	ViewKeyBar.SetOwner(this);
	ViewKeyBar.SetPosition(X1,Y2,X2,Y2);
	KeyBarVisible = Opt.ViOpt.ShowKeyBar;
	TitleBarVisible = Opt.ViOpt.ShowTitleBar;
	int OldMacroMode=CtrlObject->Macro.GetMode();
	MacroMode = MACRO_VIEWER;
	CtrlObject->Macro.SetMode(MACRO_VIEWER);
	View.SetPluginData(PluginData);
	View.SetHostFileViewer(this);
	DisableHistory=disableHistory; ///
	strName = name;
	SetCanLoseFocus(EnableSwitch);
	SaveToSaveAs=ToSaveAs;
	InitKeyBar();

	if (!View.OpenFile(strName,TRUE)) // $ 04.07.2000 tran + add TRUE as 'warning' parameter
	{
		DisableHistory = TRUE;  // $ 26.03.2002 DJ - при неудаче открытия - не пишем мусор в историю
		// FrameManager->DeleteFrame(this); // ЗАЧЕМ? Вьювер то еще не помещен в очередь манагера!
		ExitCode=FALSE;
		CtrlObject->Macro.SetMode(OldMacroMode);
		return;
	}

	if (ViewStartPos!=-1)
		View.SetFilePos(ViewStartPos);

	if (ViewNamesList)
		View.SetNamesList(ViewNamesList);

	ExitCode=TRUE;
	ViewKeyBar.Show();

	if (!Opt.ViOpt.ShowKeyBar)
		ViewKeyBar.Hide0();

	ShowConsoleTitle();
	AutoClose = false;
	F3KeyOnly = true;

	if (EnableSwitch)
	{
		FrameManager->InsertFrame(this);
	}
	else
	{
		FrameManager->ExecuteFrame(this);
	}
}
Ejemplo n.º 2
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);
	}
}
Ejemplo n.º 3
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;
}
Ejemplo n.º 4
0
		void SetEnableF6(int AEnable) { DisableEdit = !AEnable; InitKeyBar(); }
Ejemplo n.º 5
0
		/* $ 17.08.2001 KM
		  Добавлено для поиска по AltF7. При редактировании найденного файла из
		  архива для клавиши F2 сделать вызов ShiftF2.
		*/
		void SetSaveToSaveAs(int ToSaveAs) { SaveToSaveAs=ToSaveAs; InitKeyBar(); }
Ejemplo n.º 6
0
		// Добавлено для поиска по AltF7. При редактировании найденного файла из
		// архива для клавиши F2 сделать вызов ShiftF2.
		void SetSaveToSaveAs(int ToSaveAs) { Flags.Change(FFILEEDIT_SAVETOSAVEAS,ToSaveAs); InitKeyBar(); }
Ejemplo n.º 7
0
		void SetEnableF6(int AEnableF6) { Flags.Change(FFILEEDIT_ENABLEF6,AEnableF6); InitKeyBar(); }
Ejemplo n.º 8
0
	/* $ 17.08.2001 KM
		Добавлено для поиска по AltF7. При редактировании найденного файла из
		архива для клавиши F2 сделать вызов ShiftF2.
	*/
	void SetSaveToSaveAs(bool ToSaveAs) { SaveToSaveAs=ToSaveAs; InitKeyBar(); }
Ejemplo n.º 9
0
	// Добавлено для поиска по AltF7. При редактировании найденного файла из
	// архива для клавиши F2 сделать вызов ShiftF2.
	void SetSaveToSaveAs(bool ToSaveAs) { m_Flags.Change(FFILEEDIT_SAVETOSAVEAS, ToSaveAs); InitKeyBar(); }
Ejemplo n.º 10
0
	void SetEnableF6(bool AEnableF6) { m_Flags.Change(FFILEEDIT_ENABLEF6, AEnableF6); InitKeyBar(); }