diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2004-12-23 10:48:30 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2004-12-23 10:48:30 +0000 |
commit | f4ebe93657a8a24001dcc104ac65aa8449328411 (patch) | |
tree | 9ad19136b911014f014a16d4e694f3a2f8084aa2 /scripting/examples | |
parent | 41656a962bcdc8d58e072c5534ff8ff6207a9b3b (diff) |
INTEGRATION: CWS scriptingf9 (1.1.2); FILE ADDED
2004/11/24 12:41:44 toconnor 1.1.2.2: #i36397# rename MemoryUsage document and use button instead of keybinding
2004/11/23 17:31:59 toconnor 1.1.2.1: #i36937# clean up structure of Java examples
Diffstat (limited to 'scripting/examples')
-rw-r--r-- | scripting/examples/java/MemoryUsage/MemoryUsage.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/scripting/examples/java/MemoryUsage/MemoryUsage.java b/scripting/examples/java/MemoryUsage/MemoryUsage.java new file mode 100644 index 000000000000..c2b8625b0ffb --- /dev/null +++ b/scripting/examples/java/MemoryUsage/MemoryUsage.java @@ -0,0 +1,47 @@ +import java.util.Random; +import java.util.Date; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.Type; +import com.sun.star.lang.XComponent; +import com.sun.star.container.XIndexAccess; +import com.sun.star.sheet.XSpreadsheetDocument; +import com.sun.star.sheet.XSpreadsheet; +import com.sun.star.awt.ActionEvent; + +import com.sun.star.script.provider.XScriptContext; + +public class MemoryUsage { + + public void updateMemoryUsage(XScriptContext ctxt, ActionEvent evt) + throws Exception { + + Runtime runtime = Runtime.getRuntime(); + Random generator = new Random(); + Date date = new Date(); + + int len = (int)(generator.nextFloat() * runtime.freeMemory() / 5); + byte[] bytes = new byte[len]; + addEntry(ctxt, date.toString(), runtime.totalMemory(), runtime.freeMemory()); + } + + private void addEntry(XScriptContext ctxt, String date, long total, long free) + throws Exception { + + XComponent comp = ctxt.getDocument(); + + XSpreadsheetDocument doc = (XSpreadsheetDocument) + UnoRuntime.queryInterface(XSpreadsheetDocument.class, comp); + + XIndexAccess index = (XIndexAccess) + UnoRuntime.queryInterface(XIndexAccess.class, doc.getSheets()); + + XSpreadsheet sheet = (XSpreadsheet) AnyConverter.toObject( + new Type(com.sun.star.sheet.XSpreadsheet.class), index.getByIndex(0)); + + sheet.getCellByPosition(0, 1).setValue(total - free); + sheet.getCellByPosition(1, 1).setValue(free); + sheet.getCellByPosition(2, 1).setValue(total); + sheet.getCellByPosition(0, 2).setFormula(date); + } +} |