Пример #1
0
        public void LoadProfile(string s)
        {
            foreach (xcProfile ip in ImgProfile.LoadFile(s))
            {
                loadedTypes.Add(ip);
            }

            osFilter.SetFilter(IXCImageFile.Filter.Open);
            openDictionary.Clear();
            openFile.Filter = loadedTypes.CreateFilter(osFilter, openDictionary);
        }
Пример #2
0
		public PckViewForm()
		{
			InitializeComponent();

			#region shared space information
			sharedSpace = SharedSpace.Instance;

			if (sharedSpace.GetObj("xConsole") == null)
			{
				console = (ConsoleForm)sharedSpace.GetObj("xConsole", new ConsoleForm());
				console.FormClosing += delegate(object sender, FormClosingEventArgs e)
				{
					e.Cancel = true;
					console.Hide();
				};
			}
			console.Show();

			sharedSpace.GetObj("PckView",this);
			sharedSpace.GetObj("AppDir", Environment.CurrentDirectory);
			sharedSpace.GetObj("CustomDir", Environment.CurrentDirectory + "\\custom");
			sharedSpace.GetObj("SettingsDir", Environment.CurrentDirectory + "\\settings");	
		


			xConsole.AddLine("Current directory: " + sharedSpace["AppDir"]);
			xConsole.AddLine("Custom directory: " + sharedSpace["CustomDir"].ToString());
			#endregion

			v = TotalViewPck.Instance;
			v.Dock = DockStyle.Fill;
			this.Controls.Add(v);

			v.View.DoubleClick += new EventHandler(doubleClick);
			v.ViewClicked += new PckViewMouseClicked(viewClicked);
			v.XCImageCollectionSet += new XCImageCollectionHandler(v_XCImageCollectionSet);
			v.ContextMenu = makeContextMenu();

			sharedSpace["Palettes"] = new Dictionary<string, Palette>();
			palMI = new Dictionary<Palette, MenuItem>();
			selectedMI = AddPalette(Palette.TFTDBattle, miPalette);
			AddPalette(Palette.TFTDGeo, miPalette);
			AddPalette(Palette.TFTDGraph, miPalette);
			AddPalette(Palette.TFTDResearch, miPalette);
			AddPalette(Palette.UFOBattle, miPalette);
			AddPalette(Palette.UFOGeo, miPalette);
			AddPalette(Palette.UFOGraph, miPalette);
			AddPalette(Palette.UFOResearch, miPalette);

			editor = new Editor(null);
			editor.Closing += new CancelEventHandler(editorClosing);

			currPal = Palette.TFTDBattle;

			RegistryInfo ri = new RegistryInfo(this, "PckView");
			ri.AddProperty("FilterIndex");
			ri.AddProperty("SelectedPalette");

			if (!File.Exists("hq2xa.dll"))
				miHq2x.Visible = false;

			loadedTypes = new LoadOfType<IXCImageFile>();
			loadedTypes.OnLoad += new LoadOfType<IXCImageFile>.TypeLoadDelegate(loadedTypes_OnLoad);
			sharedSpace["ImageMods"] = loadedTypes.AllLoaded;

			//loadedTypes.OnLoad += new LoadOfType<IXCFile>.TypeLoadDelegate(sortLoaded);

			loadedTypes.LoadFrom(Assembly.GetExecutingAssembly());
			loadedTypes.LoadFrom(Assembly.GetAssembly(typeof(XCom.Interfaces.IXCImageFile)));			

			if (Directory.Exists(sharedSpace["CustomDir"].ToString()))
			{
				//Console.WriteLine("Custom directory exists: "+sharedSpace["CustomDir"].ToString());
				xConsole.AddLine("Custom directory exists: " + sharedSpace["CustomDir"].ToString());
				foreach (string s in Directory.GetFiles(sharedSpace["CustomDir"].ToString()))
					if (s.EndsWith(".dll"))
					{
						xConsole.AddLine("Loading dll: " + s);
						loadedTypes.LoadFrom(Assembly.LoadFrom(s));
					}
					else if (s.EndsWith(xcProfile.PROFILE_EXT))
						foreach (xcProfile ip in ImgProfile.LoadFile(s))
							loadedTypes.Add(ip);
			}

			osFilter = new OpenSaveFilter();
			osFilter.SetFilter(IXCImageFile.Filter.Open);

			openDictionary = new Dictionary<int, IXCImageFile>();
			saveDictionary = new Dictionary<int, IXCImageFile>();

			osFilter.SetFilter(IXCImageFile.Filter.Open);
			string filter = loadedTypes.CreateFilter(osFilter, openDictionary);
			openFile.Filter = filter;
		}
