OSDN Git Service

Implement notecard reading.
authorLatif Khalifa <latifer@streamgrid.net>
Sun, 14 Jun 2009 11:38:08 +0000 (11:38 +0000)
committerLatif Khalifa <latifer@streamgrid.net>
Sun, 14 Jun 2009 11:38:08 +0000 (11:38 +0000)
http://code.google.com/p/radegast/issues/detail?id=3

git-svn-id: https://radegast.googlecode.com/svn/trunk@35 f7a694da-4d33-11de-9ad6-1127a62b9fcd

Radegast/GUI/Consoles/Inventory/InventoryConsole.Designer.cs
Radegast/GUI/Consoles/Inventory/InventoryConsole.cs
Radegast/GUI/Consoles/Notecard.Designer.cs [new file with mode: 0644]
Radegast/GUI/Consoles/Notecard.cs [new file with mode: 0644]
Radegast/GUI/Consoles/Notecard.resx [new file with mode: 0644]
Radegast/GUI/Consoles/OutfitTextures.cs
Radegast/Radegast.csproj

index f404bf5..1353b3b 100644 (file)
             this.txtCreator = new System.Windows.Forms.TextBox();\r
             this.txtAssetID = new System.Windows.Forms.TextBox();\r
             this.txtItemName = new System.Windows.Forms.TextBox();\r
-            this.label3 = new System.Windows.Forms.Label();\r
-            this.label2 = new System.Windows.Forms.Label();\r
-            this.label1 = new System.Windows.Forms.Label();\r
+            this.lblAsset = new System.Windows.Forms.Label();\r
+            this.lblCreator = new System.Windows.Forms.Label();\r
+            this.lblItemName = new System.Windows.Forms.Label();\r
             this.folderContext = new System.Windows.Forms.ContextMenuStrip(this.components);\r
             this.folderContextTitle = new System.Windows.Forms.ToolStripTextBox();\r
             this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();\r
             this.refreshToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();\r
             this.folderContextDelete = new System.Windows.Forms.ToolStripMenuItem();\r
+            this.lblCreated = new System.Windows.Forms.Label();\r
+            this.txtCreated = new System.Windows.Forms.TextBox();\r
             this.splitContainer1.Panel1.SuspendLayout();\r
             this.splitContainer1.Panel2.SuspendLayout();\r
             this.splitContainer1.SuspendLayout();\r
             // \r
             this.panel1.Controls.Add(this.btnProfile);\r
             this.panel1.Controls.Add(this.txtCreator);\r
+            this.panel1.Controls.Add(this.txtCreated);\r
             this.panel1.Controls.Add(this.txtAssetID);\r
+            this.panel1.Controls.Add(this.lblCreated);\r
             this.panel1.Controls.Add(this.txtItemName);\r
-            this.panel1.Controls.Add(this.label3);\r
-            this.panel1.Controls.Add(this.label2);\r
-            this.panel1.Controls.Add(this.label1);\r
+            this.panel1.Controls.Add(this.lblAsset);\r
+            this.panel1.Controls.Add(this.lblCreator);\r
+            this.panel1.Controls.Add(this.lblItemName);\r
             this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom;\r
             this.panel1.Location = new System.Drawing.Point(0, 336);\r
             this.panel1.Name = "panel1";\r
             // \r
             // txtAssetID\r
             // \r
-            this.txtAssetID.Location = new System.Drawing.Point(80, 62);\r
+            this.txtAssetID.Location = new System.Drawing.Point(80, 88);\r
             this.txtAssetID.Name = "txtAssetID";\r
+            this.txtAssetID.ReadOnly = true;\r
             this.txtAssetID.Size = new System.Drawing.Size(338, 20);\r
             this.txtAssetID.TabIndex = 1;\r
             // \r
             this.txtItemName.Size = new System.Drawing.Size(338, 20);\r
             this.txtItemName.TabIndex = 1;\r
             // \r
-            // label3\r
+            // lblAsset\r
             // \r
