Browse Source

Allow pads to specify their start position.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0wpf@3454 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 17 years ago
parent
commit
f022d3b2ea
  1. 39
      AddIns/ICSharpCode.SharpDevelop.addin
  2. 140
      data/resources/layouts/Default.xml
  3. 3
      src/AddIns/BackendBindings/Boo/BooBinding/Project/BooBinding.addin
  4. 3
      src/AddIns/BackendBindings/WixBinding/Project/WixBinding.addin
  5. 3
      src/AddIns/DisplayBindings/ClassDiagram/ClassDiagramAddin/ClassDiagramAddin.addin
  6. 3
      src/AddIns/DisplayBindings/XmlEditor/Project/XmlEditor.addin
  7. 3
      src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.addin
  8. 18
      src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Debugger.AddIn.addin
  9. 3
      src/AddIns/Misc/HtmlHelp2/Project/HtmlHelp2.DynamicHelp.addin
  10. 12
      src/AddIns/Misc/HtmlHelp2/Project/HtmlHelp2.addin
  11. 3
      src/AddIns/Misc/UnitTesting/UnitTesting.addin
  12. 1
      src/Main/Base/Project/Src/Gui/IWorkbenchLayout.cs
  13. 2
      src/Main/Base/Project/Src/Gui/Pads/ErrorList/ErrorListPad.cs
  14. 2
      src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/TreeNodes/AbstractProjectBrowserTreeNode.cs
  15. 39
      src/Main/Base/Project/Src/Gui/Workbench/Layouts/AvalonDockLayout.cs
  16. 23
      src/Main/Base/Project/Src/Internal/Doozers/PadDescriptor.cs

39
AddIns/ICSharpCode.SharpDevelop.addin

