Example #1
0
        public string ApplyXSL(Note note, ValidationType validationType = ValidationType.None)
        {
            StringWriter sWriter = new StringWriter();

            NoteArchiver.Write(sWriter, note.Data);
            sWriter.Close();
            NoteNameResolver resolver = new NoteNameResolver(note.Manager, note);

            return(ApplyXSL(sWriter.ToString(), note.Title, resolver, validationType));
        }
Example #2
0
        public override object GetEntity(Uri absolute_uri, string role, Type of_object_to_return)
        {
            Note note = _manager.FindByUri(absolute_uri.ToString());

            if (note == null)
            {
                return(null);
            }

            StringWriter writer = new StringWriter();

            NoteArchiver.Write(writer, note.Data);
            Stream stream = WriterToStream(writer);

            writer.Close();

            return(stream);
        }
        public void WriteHTMLForNote(TextWriter writer,
                                     Note note,
                                     bool export_linked,
                                     bool export_linked_all)
        {
            // NOTE: Don't use the XmlDocument version, which strips
            // whitespace between elements for some reason.  Also,
            // XPathDocument is faster.
            StringWriter s_writer = new StringWriter();

            NoteArchiver.Write(s_writer, note.Data);
            StringReader reader = new StringReader(s_writer.ToString());

            s_writer.Close();
            XPathDocument doc = new XPathDocument(reader);

            reader.Close();

            XsltArgumentList args = new XsltArgumentList();

            args.AddParam("export-linked", "", export_linked);
            args.AddParam("export-linked-all", "", export_linked_all);
            args.AddParam("root-note", "", note.Title);
            args.AddExtensionObject("http://beatniksoftware.com/tomboy",
                                    new TransformExtension(note.Manager, note));

            if ((bool)Preferences.Get(Preferences.ENABLE_CUSTOM_FONT))
            {
                string font_face = (string)Preferences.Get(Preferences.CUSTOM_FONT_FACE);
                Pango.FontDescription font_desc =
                    Pango.FontDescription.FromString(font_face);
                string font = String.Format("font-family:'{0}';", font_desc.Family);

                args.AddParam("font", "", font);
            }

            NoteXsl.Transform(doc, args, writer);
        }
Example #4
0
        public static string ToNoteXml(NoteInfo noteInfo)
        {
            NoteData noteData = ToNoteData(noteInfo);

            return(NoteArchiver.WriteString(noteData));
        }