Пример #3
0
        public PckViewForm()
        {
            InitializeComponent();

            #region shared space information

            var consoleSharedSpace = new ConsoleSharedSpace(new SharedSpace());
            console              = consoleSharedSpace.GetNewConsole();
            console.FormClosing += delegate(object sender, FormClosingEventArgs e)
            {
                e.Cancel = true;
                console.Hide();
            };
            FormClosed += (sender, e) => console.Close();

            sharedSpace = SharedSpace.Instance;
            sharedSpace.GetObj("PckView", this);
            sharedSpace.GetObj("AppDir", Environment.CurrentDirectory);
            sharedSpace.GetObj("CustomDir", Environment.CurrentDirectory + "/custom");
            sharedSpace.GetObj("SettingsDir", Environment.CurrentDirectory + "/settings");

            xConsole.AddLine("Current directory: " + sharedSpace["AppDir"]);
            xConsole.AddLine("Custom directory: " + sharedSpace["CustomDir"].ToString());
            #endregion

            _totalViewPck      = new TotalViewPck();
            _totalViewPck.Dock = DockStyle.Fill;
            DrawPanel.Controls.Add(_totalViewPck);

            _totalViewPck.View.DoubleClick     += new EventHandler(doubleClick);
            _totalViewPck.ViewClicked          += new PckViewMouseClicked(viewClicked);
            _totalViewPck.XCImageCollectionSet += new XCImageCollectionHandler(v_XCImageCollectionSet);
            _totalViewPck.ContextMenu           = makeContextMenu();

            SaveMenuItem.Visible = false;

            sharedSpace["Palettes"] = new Dictionary <string, Palette>();
            palMI = new Dictionary <Palette, MenuItem>();

            AddPalette(Palette.UFOBattle, miPalette);
            AddPalette(Palette.UFOGeo, miPalette);
            AddPalette(Palette.UFOGraph, miPalette);
            AddPalette(Palette.UFOResearch, miPalette);
            AddPalette(Palette.TFTDBattle, miPalette);
            AddPalette(Palette.TFTDGeo, miPalette);
            AddPalette(Palette.TFTDGraph, miPalette);
            AddPalette(Palette.TFTDResearch, miPalette);

            currPal = Palette.UFOBattle;
//			currPal = Palette.TFTDBattle;

            palMI[currPal].Checked = true;              // kL_ufoPalette
            _totalViewPck.Pal      = currPal;           // kL_ufoPalette

            editor          = new Editor(null);
            editor.Closing += new CancelEventHandler(editorClosing);

            if (editor != null)                                 // kL_ufoPalette
            {
                editor.Palette = currPal;                       // kL_ufoPalette
            }
            RegistryInfo ri = new RegistryInfo(this, "PckView");
            ri.AddProperty("FilterIndex");
            ri.AddProperty("SelectedPalette");

            if (!File.Exists("hq2xa.dll"))
            {
                miHq2x.Visible = false;
            }

            loadedTypes         = new LoadOfType <IXCImageFile>();
            loadedTypes.OnLoad += new LoadOfType <IXCImageFile> .TypeLoadDelegate(loadedTypes_OnLoad);

            sharedSpace["ImageMods"] = loadedTypes.AllLoaded;

//			loadedTypes.OnLoad += new LoadOfType<IXCFile>.TypeLoadDelegate(sortLoaded);

            loadedTypes.LoadFrom(Assembly.GetExecutingAssembly());
            loadedTypes.LoadFrom(Assembly.GetAssembly(typeof(XCom.Interfaces.IXCImageFile)));

            if (Directory.Exists(sharedSpace["CustomDir"].ToString()))
            {
                //Console.WriteLine("Custom directory exists: " + sharedSpace["CustomDir"].ToString());
                xConsole.AddLine("Custom directory exists: " + sharedSpace["CustomDir"].ToString());
                foreach (string s in Directory.GetFiles(sharedSpace["CustomDir"].ToString()))
                {
                    if (s.EndsWith(".dll"))
                    {
                        xConsole.AddLine("Loading dll: " + s);
                        loadedTypes.LoadFrom(Assembly.LoadFrom(s));
                    }
                    else if (s.EndsWith(xcProfile.PROFILE_EXT))
                    {
                        foreach (xcProfile ip in ImgProfile.LoadFile(s))
                        {
                            loadedTypes.Add(ip);
                        }
                    }
                }
            }

            osFilter = new OpenSaveFilter();
            osFilter.SetFilter(IXCImageFile.Filter.Open);

            openDictionary = new Dictionary <int, IXCImageFile>();
            saveDictionary = new Dictionary <int, IXCImageFile>();

            osFilter.SetFilter(IXCImageFile.Filter.Open);
            string filter = loadedTypes.CreateFilter(osFilter, openDictionary);
            openFile.Filter = filter;
        }