Browse Source

ThePimp: creating the BEST FUCKING ABOUT BOX IN THE WORLD!

git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2885 92316355-f0b4-4df1-b90c-862c8a59935f
remotes/tiles
sam 16 years ago
parent
commit
efaa727dd7
10 changed files with 777 additions and 736 deletions
  1. +0
    -31
      ThePimp/About.cs
  2. +48
    -0
      ThePimp/AboutWindow.cs
  3. +1
    -1
      ThePimp/MainWindow.cs
  4. +2
    -2
      ThePimp/Makefile.am
  5. +2
    -2
      ThePimp/ThePimp.mdp
  6. +0
    -69
      ThePimp/gtk-gui/ThePimp.About.cs
  7. +103
    -0
      ThePimp/gtk-gui/ThePimp.AboutWindow.cs
  8. +70
    -35
      ThePimp/gtk-gui/gui.stetic
  9. BIN
      ThePimp/images/about.png
  10. +551
    -596
      ThePimp/images/about.svg

+ 0
- 31
ThePimp/About.cs View File

@@ -1,31 +0,0 @@
//
// The Pimp The Pathetic Image Manipulation Program
// Copyright (c) 2004-2008 Sam Hocevar <sam@zoy.org>
// All Rights Reserved
//
// $Id$
//
// This library is free software. It comes without any warranty, to
// the extent permitted by applicable law. You can redistribute it
// and/or modify it under the terms of the Do What The Fuck You Want
// To Public License, Version 2, as published by Sam Hocevar. See
// http://sam.zoy.org/wtfpl/COPYING for more details.
//

using System;

namespace ThePimp
{
public partial class About : Gtk.Dialog
{
public About()
{
this.Build();
}

protected virtual void OnButtonCloseClicked (object sender, System.EventArgs e)
{
this.Destroy();
}
}
}

+ 48
- 0
ThePimp/AboutWindow.cs View File

@@ -0,0 +1,48 @@
//
// The Pimp The Pathetic Image Manipulation Program
// Copyright (c) 2004-2008 Sam Hocevar <sam@zoy.org>
// All Rights Reserved
//
// $Id$
//
// This library is free software. It comes without any warranty, to
// the extent permitted by applicable law. You can redistribute it
// and/or modify it under the terms of the Do What The Fuck You Want
// To Public License, Version 2, as published by Sam Hocevar. See
// http://sam.zoy.org/wtfpl/COPYING for more details.
//

using System;

namespace ThePimp
{
public partial class AboutWindow : Gtk.Window
{
public AboutWindow() : base(Gtk.WindowType.Toplevel)
{
this.Build();

this.AppPaintable = true;
Gdk.Pixbuf image = Gdk.Pixbuf.LoadFromResource("about.png");
Gdk.Pixmap pixmap, pixmap_mask;
image.RenderPixmapAndMask(out pixmap, out pixmap_mask, 255);
this.GdkWindow.SetBackPixmap(pixmap, false);

this.SetSizeRequest(image.Width, image.Height);
this.Resizable = false;

// FIXME: I have no idea how to enforce this in Stetic
buttonClose.HasFocus = true;
}

protected virtual void OnButtonCloseClicked (object sender, System.EventArgs e)
{
this.Destroy();
}

protected virtual void OnButtonLinkClicked (object sender, System.EventArgs e)
{
System.Diagnostics.Process.Start("http://caca.zoy.org/wiki/thepimp");
}
}
}

+ 1
- 1
ThePimp/MainWindow.cs View File

@@ -63,7 +63,7 @@ namespace ThePimp

protected virtual void OnAboutActionActivated (object sender, System.EventArgs e)
{
new About();
new AboutWindow();
}
}
}

+ 2
- 2
ThePimp/Makefile.am View File

@@ -3,14 +3,14 @@
pimp_sources = \
AssemblyInfo.cs \
Main.cs \
About.cs \
AboutWindow.cs \
MainWindow.cs \
OpenFile.cs \
PictureView.cs \
SaveFile.cs \
ToolBox.cs \
gtk-gui/generated.cs \
gtk-gui/ThePimp.About.cs \
gtk-gui/ThePimp.AboutWindow.cs \
gtk-gui/ThePimp.MainWindow.cs \
gtk-gui/ThePimp.OpenFile.cs \
gtk-gui/ThePimp.PictureView.cs \