@ -74,73 +74,84 @@
title = "${res:MainWindow.Windows.ProjectScoutLabel}" title = "${res:MainWindow.Windows.ProjectScoutLabel}"
icon = "PadIcons.ProjectBrowser" icon = "PadIcons.ProjectBrowser"
shortcut = "Control|Alt|L" shortcut = "Control|Alt|L"
class = "ICSharpCode.SharpDevelop.Project.ProjectBrowserPad"/> class = "ICSharpCode.SharpDevelop.Project.ProjectBrowserPad"
defaultPosition = "Left" />
<Pad id = "ClassBrowser" <Pad id = "ClassBrowser"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.ClassScoutLabel}" title = "${res:MainWindow.Windows.ClassScoutLabel}"
icon = "PadIcons.ClassBrowser" icon = "PadIcons.ClassBrowser"
shortcut = "Control|Shift|C" shortcut = "Control|Shift|C"
class = "ICSharpCode.SharpDevelop.Gui.ClassBrowser.ClassBrowserPad"/> class = "ICSharpCode.SharpDevelop.Gui.ClassBrowser.ClassBrowserPad"
defaultPosition = "Right" />
<Pad id = "SideBar" <Pad id = "SideBar"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.ToolbarLabel}" title = "${res:MainWindow.Windows.ToolbarLabel}"
icon = "PadIcons.Toolbar" icon = "PadIcons.Toolbar"
shortcut = "Control|Alt|X" shortcut = "Control|Alt|X"
class = "ICSharpCode.SharpDevelop.Gui.ToolsPad"/> class = "ICSharpCode.SharpDevelop.Gui.ToolsPad"
defaultPosition = "Left" />
<Pad id = "ErrorList" <Pad id = "ErrorList"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.ErrorList}" title = "${res:MainWindow.Windows.ErrorList}"
shortcut = "Control|Alt|K" shortcut = "Control|Alt|K"
icon = "PadIcons.ErrorList" icon = "PadIcons.ErrorList"
class = "ICSharpCode.SharpDevelop.Gui.ErrorListPad"/> class = "ICSharpCode.SharpDevelop.Gui.ErrorListPad"
defaultPosition = "Bottom" />
<Pad id = "TaskList" <Pad id = "TaskList"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.TaskList}" title = "${res:MainWindow.Windows.TaskList}"
icon = "PadIcons.TaskList" icon = "PadIcons.TaskList"
class = "ICSharpCode.SharpDevelop.Gui.TaskListPad"/> class = "ICSharpCode.SharpDevelop.Gui.TaskListPad"
defaultPosition = "Bottom" />
<Pad id = "CompilerMessageView" <Pad id = "CompilerMessageView"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.OutputWindow}" title = "${res:MainWindow.Windows.OutputWindow}"
icon = "PadIcons.Output" icon = "PadIcons.Output"
shortcut = "Control|Alt|O" shortcut = "Control|Alt|O"
class = "ICSharpCode.SharpDevelop.Gui.CompilerMessageView"/> class = "ICSharpCode.SharpDevelop.Gui.CompilerMessageView"
defaultPosition = "Bottom" />
<Pad id = "PropertyPad" <Pad id = "PropertyPad"
category = "Main" category = "Main"
title = "${res:MainWindow.Windows.PropertiesScoutLabel}" title = "${res:MainWindow.Windows.PropertiesScoutLabel}"
icon = "Icons.16x16.PropertiesIcon" icon = "Icons.16x16.PropertiesIcon"
shortcut = "F4" shortcut = "F4"
class = "ICSharpCode.SharpDevelop.Gui.PropertyPad"/> class = "ICSharpCode.SharpDevelop.Gui.PropertyPad"
defaultPosition = "Right" />
<Pad id = "FileScout" <Pad id = "FileScout"
category = "Tools" category = "Tools"
title = "${res:MainWindow.Windows.FileScoutLabel}" title = "${res:MainWindow.Windows.FileScoutLabel}"
icon = "PadIcons.FileBrowser" icon = "PadIcons.FileBrowser"
shortcut = "Control|Alt|F" shortcut = "Control|Alt|F"
class = "ICSharpCode.SharpDevelop.Gui.FileScout"/> class = "ICSharpCode.SharpDevelop.Gui.FileScout"
defaultPosition = "Left, Hidden" />
<Pad id = "SearchResults" <Pad id = "SearchResults"
category = "Tools" category = "Tools"
title = "${res:MainWindow.Windows.SearchResultsLabel}" title = "${res:MainWindow.Windows.SearchResultsLabel}"
icon = "PadIcons.FindResults" icon = "PadIcons.FindResults"
class = "SearchAndReplace.SearchResultPanel"/> class = "SearchAndReplace.SearchResultPanel"
defaultPosition = "Bottom, Hidden" />
<Pad id = "Bookmarks" <Pad id = "Bookmarks"
category = "Tools" category = "Tools"
title = "${res:MainWindow.Windows.BookmarksLabel}" title = "${res:MainWindow.Windows.BookmarksLabel}"
icon = "PadIcons.Bookmarks" icon = "PadIcons.Bookmarks"
class = "ICSharpCode.SharpDevelop.Bookmarks.BookmarkPad"/> class = "ICSharpCode.SharpDevelop.Bookmarks.BookmarkPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "DefinitionView" <Pad id = "DefinitionView"
category = "Tools" category = "Tools"
title = "${res:MainWindow.Windows.DefinitionViewLabel}" title = "${res:MainWindow.Windows.DefinitionViewLabel}"
icon = "PadIcons.DefinitionView" icon = "PadIcons.DefinitionView"
class = "ICSharpCode.SharpDevelop.Gui.DefinitionViewPad"/> class = "ICSharpCode.SharpDevelop.Gui.DefinitionViewPad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Workbench/Combine/FileFilter"> <Path name = "/SharpDevelop/Workbench/Combine/FileFilter">
@ -933,7 +944,7 @@
</Condition> </Condition>
<ToolbarItem id = "ChooseConfigurationSeparator" type = "Separator"/> <ToolbarItem id = "ChooseConfigurationSeparator" type = "Separator"/>
<ToolbarItem id = "ChooseLayout" <ToolbarItem id = "ChooseLayout"
type = "ComboBox" type = "ComboBox"
class = "ICSharpCode.SharpDevelop.Commands.ChooseLayoutCommand" /> class = "ICSharpCode.SharpDevelop.Commands.ChooseLayoutCommand" />
@ -1473,7 +1484,7 @@
class = "ICSharpCode.SharpDevelop.Project.Commands.StopDebuggingCommand"/> class = "ICSharpCode.SharpDevelop.Project.Commands.StopDebuggingCommand"/>
</Condition> </Condition>
</Condition> </Condition>
<Condition name="DebuggerSupports" debuggersupports="Attaching"> <Condition name="DebuggerSupports" debuggersupports="Attaching">
<Condition name="IsProcessRunning" isprocessrunning="False" isdebugging="False" action="Disable"> <Condition name="IsProcessRunning" isprocessrunning="False" isdebugging="False" action="Disable">
<MenuItem id = "Attach" <MenuItem id = "Attach"
@ -1481,7 +1492,7 @@
class = "ICSharpCode.SharpDevelop.Project.Commands.AttachToProcessCommand"/> class = "ICSharpCode.SharpDevelop.Project.Commands.AttachToProcessCommand"/>
</Condition> </Condition>
</Condition> </Condition>
<Condition name="DebuggerSupports" debuggersupports="Detaching"> <Condition name="DebuggerSupports" debuggersupports="Detaching">
<Condition name="IsProcessRunning" isdebugging="True" action="Disable"> <Condition name="IsProcessRunning" isdebugging="True" action="Disable">
<MenuItem id = "Detach" <MenuItem id = "Detach"

