InsertTable.bsh 1.3 KB

1234567891011121314151617181920212223242526272829303132
  1. /*
  2. * This file is part of the LibreOffice project.
  3. *
  4. * This Source Code Form is subject to the terms of the Mozilla Public
  5. * License, v. 2.0. If a copy of the MPL was not distributed with this
  6. * file, You can obtain one at http://mozilla.org/MPL/2.0/.
  7. */
  8. import com.sun.star.uno.UnoRuntime;
  9. import com.sun.star.frame.XModel;
  10. import com.sun.star.lang.XMultiServiceFactory;
  11. import com.sun.star.text.XTextDocument;
  12. import com.sun.star.text.XText;
  13. import com.sun.star.text.XTextContent;
  14. import com.sun.star.text.XTextTable;
  15. oDoc = UnoRuntime.queryInterface(XModel.class,XSCRIPTCONTEXT.getInvocationContext());
  16. if ( oDoc == null )
  17. oDoc = XSCRIPTCONTEXT.getDocument();
  18. XMultiServiceFactory xDocMSF = (XMultiServiceFactory) UnoRuntime.queryInterface(XMultiServiceFactory.class, oDoc);
  19. Object oTab = xDocMSF.createInstance("com.sun.star.text.TextTable");
  20. XTextTable xTextTable = (XTextTable)UnoRuntime.queryInterface(XTextTable.class, oTab);
  21. xTextTable.initialize(4,3); // four rows, three columns
  22. xTextContent = (XTextContent)UnoRuntime.queryInterface(XTextContent.class, xTextTable);
  23. xTextDoc = (XTextDocument) UnoRuntime.queryInterface(XTextDocument.class,oDoc);
  24. xText = (XText) UnoRuntime.queryInterface(XText.class, xTextDoc.getText());
  25. xText.insertTextContent(xText.getEnd(), xTextContent, false);
  26. return 0;