public void InitExplorerSettings() { folderView.Nodes.Clear(); game = GameStorage.Instance.GetSelectedGame(); pcDirectory = new DirectoryInfo(game.Directory); launcher = new FileInfo(pcDirectory.FullName + "/" + GameStorage.GetExecutableName(game.GameType)); if (!launcher.Exists) { DialogResult result = MessageBox.Show("Could not find executable! Would you like to change the selected game?", "Toolkit", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); if (result == DialogResult.OK) { OpenGameSelectorWindow(); } //Close(); return; } InitTreeView(); string path = pcDirectory.FullName + "/edit/tables/FrameProps.bin"; if (File.Exists(path)) { FileInfo info = new FileInfo(path); FrameProps props = new FrameProps(info); SceneData.FrameProperties = props; } }
public void InitExplorerSettings() { folderView.Nodes.Clear(); if (string.IsNullOrEmpty(ToolkitSettings.M2Directory)) { GetPath(); } originalPath = new DirectoryInfo(ToolkitSettings.M2Directory); //check if directory exists. if (!originalPath.Exists) { PrintErrorLauncher(); GetPath(); return; } bool hasLauncher = false; foreach (FileInfo file in originalPath.GetFiles()) { //check for either steam or gog version. if ((file.Name.ToLower() == "launcher") || (file.Name.ToLower() == "launcher.exe") || (file.Name.ToLower() == "launch mafia ii") || (file.Name.ToLower() == "launch mafia ii.lnk")) { hasLauncher = true; launcher = file; break; } } if (!hasLauncher) { PrintErrorLauncher(); GetPath(); return; } InitTreeView(); string path = originalPath.FullName + "/edit/tables/FrameProps.bin"; if (File.Exists(path)) { FileInfo info = new FileInfo(path); FrameProps props = new FrameProps(info); SceneData.FrameProperties = props; } }
protected override void OnElementChanged(ElementChangedEventArgs <Frame> e) { base.OnElementChanged(e); if (e.NewElement != null) { double borderWidth = FrameProps.GetBorderWidth(e.NewElement); if (borderWidth != (double)FrameProps.BorderWidthProperty.DefaultValue) { Control.BorderThickness = new Windows.UI.Xaml.Thickness(borderWidth); } } }
protected override void OnElementChanged(ElementChangedEventArgs <Frame> e) { base.OnElementChanged(e); if (e.NewElement != null) { double borderWidth = FrameProps.GetBorderWidth(e.NewElement); Color borderColor = e.NewElement.BorderColor; if (borderWidth != (double)FrameProps.BorderWidthProperty.DefaultValue && borderColor.IsDefault == false) { GradientDrawable _backgroundDrawable = (GradientDrawable)typeof(Xamarin.Forms.Platform.Android.FastRenderers.FrameRenderer) .GetField(nameof(_backgroundDrawable), BindingFlags.Instance | BindingFlags.NonPublic) .GetValue(this); DisplayMetrics displayMetrics = Context.Resources.DisplayMetrics; int borderWidthInPixel = (int)Math.Round(borderWidth * (displayMetrics.Xdpi / (int)DisplayMetricsDensity.Default)); _backgroundDrawable.SetStroke(borderWidthInPixel, borderColor.ToAndroid()); } } }
//Improve this, its bad. private void HandleFile(ListViewItem item) { if (ToolkitSettings.UseSDSToolFormat) { switch (item.SubItems[1].Text) { case "Directory": OpenDirectory((DirectoryInfo)item.Tag); return; case "SDS Archive": OpenSDS((FileInfo)item.Tag); break; default: Process.Start(((FileInfo)item.Tag).FullName); break; } return; } MaterialTool mTool; CollisionEditor cTool; ActorEditor aTool; PrefabLoader prefabs; SpeechEditor sTool; CutsceneLoader cutscene; IOFxFile iofx; EmitterFile emitterFile; TableEditor tTool; NAVData nav; ApexRenderMesh mesh; ApexClothingAssetLoader aca; CityAreaEditor caEditor; CityShopEditor csEditor; SoundSectorLoader soundSector; //DEBUG D3DForm d3dForm; //special case: if (item.SubItems[0].Text.Contains("SDSContent") && item.SubItems[1].Text == "XML") { new SDSContentEditor((FileInfo)item.Tag); return; } else if (item.SubItems[0].Text.Contains("cityareas") && item.SubItems[1].Text == "BIN") { caEditor = new CityAreaEditor((FileInfo)item.Tag); return; } else if (item.SubItems[0].Text.Contains("FrameProps") && item.SubItems[1].Text == "BIN") { FrameProps fProps = new FrameProps((FileInfo)item.Tag); return; } else if (item.SubItems[0].Text.Contains("cityshop") && item.SubItems[1].Text == "BIN") { csEditor = new CityShopEditor((FileInfo)item.Tag); return; } else if (item.SubItems[0].Text.Contains("roadmap") && item.SubItems[1].Text == "GSD") { Roadmap roadmap = new Roadmap((item.Tag as FileInfo)); return; } else if (item.SubItems[0].Text.Contains("shopmenu2") && item.SubItems[1].Text == "BIN") { ShopMenu2Editor editor = new ShopMenu2Editor((item.Tag as FileInfo)); return; } else if (item.SubItems[1].Text == "BIN" && HandleStreamMap((item.Tag as FileInfo))) { StreamEditor editor = new StreamEditor((item.Tag as FileInfo)); return; } else if (item.SubItems[1].Text == "BIN" && CGameData.CheckHeader((item.Tag as FileInfo))) { CGameData data = new CGameData((item.Tag as FileInfo)); return; } else if (item.SubItems[0].Text.Contains("sdsconfig") && item.SubItems[1].Text == "BIN") { using (BinaryReader reader = new BinaryReader(File.Open((item.Tag as FileInfo).FullName, FileMode.Open))) { SdsConfigFile sdsConfig = new SdsConfigFile(); sdsConfig.ReadFromFile(reader); } return; } switch (item.SubItems[1].Text) { case "ARM": mesh = new ApexRenderMesh((FileInfo)item.Tag); return; case "ATP": AnimalTrafficLoader loader = new AnimalTrafficLoader((FileInfo)item.Tag); return; case "ACA": aca = new ApexClothingAssetLoader((FileInfo)item.Tag); return; case "Directory": OpenDirectory((DirectoryInfo)item.Tag); return; case "Material Library": mTool = new MaterialTool((FileInfo)item.Tag); return; case "NAV": case "NOV": case "NHV": nav = new NAVData((FileInfo)item.Tag); return; case "Speech Data": sTool = new SpeechEditor((FileInfo)item.Tag); return; case "CUT": cutscene = new CutsceneLoader((FileInfo)item.Tag); return; case "SDS Archive": OpenSDS((FileInfo)item.Tag); break; case "PATCH Archive": OpenPATCH((FileInfo)item.Tag); break; case "FR": //fTool = new FrameResourceTool((FileInfo)item.Tag); d3dForm = new D3DForm((FileInfo)item.Tag); d3dForm.Dispose(); return; case "COL": cTool = new CollisionEditor((FileInfo)item.Tag); return; case "IOFX": iofx = new IOFxFile((FileInfo)item.Tag); return; case "AEA": emitterFile = new EmitterFile((FileInfo)item.Tag); return; case "Table": tTool = new TableEditor((FileInfo)item.Tag); return; case "TRA": TranslokatorEditor editor = new TranslokatorEditor((FileInfo)item.Tag); return; case "ACT": aTool = new ActorEditor((FileInfo)item.Tag); break; case "PRF": prefabs = new PrefabLoader((FileInfo)item.Tag); return; case "LUA": case "AP": case "SHP": HandleLuaFile((FileInfo)item.Tag); return; case "IFL": ResourceTypes.AnimatedTexture.AnimatedTextureLoader an = new ResourceTypes.AnimatedTexture.AnimatedTextureLoader((FileInfo)item.Tag); return; case "IDS": ResourceTypes.ItemDesc.ItemDescLoader itemDesc = new ResourceTypes.ItemDesc.ItemDescLoader((item.Tag as FileInfo).FullName); return; case "BIN": SoundSectorLoader sLoader = new SoundSectorLoader(item.Tag as FileInfo); return; default: Process.Start(((FileInfo)item.Tag).FullName); break; } }
static extern int fu_camera_handler_take_snapshot( int device_index, out FrameProps out_props);