140
data/resources/layouts/Default.xml

@ -1,118 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <DockingManager>
<!--DockPanel configuration file. Author: Weifen Luo, all rights reserved.--> <ResizingPanel Orientation="Horizontal">
<!--!!! AUTOMATICALLY GENERATED FILE. DO NOT MODIFY !!!--> <DockablePane ResizeWidth="200" Anchor="Left">
<DockPanel FormatVersion="1.0" DockLeftPortion="0.196180555555556" DockRightPortion="0.172743055555556" DockTopPortion="0.25" DockBottomPortion="0.25" ActiveDocumentPane="-1" ActivePane="-1"> <DockableContent Name="ICSharpCode_SharpDevelop_Project_ProjectBrowserPad" AutoHide="false" />
<Contents Count="28"> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_ToolsPad" AutoHide="false" />
<Content ID="0" PersistString="ICSharpCode.SharpDevelop.Project.ProjectBrowserPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> </DockablePane>
<Content ID="1" PersistString="ICSharpCode.SharpDevelop.Gui.ClassBrowser.ClassBrowserPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <ResizingPanel Orientation="Vertical">
<Content ID="2" PersistString="ICSharpCode.SharpDevelop.Gui.ErrorListPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <DocumentPanePlaceHolder />
<Content ID="3" PersistString="ICSharpCode.SharpDevelop.Gui.TaskListPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <DockablePane ResizeHeight="150" Anchor="Bottom">
<Content ID="4" PersistString="ICSharpCode.SharpDevelop.Gui.CompilerMessageView" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_ErrorListPad" AutoHide="false" />
<Content ID="5" PersistString="ICSharpCode.SharpDevelop.Gui.PropertyPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_TaskListPad" AutoHide="false" />
<Content ID="6" PersistString="ICSharpCode.SharpDevelop.Gui.FileScout" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_CompilerMessageView" AutoHide="false" />
<Content ID="7" PersistString="SearchAndReplace.SearchResultPanel" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> </DockablePane>
<Content ID="8" PersistString="ICSharpCode.SharpDevelop.Bookmarks.BookmarkPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> </ResizingPanel>
<Content ID="9" PersistString="ICSharpCode.CodeCoverage.CodeCoveragePad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> <DockablePane ResizeWidth="200" Anchor="Right">
<Content ID="10" PersistString="ICSharpCode.SharpDevelop.Gui.DefinitionViewPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" /> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_ClassBrowser_ClassBrowserPad" AutoHide="false" />
<Content ID="11" PersistString="ICSharpCode.SharpDevelop.Gui.Pads.BreakPointsPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> <DockableContent Name="ICSharpCode_SharpDevelop_Gui_PropertyPad" AutoHide="false" />
<Content ID="12" PersistString="ICSharpCode.SharpDevelop.Gui.Pads.CallStackPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> </DockablePane>
<Content ID="13" PersistString="ICSharpCode.SharpDevelop.Gui.Pads.LoadedModulesPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> </ResizingPanel>
<Content ID="14" PersistString="ICSharpCode.SharpDevelop.Gui.Pads.RunningThreadsPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> <Hidden />
<Content ID="15" PersistString="ICSharpCode.SharpDevelop.Gui.Pads.LocalVarPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> <Windows />
<Content ID="16" PersistString="HtmlHelp2.HtmlHelp2TocPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" /> </DockingManager>
<Content ID="17" PersistString="HtmlHelp2.HtmlHelp2IndexPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="18" PersistString="HtmlHelp2.HtmlHelp2SearchPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="19" PersistString="HtmlHelp2.HtmlHelp2IndexResultsPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="20" PersistString="HtmlHelp2.HtmlHelp2DynamicHelpPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="21" PersistString="ICSharpCode.WixBinding.SetupDialogListPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="22" PersistString="ICSharpCode.XmlEditor.XPathQueryPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="23" PersistString="ICSharpCode.UnitTesting.UnitTestsPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="24" PersistString="ICSharpCode.SharpDevelop.Gui.ToolsPad" AutoHidePortion="0.25" IsHidden="False" IsFloat="False" />
<Content ID="25" PersistString="ClassDiagramAddin.ClassEditorPad" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="26" PersistString="FSharpBinding.FSharpInteractive" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
<Content ID="27" PersistString="ICSharpCode.ServerTools.ServerBrowserHost" AutoHidePortion="0.25" IsHidden="True" IsFloat="False" />
</Contents>
<Panes Count="5">
<Pane ID="0" DockState="DockRight" ActiveContent="5">
<Contents Count="6">
<Content ID="0" RefID="5" />
<Content ID="1" RefID="1" />
<Content ID="2" RefID="12" />
<Content ID="3" RefID="13" />
<Content ID="4" RefID="23" />
<Content ID="5" RefID="25" />
</Contents>
</Pane>
<Pane ID="1" DockState="DockLeft" ActiveContent="0">
<Contents Count="3">
<Content ID="0" RefID="0" />
<Content ID="1" RefID="6" />
<Content ID="2" RefID="24" />
</Contents>
</Pane>
<Pane ID="2" DockState="Float" ActiveContent="-1">
<Contents Count="5">
<Content ID="0" RefID="2" />
<Content ID="1" RefID="3" />
<Content ID="2" RefID="7" />
<Content ID="3" RefID="8" />
<Content ID="4" RefID="10" />
</Contents>
</Pane>
<Pane ID="3" DockState="DockBottom" ActiveContent="4">
<Contents Count="9">
<Content ID="0" RefID="2" />
<Content ID="1" RefID="4" />
<Content ID="2" RefID="3" />
<Content ID="3" RefID="10" />
<Content ID="4" RefID="7" />
<Content ID="5" RefID="8" />
<Content ID="6" RefID="15" />
<Content ID="7" RefID="9" />
<Content ID="8" RefID="26" />
</Contents>
</Pane>
<Pane ID="4" DockState="DockRight" ActiveContent="-1">
<Contents Count="7">
<Content ID="0" RefID="20" />
<Content ID="1" RefID="16" />
<Content ID="2" RefID="17" />
<Content ID="3" RefID="18" />
<Content ID="4" RefID="14" />
<Content ID="5" RefID="19" />
<Content ID="6" RefID="11" />
</Contents>
</Pane>
</Panes>
<DockWindows>
<DockWindow ID="0" DockState="Document" ZOrderIndex="0">
<NestedPanes Count="0" />
</DockWindow>
<DockWindow ID="1" DockState="DockLeft" ZOrderIndex="3">
<NestedPanes Count="1">
<Pane ID="0" RefID="1" PrevPane="-1" Alignment="Bottom" Proportion="0.5" />
</NestedPanes>
</DockWindow>
<DockWindow ID="2" DockState="DockRight" ZOrderIndex="4">
<NestedPanes Count="2">
<Pane ID="0" RefID="0" PrevPane="-1" Alignment="Bottom" Proportion="0.5" />
<Pane ID="1" RefID="4" PrevPane="0" Alignment="Top" Proportion="0.353459972862958" />
</NestedPanes>
</DockWindow>
<DockWindow ID="3" DockState="DockTop" ZOrderIndex="2">
<NestedPanes Count="0" />
</DockWindow>
<DockWindow ID="4" DockState="DockBottom" ZOrderIndex="1">
<NestedPanes Count="1">
<Pane ID="0" RefID="3" PrevPane="-1" Alignment="Right" Proportion="0.5" />
</NestedPanes>
</DockWindow>
</DockWindows>
<FloatWindows Count="1">
<FloatWindow ID="0" Bounds="367, 404, 300, 300" ZOrderIndex="0">
<NestedPanes Count="1">
<Pane ID="0" RefID="2" PrevPane="-1" Alignment="Right" Proportion="0.5" />
</NestedPanes>
</FloatWindow>
</FloatWindows>
</DockPanel>

