Exemplo n.º 1
0
        /// <summary>
        /// Draws the button
        /// </summary>
        public override void Draw(Otter.Interface.Graphics graphics)
        {
            TextureInfo info  = Scene.GetTextureInfo(mCurrentState == ButtonState.Default ? mDefaultTextureID : mDownTextureID);
            Color       color = mCurrentState == ButtonState.Default ? mDefaultColor : mDownColor;
            int         texID = (info != null) ? info.TextureID : -1;

            graphics.DrawRectangle(texID, 0.0f, 0.0f, this.Size.Width, this.Size.Height, color.ToArgb());

            if (mLabel.Text != "")
            {
                GUIFont font = GUIProject.CurrentProject.GetFont(mLabel.FontID);
                if (font != null)
                {
                    ButtonLayout layout = Layout as ButtonLayout;
                    font.Draw(mLabel.Text, 0, 0, layout.Size.Width, layout.Size.Height, layout.TextColor, layout.TextScale, HorizontalAlignment, VerticalAlignment);
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Creates a new project and saves it to disk
        /// </summary>
        private bool CreateNewProject()
        {
            SaveFileDialog saveFileDialog = new SaveFileDialog();
            saveFileDialog.Filter = "OtterUI Project files (*.ggp)|*.ggp|All files (*.*)|*.*";
            saveFileDialog.InitialDirectory = System.IO.Directory.GetCurrentDirectory();
            saveFileDialog.RestoreDirectory = true;

            if (saveFileDialog.ShowDialog() != DialogResult.OK)
                return false;

            CloseWelcomeForm();

            IDockContent[] docArray = mDockPanel.Documents.ToArray();
            foreach (DockContent doc in docArray)
                doc.Close();

            GUIProject.CurrentProject = new GUIProject();
            GUIProject.CurrentProject.Name = System.IO.Path.GetFileNameWithoutExtension(saveFileDialog.FileName);
            GUIProject.CurrentProject.ProjectDirectory = System.IO.Path.GetDirectoryName(saveFileDialog.FileName);

            // Create a default platform
            Platform platform = new Platform("PC");
            platform.OutputDirectory = "Output";
            GUIProject.CurrentProject.Platforms.Add(platform);

            // Create a default resolution
            Resolution resolution = new Resolution(1024, 768);
            GUIProject.CurrentProject.Resolutions.Add(resolution);

            Globals.ProjectView.Project = GUIProject.CurrentProject;
            mProjectToolStripMenuItem.Enabled = (GUIProject.CurrentProject != null);

            // Create a default font
            SaveResource("Otter.Editor.res.LiberationSans.ttf", GUIProject.CurrentProject.ProjectDirectory + "/Fonts/LiberationSans.ttf");

            GUIFont font = new GUIFont();
            font.Name = ("Default Font");
            font.ID = 1;
            font.FontSize = 32;
            font.Project = GUIProject.CurrentProject;
            font.AddASCII();
            font.Filename = "Fonts/LiberationSans.ttf";
            GUIProject.CurrentProject.Fonts.Add(font);

            // Create a new scene
            GUIProjectScene sceneEntry = Globals.ProjectView.AddScene();

            if (sceneEntry != null)
            {
                Globals.ProjectView.OpenEntry(sceneEntry);
            }

            SaveProject(saveFileDialog.FileName);
            SaveProjectToRecents(saveFileDialog.FileName);

            return true;
        }