зеркало из
1
0
Форкнуть 0
* sample/sample.cs: Added SelectAll, UnselectAll and DeleteSelected
        * PROBLEMS: Added a couple of crashes
        * glue/makefile: Added libgnomeui-2.0 to libs
        * glue/dia-canvas-view.c:
        * dia/CanvasView.custom: Added get accessors for SelectedItems and FocusItem
        * sources/Dia.metadata: Renamed signals in CanvasView, to avoid clashes
          Changed type of property Parent in CanvasItem to CanvasGroup

svn path=/trunk/diacanvas-sharp/; revision=17188
This commit is contained in:
Martin Willemoes Hansen 2003-08-08 10:11:13 +00:00
Родитель d8220e2187
Коммит 3f4420c19f
19 изменённых файлов: 423 добавлений и 24 удалений

Просмотреть файл

@ -1,7 +1,18 @@
2003-08-08 Martin Willemoes Hansen <mwh@sysrq.dk>
* NEWS: Added
* sample/sample.cs: Added SelectAll, UnselectAll and DeleteSelected
* PROBLEMS: Added a couple of crashes
* glue/makefile: Added libgnomeui-2.0 to libs
* glue/dia-canvas-view.c:
* dia/CanvasView.custom: Added get accessors for SelectedItems and FocusItem
* sources/Dia.metadata: Renamed signals in CanvasView, to avoid clashes
Changed type of property Parent in CanvasItem to CanvasGroup
2003-08-07 Martin Willemoes Hansen <mwh@sysrq.dk>
* dia/PlacementTool.custom: Fixed Uni16 to Ansi conversion bug
* sample/sample.cs: Added start of printing sample, gnomeprint wrapper needed.
* sample/sample.cs: Added start of printing sample, gnomeprint wrapper needed
2003-08-06 Martin Willemoes Hansen <mwh@sysrq.dk>

14
NEWS Normal file
Просмотреть файл

@ -0,0 +1,14 @@
0.1.0
=====
* SelectionTool
* Undo / Redo
* SVG export
* CanvasLine, CanvasBox, CanvasText, CanvasImage can
be created programatically and placed with the
PlacementTool.
* Zoom (in/out/100%)
* SelectAll / UnselectAll
* DeleteSelected
* Snap to grid
* API (Not documented yet, though its still usefull)

Просмотреть файл

@ -120,4 +120,13 @@ Results in this:
(<unknown>:972): GLib-GObject-WARNING **: gvalue.c:93: cannot initialize GValue with type `GBoxed', this type has no GTypeValueTable implementation
(<unknown>:972): GLib-GObject-CRITICAL **: file gboxed.c: line 487 (g_value_set_boxed): assertion `G_VALUE_HOLDS_BOXED (value)' failed
(<unknown>:972): GLib-GObject-CRITICAL **: file gobject.c: line 1019 (g_object_set_property): assertion `G_IS_VALUE (value)' failed
(<unknown>:972): GLib-GObject-CRITICAL **: file gobject.c: line 1019 (g_object_set_property): assertion `G_IS_VALUE (value)' failed
================================================================================
Crashes
-------
o Select all, then try to move stuff around.
o Place an image 3 times.

Просмотреть файл

@ -619,7 +619,7 @@
<parameter type="DiaHandle*" name="handle"/>
</parameters>
</signal>
<property name="Parent" cname="parent" type="DiaCanvasItem" readable="true" writeable="true"/>
<property name="Parent" cname="parent" type="DiaCanvasGroup" readable="true" writeable="true"/>
<property name="Visible" cname="visible" type="gboolean" readable="true" writeable="true"/>
<property name="Connect" cname="connect" type="DiaHandle" writeable="true"/>
<property name="Disconnect" cname="disconnect" type="DiaHandle" writeable="true"/>
@ -947,21 +947,21 @@
<field cname="old_x" type="gdouble"/>
<field cname="old_y" type="gdouble"/>
<field cname="button_press_handled" type="gboolean"/>
<signal name="FocusItem" cname="focus_item" when="FIRST">
<signal name="FocusedItem" cname="focus_item" when="FIRST">
<return-type type="void"/>
<parameters>
<parameter type="DiaCanvasView*" name="view"/>
<parameter type="DiaCanvasViewItem*" name="focused_item"/>
</parameters>
</signal>
<signal name="SelectItem" cname="select_item" when="FIRST">
<signal name="SelectedItem" cname="select_item" when="FIRST">
<return-type type="void"/>
<parameters>
<parameter type="DiaCanvasView*" name="view"/>
<parameter type="DiaCanvasViewItem*" name="selected_item"/>
</parameters>
</signal>
<signal name="UnselectItem" cname="unselect_item" when="FIRST">
<signal name="UnselectedItem" cname="unselect_item" when="FIRST">
<return-type type="void"/>
<parameters>
<parameter type="DiaCanvasView*" name="view"/>

