Пример #1
0
 protected virtual string GetDocumentText()
 {
     if (!IsVirtual)
     {
         //If we are edited, grab the text from the document.  If we aren't edited, read it from the file
         if (IsEdited)
         {
             //Get the open text editor and grab it's text
             TextEditor editor = GetEditor <TextEditor>();
             return(editor.GetEditorText());
         }
         else
         {
             if (Source == DocumentSource.File)
             {
                 return(File.ReadAllText(Path));
             }
             else
             {
                 return(DotaData.ReadAllText(Path));
             }
         }
     }
     else //If we are a virtual text document, that means a subclass is handling this bit.
     {
         return("");
     }
 }
Пример #2
0
        private void UnloadProject()
        {
            string closingPath = Properties.Settings.Default.LoadedAddonDirectory;

            Console.WriteLine("Unloading project: " + closingPath);

            Properties.Settings.Default.LoadedAddonDirectory = "";
            Properties.Settings.Default.Save();

            CloseFormsAndEditors();
            DotaData.UnloadUnits();
            ShowStartPage();

            this.Text = "Worldsmith";
            Console.WriteLine("Successfully unloaded project: " + closingPath);
        }
Пример #3
0
 protected override string GetDocumentText()
 {
     //If we are edited, grab the text from the document.  If we aren't edited, read it from the file
     if (IsEdited)
     {
         //Get the open text editor and grab it's text
         TextEditor editor = GetEditor <TextEditor>();
         return(editor.GetEditorText());
     }
     else
     {
         if (Source == DocumentSource.File)
         {
             return(File.ReadAllText(Path));
         }
         else
         {
             return(DotaData.ReadAllText(Path));
         }
     }
 }
