Author: danw
Date: 2005-07-13 14:10:39 -0400 (Wed, 13 Jul 2005)
New Revision: 47279
Added:
trunk/stetic/libstetic/editor/StringArray.cs
trunk/stetic/libstetic/wrapper/AboutDialog.cs
trunk/stetic/libstetic/wrapper/FontSelectionDialog.cs
Modified:
trunk/stetic/ChangeLog
trunk/stetic/libstetic/ClassDescriptor.cs
trunk/stetic/libstetic/Makefile.am
trunk/stetic/libstetic/wrapper/Container.cs
trunk/stetic/libstetic/wrapper/Dialog.cs
trunk/stetic/libstetic/wrapper/OptionMenu.cs
trunk/stetic/libstetic/wrapper/objects.xml
trunk/stetic/stetic/Grid.cs
trunk/stetic/stetic/PropertyEditor.cs
trunk/stetic/stetic/Stetic.cs
Log:
* libstetic/ClassDescriptor.cs (ClassDescriptor) parse the
internal-children node of a class as an ItemGroup.
(InternalChildren): return it
* libstetic/wrapper/objects.xml: Add internal-children nodes to
Dialog and OptionMenu. Add info for AboutDialog, ColorSelection,
ColorSelectionDialog, FileChooserWidget, FileChooserButton,
FileChooserDialog, FontSelection, and FontSelectionDialog (several
of which also have internal-children). Move AutoSize from
ContainerChild to BoxChild and TableChild for now at least.
* libstetic/wrapper/Container.cs (Wrap): get the ClassDescriptor's
InternalChildren list and set InternalChildId and Name on the
container's internal children.
* libstetic/wrapper/Dialog.cs (Wrap):
* libstetic/wrapper/OptionMenu.cs (Wrap): Remove internal child
handling; it's done by Container now.
* libstetic/wrapper/AboutDialog.cs: wrap this, to make the
Website/WebsiteLabel behavior more interactively-sane, and to make
it not default to putting "Stetic" as the application name :).
* libstetic/wrapper/FontSelectionDialog.cs: wrapper to expose the
internal FontSelection widget.
* libstetic/editor/StringArray.cs: editor for string[] (for
AboutDialog)
* stetic/PropertyEditor.cs: add Stetic.Editor.StringArray to the
editors hashtable.
* stetic/Grid.cs (SizeAllocate): don't vertically center the label
wrt the editor if the editor is more than twice the line height
(eg, a multiline text box).
* stetic/Stetic.cs (Main): call Gtk.AboutDialog.SetUrlHook() here
rather than in About(), so that the UrlHook is set for
user-created about dialogs too.
Modified: trunk/stetic/ChangeLog
===================================================================
--- trunk/stetic/ChangeLog 2005-07-13 18:09:43 UTC (rev 47278)
+++ trunk/stetic/ChangeLog 2005-07-13 18:10:39 UTC (rev 47279)
@@ -1,3 +1,45 @@
+2005-07-13 Dan Winship <[EMAIL PROTECTED]>
+
+ * libstetic/ClassDescriptor.cs (ClassDescriptor) parse the
+ internal-children node of a class as an ItemGroup.
+ (InternalChildren): return it
+
+ * libstetic/wrapper/objects.xml: Add internal-children nodes to
+ Dialog and OptionMenu. Add info for AboutDialog, ColorSelection,
+ ColorSelectionDialog, FileChooserWidget, FileChooserButton,
+ FileChooserDialog, FontSelection, and FontSelectionDialog (several
+ of which also have internal-children). Move AutoSize from
+ ContainerChild to BoxChild and TableChild for now at least.
+
+ * libstetic/wrapper/Container.cs (Wrap): get the ClassDescriptor's
+ InternalChildren list and set InternalChildId and Name on the
+ container's internal children.
+
+ * libstetic/wrapper/Dialog.cs (Wrap):
+ * libstetic/wrapper/OptionMenu.cs (Wrap): Remove internal child
+ handling; it's done by Container now.
+
+ * libstetic/wrapper/AboutDialog.cs: wrap this, to make the
+ Website/WebsiteLabel behavior more interactively-sane, and to make
+ it not default to putting "Stetic" as the application name :).
+
+ * libstetic/wrapper/FontSelectionDialog.cs: wrapper to expose the
+ internal FontSelection widget.
+
+ * libstetic/editor/StringArray.cs: editor for string[] (for
+ AboutDialog)
+
+ * stetic/PropertyEditor.cs: add Stetic.Editor.StringArray to the
+ editors hashtable.
+
+ * stetic/Grid.cs (SizeAllocate): don't vertically center the label
+ wrt the editor if the editor is more than twice the line height
+ (eg, a multiline text box).
+
+ * stetic/Stetic.cs (Main): call Gtk.AboutDialog.SetUrlHook() here
+ rather than in About(), so that the UrlHook is set for
+ user-created about dialogs too.
+
2005-07-12 Dan Winship <[EMAIL PROTECTED]>
* libstetic/ClassDescriptor.cs: fix some names with underscores to
Modified: trunk/stetic/libstetic/ClassDescriptor.cs
===================================================================
--- trunk/stetic/libstetic/ClassDescriptor.cs 2005-07-13 18:09:43 UTC (rev
47278)
+++ trunk/stetic/libstetic/ClassDescriptor.cs 2005-07-13 18:10:39 UTC (rev
47279)
@@ -20,7 +20,8 @@
ArrayList groups = new ArrayList ();
int importantGroups;
- ItemGroup contextMenu = ItemGroup.Empty;
+ ItemGroup contextMenu;
+ ItemGroup internalChildren;
public ClassDescriptor (Assembly assembly, XmlElement elem)
{
@@ -98,6 +99,12 @@
contextMenu = new ItemGroup (contextElem, this);
else
contextMenu = ItemGroup.Empty;
+
+ XmlElement ichildElem = elem["internal-children"];
+ if (ichildElem != null)
+ internalChildren = new ItemGroup (ichildElem,
this);
+ else
+ internalChildren = ItemGroup.Empty;
}
public Type WrappedType {
@@ -222,5 +229,11 @@
return contextMenu;
}
}
+
+ public ItemGroup InternalChildren {
+ get {
+ return internalChildren;
+ }
+ }
}
}
Modified: trunk/stetic/libstetic/Makefile.am
===================================================================
--- trunk/stetic/libstetic/Makefile.am 2005-07-13 18:09:43 UTC (rev 47278)
+++ trunk/stetic/libstetic/Makefile.am 2005-07-13 18:10:39 UTC (rev 47279)
@@ -34,8 +34,10 @@
editor/ResponseId.cs \
editor/StockItem.cs \
editor/String.cs \
+ editor/StringArray.cs \
editor/Text.cs \
editor/ThemedIcon.cs \
+ wrapper/AboutDialog.cs \
wrapper/Box.cs \
wrapper/Button.cs \
wrapper/CheckButton.cs \
@@ -47,6 +49,7 @@
wrapper/Dialog.cs \
wrapper/Expander.cs \
wrapper/FontButton.cs \
+ wrapper/FontSelectionDialog.cs \
wrapper/Frame.cs \
wrapper/HScale.cs \
wrapper/HScrollbar.cs \
Added: trunk/stetic/libstetic/editor/StringArray.cs
===================================================================
--- trunk/stetic/libstetic/editor/StringArray.cs 2005-07-13 18:09:43 UTC
(rev 47278)
+++ trunk/stetic/libstetic/editor/StringArray.cs 2005-07-13 18:10:39 UTC
(rev 47279)
@@ -0,0 +1,20 @@
+using System;
+using System.Reflection;
+
+namespace Stetic.Editor {
+
+ [PropertyEditor ("Value", "Changed")]
+ public class StringArray : Text {
+
+ public StringArray (PropertyInfo info) : base (info) {}
+
+ public new string[] Value {
+ get {
+ return base.Value.Split ('\n');
+ }
+ set {
+ base.Value = string.Join ("\n", value);
+ }
+ }
+ }
+}
Added: trunk/stetic/libstetic/wrapper/AboutDialog.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/AboutDialog.cs 2005-07-13 18:09:43 UTC
(rev 47278)
+++ trunk/stetic/libstetic/wrapper/AboutDialog.cs 2005-07-13 18:10:39 UTC
(rev 47279)
@@ -0,0 +1,75 @@
+using System;
+
+namespace Stetic.Wrapper {
+
+ public class AboutDialog : Window {
+
+ public override void Wrap (object obj, bool initialized)
+ {
+ base.Wrap (obj, initialized);
+
+ if (!initialized) {
+ // FIXME; set from Project eventually
+ about.Name = "My Application";
+ }
+ }
+
+ Gtk.AboutDialog about {
+ get {
+ return (Gtk.AboutDialog)Wrapped;
+ }
+ }
+
+ string logo;
+ public string Logo {
+ get {
+ return logo;
+ }
+ set {
+ logo = value;
+ about.Logo = new Gdk.Pixbuf (logo);
+ }
+ }
+
+ // In the underlying representation, WebsiteLabel is always set
+ // if Website is; if you set Website to something, and
WebsiteLabel
+ // is null, then WebsiteLabel gets set to match Website. There
are
+ // two problems with this for us:
+ //
+ // 1. If you type "http..." into Website while WebsiteLabel is
+ // blank, WebsiteLabel ends up being forcibly set to just
"h".
+ //
+ // 2. If the user decides s/he wants to get rid of
WebsiteLabel,
+ // they have to actually copy the URL from Website over it.
+ //
+ // In Stetic's representation, WebsiteLabel is always "what to
show
+ // *instead of* Website", and if it's empty, then you see the
raw URL.
+
+ public string Website {
+ get {
+ return about.Website;
+ }
+ set {
+ if (website_label == null)
+ about.WebsiteLabel = value;
+ about.Website = value;
+ }
+ }
+
+ string website_label;
+ public string WebsiteLabel {
+ get {
+ return website_label;
+ }
+ set {
+ if (value == "" || value == null) {
+ about.WebsiteLabel = about.Website;
+ website_label = null;
+ } else {
+ about.WebsiteLabel = value;
+ website_label = value;
+ }
+ }
+ }
+ }
+}
Modified: trunk/stetic/libstetic/wrapper/Container.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/Container.cs 2005-07-13 18:09:43 UTC (rev
47278)
+++ trunk/stetic/libstetic/wrapper/Container.cs 2005-07-13 18:10:39 UTC (rev
47279)
@@ -11,6 +11,17 @@
{
base.Wrap (obj, initialized);
+ ClassDescriptor klass = Registry.LookupClass
(obj.GetType ());
+ foreach (PropertyDescriptor prop in
klass.InternalChildren) {
+ Gtk.Widget child = prop.GetValue (container) as
Gtk.Widget;
+ if (child == null)
+ continue;
+ Widget wrapper = ObjectWrapper.Create (stetic,
child) as Stetic.Wrapper.Widget;
+ wrapper.InternalChildId = prop.GladeName;
+ if (child.Name == ((GLib.GType)child.GetType
()).ToString ())
+ child.Name = container.Name + "_" +
prop.GladeName;
+ }
+
if (!initialized && container.Children.Length == 0)
AddPlaceholder ();
Modified: trunk/stetic/libstetic/wrapper/Dialog.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/Dialog.cs 2005-07-13 18:09:43 UTC (rev
47278)
+++ trunk/stetic/libstetic/wrapper/Dialog.cs 2005-07-13 18:10:39 UTC (rev
47279)
@@ -6,22 +6,10 @@
public override void Wrap (object obj, bool initialized)
{
- Stetic.Wrapper.Widget wrapper;
-
base.Wrap (obj, initialized);
dialog.HasSeparator = false;
- wrapper = ObjectWrapper.Create (stetic, dialog.VBox) as
Stetic.Wrapper.Widget;
- wrapper.InternalChildId = "vbox";
- if (dialog.VBox.Name == "GtkVBox")
- dialog.VBox.Name = dialog.Name + "_vbox";
-
- wrapper = ObjectWrapper.Create (stetic,
dialog.ActionArea) as Stetic.Wrapper.Widget;
- wrapper.InternalChildId = "action_area";
- if (dialog.ActionArea.Name == "GtkHButtonBox")
- dialog.ActionArea.Name = dialog.Name +
"_action_area";
-
- if (!initialized) {
+ if (!initialized && dialog.VBox.Children.Length == 1) {
Placeholder ph = CreatePlaceholder ();
ph.SetSizeRequest (200, 200);
dialog.VBox.Add (ph);
Added: trunk/stetic/libstetic/wrapper/FontSelectionDialog.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/FontSelectionDialog.cs 2005-07-13
18:09:43 UTC (rev 47278)
+++ trunk/stetic/libstetic/wrapper/FontSelectionDialog.cs 2005-07-13
18:10:39 UTC (rev 47279)
@@ -0,0 +1,19 @@
+using System;
+
+namespace Stetic.Wrapper {
+
+ public class FontSelectionDialog : Window {
+
+ public Gtk.FontSelection FontSelection {
+ get {
+ Gtk.Dialog dialog = (Gtk.Dialog)Wrapped;
+
+ foreach (Gtk.Widget w in dialog.VBox) {
+ if (w is Gtk.FontSelection)
+ return (Gtk.FontSelection)w;
+ }
+ return null;
+ }
+ }
+ }
+}
Modified: trunk/stetic/libstetic/wrapper/OptionMenu.cs
===================================================================
--- trunk/stetic/libstetic/wrapper/OptionMenu.cs 2005-07-13 18:09:43 UTC
(rev 47278)
+++ trunk/stetic/libstetic/wrapper/OptionMenu.cs 2005-07-13 18:10:39 UTC
(rev 47279)
@@ -11,15 +11,14 @@
public override void Wrap (object obj, bool initialized)
{
- base.Wrap (obj, initialized);
-
- if (optionmenu.Menu == null) {
+ Gtk.OptionMenu omenu = (Gtk.OptionMenu)obj;
+ if (omenu.Menu == null) {
Gtk.Menu menu = new Gtk.Menu ();
menu.Show ();
- optionmenu.Menu = menu;
+ omenu.Menu = menu;
}
- Widget menuWrapper = (Widget)ObjectWrapper.Create
(stetic, optionmenu.Menu);
- menuWrapper.InternalChildId = "menu";
+
+ base.Wrap (obj, initialized);
}
public override void GladeImport (XmlElement elem)
Modified: trunk/stetic/libstetic/wrapper/objects.xml
===================================================================
--- trunk/stetic/libstetic/wrapper/objects.xml 2005-07-13 18:09:43 UTC (rev
47278)
+++ trunk/stetic/libstetic/wrapper/objects.xml 2005-07-13 18:10:39 UTC (rev
47279)
@@ -68,15 +68,7 @@
</object>
<object type="Gtk.Container,gtk-sharp" wrapper="Stetic.Wrapper.Container"
/>
- <object type="Gtk.Container+ContainerChild,gtk-sharp"
wrapper="Stetic.Wrapper.Container+ContainerChild">
- <itemgroups>
- <itemgroup label="Container Layout">
- <property name="AutoSize" label="Auto Size"
- description="If set, the other packing properties for
this cell will be automatically adjusted as other widgets are added to and
removed from the container"
- internal="true" />
- </itemgroup>
- </itemgroups>
- </object>
+ <object type="Gtk.Container+ContainerChild,gtk-sharp"
wrapper="Stetic.Wrapper.Container+ContainerChild" />
<object type="Gtk.Window,gtk-sharp" wrapper="Stetic.Wrapper.Window"
label="Window" icon="window.png" palette-category="window">
@@ -232,7 +224,8 @@
<itemgroup label="Box Child Layout">
<property name="PackType" />
<property name="Position" />
- <property ref="Gtk.Container+ContainerChild.AutoSize" />
+ <property name="AutoSize" label="Auto Size"
+ description="If set, the other packing properties for
this cell will be automatically adjusted as other widgets are added to and
removed from the container" />
<property name="Expand">
<disabled-if name="AutoSize" value="true" />
</property>
@@ -488,6 +481,10 @@
<itemgroup ref="Gtk.Window.Size" />
<itemgroup ref="Gtk.Widget" />
</itemgroups>
+ <internal-children>
+ <property name="VBox" glade-name="vbox" />
+ <property name="ActionArea" glade-name="action_area" />
+ </internal-children>
</object>
<object type="Gtk.DrawingArea,gtk-sharp"
@@ -805,6 +802,9 @@
</itemgroup>
<itemgroup ref="Gtk.Widget" />
</itemgroups>
+ <internal-children>
+ <property name="Menu" glade-name="menu" />
+ </internal-children>
</object>
<object type="Gtk.ProgressBar,gtk-sharp"
@@ -1033,7 +1033,8 @@
<property name="RightAttach" />
<property name="XPadding" />
<property name="YPadding" />
- <property ref="Gtk.Container+ContainerChild.AutoSize" />
+ <property name="AutoSize" label="Auto Size"
+ description="If set, the other packing properties for
this cell will be automatically adjusted as other widgets are added to and
removed from the container" />
<property name="XOptions" internal="true" />
<property name="YOptions" internal="true" />
<property name="XExpand" label="Expand Horizontally"
@@ -1260,4 +1261,162 @@
</itemgroups>
</object>
+ <object type="Gtk.AboutDialog,gtk-sharp"
wrapper="Stetic.Wrapper.AboutDialog"
+ label="About Dialog" icon="aboutdialog.png"
palette-category="window">
+ <itemgroups>
+ <itemgroup label="About Dialog Properties">
+ <property name="Name" />
+ <property name="Version" />
+ <property name="Logo" glade-override="true"
+ editor="Stetic.Editor.ImageFile" />
+ <property name="Comments" />
+ <property name="Copyright" />
+ <property name="Website" />
+ <property name="WebsiteLabel" />
+ <property name="Authors" />
+ <property name="Documenters" />
+ <property name="Artists" />
+ <property name="TranslatorCredits" />
+ <property name="License" editor="Stetic.Editor.Text" />
+ <property name="Icon" editor="Stetic.Editor.ImageFile" />
+ <property name="WindowPosition" />
+ <property name="Modal" glade-override="true" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Dialog.Misc" />
+ <itemgroup ref="Gtk.Window.Size" />
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ </object>
+
+ <object type="Gtk.ColorSelection,gtk-sharp" wrapper="Stetic.Wrapper.Widget"
+ label="Color Selection" icon="colorselection.png"
palette-category="widget"
+ hexpandable="true" vexpandable="true">
+ <itemgroups>
+ <itemgroup label="Color Selection Properties">
+ <property name="CurrentColor" />
+ <property name="HasPalette" />
+ <property name="HasOpacityControl" />
+ <property name="CurrentAlpha">
+ <disabled-if name="HasOpacityControl" value="false" />
+ </property>
+ </itemgroup>
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ </object>
+
+ <object type="Gtk.ColorSelectionDialog,gtk-sharp"
wrapper="Stetic.Wrapper.Window"
+ label="Color Selection Dialog" icon="colorselectiondialog.png"
palette-category="window">
+ <itemgroups>
+ <itemgroup label="Color Selection Dialog Properties">
+ <property name="Title" />
+ <property name="Icon" editor="Stetic.Editor.ImageFile" />
+ <property name="WindowPosition" />
+ <property name="Modal" glade-override="true" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Dialog.Misc" />
+ <itemgroup ref="Gtk.Window.Size" />
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ <internal-children>
+ <property name="ColorSelection" glade-name="color_selection" />
+ <property name="OkButton" glade-name="ok_button" />
+ <property name="CancelButton" glade-name="cancel_button" />
+ <property name="HelpButton" glade-name="help_button" />
+ </internal-children>
+ </object>
+
+ <object type="Gtk.FileChooserWidget,gtk-sharp"
wrapper="Stetic.Wrapper.Widget"
+ label="File Chooser Widget" icon="fileselection.png"
palette-category="widget"
+ hexpandable="true" vexpandable="true">
+ <itemgroups>
+ <itemgroup label="File Chooser Widget Properties">
+ <property name="Action" />
+ <property name="LocalOnly" />
+ <property name="SelectMultiple">
+ <disabled-if name="Action" value="Save" />
+ <disabled-if name="Action" value="CreateFolder" />
+ </property>
+ <property name="ShowHidden" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ </object>
+
+ <object type="Gtk.FileChooserButton,gtk-sharp"
wrapper="Stetic.Wrapper.Widget"
+ label="File Chooser Button" icon="fileselection.png"
palette-category="widget"
+ hexpandable="true">
+ <itemgroups>
+ <itemgroup label="File Chooser Button Properties">
+ <property name="Title" />
+ <property name="Action" />
+ <property name="LocalOnly" />
+ <property name="SelectMultiple">
+ <disabled-if name="Action" value="Save" />
+ <disabled-if name="Action" value="CreateFolder" />
+ </property>
+ <property name="ShowHidden" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ </object>
+
+ <object type="Gtk.FileChooserDialog,gtk-sharp"
+ label="File Chooser Dialog" icon="fileselection.png"
palette-category="window">
+ <itemgroups>
+ <itemgroup label="File Chooser Dialog Properties">
+ <property name="Title" />
+ <property name="Action" />
+ <property name="LocalOnly" />
+ <property name="SelectMultiple">
+ <disabled-if name="Action" value="Save" />
+ <disabled-if name="Action" value="CreateFolder" />
+ </property>
+ <property name="ShowHidden" />
+ <property name="Icon" editor="Stetic.Editor.ImageFile" />
+ <property name="WindowPosition" />
+ <property name="Modal" glade-override="true" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Dialog.Misc" />
+ <itemgroup ref="Gtk.Window.Size" />
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ <internal-children>
+ <property name="VBox" glade-name="vbox" />
+ <property name="ActionArea" glade-name="action_area" />
+ </internal-children>
+ </object>
+
+ <object type="Gtk.FontSelection,gtk-sharp" wrapper="Stetic.Wrapper.Widget"
+ label="Font Selection" icon="fontselection.png"
palette-category="widget"
+ hexpandable="true" vexpandable="true">
+ <itemgroups>
+ <itemgroup label="Font Selection Properties">
+ <property name="FontName" />
+ <property name="PreviewText" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ </object>
+
+ <object type="Gtk.FontSelectionDialog,gtk-sharp"
wrapper="Stetic.Wrapper.FontSelectionDialog"
+ label="Font Selection Dialog" icon="fontselectiondialog.png"
palette-category="window">
+ <itemgroups>
+ <itemgroup label="Font Selection Dialog Properties">
+ <property name="Title" />
+ <property name="Icon" editor="Stetic.Editor.ImageFile" />
+ <property name="WindowPosition" />
+ <property name="Modal" glade-override="true" />
+ </itemgroup>
+ <itemgroup ref="Gtk.Dialog.Misc" />
+ <itemgroup ref="Gtk.Window.Size" />
+ <itemgroup ref="Gtk.Widget" />
+ </itemgroups>
+ <internal-children>
+ <property name="FontSelection" glade-name="font_selection" />
+ <property name="OkButton" glade-name="ok_button" />
+ <property name="CancelButton" glade-name="cancel_button" />
+ <property name="ApplyButton" glade-name="help_button" />
+ </internal-children>
+ </object>
+
</objects>
Modified: trunk/stetic/stetic/Grid.cs
===================================================================
--- trunk/stetic/stetic/Grid.cs 2005-07-13 18:09:43 UTC (rev 47278)
+++ trunk/stetic/stetic/Grid.cs 2005-07-13 18:10:39 UTC (rev 47279)
@@ -331,7 +331,10 @@
ereq = p.Editor.ChildRequisition;
lalloc.X = xbase + indent;
- lalloc.Y = y + (Math.Max (lineHeight,
ereq.Height) - lreq.Height) / 2;
+ if (ereq.Height < lineHeight * 2)
+ lalloc.Y = y + (ereq.Height -
lreq.Height) / 2;
+ else
+ lalloc.Y = y + (lineHeight -
lreq.Height) / 2;
lalloc.Width = lwidth;
lalloc.Height = lreq.Height;
p.Label.SizeAllocate (lalloc);
Modified: trunk/stetic/stetic/PropertyEditor.cs
===================================================================
--- trunk/stetic/stetic/PropertyEditor.cs 2005-07-13 18:09:43 UTC (rev
47278)
+++ trunk/stetic/stetic/PropertyEditor.cs 2005-07-13 18:10:39 UTC (rev
47279)
@@ -32,6 +32,7 @@
editors[typeof (double)] = typeof
(Stetic.Editor.FloatRange);
editors[typeof (char)] = typeof (Stetic.Editor.Char);
editors[typeof (string)] = typeof
(Stetic.Editor.String);
+ editors[typeof (string[])] = typeof
(Stetic.Editor.StringArray);
editors[typeof (Gdk.Color)] = typeof
(Stetic.Editor.Color);
}
Modified: trunk/stetic/stetic/Stetic.cs
===================================================================
--- trunk/stetic/stetic/Stetic.cs 2005-07-13 18:09:43 UTC (rev 47278)
+++ trunk/stetic/stetic/Stetic.cs 2005-07-13 18:10:39 UTC (rev 47279)
@@ -41,6 +41,10 @@
w.ShowAll ();
}
+ // This is needed for both our own About dialog and for
ones
+ // the user constructs
+ Gtk.AboutDialog.SetUrlHook (ActivateUrl);
+
program.Run ();
return 0;
}
@@ -105,7 +109,6 @@
internal static void About (object obj, EventArgs e)
{
- Gtk.AboutDialog.SetUrlHook (ActivateUrl);
Gtk.AboutDialog about = new Gtk.AboutDialog ();
about.Name = "Stetic";
about.Version = "0.0.0";
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches