summaryrefslogtreecommitdiff
path: root/wizards/com/sun/star/wizards/ui/UnoDialog.java
diff options
context:
space:
mode:
Diffstat (limited to 'wizards/com/sun/star/wizards/ui/UnoDialog.java')
-rw-r--r--wizards/com/sun/star/wizards/ui/UnoDialog.java44
1 files changed, 32 insertions, 12 deletions
diff --git a/wizards/com/sun/star/wizards/ui/UnoDialog.java b/wizards/com/sun/star/wizards/ui/UnoDialog.java
index 1425c3eadb53..120b26367c8d 100644
--- a/wizards/com/sun/star/wizards/ui/UnoDialog.java
+++ b/wizards/com/sun/star/wizards/ui/UnoDialog.java
@@ -57,7 +57,7 @@ public class UnoDialog implements EventNames
public XMultiServiceFactory MSFDialogModel;
public XNameContainer xDlgNames;
public XControlContainer xDlgContainer;
- public XNameAccess xDlgNameAccess;
+ private XNameAccess m_xDlgNameAccess;
public XControl xControl;
public XDialog xDialog;
public XReschedule xReschedule;
@@ -95,7 +95,7 @@ public class UnoDialog implements EventNames
xPSetDlg = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xDialogModel);
xDlgContainer = (XControlContainer) UnoRuntime.queryInterface(XControlContainer.class, xUnoDialog);
xDlgNames = (XNameContainer) UnoRuntime.queryInterface(XNameContainer.class, xDialogModel);
- xDlgNameAccess = (XNameAccess) UnoRuntime.queryInterface(XNameAccess.class, xDialogModel);
+ // xDlgNameAccess = (XNameAccess) UnoRuntime.queryInterface(XNameAccess.class, xDialogModel);
xComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xUnoDialog);
xWindow = (XWindow) UnoRuntime.queryInterface(XWindow.class, xUnoDialog);
@@ -141,17 +141,25 @@ public class UnoDialog implements EventNames
return m_oPeerConfig;
}
+ XNameAccess getDlgNameAccess()
+ {
+ if (m_xDlgNameAccess == null)
+ {
+ m_xDlgNameAccess = (XNameAccess) UnoRuntime.queryInterface(XNameAccess.class, xDialogModel);
+ }
+ return m_xDlgNameAccess;
+ }
public void setControlProperty(String ControlName, String PropertyName, Object PropertyValue)
{
try
{
if (PropertyValue != null)
{
- if (xDlgNameAccess.hasByName(ControlName) == false)
+ if (getDlgNameAccess().hasByName(ControlName) == false)
{
return;
}
- Object xControlModel = xDlgNameAccess.getByName(ControlName);
+ Object xControlModel = getDlgNameAccess().getByName(ControlName);
XPropertySet xPSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xControlModel);
if (AnyConverter.isArray(PropertyValue))
{
@@ -182,11 +190,11 @@ public class UnoDialog implements EventNames
{
if (PropertyValues != null)
{
- if (xDlgNameAccess.hasByName(ControlName) == false)
+ if (getDlgNameAccess().hasByName(ControlName) == false)
{
return;
}
- Object xControlModel = xDlgNameAccess.getByName(ControlName);
+ Object xControlModel = getDlgNameAccess().getByName(ControlName);
XMultiPropertySet xMultiPSet = (XMultiPropertySet) UnoRuntime.queryInterface(XMultiPropertySet.class, xControlModel);
xMultiPSet.setPropertyValues(PropertyNames, PropertyValues);
}
@@ -201,7 +209,7 @@ public class UnoDialog implements EventNames
{
try
{
- Object xControlModel = xDlgNameAccess.getByName(ControlName);
+ Object xControlModel = getDlgNameAccess().getByName(ControlName);
XPropertySet xPSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xControlModel);
Object oPropValue = xPSet.getPropertyValue(PropertyName);
// if (AnyConverter.isArray(oPropValue))
@@ -220,12 +228,13 @@ public class UnoDialog implements EventNames
{
try
{
- Object xControlModel = xDlgNameAccess.getByName(ControlName);
+ Object xControlModel = getDlgNameAccess().getByName(ControlName);
XPropertySet xPSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xControlModel);
Property[] allProps = xPSet.getPropertySetInfo().getProperties();
for (int i = 0; i < allProps.length; i++)
{
- System.out.println(allProps[i].Name);
+ String sName = allProps[i].Name;
+ System.out.println(sName);
}
}
catch (com.sun.star.uno.Exception exception)
@@ -268,7 +277,10 @@ public class UnoDialog implements EventNames
public static int getListBoxItemCount(XListBox _xListBox)
{
- String[] fieldnames = (String[]) Helper.getUnoPropertyValue(getModel(_xListBox), "StringItemList");
+ // This function may look ugly, but this is the only way to check the count
+ // of values in the model,which is always right.
+ // the control is only a view and could be right or not.
+ final String[] fieldnames = (String[]) Helper.getUnoPropertyValue(getModel(_xListBox), "StringItemList");
return fieldnames.length;
}
@@ -685,7 +697,7 @@ public class UnoDialog implements EventNames
*
* @param _xBasisListBox
*/
- public void deselectListBox(XInterface _xBasisListBox)
+ public static void deselectListBox(XInterface _xBasisListBox)
{
Object oListBoxModel = getModel(_xBasisListBox);
Object sList = Helper.getUnoPropertyValue(oListBoxModel, "StringItemList");
@@ -823,6 +835,7 @@ public class UnoDialog implements EventNames
}
XToolkit xToolkit = (XToolkit) UnoRuntime.queryInterface(XToolkit.class, tk);
xReschedule = (XReschedule) UnoRuntime.queryInterface(XReschedule.class, xToolkit);
+ // TEUER!
xControl.createPeer(xToolkit, parentPeer);
xWindowPeer = xControl.getPeer();
return xControl.getPeer();
@@ -870,7 +883,9 @@ public class UnoDialog implements EventNames
public static Object getModel(Object control)
{
- return ((XControl) UnoRuntime.queryInterface(XControl.class, control)).getModel();
+ XControl xControl = (XControl) UnoRuntime.queryInterface(XControl.class, control);
+ XControlModel xModel = xControl.getModel();
+ return xModel;
}
public static void setEnabled(Object control, boolean enabled)
@@ -1128,4 +1143,9 @@ public class UnoDialog implements EventNames
return _surl;
}
}
+
+ public static short getListBoxLineCount()
+ {
+ return (short)20;
+ }
}