Просмотреть файл

@ -699,18 +699,18 @@
</Docs>
</Member>
<Member MemberName="Parent">
<MemberSignature Language="C#" Value="public Dia.CanvasItem Parent { set; get; };" />
<MemberSignature Language="C#" Value="public Dia.CanvasGroup Parent { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Dia.CanvasItem</ReturnType>
<ReturnType>Dia.CanvasGroup</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="value" Type="Dia.CanvasItem" />
<Parameter Name="value" Type="Dia.CanvasGroup" />
</Parameters>
<Docs>
<summary>To be added</summary>
<param name="value">a <see cref="T:Dia.CanvasItem" /></param>
<returns>a <see cref="T:Dia.CanvasItem" /></returns>
<param name="value">a <see cref="T:Dia.CanvasGroup" /></param>
<returns>a <see cref="T:Dia.CanvasGroup" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>

Просмотреть файл

@ -314,6 +314,30 @@
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="FocusItem">
<MemberSignature Language="C#" Value="public Dia.CanvasViewItem FocusItem { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Dia.CanvasViewItem</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:Dia.CanvasViewItem" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="SelectedItems">
<MemberSignature Language="C#" Value="public Collections.IList SelectedItems { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Collections.IList</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:System.Collections.IList" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="Canvas">
<MemberSignature Language="C#" Value="public Dia.Canvas Canvas { set; get; };" />
<MemberType>Property</MemberType>
@ -390,8 +414,8 @@
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="UnselectItem">
<MemberSignature Language="C#" Value="public event DiaSharp.UnselectItemHandler UnselectItem;" />
<Member MemberName="UnselectedItem">
<MemberSignature Language="C#" Value="public event DiaSharp.UnselectedItemHandler UnselectedItem;" />
<MemberType>Event</MemberType>
<ReturnValue />
<Parameters />
@ -400,8 +424,8 @@
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="FocusItem">
<MemberSignature Language="C#" Value="public event DiaSharp.FocusItemHandler FocusItem;" />
<Member MemberName="FocusedItem">
<MemberSignature Language="C#" Value="public event DiaSharp.FocusedItemHandler FocusedItem;" />
<MemberType>Event</MemberType>
<ReturnValue />
<Parameters />
@ -410,8 +434,8 @@
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="SelectItem">
<MemberSignature Language="C#" Value="public event DiaSharp.SelectItemHandler SelectItem;" />
<Member MemberName="SelectedItem">
<MemberSignature Language="C#" Value="public event DiaSharp.SelectedItemHandler SelectedItem;" />
<MemberType>Event</MemberType>
<ReturnValue />
<Parameters />

Просмотреть файл

@ -0,0 +1,45 @@
<Type Name="FocusedItemArgs" FullName="DiaSharp.FocusedItemArgs">
<TypeSignature Language="C#" Value="public class FocusedItemArgs : GtkSharp.SignalArgs" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>GtkSharp.SignalArgs</BaseTypeName>
</Base>
<Interfaces />
<Attributes />
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public FocusedItemArgs ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:DiaSharp.FocusedItemArgs" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="FocusedItem">
<MemberSignature Language="C#" Value="public Dia.CanvasViewItem FocusedItem { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Dia.CanvasViewItem</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:Dia.CanvasViewItem" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,28 @@
<Type Name="FocusedItemHandler" FullName="DiaSharp.FocusedItemHandler">
<TypeSignature Language="C#" Value="public sealed delegate void FocusedItemHandler (object o, DiaSharp.FocusedItemArgs args);" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>System.Delegate</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.ICloneable</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.Runtime.Serialization.ISerializable</InterfaceName>
</Interface>
</Interfaces>
<Attributes />
<Members />
</Type>