-            this.label3.AutoSize = true;\r
-            this.label3.Location = new System.Drawing.Point(3, 62);\r
-            this.label3.Name = "label3";\r
-            this.label3.Size = new System.Drawing.Size(47, 13);\r
-            this.label3.TabIndex = 0;\r
-            this.label3.Text = "Asset ID";\r
+            this.lblAsset.AutoSize = true;\r
+            this.lblAsset.Location = new System.Drawing.Point(3, 88);\r
+            this.lblAsset.Name = "lblAsset";\r
+            this.lblAsset.Size = new System.Drawing.Size(47, 13);\r
+            this.lblAsset.TabIndex = 0;\r
+            this.lblAsset.Text = "Asset ID";\r
             // \r
-            // label2\r
+            // lblCreator\r
             // \r
-            this.label2.AutoSize = true;\r
-            this.label2.Location = new System.Drawing.Point(3, 36);\r
-            this.label2.Name = "label2";\r
-            this.label2.Size = new System.Drawing.Size(41, 13);\r
-            this.label2.TabIndex = 0;\r
-            this.label2.Text = "Creator";\r
+            this.lblCreator.AutoSize = true;\r
+            this.lblCreator.Location = new System.Drawing.Point(3, 36);\r
+            this.lblCreator.Name = "lblCreator";\r
+            this.lblCreator.Size = new System.Drawing.Size(41, 13);\r
+            this.lblCreator.TabIndex = 0;\r
+            this.lblCreator.Text = "Creator";\r
             // \r
-            // label1\r
+            // lblItemName\r
             // \r
-            this.label1.AutoSize = true;\r
-            this.label1.Location = new System.Drawing.Point(3, 10);\r
-            this.label1.Name = "label1";\r
-            this.label1.Size = new System.Drawing.Size(27, 13);\r
-            this.label1.TabIndex = 0;\r
-            this.label1.Text = "Item";\r
+            this.lblItemName.AutoSize = true;\r
+            this.lblItemName.Location = new System.Drawing.Point(3, 10);\r
+            this.lblItemName.Name = "lblItemName";\r
+            this.lblItemName.Size = new System.Drawing.Size(27, 13);\r
+            this.lblItemName.TabIndex = 0;\r
+            this.lblItemName.Text = "Item";\r
             // \r
             // folderContext\r
             // \r
             this.folderContextDelete.Size = new System.Drawing.Size(135, 22);\r
             this.folderContextDelete.Text = "Delete";\r
             // \r
+            // lblCreated\r
+            // \r
+            this.lblCreated.AutoSize = true;\r
+            this.lblCreated.Location = new System.Drawing.Point(3, 62);\r
+            this.lblCreated.Name = "lblCreated";\r
+            this.lblCreated.Size = new System.Drawing.Size(44, 13);\r
+            this.lblCreated.TabIndex = 0;\r
+            this.lblCreated.Text = "Created";\r
+            // \r
+            // txtCreated\r
+            // \r
+            this.txtCreated.Location = new System.Drawing.Point(80, 62);\r
+            this.txtCreated.Name = "txtCreated";\r
+            this.txtCreated.ReadOnly = true;\r
+            this.txtCreated.Size = new System.Drawing.Size(144, 20);\r
+            this.txtCreated.TabIndex = 1;\r
+            // \r
             // InventoryConsole\r
             // \r
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
         private System.Windows.Forms.ToolStripMenuItem refreshToolStripMenuItem;\r
         private System.Windows.Forms.Panel panel1;\r
         private System.Windows.Forms.TextBox txtItemName;\r
-        private System.Windows.Forms.Label label2;\r
-        private System.Windows.Forms.Label label1;\r
+        private System.Windows.Forms.Label lblCreator;\r
+        private System.Windows.Forms.Label lblItemName;\r
         private System.Windows.Forms.TextBox txtCreator;\r
         private System.Windows.Forms.TextBox txtAssetID;\r
-        private System.Windows.Forms.Label label3;\r
+        private System.Windows.Forms.Label lblAsset;\r
         private System.Windows.Forms.Panel pnlDetail;\r
         private System.Windows.Forms.Button btnProfile;\r
+        private System.Windows.Forms.TextBox txtCreated;\r
+        private System.Windows.Forms.Label lblCreated;\r
     }\r
 }\r
