Browse Source

Worked on SubversionAddIn.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@169 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 21 years ago
parent
commit
4d802c718c
  1. 1
      src/AddIns/Misc/SubversionAddIn/Project/PostBuildEvent.bat
  2. 154
      src/AddIns/Misc/SubversionAddIn/Project/Resources/ContentPanel.xfrm
  3. 198
      src/AddIns/Misc/SubversionAddIn/Project/Resources/DiffPanel.xfrm
  4. 172
      src/AddIns/Misc/SubversionAddIn/Project/Resources/InfoPanel.xfrm
  5. 9
      src/AddIns/Misc/SubversionAddIn/Project/Src/AddInOptions.cs
  6. 12
      src/AddIns/Misc/SubversionAddIn/Project/Src/Commands/AutostartCommands.cs
  7. 86
      src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/ContentPanel.cs
  8. 33
      src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/DiffPanel.cs
  9. 13
      src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/HistoryViewPanel.cs
  10. 137
      src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/InfoPanel.cs
  11. 27
      src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/ProjectBrowserVisitor/SvnProjectBrowserVisitor.cs
  12. 21
      src/AddIns/Misc/SubversionAddIn/Project/Src/SvnClient.cs
  13. 6
      src/AddIns/Misc/SubversionAddIn/Project/SubversionAddIn.csproj
  14. 40
      src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/ProjectBrowserControl.cs
  15. 82
      src/SharpDevelop.sln

1
src/AddIns/Misc/SubversionAddIn/Project/PostBuildEvent.bat

@ -0,0 +1 @@
copy ..\..\..\..\src\AddIns\Misc\SubversionAddIn\RequiredLibraries\ms* .

154
src/AddIns/Misc/SubversionAddIn/Project/Resources/ContentPanel.xfrm

@ -1,154 +0,0 @@
<Components version="1.0">
<System.Windows.Forms.UserControl>
<Name value="XmlUserControl1" />
<DockPadding value="" />
<ClientSize value="{Width=608, Height=472}" />
<Controls>
<System.Windows.Forms.Panel>
<Name value="panel2" />
<Location value="{X=0,Y=203}" />
<Size value="{Width=608, Height=269}" />
<DockPadding value="" />
<TabIndex value="2" />
<Dock value="Fill" />
<Controls>
<System.Windows.Forms.Label>
<Name value="contentLabel" />
<Text value="&amp;Content:" />
<TextAlign value="BottomLeft" />
<Anchor value="Top, Left, Right" />
<TabIndex value="1" />
<Size value="{Width=592, Height=16}" />
<Location value="{X=8,Y=8}" />
</System.Windows.Forms.Label>
<System.Windows.Forms.RichTextBox>
<Name value="contentRichTextBox" />
<Anchor value="Top, Bottom, Left, Right" />
<ReadOnly value="True" />
<Size value="{Width=592, Height=236}" />
<Location value="{X=8,Y=24}" />
<Text value="" />
<TabIndex value="0" />
<WordWrap value="False" />
</System.Windows.Forms.RichTextBox>
</Controls>
</System.Windows.Forms.Panel>
<System.Windows.Forms.Splitter>
<Name value="splitter1" />
<TabIndex value="1" />
<Size value="{Width=608, Height=3}" />
<Location value="{X=0,Y=200}" />
<Dock value="Top" />
</System.Windows.Forms.Splitter>
<System.Windows.Forms.Panel>
<Name value="panel1" />
<Location value="{X=0,Y=0}" />
<Size value="{Width=608, Height=200}" />
<DockPadding value="" />
<TabIndex value="0" />
<Dock value="Top" />
<Controls>
<System.Windows.Forms.Label>
<Name value="label2" />
<Text value="&amp;Revision history:" />
<TextAlign value="BottomLeft" />
<Anchor value="Top, Left, Right" />
<TabIndex value="1" />
<Size value="{Width=592, Height=16}" />
<Location value="{X=8,Y=8}" />
</System.Windows.Forms.Label>
<System.Windows.Forms.ListView>
<Name value="revisionListView" />
<GridLines value="True" />
<MultiSelect value="False" />
<Anchor value="Top, Bottom, Left, Right" />
<TabIndex value="0" />
<View value="Details" />
<FullRowSelect value="True" />
<Location value="{X=8,Y=24}" />
<Size value="{Width=592, Height=168}" />
<HideSelection value="False" />
<Columns>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader1" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader2" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader3" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader4" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
</Columns>
</System.Windows.Forms.ListView>
</Controls>
</System.Windows.Forms.Panel>
</Controls>
</System.Windows.Forms.UserControl>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader3" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader2" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader1" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader7" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader6" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader5" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader4" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader8" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader9" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader12" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader10" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader11" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
</Components>

198
src/AddIns/Misc/SubversionAddIn/Project/Resources/DiffPanel.xfrm