Просмотреть файл

@ -0,0 +1,45 @@
<Type Name="SelectedItemArgs" FullName="DiaSharp.SelectedItemArgs">
<TypeSignature Language="C#" Value="public class SelectedItemArgs : GtkSharp.SignalArgs" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>GtkSharp.SignalArgs</BaseTypeName>
</Base>
<Interfaces />
<Attributes />
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public SelectedItemArgs ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:DiaSharp.SelectedItemArgs" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="SelectedItem">
<MemberSignature Language="C#" Value="public Dia.CanvasViewItem SelectedItem { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Dia.CanvasViewItem</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:Dia.CanvasViewItem" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,28 @@
<Type Name="SelectedItemHandler" FullName="DiaSharp.SelectedItemHandler">
<TypeSignature Language="C#" Value="public sealed delegate void SelectedItemHandler (object o, DiaSharp.SelectedItemArgs args);" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>System.Delegate</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.ICloneable</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.Runtime.Serialization.ISerializable</InterfaceName>
</Interface>
</Interfaces>
<Attributes />
<Members />
</Type>

Просмотреть файл

@ -0,0 +1,45 @@
<Type Name="UnselectedItemArgs" FullName="DiaSharp.UnselectedItemArgs">
<TypeSignature Language="C#" Value="public class UnselectedItemArgs : GtkSharp.SignalArgs" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>GtkSharp.SignalArgs</BaseTypeName>
</Base>
<Interfaces />
<Attributes />
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public UnselectedItemArgs ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:DiaSharp.UnselectedItemArgs" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="UnselectedItem">
<MemberSignature Language="C#" Value="public Dia.CanvasViewItem UnselectedItem { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Dia.CanvasViewItem</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added</summary>
<returns>a <see cref="T:Dia.CanvasViewItem" /></returns>
<remarks>To be added</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,28 @@
<Type Name="UnselectedItemHandler" FullName="DiaSharp.UnselectedItemHandler">
<TypeSignature Language="C#" Value="public sealed delegate void UnselectedItemHandler (object o, DiaSharp.UnselectedItemArgs args);" Maintainer="auto" />
<AssemblyInfo>
<AssemblyName>dia-sharp</AssemblyName>
<AssemblyPublicKey></AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
<Docs>
<summary>To be added</summary>
<remarks>To be added</remarks>
</Docs>
<Base>
<BaseTypeName>System.Delegate</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.ICloneable</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.Runtime.Serialization.ISerializable</InterfaceName>
</Interface>
</Interfaces>
<Attributes />
<Members />
</Type>

Просмотреть файл

@ -9,11 +9,11 @@
#include <diacanvas/dia-canvas.h>
/* Forward declarations */
DiaCanvasItem *diasharp_canvas_get_root (DiaCanvas* canvas);
DiaCanvasItem * diasharp_canvas_get_root (DiaCanvas * canvas);
/* */
DiaCanvasItem*
diasharp_canvas_get_root (DiaCanvas* canvas)
DiaCanvasItem *
diasharp_canvas_get_root (DiaCanvas * canvas)
{
return canvas->root;
}

Просмотреть файл

@ -2,7 +2,7 @@
*
* Author: Martin Willemoes Hansen <mwh@sysrq.dk>
*
* (C) 2003 Martin Willemoes Hansen
* Copyright (C) 2003 Martin Willemoes Hansen
*
*/
@ -10,11 +10,11 @@
#include <diacanvas/dia-event.h>
/* Forward declarations */
DiaEventType diasharp_dia_event_get_event_type (DiaEvent *event);
DiaEventType diasharp_dia_event_get_event_type (DiaEvent * event);
/* */
DiaEventType
diasharp_dia_event_get_event_type (DiaEvent *event)
diasharp_dia_event_get_event_type (DiaEvent * event)
{
return event->type;
}

Просмотреть файл

@ -4,7 +4,7 @@ GLUE_LIB= libdiasharpglue.so
all: $(GLUE_LIB)
$(GLUE_LIB): *.c
gcc *.c -shared -fPIC -o $(GLUE_LIB) `pkg-config --cflags --libs gtk+-2.0 libart-2.0`
gcc *.c -shared -fPIC -o $(GLUE_LIB) `pkg-config --cflags --libs gtk+-2.0 libart-2.0 libgnomeui-2.0`
install:
install -o root -g root -m 644 $(GLUE_LIB) $(PREFIX)/lib