3
src/AddIns/BackendBindings/Boo/BooBinding/Project/BooBinding.addin

@ -165,6 +165,7 @@
title = "${res:ICSharpCode.BooInterpreter}" title = "${res:ICSharpCode.BooInterpreter}"
icon = "Boo.ProjectIcon" icon = "Boo.ProjectIcon"
shortcut = "Control|Shift|B" shortcut = "Control|Shift|B"
class = "Grunwald.BooBinding.InteractiveInterpreterPad"/> class = "Grunwald.BooBinding.InteractiveInterpreterPad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
</AddIn> </AddIn>

3
src/AddIns/BackendBindings/WixBinding/Project/WixBinding.addin

@ -161,7 +161,8 @@
category = "Setup" category = "Setup"
title = "${res:ICSharpCode.WixBinding.SetupDialogListPad.Title}" title = "${res:ICSharpCode.WixBinding.SetupDialogListPad.Title}"
icon = "Setup.Icons.16x16.SetupDialogsPad" icon = "Setup.Icons.16x16.SetupDialogsPad"
class = "ICSharpCode.WixBinding.SetupDialogListPad"/> class = "ICSharpCode.WixBinding.SetupDialogListPad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Pads/WixSetupDialogListPad/ContextMenu"> <Path name = "/SharpDevelop/Pads/WixSetupDialogListPad/ContextMenu">