index 775f21b..6db2de3 100644 (file)
@@ -78,7 +78,9 @@ namespace Radegast
             txtItemName.Text = item.Name;\r
             txtCreator.Text = instance.getAvatarName(item.CreatorID);\r
             txtCreator.Tag = item.CreatorID;\r
-            if (item.AssetUUID != null)\r
+            txtCreated.Text = item.CreationDate.ToString();\r
+\r
+            if (item.AssetUUID != null && item.AssetUUID != UUID.Zero)\r
             {\r
                 txtAssetID.Text = item.AssetUUID.ToString();\r
             }\r
@@ -95,6 +97,12 @@ namespace Radegast
                     image.Dock = DockStyle.Fill;\r
                     pnlDetail.Controls.Add(image);\r
                     break;\r
+                \r
+                case AssetType.Notecard:\r
+                    Notecard note = new Notecard(instance, (InventoryNotecard)item);\r
+                    note.Dock = DockStyle.Fill;\r
+                    pnlDetail.Controls.Add(note);\r
+                    break;\r
             }\r
         }\r
 \r
@@ -328,7 +336,29 @@ namespace Radegast
             {\r
                 return CompareFolders(tx.Tag as InventoryFolder, ty.Tag as InventoryFolder);\r
             }\r
-            return string.Compare(tx.Text, ty.Text);\r
+            else if (tx.Tag is InventoryFolder && ty.Tag is InventoryItem)\r
+            {\r
+                return -1;\r
+            }\r
+            else if (tx.Tag is InventoryItem && ty.Tag is InventoryFolder)\r
+            {\r
+                return 1;\r
+            }\r
+\r
+            // Two items\r
+            InventoryItem item1 = (InventoryItem)tx.Tag;\r
+            InventoryItem item2 = (InventoryItem)ty.Tag;\r
+            System.Console.WriteLine("Item1: {0}, created {1}", item1.Name, item1.CreationDate.ToString());\r
+            System.Console.WriteLine("Item2: {0}, created {1}", item2.Name, item2.CreationDate.ToString());\r
+            if (item1.CreationDate < item2.CreationDate)\r
+            {\r
+                return 1;\r
+            }\r
+            else if (item1.CreationDate > item2.CreationDate)\r
+            {\r
+                return -1;\r
+            }\r
+            return string.Compare(item1.Name, item2.Name);\r
         }\r
     }\r
 \r
