Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Questions reading and writing office documents.
Forum Updated to NodeBB v4.3 + New Features

Questions reading and writing office documents.

Scheduled Pinned Locked Moved Unsolved General and Desktop
6 Posts 2 Posters 555 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    stefbon
    wrote on last edited by
    #1

    Hi all,

    very happy to see that QT has several classes to handle text/office documents.

    I'm working on a construction to work on an office document which is (and stays) on the server, while I (and possibly others) are working/editing it at the same time, using a secure connection between client and server.

    I am also happy to see the class QTextDocumentWriter. which supports ODF. I'm not targetting that in the beginning, first to get a server running which can handle simultanious access to a text doucment, than mre complicated formats. One of the ideas is to give every connected client/user a window to the document, which will be something like a page (and maybe some more lines I don't know yet). The client can edit this region, and no other user can edit this part of the document at the same time. (allowed is read what the other user is writing). Important are here ACL, which give the server info what a user is allowed to do like (read, modify, append, remove text, add/delete documents etc). A lot todo.

    I have some questions I hope you can answer.

    First, the class QTextDocumentWriter is only about saving, not reading. Is there another class for that. If not, is there a reason not to? Maybe is it because when reading, you also jave to support in QT everything what ODF documents do, which can be a big (too big) task?

    Second, since I want to edit the documents over a (secure) network I need a "Open Document Network Protocol" or something like that: a protocol between client and server to make the server do what the client/user wants.

    Thanks in advance,

    Stef Bon
    The Netherlands

    See about Open Secure Network Services:

    https://github.com/stefbon/OSNS
    https://osns.net/

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      Do you mean you want to implement something like Google docs ?

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • S Offline
        S Offline
        stefbon
        wrote on last edited by stefbon
        #3

        Yes it looks a lot like Google Docs. There are some important differences:

        • Google Docs is from within a browser, using HTTP(S). My software offers a "Open Document Network Protocol" over SSH (well that's the purpose) any client can work with.
        • Google Docs is build within a Google Internet Framework, where Google rules. In my setup the developers together with input from users/clients are buidling it together. It will be a set of software (OSNS SSH server, a document server with a backend (ODF?), a set of ACL's, a setup for managing user and host keys (a CA?), integration with backup, chat (video/text), a common shared clipboard, a shared yellow post it board, etc)
        • Google Docs is offering services in the cloud. OSNS works from a server in the local network, your own server, not a anonymous server somewhere in the cloud. I want to work on a special FUSE fs to offer the user the ability to browse, select and open documents which are available to him/her by your organisation, It will look like this:

        /run/network/sbon/docfs/Open Secure Documents/bononline.nl/development/{home,public,cteam}

        Names are arbritrary chosen. The root is "/run/network/sbon/docfs", the FUSE fs is the rest of the path. When a document is selected and the user wants to open it, in stead of providing a handle, offering read and write ops, the construction will start a local client (or a new tab if already open) offering a window (default: first page) to the document on the server.

        So yes, it looks a lot like Google Docs, but there are some important differences.

        Stef Bon

        1 Reply Last reply
        0
        • S Offline
          S Offline
          stefbon
          wrote on last edited by
          #4

          Someone knows something about a protocol a editor/word processor uses to communicate with remote backend over a networkconnection?
          Any thing helps.
          Stef Bon

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #5

            There used to be Kobby from KDE that provided something like that.

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • S Offline
              S Offline
              stefbon
              wrote on last edited by
              #6

              @SGaist said in Questions reading and writing office documents.:

              Kobby from KDE

              Thanks a lot! These are the hints I'm looking for. Anything else that comes to mind please let met know.

              Stef Bon
              the Netherlands

              1 Reply Last reply
              0

              • Login

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups
              • Search
              • Get Qt Extensions
              • Unsolved