From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- offapi/com/sun/star/system/SimpleCommandMail.idl | 45 +++++ .../com/sun/star/system/SimpleMailClientFlags.idl | 61 +++++++ offapi/com/sun/star/system/SimpleSystemMail.idl | 43 +++++ offapi/com/sun/star/system/SystemShellExecute.idl | 42 +++++ .../star/system/SystemShellExecuteException.idl | 46 +++++ .../sun/star/system/SystemShellExecuteFlags.idl | 52 ++++++ offapi/com/sun/star/system/XSimpleMailClient.idl | 79 +++++++++ .../sun/star/system/XSimpleMailClientSupplier.idl | 55 ++++++ offapi/com/sun/star/system/XSimpleMailMessage.idl | 135 ++++++++++++++ offapi/com/sun/star/system/XSimpleMailMessage2.idl | 39 +++++ offapi/com/sun/star/system/XSystemShellExecute.idl | 73 ++++++++ offapi/com/sun/star/system/windows/JumpList.idl | 33 ++++ .../com/sun/star/system/windows/JumpListItem.idl | 55 ++++++ offapi/com/sun/star/system/windows/XJumpList.idl | 195 +++++++++++++++++++++ 14 files changed, 953 insertions(+) create mode 100644 offapi/com/sun/star/system/SimpleCommandMail.idl create mode 100644 offapi/com/sun/star/system/SimpleMailClientFlags.idl create mode 100644 offapi/com/sun/star/system/SimpleSystemMail.idl create mode 100644 offapi/com/sun/star/system/SystemShellExecute.idl create mode 100644 offapi/com/sun/star/system/SystemShellExecuteException.idl create mode 100644 offapi/com/sun/star/system/SystemShellExecuteFlags.idl create mode 100644 offapi/com/sun/star/system/XSimpleMailClient.idl create mode 100644 offapi/com/sun/star/system/XSimpleMailClientSupplier.idl create mode 100644 offapi/com/sun/star/system/XSimpleMailMessage.idl create mode 100644 offapi/com/sun/star/system/XSimpleMailMessage2.idl create mode 100644 offapi/com/sun/star/system/XSystemShellExecute.idl create mode 100644 offapi/com/sun/star/system/windows/JumpList.idl create mode 100644 offapi/com/sun/star/system/windows/JumpListItem.idl create mode 100644 offapi/com/sun/star/system/windows/XJumpList.idl (limited to 'offapi/com/sun/star/system') diff --git a/offapi/com/sun/star/system/SimpleCommandMail.idl b/offapi/com/sun/star/system/SimpleCommandMail.idl new file mode 100644 index 000000000..0f89735a4 --- /dev/null +++ b/offapi/com/sun/star/system/SimpleCommandMail.idl @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SimpleCommandMail_idl__ +#define __com_sun_star_system_SimpleCommandMail_idl__ + +#include + + +module com { module sun { module star { module system { + + +published interface XSimpleMailClientSupplier; + +/** Specifies a SimpleCommandMail service. Implementations of such a service, do + implement an interface to send mail messages via the current configured + command line mail application. + + @see com::sun::star::system::XSimpleMailClient +*/ + +published service SimpleCommandMail : XSimpleMailClientSupplier; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/SimpleMailClientFlags.idl b/offapi/com/sun/star/system/SimpleMailClientFlags.idl new file mode 100644 index 000000000..33ee2e3e9 --- /dev/null +++ b/offapi/com/sun/star/system/SimpleMailClientFlags.idl @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SimpleMailClientFlags_idl__ +#define __com_sun_star_system_SimpleMailClientFlags_idl__ + + +module com { module sun { module star { module system { + +/** These constants are used to specify how the SimpleMailClient Service + should behave. + */ + +published constants SimpleMailClientFlags +{ + /** Uses the default settings when sending a mail, e.g. + launches the current configured system mail client. + */ + const long DEFAULTS = 0; + + /** Does not show the current configured system mail client, but sends + the mail without any further user interaction. + If this flag is specified, a recipient address must have been + specified for the given XSimpleMailMessage + object given to the method + com::sun::star::system::XSimpleMailClient::sendSimpleMailMessage(). + */ + const long NO_USER_INTERFACE = 1; + + /** No logon dialog should be displayed to prompt the user for logon + information if necessary. + When this flag is specified and the user needs to logon in order + to send a simple mail message via the method + com::sun::star::system::XSimpleMailClient::sendSimpleMailMessage(), + an Exception will be thrown. + */ + const long NO_LOGON_DIALOG = 2; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/SimpleSystemMail.idl b/offapi/com/sun/star/system/SimpleSystemMail.idl new file mode 100644 index 000000000..54cc8b163 --- /dev/null +++ b/offapi/com/sun/star/system/SimpleSystemMail.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SimpleSystemMail_idl__ +#define __com_sun_star_system_SimpleSystemMail_idl__ + + +module com { module sun { module star { module system { + + +published interface XSimpleMailClientSupplier; + +/** Specifies a SimpleSystemMail service. Implementations of such a service + implement an interface to send mail messages via the currently configured + system mail client. + + @see com::sun::star::system::XSimpleMailClient +*/ + +published service SimpleSystemMail : XSimpleMailClientSupplier; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/SystemShellExecute.idl b/offapi/com/sun/star/system/SystemShellExecute.idl new file mode 100644 index 000000000..1b33e7b53 --- /dev/null +++ b/offapi/com/sun/star/system/SystemShellExecute.idl @@ -0,0 +1,42 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SystemShellExecute_idl__ +#define __com_sun_star_system_SystemShellExecute_idl__ + + +module com { module sun { module star { module system { + + +published interface XSystemShellExecute; + +/** Specifies a system executer service. Such a service makes it possible + to execute an arbitrary system command. + + @see com::sun::star::system::XSystemShellExecute +*/ + +published service SystemShellExecute : XSystemShellExecute; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/SystemShellExecuteException.idl b/offapi/com/sun/star/system/SystemShellExecuteException.idl new file mode 100644 index 000000000..8342fa9d5 --- /dev/null +++ b/offapi/com/sun/star/system/SystemShellExecuteException.idl @@ -0,0 +1,46 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SystemShellExecuteException_idl__ +#define __com_sun_star_system_SystemShellExecuteException_idl__ + +#include + + +module com { module sun { module star { module system { + +/** May be thrown in cases of errors executing a command using the SystemShellExecute service. + com::sun::star::uno::Exception::Message may contain a + system error message, but it is not mandatory. + The member PosixError specifies a POSIX conforming error code or -1 for + unknown errors. + */ +published exception SystemShellExecuteException: com::sun::star::uno::Exception +{ + /** A POSIX conforming error code or -1 for unknown errors. + */ + long PosixError; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/SystemShellExecuteFlags.idl b/offapi/com/sun/star/system/SystemShellExecuteFlags.idl new file mode 100644 index 000000000..78ac35665 --- /dev/null +++ b/offapi/com/sun/star/system/SystemShellExecuteFlags.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_SystemShellExecuteFlags_idl__ +#define __com_sun_star_system_SystemShellExecuteFlags_idl__ + + +module com { module sun { module star { module system { + +/** Different settings for the SystemShellExecute service. + */ + +published constants SystemShellExecuteFlags +{ + /** Uses the default settings for executing commands. + */ + const long DEFAULTS = 0; + + /** Prevents the display of system error message boxes if the + method com::sun::star::system::XSystemShellExecute::execute() fails. + */ + const long NO_SYSTEM_ERROR_MESSAGE = 1; + + /** Only allows opening of absolute URI references. + + @since LibreOffice 3.6 + */ + const long URIS_ONLY = 2; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/XSimpleMailClient.idl b/offapi/com/sun/star/system/XSimpleMailClient.idl new file mode 100644 index 000000000..4fdf47401 --- /dev/null +++ b/offapi/com/sun/star/system/XSimpleMailClient.idl @@ -0,0 +1,79 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_XSimpleMailClient_idl__ +#define __com_sun_star_system_XSimpleMailClient_idl__ + +#include +#include +#include +#include +#include + + +module com { module sun { module star { module system { + +/** Specifies an interface for creating and sending email messages. +*/ + +published interface XSimpleMailClient: com::sun::star::uno::XInterface +{ + /** Create a simple mail message object that implements the interface + XSimpleMailMessage. + @returns + An object that implements the XSimpleMailMessage interface. + */ + XSimpleMailMessage createSimpleMailMessage( ); + + /** Sends a given simple mail message object that implements the interface + XSimpleMailMessage. + + @param xSimpleMailMessage + Specifies a configured mail object to be sent. + + @param aFlag + Specifies different flags that control the send process + if the flag NO_USER_INTERFACE is specified. A recipient + address must have been specified for the given xMailMessage object. + + @throws com::sun::star::lang::IllegalArgumentException +
    +
  • If invalid or excluding flags have been specified.
  • +
  • The flag NO_USER_INTERFACE is specified and no recipient + address has been specified for the given xSimpleMailMessage object.
  • +
  • The parameter xSimpleMailMessage is NULL.
  • +