+ 2
- 2
ThePimp/ThePimp.mdp View File

@@ -38,9 +38,9 @@
<File name="gtk-gui/ThePimp.ToolBox.cs" subtype="Code" buildaction="Compile" />
<File name="SaveFile.cs" subtype="Code" buildaction="Compile" />
<File name="gtk-gui/ThePimp.SaveFile.cs" subtype="Code" buildaction="Compile" />
<File name="About.cs" subtype="Code" buildaction="Compile" />
<File name="gtk-gui/ThePimp.About.cs" subtype="Code" buildaction="Compile" />
<File name="images/about.png" subtype="Code" buildaction="EmbedAsResource" />
<File name="AboutWindow.cs" subtype="Code" buildaction="Compile" />
<File name="gtk-gui/ThePimp.AboutWindow.cs" subtype="Code" buildaction="Compile" />
</Contents>
<References>
<ProjectReference type="Gac" localcopy="True" refto="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />


+ 0
- 69
ThePimp/gtk-gui/ThePimp.About.cs View File

@@ -1,69 +0,0 @@
// ------------------------------------------------------------------------------
// <autogenerated>
// This code was generated by a tool.
// Mono Runtime Version: 2.0.50727.42
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </autogenerated>
// ------------------------------------------------------------------------------

namespace ThePimp {
public partial class About {
private Gtk.Image image1;
private Gtk.Button buttonClose;
protected virtual void Build() {
Stetic.Gui.Initialize(this);
// Widget ThePimp.About
this.Name = "ThePimp.About";
this.Title = Mono.Unix.Catalog.GetString("About The Pimp");
this.Icon = Stetic.IconLoader.LoadIcon(this, "gtk-about", Gtk.IconSize.Menu, 16);
this.WindowPosition = ((Gtk.WindowPosition)(4));
this.Modal = true;
this.HasSeparator = false;
// Internal child ThePimp.About.VBox
Gtk.VBox w1 = this.VBox;
w1.Name = "dialog1_VBox";
w1.BorderWidth = ((uint)(2));
// Container child dialog1_VBox.Gtk.Box+BoxChild
this.image1 = new Gtk.Image();
this.image1.Name = "image1";
this.image1.Pixbuf = Gdk.Pixbuf.LoadFromResource("about.png");
w1.Add(this.image1);
Gtk.Box.BoxChild w2 = ((Gtk.Box.BoxChild)(w1[this.image1]));
w2.Position = 0;
w2.Expand = false;
w2.Fill = false;
// Internal child ThePimp.About.ActionArea
Gtk.HButtonBox w3 = this.ActionArea;
w3.Name = "dialog1_ActionArea";
w3.Spacing = 6;
w3.BorderWidth = ((uint)(5));
w3.LayoutStyle = ((Gtk.ButtonBoxStyle)(4));
// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
this.buttonClose = new Gtk.Button();
this.buttonClose.CanDefault = true;
this.buttonClose.CanFocus = true;
this.buttonClose.Name = "buttonClose";
this.buttonClose.UseStock = true;
this.buttonClose.UseUnderline = true;
this.buttonClose.Label = "gtk-close";
this.AddActionWidget(this.buttonClose, -7);
Gtk.ButtonBox.ButtonBoxChild w4 = ((Gtk.ButtonBox.ButtonBoxChild)(w3[this.buttonClose]));
w4.Expand = false;
w4.Fill = false;
if ((this.Child != null)) {
this.Child.ShowAll();
}
this.DefaultWidth = 462;
this.DefaultHeight = 367;
this.Show();
this.buttonClose.Clicked += new System.EventHandler(this.OnButtonCloseClicked);
}
}
}

+ 103
- 0
ThePimp/gtk-gui/ThePimp.AboutWindow.cs View File

@@ -0,0 +1,103 @@
// ------------------------------------------------------------------------------
// <autogenerated>
// This code was generated by a tool.
// Mono Runtime Version: 2.0.50727.42
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </autogenerated>
// ------------------------------------------------------------------------------