Пример #4
0
        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            TreeNode node = SelectedNode();

            if (node == null)
            {
                return;
            }
            DotaDataObject ddo = node.Tag as DotaDataObject;

            if (ddo == null)
            {
                return;              //It's a folder, we cant delete this.
            }
            if (ddo.ObjectInfo.ObjectClass == DotaDataObject.DataObjectInfo.ObjectDataClass.Default)
            {
                return;                                                                                      //Can't delete default objects
            }
            if (MessageBox.Show("Are you sure?  This cannot be undone", "Delete Object", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
            {
                //Get the document for this and close the editors
                Document doc = DocumentRegistry.GetDocumentFor(ddo);
                if (doc != null)
                {
                    doc.CloseAllEditors(false);
                }


                IList list = DotaData.FindListThatHasObject(ddo);
                list.Remove(ddo);

                //remove this node from the tree view
                node.Parent.Nodes.Remove(node);
                //And it's gone!
            }
        }
Пример #5
0
 static void Application_ApplicationExit(object sender, EventArgs e)
 {
     DotaData.Shutdown();
 }
Пример #6
0
        public Main()
        {
            InitializeComponent();
            Database = new LegionDatabase();
            Database = Database.Load() ?? Database;
            Database.Setup();

            DotaDatabase = new DotaData();
            DotaDatabase.Load();

            // Localization Tab
            LocalizationTab = new SpreadsheetDataDisplayTab <LocalizedLanguage, LocalizationDataTable>();
            LocalizationTab.DataTreeView         = spreadsheetDisplayLocalization.treeData;
            LocalizationTab.SourcesTreeView      = spreadsheetDisplayLocalization.treeDataSources;
            LocalizationTab.AddSourceButton      = spreadsheetDisplayLocalization.buttonAddSpreadsheet;
            LocalizationTab.UpdateButton         = spreadsheetDisplayLocalization.buttonUpdateSpreadsheets;
            LocalizationTab.RebuildButton        = spreadsheetDisplayLocalization.buttonRebuildTrees;
            LocalizationTab.SpreadsheetIDTextBox = spreadsheetDisplayLocalization.textSpreadsheetId;
            LocalizationTab.TabIDTextBox         = spreadsheetDisplayLocalization.textTabId;
            LocalizationTab.DataView             = spreadsheetDisplayLocalization.dataGridInfo;
            LocalizationTab.AddSourceFunc        = Database.AddNewLocalizationSheet;
            LocalizationTab.RemoveSourceFunc     = Database.RemoveLocalizationSheet;
            LocalizationTab.GetDataFunc          = Database.GetLocalizationLanguages;
            LocalizationTab.GetSourcesFunc       = Database.GetLocalizationSheets;
            LocalizationTab.OnPreRebuildFunc     = Database.RebuildLanguageCache;
            LocalizationTab.Setup(Database);
            LocalizationTab.Rebuild();

            // Units Tab
            UnitsTab = new SpreadsheetDataDisplayTab <LegionUnit, UnitDataTable>();
            UnitsTab.DataTreeView         = spreadsheetDisplayUnits.treeData;
            UnitsTab.SourcesTreeView      = spreadsheetDisplayUnits.treeDataSources;
            UnitsTab.AddSourceButton      = spreadsheetDisplayUnits.buttonAddSpreadsheet;
            UnitsTab.UpdateButton         = spreadsheetDisplayUnits.buttonUpdateSpreadsheets;
            UnitsTab.RebuildButton        = spreadsheetDisplayUnits.buttonRebuildTrees;
            UnitsTab.SpreadsheetIDTextBox = spreadsheetDisplayUnits.textSpreadsheetId;
            UnitsTab.TabIDTextBox         = spreadsheetDisplayUnits.textTabId;
            UnitsTab.DataView             = spreadsheetDisplayUnits.dataGridInfo;
            UnitsTab.AddSourceFunc        = Database.AddNewUnitSheet;
            UnitsTab.RemoveSourceFunc     = Database.RemoveUnitSheet;
            UnitsTab.GetDataFunc          = Database.GetUnits;
            UnitsTab.GetSourcesFunc       = Database.GetUnitSheets;
            UnitsTab.OnPreRebuildFunc     = Database.RebuildUnitCache;
            UnitsTab.Setup(Database);
            UnitsTab.Rebuild();

            // Heroes Tab
            HeroesTab = new SpreadsheetDataDisplayTab <LegionHero, HeroDataTable>();
            HeroesTab.DataTreeView         = spreadsheetDisplayHeroes.treeData;
            HeroesTab.SourcesTreeView      = spreadsheetDisplayHeroes.treeDataSources;
            HeroesTab.AddSourceButton      = spreadsheetDisplayHeroes.buttonAddSpreadsheet;
            HeroesTab.UpdateButton         = spreadsheetDisplayHeroes.buttonUpdateSpreadsheets;
            HeroesTab.RebuildButton        = spreadsheetDisplayHeroes.buttonRebuildTrees;
            HeroesTab.SpreadsheetIDTextBox = spreadsheetDisplayHeroes.textSpreadsheetId;
            HeroesTab.TabIDTextBox         = spreadsheetDisplayHeroes.textTabId;
            HeroesTab.DataView             = spreadsheetDisplayHeroes.dataGridInfo;
            HeroesTab.AddSourceFunc        = Database.AddNewHeroSheet;
            HeroesTab.RemoveSourceFunc     = Database.RemoveHeroSheet;
            HeroesTab.GetDataFunc          = Database.GetHeroes;
            HeroesTab.GetSourcesFunc       = Database.GetHeroSheets;
            HeroesTab.OnPreRebuildFunc     = Database.RebuildHeroCache;
            HeroesTab.Setup(Database);
            HeroesTab.Rebuild();

            // Abilities Tab
            AbilitiesTab = new SpreadsheetDataDisplayTab <LegionAbility, AbilityDataTable>();
            AbilitiesTab.DataTreeView         = spreadsheetDisplayAbilities.treeData;
            AbilitiesTab.SourcesTreeView      = spreadsheetDisplayAbilities.treeDataSources;
            AbilitiesTab.AddSourceButton      = spreadsheetDisplayAbilities.buttonAddSpreadsheet;
            AbilitiesTab.UpdateButton         = spreadsheetDisplayAbilities.buttonUpdateSpreadsheets;
            AbilitiesTab.RebuildButton        = spreadsheetDisplayAbilities.buttonRebuildTrees;
            AbilitiesTab.SpreadsheetIDTextBox = spreadsheetDisplayAbilities.textSpreadsheetId;
            AbilitiesTab.TabIDTextBox         = spreadsheetDisplayAbilities.textTabId;
            AbilitiesTab.DataView             = spreadsheetDisplayAbilities.dataGridInfo;
            AbilitiesTab.AddSourceFunc        = Database.AddNewAbilitySheet;
            AbilitiesTab.RemoveSourceFunc     = Database.RemoveAbilitySheet;
            AbilitiesTab.GetDataFunc          = Database.GetAbilities;
            AbilitiesTab.GetSourcesFunc       = Database.GetAbilitySheets;
            AbilitiesTab.OnPreRebuildFunc     = Database.RebuildAbilityCache;
            AbilitiesTab.Setup(Database);
            AbilitiesTab.Rebuild();
        }