1*dccf82beSAriel Constenla-Haile/************************************************************** 2*dccf82beSAriel Constenla-Haile * 3*dccf82beSAriel Constenla-Haile * Licensed to the Apache Software Foundation (ASF) under one 4*dccf82beSAriel Constenla-Haile * or more contributor license agreements. See the NOTICE file 5*dccf82beSAriel Constenla-Haile * distributed with this work for additional information 6*dccf82beSAriel Constenla-Haile * regarding copyright ownership. The ASF licenses this file 7*dccf82beSAriel Constenla-Haile * to you under the Apache License, Version 2.0 (the 8*dccf82beSAriel Constenla-Haile * "License"); you may not use this file except in compliance 9*dccf82beSAriel Constenla-Haile * with the License. You may obtain a copy of the License at 10*dccf82beSAriel Constenla-Haile * 11*dccf82beSAriel Constenla-Haile * http://www.apache.org/licenses/LICENSE-2.0 12*dccf82beSAriel Constenla-Haile * 13*dccf82beSAriel Constenla-Haile * Unless required by applicable law or agreed to in writing, 14*dccf82beSAriel Constenla-Haile * software distributed under the License is distributed on an 15*dccf82beSAriel Constenla-Haile * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*dccf82beSAriel Constenla-Haile * KIND, either express or implied. See the License for the 17*dccf82beSAriel Constenla-Haile * specific language governing permissions and limitations 18*dccf82beSAriel Constenla-Haile * under the License. 19*dccf82beSAriel Constenla-Haile * 20*dccf82beSAriel Constenla-Haile *************************************************************/ 21*dccf82beSAriel Constenla-Haile 22*dccf82beSAriel Constenla-Haile#ifndef __com_sun_star_frame_XUIControllerFactory_idl__ 23*dccf82beSAriel Constenla-Haile#define __com_sun_star_frame_XUIControllerFactory_idl__ 24*dccf82beSAriel Constenla-Haile 25*dccf82beSAriel Constenla-Haile#include <com/sun/star/lang/XMultiComponentFactory.idl> 26*dccf82beSAriel Constenla-Haile#include <com/sun/star/frame/XUIControllerRegistration.idl> 27*dccf82beSAriel Constenla-Haile 28*dccf82beSAriel Constenla-Hailemodule com { module sun { module star { module frame { 29*dccf82beSAriel Constenla-Haile 30*dccf82beSAriel Constenla-Haile/** a factory to create User Interface controllers. 31*dccf82beSAriel Constenla-Haile 32*dccf82beSAriel Constenla-Haile <p> 33*dccf82beSAriel Constenla-Haile A user interface controller can be registered for a command URL. A certain user 34*dccf82beSAriel Constenla-Haile interface controller will be created when a user interface element contains a 35*dccf82beSAriel Constenla-Haile registered command URL. 36*dccf82beSAriel Constenla-Haile 37*dccf82beSAriel Constenla-Haile @see PopupMenuControllerFactory 38*dccf82beSAriel Constenla-Haile @see StatusbarControllerFactory 39*dccf82beSAriel Constenla-Haile @see ToolbarControllerFactory 40*dccf82beSAriel Constenla-Haile </p> 41*dccf82beSAriel Constenla-Haile 42*dccf82beSAriel Constenla-Haile @since Apache OpenOffice 4.0 43*dccf82beSAriel Constenla-Haile */ 44*dccf82beSAriel Constenla-Haileinterface XUIControllerFactory 45*dccf82beSAriel Constenla-Haile{ 46*dccf82beSAriel Constenla-Haile /** this interface provides functions to create new instances of a registered UI controller. 47*dccf82beSAriel Constenla-Haile 48*dccf82beSAriel Constenla-Haile <p> 49*dccf82beSAriel Constenla-Haile Use <member scope="com::sun::star::lang">XMultiComponentFactory::createInstanceWithArgumentsAndContext()</member> to create 50*dccf82beSAriel Constenla-Haile a new UI controller instance. Use the CommandURL as the service specifier. 51*dccf82beSAriel Constenla-Haile 52*dccf82beSAriel Constenla-Haile This call supports the following arguments provided as <type scope="com::sun::star::beans">PropertyValue</type>: 53*dccf82beSAriel Constenla-Haile <ul> 54*dccf82beSAriel Constenla-Haile <li> 55*dccf82beSAriel Constenla-Haile <b>Frame</b><br>specifies the <type scope="com::sun::star::frame">XFrame</type> 56*dccf82beSAriel Constenla-Haile instance to which the UI controller belongs to. This property must be provided to 57*dccf82beSAriel Constenla-Haile the UI controller, otherwise it cannot dispatch its internal commands. 58*dccf82beSAriel Constenla-Haile </li> 59*dccf82beSAriel Constenla-Haile <li> 60*dccf82beSAriel Constenla-Haile <b>ModuleIdentifier</b><br>optional string that specifies in which module context the UI 61*dccf82beSAriel Constenla-Haile controller should be created.</br>The module identifier can be retrieved using the 62*dccf82beSAriel Constenla-Haile <type>ModuleManager</type>. 63*dccf82beSAriel Constenla-Haile </li> 64*dccf82beSAriel Constenla-Haile </ul> 65*dccf82beSAriel Constenla-Haile </p> 66*dccf82beSAriel Constenla-Haile */ 67*dccf82beSAriel Constenla-Haile interface com::sun::star::lang::XMultiComponentFactory; 68*dccf82beSAriel Constenla-Haile 69*dccf82beSAriel Constenla-Haile /** provides functions to query for, register and deregister a popup menu controller. 70*dccf82beSAriel Constenla-Haile */ 71*dccf82beSAriel Constenla-Haile interface XUIControllerRegistration; 72*dccf82beSAriel Constenla-Haile}; 73*dccf82beSAriel Constenla-Haile 74*dccf82beSAriel Constenla-Haile}; }; }; }; 75*dccf82beSAriel Constenla-Haile 76*dccf82beSAriel Constenla-Haile#endif 77