office-gobmx/wizards/Package_sfwidgets.mk
Jean-Pierre Ledure f36265ed0e ScriptForge (SFWidgets) new Toolbar and ToolbarButton services
Each component has its own set of toolbars, depending
on the component type (Calc, Writer, Basic IDE, ...).
In the context of the actual class, a toolbar
is presumed defined statically:
  - either by the application
  - or by a customization done by the user.
The definition of a toolbar can be stored
in the application configuration files
or in the current document.

Changes made by scripts to toolbars stored
in the application are persistent. They are valid
for all documents of the same type.

Note that the menubar and the statusbar
are not considered toolbars in this context.

A toolbar consists in a series of graphical
controls to trigger actions.
  The "Toolbar" service gives access to the "ToolbarButton" service to manage
  the individual buttons belonging to the toolbar.

The "Toolbar" service is triggered from next
services: Document, Calc, Writer, Base, FormDocument
and Datasheet. All those components might host toolbars.

Proposed properties in the Toolbar service:
  BuiltIn
  Docked
  HasGlobalScope
  Name
  ResourceURL
  Visible (r/w)
  XUIElement
Proposed method:
  ToolbarButtons()

Proposed properties in the ToolbarButton service:
  Caption
  Height
  Index
  OnClick (r/w)
  Parent
  TipText (r/w)
  Visible (r/w)
  X
  Y
(The Height, Width, X, Y properties allow for
easy hook of a popup menu to tye button)
Proposed method:
  Execute()

Both services are available both from Basic and Python user scripts.
An update of the dcumentation help is required.

Change-Id: I43cb523b52e3d6362994557d74c4ef9faa220507
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147925
Tested-by: Jean-Pierre Ledure <jp@ledure.be>
Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
Tested-by: Jenkins
2023-02-28 15:31:12 +00:00

34 lines
1.2 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# 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 .
#
$(eval $(call gb_Package_Package,wizards_basicsrvsfwidgets,$(SRCDIR)/wizards/source/sfwidgets))
$(eval $(call gb_Package_add_files,wizards_basicsrvsfwidgets,$(LIBO_SHARE_FOLDER)/basic/SFWidgets,\
SF_Menu.xba \
SF_MenuListener.xba \
SF_PopupMenu.xba \
SF_Register.xba \
SF_Toolbar.xba \
SF_ToolbarButton.xba \
__License.xba \
dialog.xlb \
script.xlb \
))
# vim: set noet sw=4 ts=4: