Finished translation & fixed configuration issues.

git-svn-id: http://svn.code.sf.net/p/greenshot/code/trunk@1621 7dccd23d-a4a3-4e1f-8c07-b4c1b4018ab4
This commit is contained in:
RKrom 2012-02-02 10:49:14 +00:00
commit affbfb0ce6
11 changed files with 165 additions and 94 deletions

View file

@ -91,7 +91,7 @@ namespace GreenshotConfluencePlugin {
}
public override IEnumerable<IDestination> DynamicDestinations() {
if (!ConfluencePlugin.ConfluenceConnector.isLoggedIn) {
if (ConfluencePlugin.ConfluenceConnectorNoLogin.isLoggedIn) {
yield break;
}
List<Confluence.Page> currentPages = ConfluenceUtils.GetCurrentPages();
@ -111,12 +111,16 @@ namespace GreenshotConfluencePlugin {
}
Page selectedPage = page;
bool openPage = (page == null) && config.OpenPageAfterUpload;
string filename = ConfluencePlugin.Host.GetFilename(config.UploadFormat, captureDetails);
if (page == null) {
if (selectedPage == null) {
ConfluenceUpload confluenceUpload = new ConfluenceUpload(filename);
Nullable<bool> dialogResult = confluenceUpload.ShowDialog();
if (dialogResult.HasValue && dialogResult.Value) {
selectedPage = confluenceUpload.SelectedPage;
if (confluenceUpload.isOpenPageSelected) {
openPage = false;
}
filename = confluenceUpload.Filename;
} else {
return false;
@ -124,7 +128,7 @@ namespace GreenshotConfluencePlugin {
}
if (selectedPage != null) {
using (Image image = surface.GetImageForExport()) {
bool uploaded = upload(image, selectedPage, filename);
bool uploaded = upload(image, selectedPage, filename, openPage);
if (uploaded) {
surface.SendMessageEvent(this, SurfaceMessageTyp.Info, ConfluencePlugin.Host.CoreLanguage.GetFormattedString("exported_to", Description));
surface.Modified = false;
@ -136,7 +140,7 @@ namespace GreenshotConfluencePlugin {
return false;
}
private bool upload(Image image, Page page, string filename) {
private bool upload(Image image, Page page, string filename, bool openPage) {
using (MemoryStream stream = new MemoryStream()) {
ConfluencePlugin.Host.SaveToStream(image, stream, config.UploadFormat, config.UploadJpegQuality);
byte [] buffer = stream.GetBuffer();
@ -160,8 +164,10 @@ namespace GreenshotConfluencePlugin {
}
}
}
if (config.OpenPageAfterUpload) {
Process.Start(page.Url);
if (openPage) {
try {
Process.Start(page.Url);
} catch {}
} else {
System.Windows.MessageBox.Show(lang.GetString(LangKey.upload_success));
}

View file

@ -43,7 +43,7 @@ namespace GreenshotConfluencePlugin {
private static ILanguage lang = Language.GetInstance();
private static IGreenshotHost host;
public static ConfluenceConnector ConfluenceConnector {
public static ConfluenceConnector ConfluenceConnectorNoLogin {
get {
if (confluenceConnector == null) {
if (config.Url.Contains("soap-axis")) {
@ -52,6 +52,15 @@ namespace GreenshotConfluencePlugin {
confluenceConnector = new ConfluenceConnector(config.Url + ConfluenceConfiguration.DEFAULT_POSTFIX, config.Timeout);
}
}
return confluenceConnector;
}
}
public static ConfluenceConnector ConfluenceConnector {
get {
if (confluenceConnector == null) {
confluenceConnector = ConfluenceConnectorNoLogin;
}
try {
if (!confluenceConnector.isLoggedIn) {
confluenceConnector.login();
@ -113,34 +122,16 @@ namespace GreenshotConfluencePlugin {
public virtual void Configure() {
ConfluenceConfiguration clonedConfig = config.Clone();
ConfluenceConfigurationForm configForm = new ConfluenceConfigurationForm(clonedConfig);
string url = config.Url;
Nullable<bool> dialogResult = configForm.ShowDialog();
if (dialogResult.HasValue && dialogResult.Value) {
// copy the new object to the old...
clonedConfig.CloneTo(config);
IniConfig.Save();
confluenceConnector.logout();
confluenceConnector = null;
}
}
public void upload(IImageEditor imageEditor, Page page, string filename) {
using (MemoryStream stream = new MemoryStream()) {
imageEditor.SaveToStream(stream, config.UploadFormat, config.UploadJpegQuality);
byte [] buffer = stream.GetBuffer();
try {
confluenceConnector.addAttachment(page.id, "image/" + config.UploadFormat.ToString().ToLower(), null, filename, buffer);
imageEditor.Surface.Modified = false;
LOG.Debug("Uploaded to Confluence.");
if (config.CopyWikiMarkupForImageToClipboard) {
System.Windows.Clipboard.SetText("!" + filename + "!");
if (confluenceConnector != null) {
if (!url.Equals(config.Url) && confluenceConnector.isLoggedIn) {
confluenceConnector.logout();
}
if (config.OpenPageAfterUpload) {
Process.Start(page.Url);
} else {
System.Windows.MessageBox.Show(lang.GetString(LangKey.upload_success));
}
} catch(Exception e) {
System.Windows.MessageBox.Show(lang.GetString(LangKey.upload_failure) + " " + e.Message);
}
}
}

View file

@ -4,7 +4,7 @@
xmlns:gscp="clr-namespace:GreenshotConfluencePlugin"
xmlns:l="clr-namespace:TranslationByMarkupExtension"
xmlns:gsc="clr-namespace:GreenshotPlugin.Core;assembly=GreenshotPlugin"
Title="Confluence plugin settings" SizeToContent="WidthAndHeight" Icon="/GreenshotConfluencePlugin;component/Images/Confluence.ico">
Title="{l:Translate plugin_settings}" SizeToContent="WidthAndHeight" Icon="/GreenshotConfluencePlugin;component/Images/Confluence.ico">
<Window.Resources>
<gscp:EnumDisplayer Type="{x:Type gsc:OutputFormat}" x:Key="outputFormats"/>
</Window.Resources>
@ -24,9 +24,9 @@
<Label Content="{l:Translate upload_format}" />
<ComboBox ItemsSource="{Binding Source={StaticResource outputFormats},Path=DisplayNames}" SelectedValue="{Binding UploadFormat, Converter={StaticResource outputFormats}}" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<Button IsCancel="True" Content="Cancel"/>
<Button IsDefault="True" Content="OK" Click="Button_Click"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button IsCancel="True" Content="{l:Translate CANCEL}"/>
<Button IsDefault="True" Content="{l:Translate OK}" Click="Button_Click"/>
</StackPanel>
</StackPanel>
</Window>

View file

@ -35,11 +35,6 @@ namespace GreenshotConfluencePlugin {
InitializeComponent();
}
void Upload_Click(object sender, System.Windows.RoutedEventArgs e) {
ConfluenceUpload confluenceUpload = (ConfluenceUpload)Parent;
confluenceUpload.DialogResult = true;
}
void PageListView_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e) {
SelectionChanged();
}
@ -47,6 +42,8 @@ namespace GreenshotConfluencePlugin {
void SelectionChanged() {
if (PageListView.HasItems && PageListView.SelectedItems.Count > 0) {
confluenceUpload.SelectedPage = (Page)PageListView.SelectedItem;
// Make sure the uploader knows we selected an already opened page
confluenceUpload.isOpenPageSelected = true;
} else {
confluenceUpload.SelectedPage = null;
}

View file

@ -16,9 +16,9 @@
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" Content="Space" />
<ComboBox Grid.Row="0" Grid.Column="1" Name="SpaceComboBox" ItemsSource="{Binding Path=Spaces}" DisplayMemberPath="Name" SelectedValuePath="Key"/>
<Label Grid.Row="1" Grid.Column="0" Content="Search text" />
<Label Grid.Row="1" Grid.Column="0" Content="{l:Translate search_text}" />
<TextBox Grid.Row="1" Grid.Column="1" Name="searchText" Text="" KeyDown="SearchText_KeyDown"/>
<Button Grid.Row="2" Grid.ColumnSpan="2" Name="Search" Content="Search" Click="Search_Click" />
<Button Grid.Row="2" Grid.ColumnSpan="2" Name="Search" Content="{l:Translate search}" Click="Search_Click" />
<ListView Grid.Row="3" Grid.ColumnSpan="2" Name="PageListView" SelectionMode="Single" ItemsSource="{Binding Path=Pages}" SelectionChanged="PageListView_SelectionChanged">
<ListView.ItemTemplate>
<DataTemplate>

View file

@ -10,7 +10,7 @@
VerticalAlignment="Top" HorizontalAlignment="Left" />
<Border Name="ShowBusy" BorderBrush="Black" BorderThickness="1" Background="#80000000" Visibility="Visible">
<TextBlock Margin="0" TextWrapping="Wrap" HorizontalAlignment="Center" VerticalAlignment="Center"
FontSize="18" FontWeight="Bold" Foreground="#7EFFFFFF">Loading, please wait...</TextBlock>
FontSize="18" FontWeight="Bold" Foreground="#7EFFFFFF" Text="{l:Translate loading}"/>
</Border>
</Grid>
</Page>

View file

@ -2,16 +2,16 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:l="clr-namespace:TranslationByMarkupExtension"
Title="Upload to confluence" Height="640" Width="500" Icon="/GreenshotConfluencePlugin;component/Images/Confluence.ico">
Title="{l:Translate upload_menu_item}" Height="640" Width="500" Icon="/GreenshotConfluencePlugin;component/Images/Confluence.ico">
<StackPanel>
<TabControl >
<TabItem Header="Open pages">
<TabItem Header="{l:Translate open_pages}">
<Frame NavigationUIVisibility="Hidden" Content="{Binding Path=PickerPage}" Height="500"/>
</TabItem>
<TabItem Header="Search pages">
<TabItem Header="{l:Translate search_pages}">
<Frame NavigationUIVisibility="Hidden" Content="{Binding Path=SearchPage}" Height="500"/>
</TabItem>
<TabItem Header="Browse pages">
<TabItem Header="{l:Translate browse_pages}">
<Frame NavigationUIVisibility="Hidden" Content="{Binding Path=BrowsePage}" Height="500"/>
</TabItem>
</TabControl>
@ -26,9 +26,9 @@
<Label Grid.Row="0" Grid.Column="0" Content="{l:Translate filename}" />
<TextBox Grid.Row="0" Grid.Column="1" Text="{Binding Path=Filename}" />
</Grid>
<StackPanel Orientation="Horizontal">
<Button Name="Upload" Content="Upload" IsDefault="True" IsEnabled="False" Click="Upload_Click" />
<Button Name="Cancel" Content="Cancel" IsCancel="True" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button Name="Upload" Content="{l:Translate upload}" IsDefault="True" IsEnabled="False" Click="Upload_Click" />
<Button Name="Cancel" Content="{l:Translate CANCEL}" IsCancel="True" />
</StackPanel>
</StackPanel>
</Window>

View file

@ -71,9 +71,14 @@ namespace GreenshotConfluencePlugin {
} else {
Upload.IsEnabled = false;
}
isOpenPageSelected = false;
}
}
public bool isOpenPageSelected {
get;
set;
}
public string Filename {
get;
set;

View file

@ -1,10 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<language description="Deutsch" ietf="de-DE" version="0.8.0" prefix="confluence">
<resources>
<resources>
<resource name="plugin_settings">
Confluence einstellungen
</resource>
<resource name="login_error">
Es gab ein Problem während dem Login: {0}
</resource>
<resource name="login_title">
<resource name="login_title">
Bitte geben Sie ihr Confluence anmelde Daten ein
</resource>
<resource name="label_url">
@ -13,38 +16,59 @@
<resource name="label_timeout">
Timeout
</resource>
<resource name="label_user">
<resource name="label_user">
Benutzer
</resource>
<resource name="label_password">
Password
</resource>
<resource name="OK">
<resource name="OK">
OK
</resource>
<resource name="CANCEL">
Cancel
<resource name="CANCEL">
Abbrechen
</resource>
<resource name="upload_menu_item">
<resource name="upload_menu_item">
In Confluence hochladen
</resource>
<resource name="upload_success">
<resource name="upload_success">
Ein erfolg beim Hochladen zum Confluence!
</resource>
<resource name="upload_failure">
<resource name="upload_failure">
Es gab einen Fehler beim Hochladen zum Confluence:
</resource>
<resource name="open_page_after_upload">
<resource name="open_page_after_upload">
Seite nach dem upload öffnen
</resource>
<resource name="upload_format">
Upload format
</resource>
<resource name="upload_format">
Bildformat für Hochladen
</resource>
<resource name="copy_wikimarkup">
Copy the Wikimarkup for image to the Clipboard
</resource>
<resource name="filename">
Filename
Kopiere Wikimarkup in der Zwischenablage
</resource>
<resource name="filename">
Dateiname
</resource>
</resources>
<resource name="upload">
Hochladen
</resource>
<resource name="open_pages">
Aktuelle Seiten
</resource>
<resource name="search_pages">
Seiten suchen
</resource>
<resource name="browse_pages">
Seiten durchstöbern
</resource>
<resource name="search_text">
Text suchen
</resource>
<resource name="search">
Suchen
</resource>
<resource name="loading">
Confluence Daten werden geladen, bitte warten!
</resource>
</resources>
</language>

View file

@ -1,13 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<language description="English" ietf="en-US" version="0.8.0">
<resources>
<resources>
<resource name="plugin_settings">
Confluence settings
</resource>
<resource name="login_error">
There was a problem during the login: {0}
</resource>
<resource name="label_url">
Url
</resource>
<resource name="label_timeout">
<resource name="label_timeout">
Timeout
</resource>
<resource name="label_user">
@ -16,35 +19,56 @@
<resource name="label_password">
Password
</resource>
<resource name="login_title">
<resource name="login_title">
Please enter your Confluence login data
</resource>
<resource name="OK">
<resource name="OK">
OK
</resource>
<resource name="CANCEL">
<resource name="CANCEL">
Cancel
</resource>
<resource name="upload_menu_item">
<resource name="upload_menu_item">
Upload to Confluence
</resource>
<resource name="upload_success">
<resource name="upload_success">
Successfully uploaded image to Confluence!
</resource>
<resource name="upload_failure">
<resource name="upload_failure">
An error occured while uploading to Confluence:
</resource>
<resource name="open_page_after_upload">
Open page after upload
</resource>
<resource name="upload_format">
<resource name="upload_format">
Upload format
</resource>
<resource name="copy_wikimarkup">
Copy the Wikimarkup for image to the Clipboard
</resource>
<resource name="filename">
Copy Wikimarkup to the Clipboard
</resource>
<resource name="filename">
Filename
</resource>
</resources>
<resource name="upload">
Upload
</resource>
<resource name="open_pages">
Open pages
</resource>
<resource name="search_pages">
Search pages
</resource>
<resource name="browse_pages">
Browse pages
</resource>
<resource name="search_text">
Search text
</resource>
<resource name="search">
Search
</resource>
<resource name="loading">
Confluence data is loading, please wait...
</resource>
</resources>
</language>

View file

@ -1,13 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<language description="Nederlands" ietf="nl-NL" version="0.8.0">
<resources>
<resources>
<resource name="plugin_settings">
Confluence instellingen
</resource>
<resource name="login_error">
Tijden de login is een fout opgetreden: {0}
</resource>
<resource name="label_url">
Url
</resource>
<resource name="label_timeout">
<resource name="label_timeout">
Timeout
</resource>
<resource name="label_user">
@ -16,35 +19,56 @@
<resource name="label_password">
Password
</resource>
<resource name="login_title">
<resource name="login_title">
Geef uw Confluence login data
</resource>
<resource name="OK">
<resource name="OK">
OK
</resource>
<resource name="CANCEL">
<resource name="CANCEL">
Afbreken
</resource>
<resource name="upload_menu_item">
<resource name="upload_menu_item">
Upload naar Confluence
</resource>
<resource name="upload_success">
<resource name="upload_success">
Het uploaden naar Confluence is geslaagt!
</resource>
<resource name="upload_failure">
<resource name="upload_failure">
Tijdens het uploaden naar Confluence is een fout opgetreden:
</resource>
<resource name="open_page_after_upload">
Open pagina na het uploaden
</resource>
<resource name="upload_format">
<resource name="upload_format">
Upload formaat
</resource>
<resource name="copy_wikimarkup">
Copy the Wikimarkup for image to the Clipboard
</resource>
<resource name="filename">
Filename
Kopier Wikimarkup naar het klembord
</resource>
</resources>
<resource name="filename">
Filenaam
</resource>
<resource name="upload">
Upload
</resource>
<resource name="open_pages">
Open paginas
</resource>
<resource name="search_pages">
Paginas zoeken
</resource>
<resource name="browse_pages">
Paginas browsen
</resource>
<resource name="search_text">
Zoek op text
</resource>
<resource name="search">
Zoeken
</resource>
<resource name="loading">
Confluence daten worden geladen, wachten A.U.B.
</resource>
</resources>
</language>