3
src/AddIns/DisplayBindings/ClassDiagram/ClassDiagramAddin/ClassDiagramAddin.addin

@ -144,7 +144,8 @@
category = "Tools" category = "Tools"
title = "Class Editor" title = "Class Editor"
class = "ClassDiagramAddin.ClassEditorPad" class = "ClassDiagramAddin.ClassEditorPad"
icon = "ClassDiagram.ClassEditor" /> icon = "ClassDiagram.ClassEditor"
defaultPosition = "Right, Hidden" />
</Path> </Path>
<BitmapResources file="Resources\Bitmaps.resources" /> <BitmapResources file="Resources\Bitmaps.resources" />

3
src/AddIns/DisplayBindings/XmlEditor/Project/XmlEditor.addin

@ -169,7 +169,8 @@
icon = "PadIcons.XPathQuery" icon = "PadIcons.XPathQuery"
title = "${res:ICSharpCode.XmlEditor.XPathQueryPad.Title}" title = "${res:ICSharpCode.XmlEditor.XPathQueryPad.Title}"
insertafter = "UnitTestingPad" insertafter = "UnitTestingPad"
class = "ICSharpCode.XmlEditor.XPathQueryPad"/> class = "ICSharpCode.XmlEditor.XPathQueryPad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<!-- Menu options to turn off XPath Query result highlighting --> <!-- Menu options to turn off XPath Query result highlighting -->

3
src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.addin

@ -20,7 +20,8 @@
insertbefore = "DefinitionView" insertbefore = "DefinitionView"
icon = "CodeCoverage.Icons.16x16.Pad" icon = "CodeCoverage.Icons.16x16.Pad"
shortcut = "Control|Alt|G" shortcut = "Control|Alt|G"
class = "ICSharpCode.CodeCoverage.CodeCoveragePad"/> class = "ICSharpCode.CodeCoverage.CodeCoveragePad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Pads/CodeCoveragePad/Toolbar"> <Path name = "/SharpDevelop/Pads/CodeCoveragePad/Toolbar">

18
src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Debugger.AddIn.addin