@ -41,7 +41,7 @@
<Dock value="Top" /> <Dock value="Top" />
</System.Windows.Forms.Splitter> </System.Windows.Forms.Splitter>
<System.Windows.Forms.Panel> <System.Windows.Forms.Panel>
<Name value="panel1" /> <Name value="topPanel" />
<Location value="{X=0,Y=0}" /> <Location value="{X=0,Y=0}" />
<Size value="{Width=608, Height=200}" /> <Size value="{Width=608, Height=200}" />
<DockPadding value="" /> <DockPadding value="" />
@ -49,7 +49,7 @@
<Dock value="Top" /> <Dock value="Top" />
<Controls> <Controls>
<System.Windows.Forms.Panel> <System.Windows.Forms.Panel>
<Name value="panel4" /> <Name value="toRevisionPanel" />
<Location value="{X=283,Y=0}" /> <Location value="{X=283,Y=0}" />
<Size value="{Width=325, Height=200}" /> <Size value="{Width=325, Height=200}" />
<DockPadding value="" /> <DockPadding value="" />
@ -73,17 +73,27 @@
<View value="Details" /> <View value="Details" />
<FullRowSelect value="True" /> <FullRowSelect value="True" />
<Location value="{X=8,Y=24}" /> <Location value="{X=8,Y=24}" />
<Size value="{Width=306, Height=168}" /> <Size value="{Width=296, Height=168}" />
<HideSelection value="False" /> <HideSelection value="False" />
<Columns> <Columns>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Name value="columnHeader5" /> <Name value="columnHeader1" />
<Text value="Revision" /> <Text value="Revision" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="150" /> <Name value="columnHeader2" />
<Name value="columnHeader6" /> <Width value="100" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="120" />
<Text value="Date" /> <Text value="Date" />
<Name value="columnHeader3" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="500" />
<Text value="Comment" />
<Name value="columnHeader4" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
</Columns> </Columns>
</System.Windows.Forms.ListView> </System.Windows.Forms.ListView>
@ -96,7 +106,7 @@
<Location value="{X=280,Y=0}" /> <Location value="{X=280,Y=0}" />
</System.Windows.Forms.Splitter> </System.Windows.Forms.Splitter>
<System.Windows.Forms.Panel> <System.Windows.Forms.Panel>
<Name value="panel3" /> <Name value="fromRevisionPanel" />
<Location value="{X=0,Y=0}" /> <Location value="{X=0,Y=0}" />
<Size value="{Width=280, Height=200}" /> <Size value="{Width=280, Height=200}" />
<DockPadding value="" /> <DockPadding value="" />
@ -128,9 +138,19 @@
<Text value="Revision" /> <Text value="Revision" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader2" /> <Name value="columnHeader2" />
<Width value="100" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="120" />
<Text value="Date" /> <Text value="Date" />
<Name value="columnHeader3" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="500" />
<Text value="Comment" />
<Name value="columnHeader4" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
</Columns> </Columns>
</System.Windows.Forms.ListView> </System.Windows.Forms.ListView>
@ -140,166 +160,4 @@
</System.Windows.Forms.Panel> </System.Windows.Forms.Panel>
</Controls> </Controls>
</System.Windows.Forms.UserControl> </System.Windows.Forms.UserControl>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader12" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader13" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader10" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader11" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader16" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader17" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader14" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader15" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader18" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader19" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader20" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader23" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader22" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader25" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader24" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader27" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader26" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader29" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader28" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader3" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader2" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader1" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader7" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader6" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader5" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader4" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader9" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader8" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader30" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader31" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader32" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader36" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader21" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader33" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader34" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Name value="columnHeader35" />
<Text value="Revision" />
</System.Windows.Forms.ColumnHeader>
</Components> </Components>

172
src/AddIns/Misc/SubversionAddIn/Project/Resources/InfoPanel.xfrm

@ -1,154 +1,112 @@
<Components version="1.0"> <Components version="1.0">
<System.Windows.Forms.UserControl> <System.Windows.Forms.UserControl>
<Name value="XmlUserControl1" /> <Name value="XmlUserControl1" />
<DockPadding value="" />
<ClientSize value="{Width=608, Height=472}" /> <ClientSize value="{Width=608, Height=472}" />
<Controls> <Controls>
<System.Windows.Forms.Panel>
<Name value="panel2" />
<Location value="{X=0,Y=203}" />
<Size value="{Width=608, Height=269}" />
<DockPadding value="" />
<TabIndex value="3" />
<Dock value="Fill" />
<Controls>
<System.Windows.Forms.Label>
<Name value="commentLabel" />
<Text value="&amp;Comment:" />
<TextAlign value="BottomLeft" />
<Anchor value="Top, Left, Right" />
<TabIndex value="4" />
<Size value="{Width=592, Height=16}" />
<Location value="{X=8,Y=8}" />
</System.Windows.Forms.Label>
<System.Windows.Forms.RichTextBox>
<Name value="commentRichTextBox" />
<Anchor value="Top, Bottom, Left, Right" />
<ReadOnly value="True" />
<Size value="{Width=592, Height=236}" />
<Location value="{X=8,Y=24}" />
<Text value="" />
<TabIndex value="5" />
<WordWrap value="False" />
</System.Windows.Forms.RichTextBox>
</Controls>
</System.Windows.Forms.Panel>
<System.Windows.Forms.Splitter>
<Name value="splitter1" />
<TabIndex value="1" />
<Size value="{Width=608, Height=3}" />
<Location value="{X=0,Y=200}" />
<Dock value="Top" />
</System.Windows.Forms.Splitter>
<System.Windows.Forms.Panel> <System.Windows.Forms.Panel>
<Name value="panel1" /> <Name value="panel1" />
<Location value="{X=0,Y=0}" /> <Location value="{X=0,Y=0}" />
<Size value="{Width=608, Height=200}" /> <Size value="{Width=608, Height=196}" />
<DockPadding value="" />
<TabIndex value="0" /> <TabIndex value="0" />
<Dock value="Top" /> <Dock value="Fill" />
<Controls> <Controls>
<System.Windows.Forms.Label> <System.Windows.Forms.Label>
<Name value="label2" /> <Name value="label2" />
<Location value="{X=8,Y=0}" />
<Text value="&amp;Revision history:" /> <Text value="&amp;Revision history:" />
<TextAlign value="BottomLeft" /> <TextAlign value="BottomLeft" />
<Anchor value="Top, Left, Right" />
<TabIndex value="1" />
<Size value="{Width=592, Height=16}" /> <Size value="{Width=592, Height=16}" />
<Location value="{X=8,Y=8}" /> <TabIndex value="1" />
<Anchor value="Top, Left, Right" />
</System.Windows.Forms.Label> </System.Windows.Forms.Label>
<System.Windows.Forms.ListView> <System.Windows.Forms.ListView>
<Name value="revisionListView" /> <Name value="revisionListView" />
<Size value="{Width=592, Height=171}" />
<TabIndex value="2" />
<FullRowSelect value="True" />
<GridLines value="True" /> <GridLines value="True" />
<MultiSelect value="False" /> <MultiSelect value="False" />
<Anchor value="Top, Bottom, Left, Right" />
<TabIndex value="2" />
<View value="Details" /> <View value="Details" />
<FullRowSelect value="True" />
<Location value="{X=8,Y=24}" />
<Size value="{Width=592, Height=168}" />
<HideSelection value="False" /> <HideSelection value="False" />
<Location value="{X=8,Y=19}" />
<Anchor value="Top, Bottom, Left, Right" />
<Columns> <Columns>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Name value="columnHeader1" /> <Name value="columnHeader1" />
<Text value="Revision" /> <Text value="Revision" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader2" /> <Name value="columnHeader2" />
<Text value="Date" /> <Width value="100" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="150" /> <Width value="120" />
<Text value="Date" />
<Name value="columnHeader3" /> <Name value="columnHeader3" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="180" /> <Width value="400" />
<Name value="columnHeader4" />
<Text value="Comment" /> <Text value="Comment" />
<Name value="columnHeader4" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
</Columns> </Columns>
</System.Windows.Forms.ListView> </System.Windows.Forms.ListView>
</Controls> </Controls>
</System.Windows.Forms.Panel> </System.Windows.Forms.Panel>
</Controls> <System.Windows.Forms.Splitter>
</System.Windows.Forms.UserControl> <Name value="splitter1" />
<System.Windows.Forms.ColumnHeader> <Location value="{X=0,Y=196}" />
<Width value="150" /> <Size value="{Width=608, Height=3}" />
<Name value="columnHeader3" /> <TabIndex value="4" />
<Text value="Author" /> <Dock value="Bottom" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.Splitter>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.Panel>
<Width value="150" /> <Name value="panel2" />
<Name value="columnHeader2" /> <Location value="{X=8,Y=205}" />
<Text value="Date" /> <Size value="{Width=499, Height=240}" />
</System.Windows.Forms.ColumnHeader> <Dock value="Bottom" />
<System.Windows.Forms.ColumnHeader> <TabIndex value="3" />
<Name value="columnHeader1" /> <Controls>
<Text value="Revision" /> <System.Windows.Forms.ListView>
</System.Windows.Forms.ColumnHeader> <Name value="changesListView" />
<System.Windows.Forms.ColumnHeader> <Size value="{Width=483, Height=115}" />
<Name value="columnHeader7" /> <TabIndex value="6" />
<Text value="Revision" /> <View value="Details" />
</System.Windows.Forms.ColumnHeader> <Location value="{X=8,Y=114}" />
<System.Windows.Forms.ColumnHeader> <Anchor value="Top, Bottom, Left, Right" />
<Width value="150" /> <FullRowSelect value="true" />
<Name value="columnHeader6" /> <Columns>
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader5" />
<Text value="Date" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader4" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="180" />
<Name value="columnHeader8" />
<Text value="Comment" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader>
<Width value="150" />
<Name value="columnHeader9" />
<Text value="Author" />
</System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="180" /> <Width value="65" />
<Name value="columnHeader12" /> <Text value="Action" />
<Text value="Comment" /> <Name value="actionColumnHeader" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Width value="150" /> <Name value="pathColumnHeader" />
<Name value="columnHeader10" /> <Width value="70" />
<Text value="Author" /> <Text value="Path" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
<System.Windows.Forms.ColumnHeader> <System.Windows.Forms.ColumnHeader>
<Name value="columnHeader11" /> <Name value="copyFromColumnHeader" />
<Text value="Revision" /> <Width value="70" />
<Text value="Copy from" />
</System.Windows.Forms.ColumnHeader> </System.Windows.Forms.ColumnHeader>
</Columns>
</System.Windows.Forms.ListView>
<System.Windows.Forms.RichTextBox>
<Name value="commentRichTextBox" />
<TabIndex value="5" />
<BackColor value="Color [Window]" />
<WordWrap value="False" />
<Text value="" />
<Anchor value="Top, Left, Right" />
<Location value="{X=8,Y=6}" />
<Size value="{Width=483, Height=102}" />
<ReadOnly value="True" />
</System.Windows.Forms.RichTextBox>
</Controls>
</System.Windows.Forms.Panel>
</Controls>
</System.Windows.Forms.UserControl>
</Components> </Components>

9
src/AddIns/Misc/SubversionAddIn/Project/Src/AddInOptions.cs