namespace ThePimp {
public partial class AboutWindow {
private Gtk.VBox vbox2;
private Gtk.HBox hbox1;
private Gtk.VBox vbox3;
private Gtk.Button buttonLink;
private Gtk.Label link;
private Gtk.Button buttonClose;
protected virtual void Build() {
Stetic.Gui.Initialize(this);
// Widget ThePimp.AboutWindow
this.Name = "ThePimp.AboutWindow";
this.Title = Mono.Unix.Catalog.GetString("About The Pimp");
this.Icon = Stetic.IconLoader.LoadIcon(this, "gtk-about", Gtk.IconSize.Menu, 16);
this.TypeHint = ((Gdk.WindowTypeHint)(1));
this.WindowPosition = ((Gtk.WindowPosition)(4));
this.Modal = true;
this.DefaultWidth = 450;
this.DefaultHeight = 300;
// Container child ThePimp.AboutWindow.Gtk.Container+ContainerChild
this.vbox2 = new Gtk.VBox();
this.vbox2.Name = "vbox2";
// Container child vbox2.Gtk.Box+BoxChild
this.hbox1 = new Gtk.HBox();
this.hbox1.Name = "hbox1";
// Container child hbox1.Gtk.Box+BoxChild
this.vbox3 = new Gtk.VBox();
this.vbox3.Name = "vbox3";
this.vbox3.BorderWidth = ((uint)(10));
// Container child vbox3.Gtk.Box+BoxChild
this.buttonLink = new Gtk.Button();
this.buttonLink.CanFocus = true;
this.buttonLink.Name = "buttonLink";
this.buttonLink.FocusOnClick = false;
this.buttonLink.Relief = ((Gtk.ReliefStyle)(2));
// Container child buttonLink.Gtk.Container+ContainerChild
this.link = new Gtk.Label();
this.link.Name = "link";
this.link.LabelProp = Mono.Unix.Catalog.GetString("<span color=\"blue\"><u><b>http://caca.zoy.org/wiki/thepimp</b></u></span>");
this.link.UseMarkup = true;
this.link.UseUnderline = true;
this.buttonLink.Add(this.link);
this.buttonLink.Label = null;
this.vbox3.Add(this.buttonLink);
Gtk.Box.BoxChild w2 = ((Gtk.Box.BoxChild)(this.vbox3[this.buttonLink]));
w2.PackType = ((Gtk.PackType)(1));
w2.Position = 1;
w2.Expand = false;
w2.Fill = false;
this.hbox1.Add(this.vbox3);
Gtk.Box.BoxChild w3 = ((Gtk.Box.BoxChild)(this.hbox1[this.vbox3]));
w3.Position = 0;
w3.Fill = false;
// Container child hbox1.Gtk.Box+BoxChild
this.buttonClose = new Gtk.Button();
this.buttonClose.CanDefault = true;
this.buttonClose.CanFocus = true;
this.buttonClose.Name = "buttonClose";
this.buttonClose.UseStock = true;
this.buttonClose.UseUnderline = true;
this.buttonClose.BorderWidth = ((uint)(10));
this.buttonClose.Label = "gtk-close";
this.hbox1.Add(this.buttonClose);
Gtk.Box.BoxChild w4 = ((Gtk.Box.BoxChild)(this.hbox1[this.buttonClose]));
w4.PackType = ((Gtk.PackType)(1));
w4.Position = 1;
w4.Expand = false;
this.vbox2.Add(this.hbox1);
Gtk.Box.BoxChild w5 = ((Gtk.Box.BoxChild)(this.vbox2[this.hbox1]));
w5.PackType = ((Gtk.PackType)(1));
w5.Position = 1;
w5.Expand = false;
w5.Fill = false;
this.Add(this.vbox2);
if ((this.Child != null)) {
this.Child.ShowAll();
}
this.buttonClose.HasDefault = true;
this.Show();
this.buttonLink.Clicked += new System.EventHandler(this.OnButtonLinkClicked);
this.buttonClose.Clicked += new System.EventHandler(this.OnButtonCloseClicked);
}
}
}

+ 70
- 35
ThePimp/gtk-gui/gui.stetic View File