@ -43,42 +43,48 @@
title = "${res:MainWindow.Windows.Debug.Breakpoints}" title = "${res:MainWindow.Windows.Debug.Breakpoints}"
icon = "PadIcons.BreakPoints" icon = "PadIcons.BreakPoints"
shortcut = "Control|Alt|P" shortcut = "Control|Alt|P"
class = "ICSharpCode.SharpDevelop.Gui.Pads.BreakPointsPad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.BreakPointsPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "CallStackPad" <Pad id = "CallStackPad"
category = "Debugger" category = "Debugger"
title = "${res:MainWindow.Windows.Debug.CallStack}" title = "${res:MainWindow.Windows.Debug.CallStack}"
icon = "PadIcons.CallStack" icon = "PadIcons.CallStack"
shortcut = "Control|Alt|C" shortcut = "Control|Alt|C"
class = "ICSharpCode.SharpDevelop.Gui.Pads.CallStackPad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.CallStackPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "LoadedModulesPad" <Pad id = "LoadedModulesPad"
category = "Debugger" category = "Debugger"
title = "${res:MainWindow.Windows.Debug.Modules}" title = "${res:MainWindow.Windows.Debug.Modules}"
icon = "PadIcons.LoadedModules" icon = "PadIcons.LoadedModules"
shortcut = "Control|Alt|U" shortcut = "Control|Alt|U"
class = "ICSharpCode.SharpDevelop.Gui.Pads.LoadedModulesPad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.LoadedModulesPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "RunningThreadsPad" <Pad id = "RunningThreadsPad"
category = "Debugger" category = "Debugger"
title = "${res:MainWindow.Windows.Debug.Threads}" title = "${res:MainWindow.Windows.Debug.Threads}"
icon = "PadIcons.Threads" icon = "PadIcons.Threads"
shortcut = "Control|Alt|H" shortcut = "Control|Alt|H"
class = "ICSharpCode.SharpDevelop.Gui.Pads.RunningThreadsPad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.RunningThreadsPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "LocalVarPad" <Pad id = "LocalVarPad"
category = "Debugger" category = "Debugger"
title = "${res:MainWindow.Windows.Debug.LocalVariables}" title = "${res:MainWindow.Windows.Debug.LocalVariables}"
icon = "PadIcons.LocalVariables" icon = "PadIcons.LocalVariables"
shortcut = "Control|Alt|V" shortcut = "Control|Alt|V"
class = "ICSharpCode.SharpDevelop.Gui.Pads.LocalVarPad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.LocalVarPad"
defaultPosition = "Bottom, Hidden" />
<Pad id = "ConsolePad" <Pad id = "ConsolePad"
category = "Debugger" category = "Debugger"
title = "${res:MainWindow.Windows.Debug.Console}" title = "${res:MainWindow.Windows.Debug.Console}"
icon = "PadIcons.Output" icon = "PadIcons.Output"
shortcut = "Control|Alt|N" shortcut = "Control|Alt|N"
class = "ICSharpCode.SharpDevelop.Gui.Pads.ConsolePad"/> class = "ICSharpCode.SharpDevelop.Gui.Pads.ConsolePad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Dialogs/OptionsDialog"> <Path name = "/SharpDevelop/Dialogs/OptionsDialog">

3
src/AddIns/Misc/HtmlHelp2/Project/HtmlHelp2.DynamicHelp.addin

@ -15,7 +15,8 @@
category = "Help2" category = "Help2"
title = "${res:AddIns.HtmlHelp2.DynamicHelp}" title = "${res:AddIns.HtmlHelp2.DynamicHelp}"
icon = "HtmlHelp2.16x16.DynamicHelp" icon = "HtmlHelp2.16x16.DynamicHelp"
class = "HtmlHelp2.HtmlHelp2DynamicHelpPad"/> class = "HtmlHelp2.HtmlHelp2DynamicHelpPad"
defaultPosition = "Right, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Workbench/MainMenu/Help"> <Path name = "/SharpDevelop/Workbench/MainMenu/Help">

12
src/AddIns/Misc/HtmlHelp2/Project/HtmlHelp2.addin

@ -24,22 +24,26 @@
category = "Help2" category = "Help2"
title = "${res:AddIns.HtmlHelp2.Contents}" title = "${res:AddIns.HtmlHelp2.Contents}"
icon = "HtmlHelp2.16x16.Toc" icon = "HtmlHelp2.16x16.Toc"
class = "HtmlHelp2.HtmlHelp2TocPad"/> class = "HtmlHelp2.HtmlHelp2TocPad"
defaultPosition = "Right, Hidden" />
<Pad id = "IndexPad" <Pad id = "IndexPad"
category = "Help2" category = "Help2"
title = "${res:AddIns.HtmlHelp2.Index}" title = "${res:AddIns.HtmlHelp2.Index}"
icon = "HtmlHelp2.16x16.Index" icon = "HtmlHelp2.16x16.Index"
class = "HtmlHelp2.HtmlHelp2IndexPad"/> class = "HtmlHelp2.HtmlHelp2IndexPad"
defaultPosition = "Right, Hidden" />
<Pad id = "SearchPad" <Pad id = "SearchPad"
category = "Help2" category = "Help2"
title = "${res:AddIns.HtmlHelp2.Search}" title = "${res:AddIns.HtmlHelp2.Search}"
icon = "HtmlHelp2.16x16.Search" icon = "HtmlHelp2.16x16.Search"
class = "HtmlHelp2.HtmlHelp2SearchPad"/> class = "HtmlHelp2.HtmlHelp2SearchPad"
defaultPosition = "Right, Hidden" />
<Pad id = "IndexResultsPad" <Pad id = "IndexResultsPad"
category = "Help2" category = "Help2"
title = "${res:AddIns.HtmlHelp2.IndexResults}" title = "${res:AddIns.HtmlHelp2.IndexResults}"
icon = "HtmlHelp2.16x16.IndexResults" icon = "HtmlHelp2.16x16.IndexResults"
class = "HtmlHelp2.HtmlHelp2IndexResultsPad"/> class = "HtmlHelp2.HtmlHelp2IndexResultsPad"
defaultPosition = "Bottom, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/Dialogs/OptionsDialog/ToolsOptions"> <Path name = "/SharpDevelop/Dialogs/OptionsDialog/ToolsOptions">