@ -44,6 +44,15 @@ namespace ICSharpCode.Svn
} }
} }
public static bool AutomaticallyDeleteFiles {
get {
return Properties.Get("AutomaticallyDeleteFiles", false);
}
set {
Properties.Set("AutomaticallyDeleteFiles", value);
}
}
public static bool AutomaticallyReloadProject { public static bool AutomaticallyReloadProject {
get { get {
return Properties.Get("AutomaticallyReloadProject", true); return Properties.Get("AutomaticallyReloadProject", true);

12
src/AddIns/Misc/SubversionAddIn/Project/Src/Commands/AutostartCommands.cs

@ -49,9 +49,11 @@ namespace ICSharpCode.Svn.Commands
void FileSaved(object sender, FileNameEventArgs e) void FileSaved(object sender, FileNameEventArgs e)
{ {
// TODO: Reimplement ProjectBrowserPad pad = ProjectBrowserPad.Instance;
//ICSharpCode.SharpDevelop.Gui.Pads.ProjectBrowser.ProjectBrowserView pbv = (ICSharpCode.SharpDevelop.Gui.Pads.ProjectBrowser.ProjectBrowserView)WorkbenchSingleton.Workbench.GetPad(typeof(ICSharpCode.SharpDevelop.Gui.Pads.ProjectBrowser.ProjectBrowserView)); if (pad == null) return;
//pbv.VisitRoot(); FileNode node = pad.ProjectBrowserControl.FindFileNode(e.FileName);
if (node == null) return;
OverlayIconManager.Enqueue(node);
} }
void FileAdded(object sender, FileEventArgs e) void FileAdded(object sender, FileEventArgs e)
@ -70,9 +72,11 @@ namespace ICSharpCode.Svn.Commands
{ {
// Console.WriteLine("REMOVE : " + e.FileName); // Console.WriteLine("REMOVE : " + e.FileName);
try { try {
if (AddInOptions.AutomaticallyDeleteFiles) {
SvnClient.Instance.Client.Delete( new string [] { SvnClient.Instance.Client.Delete( new string [] {
Path.GetFullPath(e.FileName) Path.GetFullPath(e.FileName)
}, true); }, true);
}
} catch (Exception ex) { } catch (Exception ex) {
MessageService.ShowError("File removed exception: " + ex); MessageService.ShowError("File removed exception: " + ex);
} }
@ -83,7 +87,7 @@ namespace ICSharpCode.Svn.Commands
// Console.WriteLine("RENAME : " + e.FileName); // Console.WriteLine("RENAME : " + e.FileName);
try { try {
SvnClient.Instance.Client.Move(Path.GetFullPath(e.SourceFile), SvnClient.Instance.Client.Move(Path.GetFullPath(e.SourceFile),
Revision.Unspecified, Revision.Unspecified, // TODO: Remove this line when upgrading to new NSvn version
Path.GetFullPath(e.TargetFile), Path.GetFullPath(e.TargetFile),
true true
); );

86
src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/ContentPanel.cs

@ -1,86 +0,0 @@
/*
* Created by SharpDevelop.
* User: Omnibrain
* Date: 22.11.2004
* Time: 11:08
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Drawing;
using System.Text;
using System.Threading;
using System.IO;
using System.Windows.Forms;
using System.Reflection;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
using ICSharpCode.SharpDevelop.Gui.XmlForms;
using NSvn.Common;
using NSvn.Core;
namespace ICSharpCode.Svn
{
/// <summary>
/// Description of InfoPanel.
/// </summary>
public class ContentPanel : BaseSharpDevelopUserControl
{
IViewContent viewContent;
public ContentPanel(IViewContent viewContent)
{
SetupFromXmlStream(GetType().Assembly.GetManifestResourceStream("ICSharpCode.Svn.Resources.ContentPanel.xfrm"));
this.viewContent = viewContent;
((ListView)ControlDictionary["revisionListView"]).SelectedIndexChanged += new EventHandler(RevisionListViewSelectionChanged);
ControlDictionary["contentRichTextBox"].Enabled = false;
ControlDictionary["contentRichTextBox"].Font = new Font("Courier New", 10);
ControlDictionary["splitter1"].Height = 3;
}
LogMessage logMessage;
void DoCat()
{
MemoryStream memStream = new MemoryStream();
try {
SvnClient.Instance.Client.Cat(memStream,
Path.GetFullPath(viewContent.FileName),
logMessage.Revision == 1 ? Revision.Head : Revision.FromNumber(logMessage.Revision));
ControlDictionary["contentRichTextBox"].Enabled = true;
ControlDictionary["contentRichTextBox"].Text = Encoding.Default.GetString(memStream.ToArray());
ControlDictionary["contentLabel"].Text = "Content of revision " + logMessage.Revision + ":";
} finally {
memStream.Close();
}
}
void RevisionListViewSelectionChanged(object sender, EventArgs e)
{
if (((ListView)ControlDictionary["revisionListView"]).SelectedItems.Count == 0) {
ControlDictionary["contentRichTextBox"].Text = "";
ControlDictionary["contentRichTextBox"].Enabled = false;
ControlDictionary["contentLabel"].Text = "Content:";
return;
}
logMessage = ((ListView)ControlDictionary["revisionListView"]).SelectedItems[0].Tag as LogMessage;
SvnClient.Instance.OperationStart("Cat", new ThreadStart(DoCat));
}
public void AddLogMessage(LogMessage logMessage)
{
ListViewItem newItem = new ListViewItem(new string[] {
logMessage.Revision.ToString(),
logMessage.Date.ToString(),
logMessage.Author,
logMessage.Message
});
newItem.Tag = logMessage;
((ListView)ControlDictionary["revisionListView"]).Items.Add(newItem);
}
}
}

33
src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/DiffPanel.cs

@ -40,17 +40,22 @@ namespace ICSharpCode.Svn
ControlDictionary["splitter1"].Height = 3; ControlDictionary["splitter1"].Height = 3;
ListViewItem newItem; ListViewItem newItem;
newItem = new ListViewItem(new string[] { "Base", "" }); newItem = new ListViewItem(new string[] { "Base", "", "", "" });
newItem.Tag = Revision.Base; newItem.Tag = Revision.Base;
Get<ListView>("fromRevision").Items.Add(newItem); Get<ListView>("fromRevision").Items.Add(newItem);
newItem = new ListViewItem(new string[] { "Base", "" }); newItem.Selected = true;
newItem.Tag = Revision.Base; newItem = new ListViewItem(new string[] { "Work", "", "", "" });
Get<ListView>("toRevision").Items.Add(newItem); newItem.Tag = Revision.Working;
newItem = new ListViewItem(new string[] { "Head", "" });
newItem.Tag = Revision.Head;
Get<ListView>("toRevision").Items.Add(newItem); Get<ListView>("toRevision").Items.Add(newItem);
} }
protected override void OnLoad(EventArgs e)
{
// fix sizing problems
Get<ListView>("toRevision").Width -= 13;
ControlDictionary["fromRevisionPanel"].Width = ControlDictionary["topPanel"].Width / 2 - 2;
}
string output = null; string output = null;
string fileName = null; string fileName = null;
Revision fromRevision; Revision fromRevision;
@ -101,23 +106,31 @@ namespace ICSharpCode.Svn
toRevision = Get<ListView>("toRevision").SelectedItems[0].Tag as Revision; toRevision = Get<ListView>("toRevision").SelectedItems[0].Tag as Revision;
fileName = Path.GetFullPath(viewContent.FileName); fileName = Path.GetFullPath(viewContent.FileName);
if (fromRevision.ToString() == toRevision.ToString()) {
output = "";
} else {
SvnClient.Instance.OperationStart("Diff", new ThreadStart(DoDiffOperation)); SvnClient.Instance.OperationStart("Diff", new ThreadStart(DoDiffOperation));
} }
}
public void AddLogMessage(LogMessage logMessage) public void AddLogMessage(LogMessage logMessage)
{ {
ListViewItem newItem = new ListViewItem(new string[] { ListViewItem newItem = new ListViewItem(new string[] {
logMessage.Revision.ToString(), logMessage.Revision.ToString(),
logMessage.Date.ToString() logMessage.Author,
logMessage.Date.ToString(),
logMessage.Message
}); });
newItem.Tag = logMessage; newItem.Tag = Revision.FromNumber(logMessage.Revision);
Get<ListView>("fromRevision").Items.Add(newItem); Get<ListView>("fromRevision").Items.Add(newItem);
ListViewItem newItem2 = new ListViewItem(new string[] { ListViewItem newItem2 = new ListViewItem(new string[] {
logMessage.Revision.ToString(), logMessage.Revision.ToString(),
logMessage.Date.ToString() logMessage.Author,
logMessage.Date.ToString(),
logMessage.Message
}); });
newItem2.Tag = logMessage; newItem2.Tag = Revision.FromNumber(logMessage.Revision);
Get<ListView>("toRevision").Items.Add(newItem2); Get<ListView>("toRevision").Items.Add(newItem2);
} }
} }

13
src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/HistoryViewPanel.cs

@ -24,7 +24,6 @@ namespace ICSharpCode.Svn
{ {
IViewContent viewContent; IViewContent viewContent;
ContentPanel contentPanel;
InfoPanel infoPanel; InfoPanel infoPanel;
DiffPanel diffPanel; DiffPanel diffPanel;
@ -36,7 +35,7 @@ namespace ICSharpCode.Svn
protected override void OnVisibleChanged(EventArgs e) protected override void OnVisibleChanged(EventArgs e)
{ {
base.OnVisibleChanged(e); base.OnVisibleChanged(e);
if (Visible && contentPanel == null) { if (Visible && infoPanel == null) {
Initialize(); Initialize();
} }
} }
@ -47,11 +46,6 @@ namespace ICSharpCode.Svn
mainTab.Dock = DockStyle.Fill; mainTab.Dock = DockStyle.Fill;
mainTab.Alignment = TabAlignment.Bottom; mainTab.Alignment = TabAlignment.Bottom;
TabPage contentTabPage = new TabPage("Content");
contentPanel = new ContentPanel(viewContent);
contentPanel.Dock = DockStyle.Fill;
contentTabPage.Controls.Add(contentPanel);
mainTab.TabPages.Add(contentTabPage);
TabPage infoTabPage = new TabPage("Info"); TabPage infoTabPage = new TabPage("Info");
infoPanel = new InfoPanel(viewContent); infoPanel = new InfoPanel(viewContent);
@ -86,8 +80,8 @@ namespace ICSharpCode.Svn
if (File.Exists(fileName)) { if (File.Exists(fileName)) {
Client client = SvnClient.Instance.Client; Client client = SvnClient.Instance.Client;
client.Log(new string[] { fileName}, client.Log(new string[] { fileName},
Revision.FromNumber(1), // Revision start Revision.Head, // Revision start
Revision.Working, // Revision end Revision.FromNumber(1), // Revision end
false, // bool discoverChangePath false, // bool discoverChangePath
false, // bool strictNodeHistory false, // bool strictNodeHistory
new LogMessageReceiver(ReceiveLogMessage)); new LogMessageReceiver(ReceiveLogMessage));
@ -97,7 +91,6 @@ namespace ICSharpCode.Svn
void ReceiveLogMessage(LogMessage logMessage) void ReceiveLogMessage(LogMessage logMessage)
{ {
WorkbenchSingleton.SafeThreadCall(infoPanel, "AddLogMessage", logMessage); WorkbenchSingleton.SafeThreadCall(infoPanel, "AddLogMessage", logMessage);
WorkbenchSingleton.SafeThreadCall(contentPanel, "AddLogMessage", logMessage);
WorkbenchSingleton.SafeThreadCall(diffPanel, "AddLogMessage", logMessage); WorkbenchSingleton.SafeThreadCall(diffPanel, "AddLogMessage", logMessage);
} }
} }

137
src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/HistoryViewDisplayBinding/InfoPanel.cs

@ -8,12 +8,14 @@
*/ */
using System; using System;
using System.Collections;
using System.Drawing; using System.Drawing;
using System.Reflection; using System.Reflection;
using System.Windows.Forms; using System.Windows.Forms;
using ICSharpCode.SharpDevelop.Gui; using ICSharpCode.SharpDevelop.Gui;
using NSvn.Common; using NSvn.Common;
using NSvn.Core; using NSvn.Core;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Gui.XmlForms; using ICSharpCode.SharpDevelop.Gui.XmlForms;
namespace ICSharpCode.Svn namespace ICSharpCode.Svn
@ -24,6 +26,7 @@ namespace ICSharpCode.Svn
public class InfoPanel : BaseSharpDevelopUserControl public class InfoPanel : BaseSharpDevelopUserControl
{ {
IViewContent viewContent; IViewContent viewContent;
ListView revisionList, changesList;
public InfoPanel(IViewContent viewContent) public InfoPanel(IViewContent viewContent)
{ {
@ -31,38 +34,144 @@ namespace ICSharpCode.Svn
SetupFromXmlStream(GetType().Assembly.GetManifestResourceStream("ICSharpCode.Svn.Resources.InfoPanel.xfrm")); SetupFromXmlStream(GetType().Assembly.GetManifestResourceStream("ICSharpCode.Svn.Resources.InfoPanel.xfrm"));
((ListView)ControlDictionary["revisionListView"]).SelectedIndexChanged += new EventHandler(RevisionListViewSelectionChanged); revisionList = Get<ListView>("revision");
changesList = Get<ListView>("changes");
revisionList.SelectedIndexChanged += RevisionListViewSelectionChanged;
ControlDictionary["commentRichTextBox"].Enabled = false; ControlDictionary["commentRichTextBox"].Enabled = false;
ControlDictionary["commentRichTextBox"].Font = new Font("Courier New", 10); ControlDictionary["commentRichTextBox"].Font = new Font("Courier New", 10);
// Work around WinForms/XmlForms bug:
ControlDictionary["splitter1"].Height = 3; ControlDictionary["splitter1"].Height = 3;
} }
int lastRevision = -1;
public void AddLogMessage(LogMessage logMessage)
{
if (lastRevision < 0)
lastRevision = logMessage.Revision;
ListViewItem newItem = new ListViewItem(new string[] {
logMessage.Revision.ToString(),
logMessage.Author,
logMessage.Date.ToString(),
logMessage.Message
});
newItem.Tag = logMessage;
revisionList.Items.Add(newItem);
}
void RevisionListViewSelectionChanged(object sender, EventArgs e) void RevisionListViewSelectionChanged(object sender, EventArgs e)
{ {
if (((ListView)ControlDictionary["revisionListView"]).SelectedItems.Count == 0) { changesList.Items.Clear();
if (revisionList.SelectedItems.Count == 0) {
ControlDictionary["commentRichTextBox"].Text = ""; ControlDictionary["commentRichTextBox"].Text = "";
ControlDictionary["commentRichTextBox"].Enabled = false; ControlDictionary["commentRichTextBox"].Enabled = false;
ControlDictionary["commentLabel"].Text = "Comment:";
return; return;
} }
ControlDictionary["commentRichTextBox"].Enabled = true; ControlDictionary["commentRichTextBox"].Enabled = true;
LogMessage logMessage = ((ListView)ControlDictionary["revisionListView"]).SelectedItems[0].Tag as LogMessage; ListViewItem item = revisionList.SelectedItems[0];
ControlDictionary["commentLabel"].Text = "Comment of revision " + logMessage.Revision + ":"; LogMessage logMessage = item.Tag as LogMessage;
ControlDictionary["commentRichTextBox"].Text = logMessage.Message; ControlDictionary["commentRichTextBox"].Text = logMessage.Message;
ChangedPathDictionary changes = logMessage.ChangedPaths;
if (changes == null) {
changesList.Items.Add("Loading...");
if (!isLoadingChangedPaths) {
isLoadingChangedPaths = true;
loadChangedPathsItem = item;
new MethodInvoker(LoadChangedPaths).BeginInvoke(null, null);
}
} else {
int pathWidth = 70;
int copyFromWidth = 70;
using (Graphics g = CreateGraphics()) {
foreach (DictionaryEntry entry in changes) {
string path = (string)entry.Key;
path = path.Replace('\\', '/');
SizeF size = g.MeasureString(path, changesList.Font);
if (size.Width + 4 > pathWidth)
pathWidth = (int)size.Width + 4;
ChangedPath change = (ChangedPath)entry.Value;
string copyFrom = change.CopyFromPath;
if (copyFrom == null) {
copyFrom = string.Empty;
} else {
copyFrom = copyFrom + " : r" + change.CopyFromRevision;
size = g.MeasureString(copyFrom, changesList.Font);
if (size.Width + 4 > copyFromWidth)
copyFromWidth = (int)size.Width + 4;
}
ListViewItem newItem = new ListViewItem(new string[] {
SvnClient.GetActionString(change.Action),
path,
copyFrom
});
changesList.Items.Add(newItem);
}
}
changesList.Columns[1].Width = pathWidth;
changesList.Columns[2].Width = copyFromWidth;
}
} }
ListViewItem loadChangedPathsItem;
volatile bool isLoadingChangedPaths;
public void AddLogMessage(LogMessage logMessage) void LoadChangedPaths()
{ {
ListViewItem newItem = new ListViewItem(new string[] { try {
logMessage.Revision.ToString(), LogMessage logMessage = (LogMessage)loadChangedPathsItem.Tag;
logMessage.Date.ToString(), string fileName = System.IO.Path.GetFullPath(viewContent.FileName);
logMessage.Author, Client client = SvnClient.Instance.Client;
logMessage.Message try {
}); client.Log(new string[] { fileName },
newItem.Tag = logMessage; Revision.FromNumber(logMessage.Revision), // Revision start
((ListView)ControlDictionary["revisionListView"]).Items.Add(newItem); Revision.FromNumber(logMessage.Revision), // Revision end
true, // bool discoverChangePath
false, // bool strictNodeHistory
new LogMessageReceiver(ReceiveChangedPaths));
} catch (SvnClientException ex) {
if (ex.ErrorCode == 160013) {
// This can happen when the file was renamed/moved so it cannot be found
// directly in the old revision. In that case, we do a full download of
// all revisions (so the file can be found in the new revision and svn can
// follow back its history).
client.Log(new string[] { fileName },
Revision.FromNumber(1), // Revision start
Revision.FromNumber(lastRevision), // Revision end
true, // bool discoverChangePath
false, // bool strictNodeHistory
new LogMessageReceiver(ReceiveAllChangedPaths));
} else {
throw;
}
}
loadChangedPathsItem = null;
isLoadingChangedPaths = false;
WorkbenchSingleton.SafeThreadAsyncCall(this, "RevisionListViewSelectionChanged", null, null);
} catch (Exception ex) {
MessageService.ShowError(ex);
}
}
void ReceiveChangedPaths(LogMessage logMessage)
{
loadChangedPathsItem.Tag = logMessage;
}
void ReceiveAllChangedPaths(LogMessage logMessage)
{
WorkbenchSingleton.SafeThreadAsyncCall(this, "ReceiveAllChangedPathsInvoked", logMessage);
}
void ReceiveAllChangedPathsInvoked(LogMessage logMessage)
{
foreach (ListViewItem item in revisionList.Items) {
LogMessage oldMessage = (LogMessage)item.Tag;
if (oldMessage.Revision == logMessage.Revision) {
item.Tag = logMessage;
break;
}
}
} }
} }
} }

27
src/AddIns/Misc/SubversionAddIn/Project/Src/Gui/ProjectBrowserVisitor/SvnProjectBrowserVisitor.cs

@ -36,26 +36,7 @@ namespace ICSharpCode.Svn
public override object Visit(ProjectNode node, object data) public override object Visit(ProjectNode node, object data)
{ {
node.BackColor = System.Drawing.Color.Yellow; return Visit((DirectoryNode)node, data);
return node.AcceptChildren(this, data);
/*string fileName = node.FileName;
NodeStatus nodeStatus = NodeStatus.None;
if (fileName != null && fileName.Length > 0) {
Status status = client.SingleStatus(Path.GetFullPath(fileName));
nodeStatus = GetNodeStatus(status.TextStatus);
}
if (data != null) {
((NodeStatusInformer)data).Inform(nodeStatus);
}
object back = node.AcceptChildren(this, data);
if (data != null) {
node.NodeStatus = ((NodeStatusInformer)data).NodeStatus;
} else {
node.NodeStatus = nodeStatus;
}
return back;*/
} }
public override object Visit(DirectoryNode node, object data) public override object Visit(DirectoryNode node, object data)
@ -65,12 +46,6 @@ namespace ICSharpCode.Svn
return node.AcceptChildren(this, data); return node.AcceptChildren(this, data);
} }
return data; return data;
/*
Status status = client.SingleStatus(Path.GetFullPath(node.FileName));
node.NodeStatus = GetNodeStatus(status.TextStatus);
if (data != null) {
((NodeStatusInformer)data).Inform(node.NodeStatus);
}*/
} }
public override object Visit(FileNode node, object data) public override object Visit(FileNode node, object data)

21
src/AddIns/Misc/SubversionAddIn/Project/Src/SvnClient.cs

@ -69,7 +69,23 @@ namespace ICSharpCode.Svn
return null; return null;
} }
string GetActionString(NotifyAction action) public static string GetActionString(ChangedPathAction action)
{
switch (action) {
case ChangedPathAction.Add:
return GetActionString(NotifyAction.CommitAdded);
case ChangedPathAction.Delete:
return GetActionString(NotifyAction.CommitDeleted);
case ChangedPathAction.Modify:
return GetActionString(NotifyAction.CommitModified);
case ChangedPathAction.Replace:
return GetActionString(NotifyAction.CommitReplaced);
default:
return "unknown";
}
}
public static string GetActionString(NotifyAction action)
{ {
switch (action) { switch (action) {
case NotifyAction.Add: case NotifyAction.Add:
@ -103,9 +119,10 @@ namespace ICSharpCode.Svn
return "modified"; return "modified";
case NotifyAction.CommitReplaced: case NotifyAction.CommitReplaced:
return "replaced"; return "replaced";
} default:
return "unknown"; return "unknown";
} }
}
void ReceiveNotification(object sender, NotificationEventArgs e) void ReceiveNotification(object sender, NotificationEventArgs e)
{ {

6
src/AddIns/Misc/SubversionAddIn/Project/SubversionAddIn.csproj

@ -6,6 +6,7 @@
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{17F4D7E0-6933-4C2E-8714-FD7E98D625D5}</ProjectGuid> <ProjectGuid>{17F4D7E0-6933-4C2E-8714-FD7E98D625D5}</ProjectGuid>
<PostBuildEvent>..\..\..\..\src\AddIns\Misc\SubversionAddIn\Project\PostBuildEvent.bat</PostBuildEvent>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols> <DebugSymbols>True</DebugSymbols>
@ -48,10 +49,9 @@
<EmbeddedResource Include="Resources\ClientCertDialog.xfrm" /> <EmbeddedResource Include="Resources\ClientCertDialog.xfrm" />
<EmbeddedResource Include="Resources\ClientCertPassphraseDialog.xfrm" /> <EmbeddedResource Include="Resources\ClientCertPassphraseDialog.xfrm" />
<EmbeddedResource Include="Resources\CommitDialog.xfrm" /> <EmbeddedResource Include="Resources\CommitDialog.xfrm" />
<EmbeddedResource Include="Resources\ContentPanel.xfrm" /> <EmbeddedResource Include="Resources\InfoPanel.xfrm" />
<EmbeddedResource Include="Resources\DiffPanel.xfrm" /> <EmbeddedResource Include="Resources\DiffPanel.xfrm" />
<EmbeddedResource Include="Resources\ExportDialog.xfrm" /> <EmbeddedResource Include="Resources\ExportDialog.xfrm" />
<EmbeddedResource Include="Resources\InfoPanel.xfrm" />
<EmbeddedResource Include="Resources\LoginDialog.xfrm" /> <EmbeddedResource Include="Resources\LoginDialog.xfrm" />
<EmbeddedResource Include="Resources\SslServerTrustDialog.xfrm" /> <EmbeddedResource Include="Resources\SslServerTrustDialog.xfrm" />
<EmbeddedResource Include="Resources\SubversionOptionsPanel.xfrm" /> <EmbeddedResource Include="Resources\SubversionOptionsPanel.xfrm" />
@ -67,7 +67,6 @@
<Compile Include="Src\Gui\AuthentificationDialogs\ClientCertPassphraseDialog.cs" /> <Compile Include="Src\Gui\AuthentificationDialogs\ClientCertPassphraseDialog.cs" />
<Compile Include="Src\Gui\AuthentificationDialogs\LoginDialog.cs" /> <Compile Include="Src\Gui\AuthentificationDialogs\LoginDialog.cs" />
<Compile Include="Src\Gui\AuthentificationDialogs\SslServerTrustDialog.cs" /> <Compile Include="Src\Gui\AuthentificationDialogs\SslServerTrustDialog.cs" />
<Compile Include="Src\Gui\HistoryViewDisplayBinding\ContentPanel.cs" />
<Compile Include="Src\Gui\HistoryViewDisplayBinding\DiffPanel.cs" /> <Compile Include="Src\Gui\HistoryViewDisplayBinding\DiffPanel.cs" />
<Compile Include="Src\Gui\HistoryViewDisplayBinding\HistoryView.cs" /> <Compile Include="Src\Gui\HistoryViewDisplayBinding\HistoryView.cs" />
<Compile Include="Src\Gui\HistoryViewDisplayBinding\HistoryViewDisplayBinding.cs" /> <Compile Include="Src\Gui\HistoryViewDisplayBinding\HistoryViewDisplayBinding.cs" />
@ -76,6 +75,7 @@
<Compile Include="Src\Gui\ProjectBrowserVisitor\SvnProjectBrowserVisitor.cs" /> <Compile Include="Src\Gui\ProjectBrowserVisitor\SvnProjectBrowserVisitor.cs" />
<Compile Include="Src\Gui\SubversionOptionsPanel.cs" /> <Compile Include="Src\Gui\SubversionOptionsPanel.cs" />
<Compile Include="Src\Gui\ProjectBrowserVisitor\OverlayIconManager.cs" /> <Compile Include="Src\Gui\ProjectBrowserVisitor\OverlayIconManager.cs" />
<None Include="PostBuildEvent.bat" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj"> <ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj">

40
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/ProjectBrowserControl.cs

@ -101,35 +101,37 @@ namespace ICSharpCode.SharpDevelop.Project
CallVisitor(new FileRenameTreeNodeVisitor(e.SourceFile, e.TargetFile)); CallVisitor(new FileRenameTreeNodeVisitor(e.SourceFile, e.TargetFile));
} }
void SelectFile(ProjectNode projectNode, string fileName)
{
string relativeName = FileUtility.GetRelativePath(projectNode.Directory, fileName);
string file = Path.GetFileName(relativeName);
}
public void RefreshView() public void RefreshView()
{ {
// TODO implement refresh. // TODO implement refresh.
} }
public void SelectFile(string fileName) FileNode FindFileNode(TreeNodeCollection nodes, string fileName)
{ {
if (treeView.Nodes.Count == 0) { FileNode fn;
return; foreach (TreeNode node in nodes) {
fn = node as FileNode;
if (fn != null) {
if (FileUtility.IsEqualFileName(fn.FileName, fileName))
return fn;
} }
fn = FindFileNode(node.Nodes, fileName);
SolutionNode solutionNode = treeView.Nodes[0] as SolutionNode; if (fn != null)
if (solutionNode!= null) { return fn;
foreach (object o in solutionNode.Nodes) {
ProjectNode projectNode = o as ProjectNode;
if (projectNode != null && projectNode.Project.IsFileInProject(fileName)) {
SelectFile(projectNode, fileName);
return;
} }
return null;
} }
public FileNode FindFileNode(string fileName)
{
return FindFileNode(treeView.Nodes, fileName);
} }
// treeView.SelectedNode = null;
// ProjectService.CurrentProject = null; public void SelectFile(string fileName)
{
FileNode node = FindFileNode(fileName);
if (node != null)
treeView.SelectedNode = node;
} }
public void ViewSolution(Solution solution) public void ViewSolution(Solution solution)

