diff options
author | Juergen Schmidt <jsc@openoffice.org> | 2009-11-10 08:34:00 +0000 |
---|---|---|
committer | Juergen Schmidt <jsc@openoffice.org> | 2009-11-10 08:34:00 +0000 |
commit | b4a2e03a6bf0e88bc2b6326d5fc9bbd93e468fc7 (patch) | |
tree | 5aadc44b65dd9cd2f6b355071c7411cf1a4dfd40 /odk/examples/DevelopersGuide | |
parent | c5b6d47debdc4b4531ad571d5a93a2403a07daf1 (diff) |
#i89936# change sample to match DevGuide
Diffstat (limited to 'odk/examples/DevelopersGuide')
-rw-r--r-- | odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java | 238 |
1 files changed, 187 insertions, 51 deletions
diff --git a/odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java b/odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java index eff9a710b8a6..c217768dec1e 100644 --- a/odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java +++ b/odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java @@ -37,34 +37,27 @@ * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * *************************************************************************/ - -import com.sun.star.uno.UnoRuntime; +import com.sun.star.beans.PropertyValue; +import com.sun.star.beans.XPropertySet; import com.sun.star.uno.XComponentContext; -import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.comp.helper.Bootstrap; +import com.sun.star.container.XEnumeration; +import com.sun.star.container.XEnumerationAccess; +import com.sun.star.frame.XComponentLoader; +import com.sun.star.frame.XController; +import com.sun.star.frame.XModel; import com.sun.star.lang.XComponent; -import com.sun.star.beans.XPropertySet; -import com.sun.star.beans.PropertyValue; -import com.sun.star.sheet.XSpreadsheetDocument; -import com.sun.star.sheet.XSpreadsheets; -import com.sun.star.sheet.XSpreadsheet; -import com.sun.star.sheet.XSpreadsheetView; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.sheet.XCellAddressable; import com.sun.star.sheet.XCellRangesQuery; import com.sun.star.sheet.XSheetCellRanges; -import com.sun.star.sheet.XCellAddressable; +import com.sun.star.sheet.XSpreadsheet; +import com.sun.star.sheet.XSpreadsheetDocument; +import com.sun.star.sheet.XSpreadsheetView; +import com.sun.star.sheet.XSpreadsheets; import com.sun.star.table.XCell; -import com.sun.star.frame.XModel; -import com.sun.star.frame.XController; -import com.sun.star.frame.XComponentLoader; -import com.sun.star.container.XEnumeration; -import com.sun.star.container.XEnumerationAccess; - -import com.sun.star.uno.AnyConverter; - +import com.sun.star.uno.UnoRuntime; -/** - * - * @author dschulten - */ public class FirstLoadComponent { /** Creates a new instance of FirstLoadComponent */ @@ -74,37 +67,16 @@ public class FirstLoadComponent { /** * @param args the command line arguments */ - private XComponentContext xRemoteContext = null; - private XMultiComponentFactory xRemoteServiceManager = null; - public static void main(String[] args) { - FirstLoadComponent firstLoadComponent1 = new FirstLoadComponent(); - try { - firstLoadComponent1.useConnection(); - } - catch (java.lang.Exception e){ - System.out.println(e.getMessage()); - e.printStackTrace(); - } - finally { - System.exit(0); - } - } - - private void useConnection() throws java.lang.Exception { try { // get the remote office component context - xRemoteContext = com.sun.star.comp.helper.Bootstrap.bootstrap(); - System.out.println("Connected to a running office ..."); + XComponentContext xRemoteContext = Bootstrap.bootstrap(); + if (xRemoteContext == null) { + System.err.println("ERROR: Could not bootstrap default Office."); + } - xRemoteServiceManager = xRemoteContext.getServiceManager(); - } - catch( Exception e) { - e.printStackTrace(); - System.exit(1); - } + XMultiComponentFactory xRemoteServiceManager = xRemoteContext.getServiceManager(); - try { Object desktop = xRemoteServiceManager.createInstanceWithContext( "com.sun.star.frame.Desktop", xRemoteContext); XComponentLoader xComponentLoader = (XComponentLoader) @@ -191,9 +163,173 @@ public class FirstLoadComponent { } } - catch( com.sun.star.lang.DisposedException e ) { //works from Patch 1 - xRemoteContext = null; - throw e; + catch (java.lang.Exception e){ + e.printStackTrace(); + } + finally { + System.exit( 0 ); } } + } + + +// import com.sun.star.uno.UnoRuntime; +// import com.sun.star.uno.XComponentContext; +// import com.sun.star.lang.XMultiComponentFactory; +// import com.sun.star.lang.XComponent; +// import com.sun.star.beans.XPropertySet; +// import com.sun.star.beans.PropertyValue; +// import com.sun.star.sheet.XSpreadsheetDocument; +// import com.sun.star.sheet.XSpreadsheets; +// import com.sun.star.sheet.XSpreadsheet; +// import com.sun.star.sheet.XSpreadsheetView; +// import com.sun.star.sheet.XCellRangesQuery; +// import com.sun.star.sheet.XSheetCellRanges; +// import com.sun.star.sheet.XCellAddressable; +// import com.sun.star.table.XCell; +// import com.sun.star.frame.XModel; +// import com.sun.star.frame.XController; +// import com.sun.star.frame.XComponentLoader; +// import com.sun.star.container.XEnumeration; +// import com.sun.star.container.XEnumerationAccess; + +// import com.sun.star.uno.AnyConverter; + + +// /** +// * +// * @author dschulten +// */ +// public class FirstLoadComponent { + +// /** Creates a new instance of FirstLoadComponent */ +// public FirstLoadComponent() { +// } + +// /** +// * @param args the command line arguments +// */ +// private XComponentContext xRemoteContext = null; +// private XMultiComponentFactory xRemoteServiceManager = null; + +// public static void main(String[] args) { +// FirstLoadComponent firstLoadComponent1 = new FirstLoadComponent(); +// try { +// firstLoadComponent1.useConnection(); +// } +// catch (java.lang.Exception e){ +// System.out.println(e.getMessage()); +// e.printStackTrace(); +// } +// finally { +// System.exit(0); +// } +// } + +// private void useConnection() throws java.lang.Exception { +// try { +// // get the remote office component context +// xRemoteContext = com.sun.star.comp.helper.Bootstrap.bootstrap(); +// System.out.println("Connected to a running office ..."); + +// xRemoteServiceManager = xRemoteContext.getServiceManager(); +// } +// catch( Exception e) { +// e.printStackTrace(); +// System.exit(1); +// } + +// try { +// Object desktop = xRemoteServiceManager.createInstanceWithContext( +// "com.sun.star.frame.Desktop", xRemoteContext); +// XComponentLoader xComponentLoader = (XComponentLoader) +// UnoRuntime.queryInterface(XComponentLoader.class, desktop); + +// PropertyValue[] loadProps = new PropertyValue[0]; +// XComponent xSpreadsheetComponent = xComponentLoader.loadComponentFromURL("private:factory/scalc", "_blank", 0, loadProps); + +// XSpreadsheetDocument xSpreadsheetDocument = (XSpreadsheetDocument) +// UnoRuntime.queryInterface(XSpreadsheetDocument.class, +// xSpreadsheetComponent); + +// XSpreadsheets xSpreadsheets = xSpreadsheetDocument.getSheets(); +// xSpreadsheets.insertNewByName("MySheet", (short)0); +// com.sun.star.uno.Type elemType = xSpreadsheets.getElementType(); + +// System.out.println(elemType.getTypeName()); +// Object sheet = xSpreadsheets.getByName("MySheet"); +// XSpreadsheet xSpreadsheet = (XSpreadsheet)UnoRuntime.queryInterface( +// XSpreadsheet.class, sheet); + +// XCell xCell = xSpreadsheet.getCellByPosition(0, 0); +// xCell.setValue(21); +// xCell = xSpreadsheet.getCellByPosition(0, 1); +// xCell.setValue(21); +// xCell = xSpreadsheet.getCellByPosition(0, 2); +// xCell.setFormula("=sum(A1:A2)"); + +// XPropertySet xCellProps = (XPropertySet)UnoRuntime.queryInterface( +// XPropertySet.class, xCell); +// xCellProps.setPropertyValue("CellStyle", "Result"); + +// XModel xSpreadsheetModel = (XModel)UnoRuntime.queryInterface( +// XModel.class, xSpreadsheetComponent); +// XController xSpreadsheetController = xSpreadsheetModel.getCurrentController(); +// XSpreadsheetView xSpreadsheetView = (XSpreadsheetView) +// UnoRuntime.queryInterface(XSpreadsheetView.class, +// xSpreadsheetController); +// xSpreadsheetView.setActiveSheet(xSpreadsheet); + +// // ********************************************************* +// // example for use of enum types +// xCellProps.setPropertyValue("VertJustify", +// com.sun.star.table.CellVertJustify.TOP); + + +// // ********************************************************* +// // example for a sequence of PropertyValue structs +// // create an array with one PropertyValue struct, it contains +// // references only +// loadProps = new PropertyValue[1]; + +// // instantiate PropertyValue struct and set its member fields +// PropertyValue asTemplate = new PropertyValue(); +// asTemplate.Name = "AsTemplate"; +// asTemplate.Value = new Boolean(true); + +// // assign PropertyValue struct to array of references for PropertyValue +// // structs +// loadProps[0] = asTemplate; + +// // load calc file as template +// //xSpreadsheetComponent = xComponentLoader.loadComponentFromURL( +// // "file:///c:/temp/DataAnalysys.ods", "_blank", 0, loadProps); + +// // ********************************************************* +// // example for use of XEnumerationAccess +// XCellRangesQuery xCellQuery = (XCellRangesQuery) +// UnoRuntime.queryInterface(XCellRangesQuery.class, sheet); +// XSheetCellRanges xFormulaCells = xCellQuery.queryContentCells( +// (short)com.sun.star.sheet.CellFlags.FORMULA); +// XEnumerationAccess xFormulas = xFormulaCells.getCells(); +// XEnumeration xFormulaEnum = xFormulas.createEnumeration(); + +// while (xFormulaEnum.hasMoreElements()) { +// Object formulaCell = xFormulaEnum.nextElement(); +// xCell = (XCell)UnoRuntime.queryInterface(XCell.class, formulaCell); +// XCellAddressable xCellAddress = (XCellAddressable) +// UnoRuntime.queryInterface(XCellAddressable.class, xCell); +// System.out.println("Formula cell in column " + +// xCellAddress.getCellAddress().Column +// + ", row " + xCellAddress.getCellAddress().Row +// + " contains " + xCell.getFormula()); +// } + +// } +// catch( com.sun.star.lang.DisposedException e ) { //works from Patch 1 +// xRemoteContext = null; +// throw e; +// } +// } +// } |