Просмотреть файл

@ -171,6 +171,31 @@
<property name="visible">True</property>
<property name="label">gtk-delete</property>
<property name="use_stock">True</property>
<signal name="activate" handler="DeleteSelectedItems" last_modification_time="Fri, 08 Aug 2003 08:58:21 GMT"/>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="separator4">
<property name="visible">True</property>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="item2">
<property name="visible">True</property>
<property name="label" translatable="yes">Select all</property>
<property name="use_underline">True</property>
<signal name="activate" handler="SelectAll" last_modification_time="Fri, 08 Aug 2003 07:36:54 GMT"/>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="unselect_all1">
<property name="visible">True</property>
<property name="label" translatable="yes">Unselect all</property>
<property name="use_underline">True</property>
<signal name="activate" handler="UnselectAll" last_modification_time="Fri, 08 Aug 2003 07:36:54 GMT"/>
</widget>
</child>
</widget>

Просмотреть файл

@ -81,6 +81,15 @@
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="item1">
<property name="visible">True</property>
<property name="label">gtk-print</property>
<property name="use_stock">True</property>
<signal name="activate" handler="Print" last_modification_time="Thu, 07 Aug 2003 07:28:37 GMT"/>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="separator2">
<property name="visible">True</property>
@ -164,6 +173,30 @@
<property name="use_stock">True</property>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="separator4">
<property name="visible">True</property>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="item2">
<property name="visible">True</property>
<property name="label" translatable="yes">Select all</property>
<property name="use_underline">True</property>
<signal name="activate" handler="SelectAll" last_modification_time="Fri, 08 Aug 2003 07:36:54 GMT"/>
</widget>
</child>
<child>
<widget class="GtkMenuItem" id="unselect_all1">
<property name="visible">True</property>
<property name="label" translatable="yes">Unselect all</property>
<property name="use_underline">True</property>
<signal name="activate" handler="UnselectAll" last_modification_time="Fri, 08 Aug 2003 07:36:54 GMT"/>
</widget>
</child>
</widget>
</child>
</widget>

Просмотреть файл

@ -1,4 +1,5 @@
using System;
using System.Collections;
using Dia;
using GLib;
@ -51,12 +52,14 @@ public class Sample {
Dia.Point p1 = new Dia.Point (50, 50);
Dia.Point p2 = new Dia.Point (100, 100);
/*
try {
line.HeadPos = p1;
line.TailPos = p2;
} catch (Exception ex) {
Console.WriteLine (ex);
}
*/
line.Move (200, 200);
canvas.Root.Add (line);
@ -156,6 +159,23 @@ public class Sample {
}
}
void SelectAll (object sender, EventArgs args)
{
view.SelectAll();
}
void UnselectAll (object sender, EventArgs args)
{
view.UnselectAll();
}
void DeleteSelectedItems (object sender, EventArgs args)
{
foreach (CanvasViewItem view_item in view.SelectedItems) {
view_item.Item.Parent.Remove (view_item.Item);
}
}
void Print (object sender, EventArgs args)
{
/*

Просмотреть файл

@ -168,6 +168,50 @@
</attribute>
</data>
</rule>
<rule>
<class name="DiaCanvasItem">
<property>Parent</property>
</class>
<data>
<attribute target="property">
<name>type</name>
<value>DiaCanvasGroup</value>
</attribute>
</data>
</rule>
<rule>
<class name="DiaCanvasView">
<signal>FocusItem</signal>
</class>
<data>
<attribute target="signal">
<name>name</name>
<value>FocusedItem</value>
</attribute>
</data>
</rule>
<rule>
<class name="DiaCanvasView">
<signal>SelectItem</signal>
</class>
<data>
<attribute target="signal">
<name>name</name>
<value>SelectedItem</value>
</attribute>
</data>
</rule>
<rule>
<class name="DiaCanvasView">
<signal>UnselectItem</signal>
</class>
<data>
<attribute target="signal">
<name>name</name>
<value>UnselectedItem</value>
</attribute>
</data>
</rule>
<!-- disable default constructor -->
<rule>