diff --git a/Radegast/GUI/Consoles/Notecard.Designer.cs b/Radegast/GUI/Consoles/Notecard.Designer.cs
new file mode 100644 (file)
index 0000000..41121a6
--- /dev/null
@@ -0,0 +1,135 @@
+namespace Radegast\r
+{\r
+    partial class Notecard\r
+    {\r
+        /// <summary> \r
+        /// Required designer variable.\r
+        /// </summary>\r
+        private System.ComponentModel.IContainer components = null;\r
+\r
+        /// <summary> \r
+        /// Clean up any resources being used.\r
+        /// </summary>\r
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>\r
+        protected override void Dispose(bool disposing)\r
+        {\r
+            if (disposing && (components != null))\r
+            {\r
+                components.Dispose();\r
+            }\r
+            base.Dispose(disposing);\r
+        }\r
+\r
+        #region Component Designer generated code\r
+\r
+        /// <summary> \r
+        /// Required method for Designer support - do not modify \r
+        /// the contents of this method with the code editor.\r
+        /// </summary>\r
+        private void InitializeComponent()\r
+        {\r
+            this.txtName = new System.Windows.Forms.TextBox();\r
+            this.txtDesc = new System.Windows.Forms.TextBox();\r
+            this.pnlControls = new System.Windows.Forms.Panel();\r
+            this.lblStatus = new System.Windows.Forms.Label();\r
+            this.btnRefresh = new System.Windows.Forms.Button();\r
+            this.btnSave = new System.Windows.Forms.Button();\r
+            this.rtbContent = new System.Windows.Forms.RichTextBox();\r
+            this.pnlControls.SuspendLayout();\r
+            this.SuspendLayout();\r
+            // \r
+            // txtName\r
+            // \r
+            this.txtName.Dock = System.Windows.Forms.DockStyle.Top;\r
+            this.txtName.Location = new System.Drawing.Point(0, 0);\r
+            this.txtName.Name = "txtName";\r
+            this.txtName.ReadOnly = true;\r
+            this.txtName.Size = new System.Drawing.Size(382, 20);\r
+            this.txtName.TabIndex = 0;\r
+            // \r
+            // txtDesc\r
+            // \r
+            this.txtDesc.Dock = System.Windows.Forms.DockStyle.Top;\r
+            this.txtDesc.Location = new System.Drawing.Point(0, 20);\r
+            this.txtDesc.Name = "txtDesc";\r
+            this.txtDesc.ReadOnly = true;\r
+            this.txtDesc.Size = new System.Drawing.Size(382, 20);\r
+            this.txtDesc.TabIndex = 1;\r
+            // \r
+            // pnlControls\r
+            // \r
+            this.pnlControls.Controls.Add(this.btnSave);\r
+            this.pnlControls.Controls.Add(this.btnRefresh);\r
+            this.pnlControls.Controls.Add(this.lblStatus);\r
+            this.pnlControls.Dock = System.Windows.Forms.DockStyle.Bottom;\r
+            this.pnlControls.Location = new System.Drawing.Point(0, 330);\r
+            this.pnlControls.Name = "pnlControls";\r
+            this.pnlControls.Size = new System.Drawing.Size(382, 34);\r
+            this.pnlControls.TabIndex = 2;\r
+            // \r
+            // lblStatus\r
+            // \r
+            this.lblStatus.AutoSize = true;\r
+            this.lblStatus.Location = new System.Drawing.Point(247, 10);\r
+            this.lblStatus.Name = "lblStatus";\r
+            this.lblStatus.Size = new System.Drawing.Size(37, 13);\r
+            this.lblStatus.TabIndex = 0;\r
+            this.lblStatus.Text = "Status";\r
+            // \r
+            // btnRefresh\r
+            // \r
+            this.btnRefresh.Location = new System.Drawing.Point(3, 5);\r
+            this.btnRefresh.Name = "btnRefresh";\r
+            this.btnRefresh.Size = new System.Drawing.Size(75, 23);\r
+            this.btnRefresh.TabIndex = 1;\r
+            this.btnRefresh.Text = "Refresh";\r
+            this.btnRefresh.UseVisualStyleBackColor = true;\r
+            this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click);\r
+            // \r
+            // btnSave\r
+            // \r
+            this.btnSave.Enabled = false;\r
+            this.btnSave.Location = new System.Drawing.Point(84, 5);\r
+            this.btnSave.Name = "btnSave";\r
+            this.btnSave.Size = new System.Drawing.Size(75, 23);\r
+            this.btnSave.TabIndex = 1;\r
+            this.btnSave.Text = "Save";\r
+            this.btnSave.UseVisualStyleBackColor = true;\r
+            // \r
+            // rtbContent\r
+            // \r
+            this.rtbContent.Dock = System.Windows.Forms.DockStyle.Fill;\r
+            this.rtbContent.Location = new System.Drawing.Point(0, 40);\r
+            this.rtbContent.Name = "rtbContent";\r
+            this.rtbContent.Size = new System.Drawing.Size(382, 290);\r
+            this.rtbContent.TabIndex = 3;\r
+            this.rtbContent.Text = "";\r
+            // \r
+            // Notecard\r
+            // \r
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;\r
+            this.Controls.Add(this.rtbContent);\r
+            this.Controls.Add(this.pnlControls);\r
+            this.Controls.Add(this.txtDesc);\r
+            this.Controls.Add(this.txtName);\r
+            this.Name = "Notecard";\r
+            this.Size = new System.Drawing.Size(382, 364);\r
+            this.pnlControls.ResumeLayout(false);\r
+            this.pnlControls.PerformLayout();\r
+            this.ResumeLayout(false);\r
+            this.PerformLayout();\r
+\r
+        }\r
+\r
+        #endregion\r
+\r
+        private System.Windows.Forms.TextBox txtName;\r
+        private System.Windows.Forms.TextBox txtDesc;\r
+        private System.Windows.Forms.Panel pnlControls;\r
+        private System.Windows.Forms.Button btnRefresh;\r
+        private System.Windows.Forms.Label lblStatus;\r
+        private System.Windows.Forms.Button btnSave;\r
+        private System.Windows.Forms.RichTextBox rtbContent;\r
+    }\r
+}\r
diff --git a/Radegast/GUI/Consoles/Notecard.cs b/Radegast/GUI/Consoles/Notecard.cs
new file mode 100644 (file)
index 0000000..49f278b
--- /dev/null
@@ -0,0 +1,74 @@
+using System;\r
+using System.Collections.Generic;\r
+using System.ComponentModel;\r
+using System.Drawing;\r
+using System.Data;\r
+using System.Linq;\r
+using System.Text;\r
+using System.Windows.Forms;\r
+using OpenMetaverse;\r
+using OpenMetaverse.Assets;\r
+\r
+namespace Radegast\r
+{\r
+    public partial class Notecard : UserControl\r
+    {\r
+        private RadegastInstance instance;\r
+        private GridClient client { get { return instance.Client; } }\r
+        private InventoryNotecard notecard;\r
+\r
+        public Notecard(RadegastInstance instance, InventoryNotecard notecard)\r
+        {\r
+            InitializeComponent();\r
+            Disposed += new EventHandler(Notecard_Disposed);\r
+\r
+            this.instance = instance;\r
+            this.notecard = notecard;\r
+\r
+            txtName.Text = notecard.Name;\r
+            txtDesc.Text = notecard.Description;\r
+            lblStatus.Text = "Downloading";\r
+\r
+            // Callbacks\r
+            client.Assets.OnAssetReceived += new AssetManager.AssetReceivedCallback(Assets_OnAssetReceived);\r
+\r
+            client.Assets.RequestInventoryAsset(notecard, true);\r
+        }\r
+\r
+        void Notecard_Disposed(object sender, EventArgs e)\r
+        {\r
+            client.Assets.OnAssetReceived += new AssetManager.AssetReceivedCallback(Assets_OnAssetReceived);\r
+        }\r
+\r
+        void Assets_OnAssetReceived(AssetDownload transfer, Asset asset)\r
+        {\r
+            if (InvokeRequired)\r
+            {\r
+                BeginInvoke(new MethodInvoker(delegate()\r
+                    {\r
+                        Assets_OnAssetReceived(transfer, asset);\r
+                    }\r
+                ));\r
+                return;\r
+            }\r
+\r
+            if (transfer.Success && asset.AssetType == AssetType.Notecard)\r
+            {\r
+                lblStatus.Text = "Done";\r
+                AssetNotecard n = (AssetNotecard)asset;\r
+                n.Decode();\r
+                rtbContent.Text = n.BodyText;\r
+            }\r
+            else\r
+            {\r
+                lblStatus.Text = "Failed";\r
+            }\r
+        }\r
+\r
+        private void btnRefresh_Click(object sender, EventArgs e)\r
+        {\r
+            lblStatus.Text = "Downloading";\r
+            client.Assets.RequestInventoryAsset(notecard, true);\r
+        }\r
+    }\r
+}\r
diff --git a/Radegast/GUI/Consoles/Notecard.resx b/Radegast/GUI/Consoles/Notecard.resx
new file mode 100644 (file)
index 0000000..ff31a6d
--- /dev/null
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<root>\r
+  <!-- \r
+    Microsoft ResX Schema \r
+    \r
+    Version 2.0\r
+    \r
+    The primary goals of this format is to allow a simple XML format \r
+    that is mostly human readable. The generation and parsing of the \r
+    various data types are done through the TypeConverter classes \r
+    associated with the data types.\r
+    \r
+    Example:\r
+    \r
+    ... ado.net/XML headers & schema ...\r
+    <resheader name="resmimetype">text/microsoft-resx</resheader>\r
+    <resheader name="version">2.0</resheader>\r
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>\r
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>\r
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>\r
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>\r
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">\r
+        <value>[base64 mime encoded serialized .NET Framework object]</value>\r
+    </data>\r
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>\r
+        <comment>This is a comment</comment>\r
+    </data>\r
+                \r
+    There are any number of "resheader" rows that contain simple \r
+    name/value pairs.\r
+    \r
+    Each data row contains a name, and value. The row also contains a \r
+    type or mimetype. Type corresponds to a .NET class that support \r
+    text/value conversion through the TypeConverter architecture. \r
+    Classes that don't support this are serialized and stored with the \r
+    mimetype set.\r
+    \r
+    The mimetype is used for serialized objects, and tells the \r
+    ResXResourceReader how to depersist the object. This is currently not \r
+    extensible. For a given mimetype the value must be set accordingly:\r
+    \r
+    Note - application/x-microsoft.net.object.binary.base64 is the format \r
+    that the ResXResourceWriter will generate, however the reader can \r
+    read any of the formats listed below.\r
+    \r
+    mimetype: application/x-microsoft.net.object.binary.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter\r
+            : and then encoded with base64 encoding.\r
+    \r
+    mimetype: application/x-microsoft.net.object.soap.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter\r
+            : and then encoded with base64 encoding.\r
+\r
+    mimetype: application/x-microsoft.net.object.bytearray.base64\r
+    value   : The object must be serialized into a byte array \r
+            : using a System.ComponentModel.TypeConverter\r
+            : and then encoded with base64 encoding.\r
+    -->\r
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">\r
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />\r
+    <xsd:element name="root" msdata:IsDataSet="true">\r
+      <xsd:complexType>\r
+        <xsd:choice maxOccurs="unbounded">\r
+          <xsd:element name="metadata">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" use="required" type="xsd:string" />\r
+              <xsd:attribute name="type" type="xsd:string" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="assembly">\r
+            <xsd:complexType>\r
+              <xsd:attribute name="alias" type="xsd:string" />\r
+              <xsd:attribute name="name" type="xsd:string" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="data">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />\r
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="resheader">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+        </xsd:choice>\r
+      </xsd:complexType>\r
+    </xsd:element>\r
+  </xsd:schema>\r
+  <resheader name="resmimetype">\r
+    <value>text/microsoft-resx</value>\r
+  </resheader>\r
+  <resheader name="version">\r
+    <value>2.0</value>\r
+  </resheader>\r
+  <resheader name="reader">\r
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+  <resheader name="writer">\r
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+</root>
\ No newline at end of file
index bcbc2db..93bf24b 100644 (file)
@@ -46,7 +46,7 @@ namespace Radegast
                             break;\r
                     }\r
 \r