82
src/SharpDevelop.sln

@ -1,5 +1,35 @@
Microsoft Visual Studio Solution File, Format Version 9.00 Microsoft Visual Studio Solution File, Format Version 9.00
# SharpDevelop 2.0.0.1 # SharpDevelop 2.0.0.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{5A3EBEBA-0560-41C1-966B-23F7D03A5486}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{9421EDF4-9769-4BE9-B5A6-C87DE221D73C}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.framework.dll", "Tools\NUnit\src\NUnitFramework\framework\nunit.framework.dll.csproj", "{83DD7E12-A705-4DBA-9D71-09C8973D9382}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.core.dll", "Tools\NUnit\src\NUnitFramework\core\nunit.core.dll.csproj", "{EBD43A7F-AFCA-4281-BB53-5CDD91F966A3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.extensions.dll", "Tools\NUnit\src\NUnitFramework\extensions\nunit.extensions.dll.csproj", "{98B10E98-003C-45A0-9587-119142E39986}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{14A277EE-7DF1-4529-B639-7D1EF334C1C5}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{14A277EE-7DF1-4529-B639-7D1EF334C1C5}"
ProjectSection(SolutionItems) = postProject ProjectSection(SolutionItems) = postProject
EndProjectSection EndProjectSection
@ -48,36 +78,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartPage", "AddIns\Misc\St
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddinScout", "AddIns\Misc\AddinScout\Project\AddinScout.csproj", "{4B8F0F98-8BE1-402B-AA8B-C8D548577B38}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddinScout", "AddIns\Misc\AddinScout\Project\AddinScout.csproj", "{4B8F0F98-8BE1-402B-AA8B-C8D548577B38}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{9421EDF4-9769-4BE9-B5A6-C87DE221D73C}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.framework.dll", "Tools\NUnit\src\NUnitFramework\framework\nunit.framework.dll.csproj", "{83DD7E12-A705-4DBA-9D71-09C8973D9382}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.core.dll", "Tools\NUnit\src\NUnitFramework\core\nunit.core.dll.csproj", "{EBD43A7F-AFCA-4281-BB53-5CDD91F966A3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.extensions.dll", "Tools\NUnit\src\NUnitFramework\extensions\nunit.extensions.dll.csproj", "{98B10E98-003C-45A0-9587-119142E39986}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{5A3EBEBA-0560-41C1-966B-23F7D03A5486}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@ -159,6 +159,17 @@ Global
HideSolutionNode = FALSE HideSolutionNode = FALSE
EndGlobalSection EndGlobalSection
GlobalSection(NestedProjects) = preSolution GlobalSection(NestedProjects) = preSolution
{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{98B10E98-003C-45A0-9587-119142E39986} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{EBD43A7F-AFCA-4281-BB53-5CDD91F966A3} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{83DD7E12-A705-4DBA-9D71-09C8973D9382} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{CE5B42B7-6E8C-4385-9E97-F4023FC16BF2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {CE5B42B7-6E8C-4385-9E97-F4023FC16BF2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5}
{FEB825FA-4AD8-425D-8E4A-B5A18EE1B81C} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {FEB825FA-4AD8-425D-8E4A-B5A18EE1B81C} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5}
{4EA396ED-64AD-4AD0-A67A-AB363F3E0C79} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {4EA396ED-64AD-4AD0-A67A-AB363F3E0C79} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5}
@ -177,16 +188,5 @@ Global
{B08385CD-F0CC-488C-B4F4-EEB34B6D2688} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} {B08385CD-F0CC-488C-B4F4-EEB34B6D2688} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D}
{1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} {1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D}
{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} {EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D}
{98B10E98-003C-45A0-9587-119142E39986} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{EBD43A7F-AFCA-4281-BB53-5CDD91F966A3} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{83DD7E12-A705-4DBA-9D71-09C8973D9382} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C}
{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
{4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486}
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal

Loading…
Cancel
Save