System/Mod/Config.odc

MODULE Config;
(* настройка конфигурации Блэкбокса при запуске:
	после изменений скомпилировать и перезагрузить Блэкбокс
*)
	IMPORT Dialog, Converters, OleData, HostDialog, StdCmds, StdLog;

	PROCEDURE Setup*;
		VAR res: INTEGER;
	BEGIN
		Converters.Register("HostTextConv.ImportText", "HostTextConv.ExportText", "TextViews.View", "txt", {Converters.importAll});
		Converters.Register("HostTextConv.ImportRichText", "HostTextConv.ExportRichText", "TextViews.View", "rtf", {});
		Converters.Register("HostTextConv.ImportUnicode", "HostTextConv.ExportUnicode", "TextViews.View", "utf", {});
		Converters.Register("HostTextConv.ImportDosText", "", "TextViews.View", "txt", {});
		Converters.Register("i21sysKoi8r.ImportKoi8rText", "", "TextViews.View", "txt", {}); (* Ф.В.Ткачев 2010-03-16 *)
		Converters.Register("HostTextConv.ImportHex", "", "TextViews.View", "dat", {Converters.importAll});
		Converters.Register("HostTextConv.ImportText", "HostTextConv.ExportText", "TextViews.View", "xml", {});
		Converters.Register("HostTextConv.ImportText", "HostTextConv.ExportText", "TextViews.View", "html", {});
		Converters.Register("DevBrowser.ImportSymFile", "", "TextViews.View", "osf", {});
		Converters.Register("DevBrowser.ImportCodeFile", "", "TextViews.View", "ocf", {});
		Converters.Register("HostBitmaps.ImportBitmap", "HostBitmaps.ExportBitmap", "HostBitmaps.StdView", "bmp", {});
		Converters.Register("StdETHConv.ImportETHDoc", "", "TextViews.View", "eth", {Converters.importAll});
		Converters.Register("", "XhtmlExporter.ExportText", "TextViews.View", "html", {});

		OleData.Register("OleData.ImportInfo", "OleData.ExportInfo", "BlackBox Info", "", {OleData.info});
		OleData.Register("OleData.ImportNative", "OleData.ExportNative", "BlackBox Data", "", {});
		OleData.Register("", "HostTextConv.ExportDRichText", "Rich Text Format", "TextViews.View", {});
		OleData.Register("OleClient.ImportInfo", "OleClie25nt.ExportInfo", "Object Descriptor", "", {OleData.info});
		OleData.Register("", "OleClient.Export", "Embedded Object", "OleClient.View", {OleData.storage});
		OleData.Register("OleClient.Import", "OleServer.Export", "Embed Source", "", {OleData.storage});
		OleData.Register("OleClient.Import", "", "Embedded Object", "", {OleData.storage});
		OleData.Register("HostTextConv.ImportDRichText", "", "Rich Text Format", "TextViews.View", {});
		OleData.Register("HostTextConv.ImportDUnicode", "HostTextConv.ExportDUnicode", "UNICODETEXT", "TextViews.View", {});
		OleData.Register("HostTextConv.ImportDText", "HostTextConv.ExportDText", "TEXT", "TextViews.View", {});
		OleData.Register("HostPictures.ImportDPict", "HostPictures.ExportDPict", "METAFILEPICT", "HostPictures.View", {});
		OleData.Register("HostBitmaps.ImportDBitmap", "HostBitmaps.ExportDBitmap", "BITMAP", "HostBitmaps.View", {});
		OleData.Register("HostBitmaps.ImportDPictAsBitmap", "", "METAFILEPICT", "HostBitmaps.View", {});
		OleData.Register("", "OleData.ExportPicture", "METAFILEPICT", "", {});

		OleData.Register("", "i21sysBitmaps.ExportD", "BITMAP", "", {}); (* Ф.В.Ткачев 2008-02-16 *)
		
(* Добавление ООО ОЦПИ "Метасистемы": "... при первом же запуске среды настройки шрифтов сохраняются в реестр. Это решает проблему, при которой на "чистой" машине для нормального отображения русского текста надо хотя бы раз выбрать шрифты в диалоге настроек." *)
		HostDialog.InitPrefDialog;
		HostDialog.PrefOk;
		StdCmds.CloseDialog;
		
(* [не]нужное [за|рас]комментить, скомпилировать, перезагрузить Блэкбокс: *)
(*
		Dialog.Call("StdLog.Open", "", res); (* форсируется окно Log *)
*)
		(* восстановление конфигурации открытых документов и окон: *)
		Dialog.Call('i21sysDesktop.Restore','', res);  (* --Ф.В.Ткачев 2009-11-16 *)
		StdLog.String( "BlackBox Component Builder v.1.5" );  StdLog.Ln;
		StdLog.String( "Школьная версия от проекта Информатика-21, 2012-11-09" );  StdLog.Ln;
(*
		StdLog.String( "Basic version from Informatika-21, 2012-11-09" );  StdLog.Ln;
		StdLog.String( "Базовая версия от проекта Информатика-21, 2012-11-09" );  StdLog.Ln;
		StdLog.String( "Университетская версия от проекта Информатика-21 2012-09-30" );  StdLog.Ln;
*)

		Dialog.Call("i21sysEdit.SetLanguage('ru')",'', res); (*русский словарик в "умном" редакторе*)
		Dialog.Call("i21sysCompiler.ToggleIndentChecks",'', res); (*включение автоматических проверок отступов*)
(*
		Dialog.Call("i21sysEdit.SetLanguage('')",'', res); (*очистить словарик в "умном" редакторе*)
		Dialog.BeepsOff; (* предотвратить зависания на ноуте --фт 2011-12-12 *)
*)
(*
		StdLog.String( "Enjoy!" );  StdLog.Ln;
*)
		StdLog.String( "Успехов в алгоритмике!" );  StdLog.Ln;
	END Setup;

END Config.