+ + @throws com::sun::star::uno::Exception + if an error occurs while sending the mail. +

The Message member of the exception may contain an error description.

+ + @see com::sun::star::system::XSimpleMailMessage + @see com::sun::star::system::SimpleMailClientFlags + */ + void sendSimpleMailMessage( [in] XSimpleMailMessage xSimpleMailMessage, [in] long aFlag ) + raises( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::Exception ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/XSimpleMailClientSupplier.idl b/offapi/com/sun/star/system/XSimpleMailClientSupplier.idl new file mode 100644 index 000000000..04f87d347 --- /dev/null +++ b/offapi/com/sun/star/system/XSimpleMailClientSupplier.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_XSimpleMailClientSupplier_idl__ +#define __com_sun_star_system_XSimpleMailClientSupplier_idl__ + +#include +#include +#include +#include + + +module com { module sun { module star { module system { + +/** Implementations of this interface do provide access to a simple mail client + if there is one available + + @see com::sun::star::system::XSimpleMailClient +*/ + +published interface XSimpleMailClientSupplier: com::sun::star::uno::XInterface +{ + /** Allows a client to query for an object that implements + XSimpleMailClient. + @returns + An interface to a simple mail client if there is one available on the system + or an empty reference else. + + @see com::sun::star::system::XSimpleMailClient + */ + XSimpleMailClient querySimpleMailClient( ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/XSimpleMailMessage.idl b/offapi/com/sun/star/system/XSimpleMailMessage.idl new file mode 100644 index 000000000..449abd8b4 --- /dev/null +++ b/offapi/com/sun/star/system/XSimpleMailMessage.idl @@ -0,0 +1,135 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_XSimpleMailMessage_idl__ +#define __com_sun_star_system_XSimpleMailMessage_idl__ + +#include +#include +#include + + +module com { module sun { module star { module system { + +/** This interface lets a client set or get the information of a simple mail + message. +*/ + + +published interface XSimpleMailMessage: com::sun::star::uno::XInterface +{ + /** To set the recipient of the simple mail message. + @param aRecipient + The email address of a recipient. The method doesn't check if + the given email address is valid. + */ + void setRecipient( [in] string aRecipient ); + + /** To get the recipient of the simple mail message. + @returns + The specified email address of a recipient + if any has been specified or an empty string. + */ + string getRecipient( ); + + /** To set the cc recipients of a simple mail message. + + @param aCcRecipient + Sets a sequence with the email addresses of one or more cc recipients. +

The method does not check if the given addresses are valid. An empty + sequence means there are no cc recipients.

+ */ + void setCcRecipient( [in] sequence< string > aCcRecipient ); + + /** To get the cc recipients of a simple mail message. + @returns + A sequence with the email addresses of one or more cc recipients. +

If no cc recipients have been specified an empty sequence will be returned.

+ */ + sequence< string > getCcRecipient( ); + + /** To set the BCC recipient of a simple mail message. + @param aBccRecipient + A sequence with the email addresses of one or more BCC recipients. An empty + sequence means there are no BCC recipients.

+ */ + void setBccRecipient( [in] sequence< string > aBccRecipient ); + + /** To get the BCC recipients of a simple mail message. + @returns + A sequence with the email addresses of one or more BCC recipients. +

If no BCC recipients have been specified an empty sequence will be returned.

+ */ + sequence< string > getBccRecipient( ); + + /** To set the email address of the originator of a simple mail message. + @param aOriginator + Sets the email address of the originator of the mail. + */ + void setOriginator( [in] string aOriginator ); + + /** To get the email address of the originator of a simple mail message. + @returns + The email address of the originator of the mail. +

If no originator has been specified an empty string will be returned.

+ */ + string getOriginator( ); + + /** To set the subject of a simple mail message. + @param aSubject + Sets the subject of the simple mail message. + */ + void setSubject( [in] string aSubject ); + + /** To get the subject of a simple mail message. + @returns + The subject of the simple mail message. +

If no subject has been specified an empty string will be returned.

+ */ + string getSubject( ); + + /** To set an attachment of a simple mail message. + @param aAttachement + Sets a sequence of file URLs specifying the files that should be + attached to the mail. The given file URLs must conform to + Rfc1738. + The method does not check if the specified file or files really exist. + + @throws ::com::sun::star::lang::IllegalArgumentException + if at least one of the given file URLs is invalid (doesn't conform to + Rfc1738). + */ + void setAttachement( [in] sequence< string > aAttachement ) + raises( ::com::sun::star::lang::IllegalArgumentException ); + + /** To get the attachment of a simple mail message. + @returns + A sequence of file URLs specifying the files that should be attached to + the mail or an empty sequence if no attachments have been specified. + The returned file URLs conform to Rfc1738. + */ + sequence< string > getAttachement( ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/XSimpleMailMessage2.idl b/offapi/com/sun/star/system/XSimpleMailMessage2.idl new file mode 100644 index 000000000..8452c94b0 --- /dev/null +++ b/offapi/com/sun/star/system/XSimpleMailMessage2.idl @@ -0,0 +1,39 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_system_XSimpleMailMessage2_idl__ +#define __com_sun_star_system_XSimpleMailMessage2_idl__ + +#include + +module com { module sun { module star { module system { + +/** This interface extends XSimpleMailMessage + + @since LibreOffice 4.2 +*/ +interface XSimpleMailMessage2 : XSimpleMailMessage +{ + [attribute] string Body; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/XSystemShellExecute.idl b/offapi/com/sun/star/system/XSystemShellExecute.idl new file mode 100644 index 000000000..acefdd4ef --- /dev/null +++ b/offapi/com/sun/star/system/XSystemShellExecute.idl @@ -0,0 +1,73 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_system_XSystemShellExecute_idl__ +#define __com_sun_star_system_XSystemShellExecute_idl__ + +#include +#include +#include + + +module com { module sun { module star { module system { + +/** Specifies an interface for executing a system command. +*/ + + +published interface XSystemShellExecute: com::sun::star::uno::XInterface +{ + /** Executes an arbitrary system command. + + @param aCommand + Specifies the command to execute. This may be an executable file or a + document which is registered with an application on a specific platform, + so that the platform knows what application to launch for that document. + If the command specifies a path to an executable, etc, this has to be + a system specific path. + + @param aParameter + Specifies a list of space separated parameters. The method does not + validate the given parameters, but only passes it as a parameter to the + specified command. + + @param nFlags + Specifies different flags to control the execution of this method, for example, + avoid showing system error messages, in case of failures, etc. + + @throws com::sun::star::lang::IllegalArgumentException + when the specified flags are wrong or exclude each other; also thrown, + with an ArgumentPosition of 0, when nFlags contains URIS_ONLY and + aCommand is not an absolute URI reference + + @throws com::sun::star::system::SystemShellExecuteException + in the case of errors when trying to executed the specified command. + + @see com::sun::star::system::SystemShellExecuteFlags + */ + void execute( [in] string aCommand, [in] string aParameter, [in] long nFlags ) + raises( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::system::SystemShellExecuteException ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/system/windows/JumpList.idl b/offapi/com/sun/star/system/windows/JumpList.idl new file mode 100644 index 000000000..82becd522 --- /dev/null +++ b/offapi/com/sun/star/system/windows/JumpList.idl @@ -0,0 +1,33 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_system_windows_JumpList_idl__ +#define __com_sun_star_system_windows_JumpList_idl__ + + +module com { module sun { module star { module system { module windows { + + +interface XJumpList; + +/** Specifies a Jump List service. Allows to add custom commands to the Windows Jump List. + + @since LibreOffice 7.4 + + @see com::sun::star::system::windows::XJumpList +*/ + +service JumpList : XJumpList; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/offapi/com/sun/star/system/windows/JumpListItem.idl b/offapi/com/sun/star/system/windows/JumpListItem.idl new file mode 100644 index 000000000..30a8bdd6f --- /dev/null +++ b/offapi/com/sun/star/system/windows/JumpListItem.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_system_windows_JumpListItem_idl__ +#define __com_sun_star_system_windows_JumpListItem_idl__ + +#include +#include +#include + + +module com { module sun { module star { module system { module windows { + +/** Specifies an item for com::sun::star::system::windows::XJumpList . + + @since LibreOffice 7.4 +*/ + +struct JumpListItem +{ + /** Item name. Appears in the JumpList. + Has to be unique per category. + Must not include embedded NULs ('\\0'). */ + string name; + + /** Item description, appears as tooltip. + Must not include embedded NULs ('\\0'). + */ + string description; + + /** Arguments to be passed to LibreOffice. + This can be a file to be loaded, or any command line parameter supported by LibreOffice, and any combination of the two. + Add multiple arguments separated by space. + Must not include embedded NULs ('\\0'). + */ + string arguments; + + /** Icon to be displayed along the name. + Must be a local path name like `C:\\path\\to\\icon.ico`. + Icon must be in ICO format. + */ + string iconPath; +}; + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/offapi/com/sun/star/system/windows/XJumpList.idl b/offapi/com/sun/star/system/windows/XJumpList.idl new file mode 100644 index 000000000..ddf941524 --- /dev/null +++ b/offapi/com/sun/star/system/windows/XJumpList.idl @@ -0,0 +1,195 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_system_windows_XJumpList_idl__ +#define __com_sun_star_system_windows_XJumpList_idl__ + +#include +#include +#include + + +module com { module sun { module star { module system { module windows { + +/** Specifies an interface for adding custom jump lists to the task bar (Windows only) + + To add a new jump list, call + 1. XJumpList::beginList + 2. XJumpList::appendCategory / XJumpList::addTasks / XJumpList::showRecentFiles / XJumpList::showFrequentFiles + 3. XJumpList::commitList + + Use XJumpList::abortList to cancel a current list building session. + Use XJumpList::getRemovedItems to see which items were removed by the user. + + @since LibreOffice 7.4 +*/ +interface XJumpList: com::sun::star::uno::XInterface +{ + /** + Start a new jump list. + + @param application + Used to map the jump list to the correct application. Use one of the following values: +
    +
  • Writer
  • +
  • Calc
  • +
  • Impress
  • +
  • Draw
  • +
  • Math
  • +
  • Base
  • +
  • Startcenter
  • +
+ + "Startcenter" will map to the generic "LibreOffice" icon. + + @throws com::sun::star::lang::IllegalArgumentException + When `application` is invalid + + @throws com::sun::star::util::InvalidStateException + When there is already an open list. + */ + void beginList([in] string application) + raises( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::util::InvalidStateException ); + + /** Add a jump list category. + + Users can pin or remove items added via this method. + Use XJumpList::getRemovedItems to see which items were removed by the user. + + @param category + Specifies the category name. It will appear as the title of the custom jump list. + Must not include embedded NULs ('\\0') + + @param jumpListItems + Specifies a list of com::sun::star::system::JumpListItem. + Must contain at least one item. + These will be added as entries below the category name in the custom jump list. + + Make sure you don't add items which the user has removed before + (check the result of `getRemovedItems` before updating a category). + If you try to add items which the user removed before, + they will be silently ignored and not added to the list. + + @throws com::sun::star::lang::IllegalArgumentException + When one of the following applies: +
    +
  • `category` is empty
  • +
  • `jumpListItems` is empty or contains only items which were removed by the user
  • +
+ + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void appendCategory( [in] string category, + [in] sequence jumpListItems ) + raises( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::util::InvalidStateException ); + + /** Add items to the "Tasks" category. This category is system-defined and the category title cannot be changed. + Also the user cannot remove or pin items from this category (as he can with items added via XJumpList::appendCategory ). + + @param jumpListItems + Specifies a list of com::sun::star::system::JumpListItem. + Must contain at least one item. + These will be added as entries below the "Tasks" system category. + + @throws com::sun::star::lang::IllegalArgumentException + When `jumpListItems` is empty + + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void addTasks([in] sequence jumpListItems) + raises( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::util::InvalidStateException ); + + /** Display the recently used files (populated by LibreOffice) + + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void showRecentFiles() + raises (::com::sun::star::util::InvalidStateException); + + /** Display the frequently used files (populated by LibreOffice) + + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void showFrequentFiles() + raises (::com::sun::star::util::InvalidStateException); + + /** + Commits the list. + + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void commitList() + raises( ::com::sun::star::util::InvalidStateException ); + + /** + Aborts a list building session started with beginList. + + @throws com::sun::star::util::InvalidStateException + When there is no open list. + */ + void abortList() + raises( ::com::sun::star::util::InvalidStateException ); + + /** Deletes the Jump List for a certain application + + @param application + Used to map the jump list to the correct application. Use one of the following values: +
    +
  • Writer
  • +
  • Calc
  • +
  • Impress
  • +
  • Draw
  • +
  • Math
  • +
  • Base
  • +
  • Startcenter
  • +
+ + "Startcenter" will map to the generic "LibreOffice" icon. + + @throws com::sun::star::lang::IllegalArgumentException + When `application` is invalid + */ + void deleteList( [in] string application ) + raises( ::com::sun::star::lang::IllegalArgumentException ); + + /** Returns items that were removed from the jump list by the user. + + `appendCategory` will ignore items which were removed by the user before. + Use this method to learn which items were removed by the user. + + @param application + Used to map the jump list to the correct application. Use one of the following values: +
    +
  • Writer
  • +
  • Calc
  • +
  • Impress
  • +
  • Draw
  • +
  • Math
  • +
  • Base
  • +
  • Startcenter
  • +
+ + "Startcenter" will map to the generic "LibreOffice" icon. + + @return List of removed items. + */ + sequence getRemovedItems([in] string application); +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ -- cgit v1.2.3