-                    if (type != ImageType.Baked && face.TextureID != AppearanceManager.DEFAULT_AVATAR_TEXTURE) {\r
+                    if (face.TextureID != AppearanceManager.DEFAULT_AVATAR_TEXTURE) {\r
                         SLImageHandler img = new SLImageHandler(instance, face.TextureID, ((AppearanceManager.TextureIndex)j).ToString());\r
                         img.Location = new Point(0, nTextures++ * img.Height);\r
                         img.Dock = DockStyle.Top;\r
index f61817d..6843671 100644 (file)
     <Compile Include="GUI\Consoles\MasterTab.Designer.cs">\r
       <DependentUpon>MasterTab.cs</DependentUpon>\r
     </Compile>\r
+    <Compile Include="GUI\Consoles\Notecard.cs">\r
+      <SubType>UserControl</SubType>\r
+    </Compile>\r
+    <Compile Include="GUI\Consoles\Notecard.Designer.cs">\r
+      <DependentUpon>Notecard.cs</DependentUpon>\r
+    </Compile>\r
     <Compile Include="GUI\Consoles\OutfitTextures.cs">\r
       <SubType>UserControl</SubType>\r
     </Compile>\r
       <DependentUpon>MasterTab.cs</DependentUpon>\r
       <SubType>Designer</SubType>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="GUI\Consoles\Notecard.resx">\r
+      <DependentUpon>Notecard.cs</DependentUpon>\r
+      <SubType>Designer</SubType>\r
+    </EmbeddedResource>\r
     <EmbeddedResource Include="GUI\Consoles\OutfitTextures.resx">\r
       <DependentUpon>OutfitTextures.cs</DependentUpon>\r
       <SubType>Designer</SubType>\r