3
src/AddIns/Misc/UnitTesting/UnitTesting.addin

@ -20,7 +20,8 @@
title = "${res:ICSharpCode.NUnitPad.NUnitPadContent.PadName}" title = "${res:ICSharpCode.NUnitPad.NUnitPadContent.PadName}"
icon = "PadIcons.NUnitTest" icon = "PadIcons.NUnitTest"
shortcut = "Control|Alt|T" shortcut = "Control|Alt|T"
class = "ICSharpCode.UnitTesting.UnitTestsPad"/> class = "ICSharpCode.UnitTesting.UnitTestsPad"
defaultPosition = "Right, Hidden" />
</Path> </Path>
<Path name = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassMemberContextMenu"> <Path name = "/SharpDevelop/ViewContent/DefaultTextEditor/ClassMemberContextMenu">

1
src/Main/Base/Project/Src/Gui/IWorkbenchLayout.cs

@ -62,7 +62,6 @@ namespace ICSharpCode.SharpDevelop.Gui
/// bring it to foreground) /// bring it to foreground)
/// </summary> /// </summary>
void ActivatePad(PadDescriptor content); void ActivatePad(PadDescriptor content);
void ActivatePad(string fullyQualifiedTypeName);
/// <summary> /// <summary>
/// Hides a <see cref="IPadContent"/>. /// Hides a <see cref="IPadContent"/>.

2
src/Main/Base/Project/Src/Gui/Pads/ErrorList/ErrorListPad.cs

@ -131,7 +131,7 @@ namespace ICSharpCode.SharpDevelop.Gui
void ProjectServiceEndBuild(object sender, EventArgs e) void ProjectServiceEndBuild(object sender, EventArgs e)
{ {
if (TaskService.TaskCount > 0 && ShowAfterBuild) { if (TaskService.TaskCount > 0 && ShowAfterBuild) {
WorkbenchSingleton.Workbench.WorkbenchLayout.ActivatePad(this.GetType().FullName); WorkbenchSingleton.Workbench.GetPad(typeof(ErrorListPad)).BringPadToFront();
} }
UpdateToolstripStatus(); UpdateToolstripStatus();
} }

2
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/TreeNodes/AbstractProjectBrowserTreeNode.cs

@ -92,7 +92,7 @@ namespace ICSharpCode.SharpDevelop.Project
public virtual void ShowProperties() public virtual void ShowProperties()
{ {
WorkbenchSingleton.Workbench.WorkbenchLayout.ActivatePad(typeof(PropertyPad).FullName); WorkbenchSingleton.Workbench.GetPad(typeof(PropertyPad)).BringPadToFront();
} }
public static bool IsSomewhereBelow(string path, ProjectItem item) public static bool IsSomewhereBelow(string path, ProjectItem item)

39
src/Main/Base/Project/Src/Gui/Workbench/Layouts/AvalonDockLayout.cs