@@ -781,53 +781,88 @@
</widget>
</child>
</widget>
<widget class="Gtk.Dialog" id="ThePimp.About" design-size="462 367">
<widget class="Gtk.Window" id="ThePimp.AboutWindow" design-size="485 347">
<property name="MemberName" />
<property name="Title" translatable="yes">About The Pimp</property>
<property name="Icon">stock:gtk-about Menu</property>
<property name="TypeHint">Dialog</property>
<property name="WindowPosition">CenterOnParent</property>
<property name="Modal">True</property>
<property name="Buttons">1</property>
<property name="HelpButton">False</property>
<property name="HasSeparator">False</property>
<child internal-child="VBox">
<widget class="Gtk.VBox" id="dialog1_VBox">
<property name="DefaultWidth">450</property>
<property name="DefaultHeight">300</property>
<child>
<widget class="Gtk.VBox" id="vbox2">
<property name="MemberName" />
<property name="BorderWidth">2</property>
<child>
<widget class="Gtk.Image" id="image1">
<property name="MemberName" />
<property name="Pixbuf">resource:about.png</property>
</widget>
<packing>
<property name="Position">0</property>
<property name="AutoSize">True</property>
<property name="Expand">False</property>
<property name="Fill">False</property>
</packing>
<placeholder />
</child>
</widget>
</child>
<child internal-child="ActionArea">
<widget class="Gtk.HButtonBox" id="dialog1_ActionArea">
<property name="MemberName" />
<property name="Spacing">6</property>
<property name="BorderWidth">5</property>
<property name="Size">1</property>
<property name="LayoutStyle">End</property>
<child>
<widget class="Gtk.Button" id="buttonClose">
<widget class="Gtk.HBox" id="hbox1">
<property name="MemberName" />
<property name="CanDefault">True</property>
<property name="CanFocus">True</property>
<property name="UseStock">True</property>
<property name="Type">StockItem</property>
<property name="StockId">gtk-close</property>
<property name="ResponseId">-7</property>
<signal name="Clicked" handler="OnButtonCloseClicked" />
<property name="label">gtk-close</property>
<child>
<widget class="Gtk.VBox" id="vbox3">
<property name="MemberName" />
<property name="BorderWidth">10</property>
<child>
<placeholder />
</child>
<child>
<widget class="Gtk.Button" id="buttonLink">
<property name="MemberName" />
<property name="CanFocus">True</property>
<property name="Type">Custom</property>
<property name="FocusOnClick">False</property>
<property name="Relief">None</property>
<signal name="Clicked" handler="OnButtonLinkClicked" />
<child>
<widget class="Gtk.Label" id="link">
<property name="MemberName" />
<property name="LabelProp" translatable="yes">&lt;span color="blue"&gt;&lt;u&gt;&lt;b&gt;http://caca.zoy.org/wiki/thepimp&lt;/b&gt;&lt;/u&gt;&lt;/span&gt;</property>
<property name="UseMarkup">True</property>
<property name="UseUnderline">True</property>
</widget>
</child>
</widget>
<packing>
<property name="PackType">End</property>
<property name="Position">1</property>
<property name="AutoSize">True</property>
<property name="Expand">False</property>
<property name="Fill">False</property>
</packing>
</child>
</widget>
<packing>
<property name="Position">0</property>
<property name="AutoSize">False</property>
<property name="Fill">False</property>
</packing>
</child>
<child>
<widget class="Gtk.Button" id="buttonClose">
<property name="MemberName" />
<property name="CanDefault">True</property>
<property name="HasDefault">True</property>
<property name="CanFocus">True</property>
<property name="UseStock">True</property>
<property name="Type">StockItem</property>
<property name="StockId">gtk-close</property>
<property name="BorderWidth">10</property>
<signal name="Clicked" handler="OnButtonCloseClicked" />
<property name="label">gtk-close</property>
</widget>
<packing>
<property name="PackType">End</property>
<property name="Position">1</property>
<property name="AutoSize">False</property>
<property name="Expand">False</property>
</packing>
</child>
</widget>
<packing>
<property name="PackType">End</property>
<property name="Position">1</property>
<property name="AutoSize">True</property>
<property name="Expand">False</property>
<property name="Fill">False</property>
</packing>


BIN
ThePimp/images/about.png View File

Before After
Width: 450  |  Height: 300  |  Size: 108 KiB Width: 450  |  Height: 300  |  Size: 106 KiB

+ 551
- 596
ThePimp/images/about.svg
File diff suppressed because it is too large
View File


Loading…
Cancel
Save