@ -117,8 +117,19 @@ namespace ICSharpCode.SharpDevelop.Gui
pad = new AvalonPadContent(this, content); pad = new AvalonPadContent(this, content);
pads.Add(content, pad); pads.Add(content, pad);
padsByClass.Add(content.Class, pad); padsByClass.Add(content.Class, pad);
dockingManager.Show(pad, DockableContentState.Docked, AnchorStyle.Right); AnchorStyle style;
if ((content.DefaultPosition & DefaultPadPositions.Top) != 0)
style = AnchorStyle.Top;
else if ((content.DefaultPosition & DefaultPadPositions.Left) != 0)
style = AnchorStyle.Left;
else if ((content.DefaultPosition & DefaultPadPositions.Bottom) != 0)
style = AnchorStyle.Bottom;
else
style = AnchorStyle.Right;
dockingManager.Show(pad, DockableContentState.Docked, style);
SetPaneSizeWorkaround(pad.ContainerPane); SetPaneSizeWorkaround(pad.ContainerPane);
if ((content.DefaultPosition & DefaultPadPositions.Hidden) != 0)
dockingManager.Hide(pad);
} }
} }
@ -127,26 +138,27 @@ namespace ICSharpCode.SharpDevelop.Gui
ResizingPanel panel = pane.Parent as ResizingPanel; ResizingPanel panel = pane.Parent as ResizingPanel;
if (panel.Orientation == Orientation.Horizontal) { if (panel.Orientation == Orientation.Horizontal) {
if (ResizingPanel.GetResizeWidth(pane) == 0) if (ResizingPanel.GetResizeWidth(pane) == 0)
ResizingPanel.SetResizeWidth(pane, 150); ResizingPanel.SetResizeWidth(pane, 200);
} else if (panel.Orientation == Orientation.Vertical) { } else if (panel.Orientation == Orientation.Vertical) {
if (ResizingPanel.GetResizeHeight(pane) == 0) if (ResizingPanel.GetResizeHeight(pane) == 0)
ResizingPanel.SetResizeHeight(pane, 100); ResizingPanel.SetResizeHeight(pane, 150);
} }
} }
public void ActivatePad(PadDescriptor content) public void ActivatePad(PadDescriptor content)
{ {
pads[content].BringIntoView(); AvalonPadContent p;
} if (pads.TryGetValue(content, out p))
p.BringIntoView();
public void ActivatePad(string fullyQualifiedTypeName) else
{ ShowPad(content);
padsByClass[fullyQualifiedTypeName].BringIntoView();
} }
public void HidePad(PadDescriptor content) public void HidePad(PadDescriptor content)
{ {
dockingManager.Hide(pads[content]); AvalonPadContent p;
if (pads.TryGetValue(content, out p))
dockingManager.Hide(p);
} }
public void UnloadPad(PadDescriptor content) public void UnloadPad(PadDescriptor content)
@ -161,8 +173,11 @@ namespace ICSharpCode.SharpDevelop.Gui
public bool IsVisible(PadDescriptor padContent) public bool IsVisible(PadDescriptor padContent)
{ {
AvalonPadContent pad = pads[padContent]; AvalonPadContent p;
return pad.IsVisible; if (pads.TryGetValue(padContent, out p))
return p.IsVisible;
else
return false;
} }
public IWorkbenchWindow ShowView(IViewContent content) public IWorkbenchWindow ShowView(IViewContent content)

23
src/Main/Base/Project/Src/Internal/Doozers/PadDescriptor.cs

@ -11,6 +11,21 @@ using ICSharpCode.SharpDevelop.Gui;
namespace ICSharpCode.SharpDevelop namespace ICSharpCode.SharpDevelop
{ {
/// <summary>
/// Indicates the default position for a pad.
/// This is a bit-flag enum, Hidden can be combined with the directions.
/// </summary>
[Flags]
public enum DefaultPadPositions
{
None = 0,
Right = 1,
Left = 2,
Bottom = 4,
Top = 8,
Hidden = 16
}
/// <summary> /// <summary>
/// Describes a pad. /// Describes a pad.
/// </summary> /// </summary>
@ -39,6 +54,9 @@ namespace ICSharpCode.SharpDevelop
icon = codon.Properties["icon"]; icon = codon.Properties["icon"];
title = codon.Properties["title"]; title = codon.Properties["title"];
@class = codon.Properties["class"]; @class = codon.Properties["class"];
if (!string.IsNullOrEmpty(codon.Properties["defaultPosition"])) {
DefaultPosition = (DefaultPadPositions)Enum.Parse(typeof(DefaultPadPositions), codon.Properties["defaultPosition"]);
}
} }
/// <summary> /// <summary>
@ -111,6 +129,11 @@ namespace ICSharpCode.SharpDevelop
} }
} }
/// <summary>
/// Gets/sets the default position of the pad.
/// </summary>
public DefaultPadPositions DefaultPosition { get; set; }
public IPadContent PadContent { public IPadContent PadContent {
get { get {
CreatePad(); CreatePad();

Loading…
Cancel
Save