Example #1
0
 def style_button(file):
     return bkt.ribbon.ToggleButton(
         label=file,
         screentip="Lade " + file,
         supertip="Lade Custom-Styles aus dieser Katalog-Datei.",
         get_pressed=bkt.Callback(
             lambda: file == CustomFormatCatalog.current_file),
         on_toggle_action=bkt.Callback(
             lambda pressed: CustomFormatCatalog.read_from_config(file
                                                                  )))
Example #2
0
 def get_file_buttons(self):
     return [
         bkt.ribbon.Button(label="Datei öffnen und Library bearbeiten",
                           image_mso='FileSaveAsPowerPointPptx',
                           tag=self.filename,
                           on_action=bkt.Callback(ChartLib.open_file,
                                                  context=True,
                                                  current_control=True)),
         bkt.ribbon.Button(
             label="Datei erneut indizieren und Thumbnails aktualisieren",
             image_mso='AccessRefreshAllLists',
             on_action=bkt.Callback(self.reset_gallery_items, context=True))
     ]
Example #3
0
 def adjustment_edit_box(cls, prop):
     editbox = bkt.ribbon.EditBox(
         label=' ' + prop[0],
         sizeString='######',
         on_change=bkt.Callback(lambda shapes, value: map(
             lambda shape: cls.set_adjustment(shape, prop[1], value), shapes
         ),
                                shapes=True),
         get_text=bkt.Callback(
             lambda shape: cls.get_adjustment(shape, prop[1]), shape=True),
         get_enabled=bkt.Callback(lambda shapes: len(shapes) > 0,
                                  shapes=True))
     return editbox
Example #4
0
 def adjustment_edit_box(num):
     editbox = bkt.ribbon.EditBox(
         id='adjustment-' + str(num),
         label=' value ' + str(num),
         sizeString='#######',
         on_change=bkt.Callback(lambda shapes, value: map(
             lambda shape: Adjustments.set_adjustment(shape, num, value),
             shapes),
                                shapes=True),
         get_text=bkt.Callback(
             lambda shapes: Adjustments.get_adjustment(shapes[0], num),
             shapes=True),
         get_enabled=bkt.Callback(
             lambda shapes: Adjustments.is_enabled(shapes[0], num),
             shapes=True))
     return editbox
Example #5
0
    def get_styles():
        def style_button(file):
            return bkt.ribbon.ToggleButton(
                label=file,
                screentip="Lade " + file,
                supertip="Lade Custom-Styles aus dieser Katalog-Datei.",
                get_pressed=bkt.Callback(
                    lambda: file == CustomFormatCatalog.current_file),
                on_toggle_action=bkt.Callback(
                    lambda pressed: CustomFormatCatalog.read_from_config(file
                                                                         )))

        def style_list(folder):
            if os.path.exists(folder):
                return os.listdir(CustomFormatCatalog.config_folder)
            else:
                return []

        return bkt.ribbon.Menu(
            xmlns="http://schemas.microsoft.com/office/2009/07/customui",
            id=None,
            children=[
                bkt.ribbon.MenuSeparator(title="Style-Kataloge verwalten"),
            ] + [
                style_button(file)
                for file in style_list(CustomFormatCatalog.config_folder)
                if file.endswith(".json")
            ] + [
                bkt.ribbon.MenuSeparator(),
                bkt.ribbon.Button(
                    label='Neuen Style-Katalog anlegen',
                    supertip="Neuen Katalog mit definierbarem Namen anlegen.",
                    # image_mso='ModuleInsert',
                    on_action=bkt.Callback(CustomQuickEdit.create_new_style)),
            ])
Example #6
0
 def __init__(self):
     self.position_gallery = PositionGallery(
         label="Tabelle in Bereich einpassen",
         description="Shape-Tabelle auf Größe des gewählten Bereichs anpassen",
         on_position_change = bkt.Callback(self.table_contentarea_fit),
         get_item_supertip = bkt.Callback(self.get_item_supertip)
     )
     self.locpin_gallery = LocpinGallery(
         id="table_alignment",
         label="Shape-Ausrichtung",
         image_mso="ObjectAlignMenu",
         supertip="Legt Ausrichtung der Shapes innerhalb der Tabellenzellen fest.",
         item_height="32",
         item_width="32",
         locpin=self.alignment_locpin,
         item_supertip="Shapes werden bei Shape-Anordnung in Tabellenzellen {} angeordnet.",
     )
Example #7
0
 def get_file_buttons(self, filename, show_menu_separator=True):
     return ([bkt.ribbon.MenuSeparator(
         title="Library")] if show_menu_separator else []) + [
             bkt.ribbon.Button(
                 label="Datei öffnen und Library bearbeiten",
                 image_mso='FileSaveAsPowerPointPptx',
                 tag=filename,
                 on_action=bkt.Callback(
                     self.open_file, context=True, current_control=True)),
             bkt.ribbon.Button(label="Datei erneut indizieren",
                               image_mso='AccessRefreshAllLists',
                               tag=filename,
                               on_action=bkt.Callback(
                                   self.reset_chartlib_menu_callback,
                                   context=True,
                                   current_control=True))
         ]
Example #8
0
 def get_dynamic_folder_menu(self, folder):
     ''' returns dynamic menu for folder. if menu unfolds, menu content is obtained by get_folder_menu '''
     basename = os.path.basename(folder)
     return bkt.ribbon.DynamicMenu(label=basename,
                                   tag=folder,
                                   get_content=bkt.Callback(
                                       self.get_folder_menu_callback,
                                       current_control=True))
Example #9
0
    def __init__(self, **kwargs):
        parent_id = kwargs.get('id') or ""
        my_kwargs = dict(
            label='Styles anzeigen',
            columns=6,
            image_mso='ShapeQuickStylesHome',
            show_item_label=False,
            screentip="Custom-Styles Gallerie",
            supertip=
            "Zeigt Übersicht über alle Custom-Styles im aktuellen Katalog.",
            item_height=64,
            item_width=64,
            children=[
                bkt.ribbon.Button(
                    id=parent_id + "_pickup",
                    label="Neuen Style aufnehmen",
                    supertip=
                    "Nimmt Format vom gewählten Shape neu in die Gallerie auf.",
                    image_mso="PickUpStyle",
                    on_action=bkt.Callback(CustomQuickEdit.show_pickup_window,
                                           shape=True),
                    get_enabled=bkt.apps.ppt_shapes_exactly1_selected,
                ),
                bkt.ribbon.Button(
                    id=parent_id + "_help1",
                    label="[STRG]+Klick für Bearbeiten und Löschen",
                    supertip=
                    "Bei Klick auf ein Custom-Style mit gedrückter STRG-Taste öffnet sich ein Fenster zur Bearbeitung und Löschung dieses Styles.",
                    enabled=False),
                bkt.ribbon.Button(
                    id=parent_id + "_help2",
                    label="[SHIFT]+Klick für Anlage neues Shape",
                    supertip=
                    "Bei Klick auf ein Custom-Style mit gedrückter SHIFT-Taste wird immer ein neues Shapes in gewähltem Style angelegt.",
                    enabled=False),
                bkt.ribbon.Button(
                    id=parent_id + "_help3",
                    label="Einschränkungen durch PowerPoint-Bugs",
                    supertip=
                    "Liste von funktionalen Einschränkungen durch interne PowerPoint-Bugs anzeigen",
                    image_mso="Risks",
                    on_action=bkt.Callback(CustomQuickEdit.show_caveats)),
            ])
        my_kwargs.update(kwargs)

        super(FormatLibGallery, self).__init__(**my_kwargs)
Example #10
0
 def get_dynamic_file_menu(self, filename):
     ''' returns dynamic menu for file. if menu unfolds, menu content is obtained by get_chartlib_menu_from_file '''
     file_basename = os.path.splitext(os.path.basename(filename))[0]
     return bkt.ribbon.DynamicMenu(label=file_basename,
                                   tag=filename,
                                   get_content=bkt.Callback(
                                       self.get_chartlib_menu_callback,
                                       current_control=True,
                                       context=True))
Example #11
0
 def get_button(cls, language, idtag=""):
     return bkt.ribbon.Button(
             id = 'lang_'+language[0]+idtag,
             label=language[2],
             image=language[3],
             screentip="Sprache auf " + language[2] + " ändern",
             supertip="Setze Sprache für ausgewählten Text bzw. alle ausgewählten Shapes.\nWenn mehrere Folien ausgewählt sind, werden alle Shapes der gewählten Folien geändert.\nWenn nichts ausgewählt ist, werden alle Shapes in der Präsentation sowie die Standardsprache geändert.",
             on_action=bkt.Callback(lambda context, selection, presentation: cls.set_language(context, selection, presentation, language[1]), context=True, selection=True, presentation=True)
         )
Example #12
0
 def enable(cls, context):
     if not cls.activated and bkt.config.ppt_activate_tab_on_new_shape:
         cls.context = context
         #FIXME: event is not unassigned on reload/unload of addin
         # context.app.WindowSelectionChange += cls.activate_tab_on_new_shape
         bkt.AppEvents.selection_changed += bkt.Callback(
             cls.activate_tab_on_new_shape, selection=True)
         # print("tab activator: workaround enabled")
     cls.activated = True
     return True
Example #13
0
    def __init__(self, **kwargs):
        '''
        attr examples: tmargin, bmargin, rmargin, lmargin
        '''

        my_kwargs = dict(
            size_string='###',
            round_cm=True,
            # convert = 'pt_to_cm',
            get_enabled=bkt.Callback(self.get_enabled, shapes=True))
        my_kwargs.update(kwargs)

        super(InnerMargin, self).__init__(**my_kwargs)
Example #14
0
 def get_folder_menu(self, postfix):
     return bkt.ribbon.Menu(
         xmlns="http://schemas.microsoft.com/office/2009/07/customui",
         id=None,
         children=[
             bkt.ribbon.Button(
                 id='setting_add_folder' + postfix,
                 label='Feature-Ordner hinzufügen',
                 #image_mso='Folder',
                 image_mso='ModuleInsert',
                 on_action=bkt.Callback(FolderSetup.add_folder_by_dialog)),
             bkt.ribbon.MenuSeparator()
         ] + [
             self.info_delete_button_for_folder(folder, postfix)
             for folder in bkt.config.feature_folders
         ])
Example #15
0
    def __init__(self, filename, copy_shapes=False, **user_kwargs):
        '''Constructor
           Initializes Gallery for chart/shape-library
        '''
        self.filename = filename
        self.items_initialized = False

        self.labels = []
        self.slide_indices = []

        parent_id = user_kwargs.get('id') or ""

        self.this_id = filename_as_ui_id(filename) + "--" + str(copy_shapes)

        # default settings
        kwargs = dict(
            #label = u"Test Gallery",
            id=self.this_id,
            label=os.path.splitext(os.path.basename(filename))[0],
            show_label=False,
            #screentip="",
            #supertip="",
            get_image=bkt.Callback(lambda: self.get_chartlib_item_image(0)),
        )

        self.copy_shapes = copy_shapes
        if self.copy_shapes:
            # shape lib settings
            kwargs.update(dict(item_height=50, item_width=50, columns=3))
        else:
            # slide lib settings
            kwargs.update(
                dict(
                    item_height=100,
                    #item_width=177, item_height=100, # 16:9
                    #item_width=133, item_height=100, # 4:3
                    columns=2))

        # user kwargs
        if len(user_kwargs) > 0:
            kwargs.update(user_kwargs)

        # initialize gallery
        super(ChartLibGallery, self).__init__(children=self.get_file_buttons(),
                                              **kwargs)
Example #16
0
    def get_section_menu(self, slides, offset, count):
        ''' return menu-buttons for given slide selection '''

        # control chars are removed from labels
        control_chars = dict.fromkeys(range(32))

        return [
            bkt.ribbon.Button(
                label=slides.item(idx).Shapes.Title.Textframe.TextRange.
                text[:40].translate(control_chars)
                if slides.item(idx).Shapes.Title.Textframe.TextRange.text != ""
                else "slide" + str(idx),
                tag=slides.parent.FullName + "|" + str(idx),
                on_action=bkt.Callback(self.slide_action,
                                       context=True,
                                       current_control=True))
            for idx in range(offset, offset + count)
            if slides.item(idx).shapes.hastitle != False
        ]
Example #17
0
innenabstand_gruppe = bkt.ribbon.Group(
    label="Textfeld Innenabstand",
    image_mso='ObjectNudgeRight',
    children=[
        bkt.ribbon.Box(children=[
            bkt.ribbon.LabelControl(
                label=u'         \u200b'), inner_margin_top,
            bkt.ribbon.LabelControl(label=u'   \u200b'),
            bkt.ribbon.Button(
                id='textFrameMargin-zero',
                label=u"=\u202F0",
                screentip="Innenabstand auf Null",
                supertip=
                "Ändere in Innenabstand des Textfelds an allen Seiten auf Null.",
                on_action=bkt.Callback(InnerMargin.set_to_0))
        ]),
        bkt.ribbon.Box(children=[
            inner_margin_left,
            inner_margin_right,
        ]),
        bkt.ribbon.Box(children=[
            bkt.ribbon.LabelControl(
                label=u'         \u200b'), inner_margin_bottom,
            bkt.ribbon.LabelControl(label=u'   \u200b'),
            bkt.ribbon.ToggleButton(
                id='textFrameMargin-equal',
                label="==",
                screentip="Einheitlicher Innenabstand",
                supertip=
                "Bei Änderung des Textfeld-Innenabstand einer Seite wird der Innenabstand aller Seiten geändert.",
Example #18
0
blatt_gruppe = bkt.ribbon.Group(
    label="Blätter",
    image_mso="SheetInsert",
    auto_scale=True,
    children=[
        bkt.ribbon.SplitButton(
            size="large",
            children=[
                bkt.ribbon.Button(
                    id = 'toggle_hidden_sheets',
                    label="Blätter ein/ausblenden",
                    show_label=True,
                    image_mso='SheetInsert',
                    #image="toggle_hidden_sheets",
                    supertip="Alle ausgeblendeten Blätter zwischen ein- und ausblenden umschalten.\n\nSind keine Blätter ausgeblendet, werden die ausgewählten Blätter bzw. das aktuelle Blatt ausgeblendet.",
                    on_action=bkt.Callback(SheetsOps.toggle_hidden_sheets, sheets=True, selected_sheets=True),
                    get_enabled = bkt.CallbackTypes.get_enabled.dotnet_name,
                ),
                bkt.ribbon.Menu(children=[
                    bkt.ribbon.MenuSeparator(title="Ein-/Ausblenden"),
                    bkt.ribbon.Button(
                        id = 'toggle_hidden_sheets2',
                        label="Blätter ein/ausblenden",
                        show_label=True,
                        image_mso='SheetInsert',
                        #image="toggle_hidden_sheets",
                        supertip="Alle ausgeblendeten Blätter zwischen ein- und ausblenden umschalten.\n\nSind keine Blätter ausgeblendet, werden die ausgewählten Blätter bzw. das aktuelle Blatt ausgeblendet.",
                        on_action=bkt.Callback(SheetsOps.toggle_hidden_sheets, sheets=True, selected_sheets=True),
                        get_enabled = bkt.CallbackTypes.get_enabled.dotnet_name,
                    ),
                    bkt.ribbon.Button(
Example #19
0
 label="Selektion",
 image_mso="SelectCurrentRegion",
 #auto_scale=True,
 children=[
     bkt.ribbon.SplitButton(
         size='large',
         children=[
             bkt.ribbon.Button(
                 id='deselect',
                 label="Deselektieren…",
                 show_label=True,
                 image_mso='SelectCell',
                 supertip=
                 "Aktuelle Selektion um gewählten Bereich reduzieren (Komplement).",
                 on_action=bkt.Callback(SelectionOps.deselect,
                                        application=True,
                                        selection=True),
                 get_enabled=bkt.CallbackTypes.get_enabled.dotnet_name,
             ),
             bkt.ribbon.Menu(children=[
                 bkt.ribbon.Button(
                     id='deselect2',
                     label="Deselektieren…",
                     show_label=True,
                     image_mso='SelectCell',
                     supertip=
                     "Aktuelle Selektion um gewählten Bereich reduzieren (Komplement).",
                     on_action=bkt.Callback(SelectionOps.deselect,
                                            application=True,
                                            selection=True),
                     get_enabled=bkt.CallbackTypes.get_enabled.dotnet_name,
Example #20
0
def get_cell_color(cell):
    return [
        cell.Interior.ThemeColor,
        round(cell.Interior.TintAndShade, 2), cell.Interior.Color
    ]


testgruppe = bkt.ribbon.Group(
    label="TESTGRUPPE",
    children=[
        bkt.ribbon.ColorGallery(
            label="Testgallery",
            size="large",
            color_helper=xllib.ColorHelper,
            on_theme_color_change=bkt.Callback(set_cell_color, cell=True),
            on_rgb_color_change=bkt.Callback(set_cell_color2, cell=True),
            get_selected_color=bkt.Callback(get_cell_color, cell=True),
        )
    ])

bkt.excel.add_tab(
    bkt.ribbon.Tab(
        id='bkt_excel_demo',
        #id_q='nsBKT:excel_toolbox_advanced',
        label=u'BKT DEMO',
        insert_before_mso="TabHome",
        get_visible=bkt.Callback(lambda: True),
        children=[
            testgruppe,
        ]))
Example #21
0

import bkt



# ==============
# = SpinnerBox =
# ==============

width_changer = bkt.Callback(lambda shapes, value: [setattr(shp, 'width', value) for shp in shapes], bkt.CallbackTypes.on_change, shapes=True)
width_getter = bkt.Callback(lambda shapes: shapes[0].width, bkt.CallbackTypes.get_text, shapes=True)

spinner_group = bkt.ribbon.Group(
    label="Spinner-Control",
    children=[
        
        
        bkt.ribbon.SpinnerBox(
            label="simple spinner for shape width",
            size_string="##########",
            # get_text and on_change are callbacks for the editbox
            get_text = width_getter,
            on_change = width_changer,
            # increment/decrement-callbacks are passed to the buttons
            increment = bkt.Callback(lambda shapes: [setattr(shp, 'width', shapes[0].width+20) for shp in shapes], shapes=True),
            decrement = bkt.Callback(lambda shapes: [setattr(shp, 'width', shapes[0].width-20) for shp in shapes], shapes=True)
        ),
        
        
        bkt.ribbon.RoundingSpinnerBox(
Example #22
0
    def __init__(self, idtag="", **kwargs):
        postfix = ("-" if idtag else "") + idtag

        # if (bkt.config.use_keymouse_hooks or False):
        keymouse_hook_buttons = [
            bkt.ribbon.MenuSeparator(),
            bkt.ribbon.ToggleButton(id='key-mouse-hook-toggle' + postfix,
                                    label='Key-/Mouse-Hooks',
                                    get_pressed='GetMouseKeyHookActivated',
                                    on_action='ToggleMouseKeyHookActivation')
        ]

        # else:
        # keymouse_hook_buttons = []

        def open_folder():
            from os import startfile
            bkt_folder = os.path.normpath(
                os.path.join(os.path.dirname(os.path.realpath(__file__)), "..",
                             ".."))
            if os.path.isdir(bkt_folder):
                startfile(bkt_folder)

        def open_config():
            from os import startfile
            config_filename = os.path.join(
                os.path.dirname(os.path.realpath(__file__)), "..",
                "config.txt")
            if os.path.exists(config_filename):
                os.startfile(config_filename)

        super(SettingsMenu, self).__init__(
            id='bkt-settings' + postfix,
            image='bkt_logo',
            children=[
                bkt.ribbon.Button(id='settings-website' + postfix,
                                  label="Website: bkt-toolbox.de",
                                  image_mso="HyperlinkInsert",
                                  on_action=bkt.Callback(
                                      BKTInfos.open_website)),
                bkt.ribbon.Button(id='settings-version' + postfix,
                                  label=bkt.full_version,
                                  image_mso="Info",
                                  on_action=bkt.Callback(
                                      BKTInfos.show_debug_message,
                                      context=True)),
                bkt.ribbon.MenuSeparator(),
                bkt.ribbon.DynamicMenu(
                    label='Feature-Ordner',
                    image_mso='ModuleInsert',
                    get_content=bkt.Callback(
                        lambda: self.get_folder_menu(postfix))),
                #bkt.ribbon.MenuSeparator(),
                bkt.ribbon.Button(id='settings-reload-addin' + postfix,
                                  label="Addin neu laden",
                                  image_mso="AccessRefreshAllLists",
                                  on_action=bkt.Callback(
                                      BKTReload.reload_bkt)),
                bkt.ribbon.Button(id='settings-invalidate' + postfix,
                                  label="Ribbon aktualisieren",
                                  image_mso="AccessRefreshAllLists",
                                  on_action=bkt.Callback(
                                      BKTReload.invalidate)),
                # FIXME: idQ-Referenz funktioniert nicht, control wird nicht angezeigt
                # bkt.ribbon.Button(
                #     #id='reload-addin',
                #     idQ='nsBKT:ppt__043a3c86-6596-4e3d-9d92-727b870cfbf7',
                #     label="Addin neu laden",
                #     image_mso="Refresh",
                #     visible=True
                #     #on_action=bkt.Callback(settings. )
                # ),
                #bkt.ribbon.MenuSeparator(),
                #bkt.ribbon.Button(label='Ctrl=kleine Schritte'),
                bkt.ribbon.MenuSeparator(),
                bkt.ribbon.Button(id='settings-open-folder' + postfix,
                                  label="Öffne BKT-Ordner",
                                  image_mso="Folder",
                                  on_action=bkt.Callback(open_folder)),
                bkt.ribbon.Button(id='settings-open-config' + postfix,
                                  label="Öffne config.txt",
                                  image_mso="NewNotepadTool",
                                  on_action=bkt.Callback(open_config)),
            ] + keymouse_hook_buttons,
            **kwargs)
Example #23
0
 def info_delete_button_for_folder(self, folder, postfix):
     return bkt.ribbon.Button(
         label=folder,
         image_mso='DeleteThisFolder',
         on_action=bkt.Callback(
             lambda context: FolderSetup.delete_folder(context, folder)))
Example #24
0
# -*- coding: utf-8 -*-

import bkt
import bkt.taskpane
import bkt.helpers
#import logging

# ====================
# = Define callbacks =
# ====================

action_callback = bkt.Callback(
    lambda current_control: bkt.helpers.message('control clicked: id=%s' %
                                                (current_control.id)),
    current_control=True)

action_callback_header = bkt.Callback(
    lambda current_control: bkt.helpers.message(
        'control clicked: header=%s id=%s' %
        (current_control['header'], current_control.id)),
    current_control=True)

action_indexed_callback_header = bkt.Callback(
    lambda selected_item, index, current_control: bkt.helpers.message(
        'control clicked: header=%s,\nid=%s\n\nindex=%s, selected_item_id=%s' %
        (current_control['header'], current_control.id, index, selected_item)),
    current_control=True)

toggle_callback = bkt.Callback(
    lambda pressed, current_control: bkt.helpers.message(
        'toggle-button clicked: id=%s\n\npressed-state after click=%s' %
Example #25
0
import bkt

# define some default callbacks for the demo-tab
action_callback = bkt.Callback(
    lambda current_control: bkt.helpers.message('current_control clicked: label=%s,\nid=%s' % (current_control['label'], current_control['id'])),
    current_control=True)



backstage_control1 = bkt.ribbon.Tab(
        label="BKT Demo 1",
        title="BKT Demo 1 of backstage area",
        columnWidthPercent="30",
        insertAfterMso="TabInfo",
        children=[
            bkt.ribbon.FirstColumn(children=[
                bkt.ribbon.Group(label="Test Group 1", children=[
                    bkt.ribbon.PrimaryItem(children=[
                        bkt.ribbon.Menu(
                            label="Primary Item Menu",
                            image_mso="HappyFace",
                            children=[
                                bkt.ribbon.MenuGroup(
                                    label="Menu group large",
                                    item_size="large",
                                    children=[
                                        bkt.ribbon.Button(
                                            label="Test",
                                            description="Lorem ipsum",
                                            image_mso="HappyFace",
                                            on_action=action_callback,
Example #26
0
    logging.debug("show fluent dialog")
    from dialogs import fluentdialog
    fluentdialog.show(
        System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle)


def show_mahappsdialog():
    logging.debug("show Mahapps.Metro dialog")
    from dialogs import mahapps_dialog
    mahapps_dialog.show(
        System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle)


bkt.powerpoint.add_tab(
    bkt.ribbon.Tab(label="Demo WPF dialog",
                   children=[
                       bkt.ribbon.Group(
                           label="WPF dialog",
                           children=[
                               bkt.ribbon.Button(
                                   label="WPF dialog",
                                   on_action=bkt.Callback(show_dialog)),
                               bkt.ribbon.Button(
                                   label="WPF FluentRibbon-dialog",
                                   on_action=bkt.Callback(show_fluentdialog)),
                               bkt.ribbon.Button(
                                   label="MahApps.Metro dialog",
                                   on_action=bkt.Callback(show_mahappsdialog))
                           ]),
                   ]))
Example #27
0
                                     children=[
                                         Adjustments.adjustment_edit_box(prop)
                                         for prop in Adjustments.properties
                                     ])

test_gruppe = bkt.ribbon.Group(
    label="Experimental",
    children=[
        bkt.ribbon.Button(
            id='bounding_box',
            label="BoundingBox",
            show_label=True,
            image_mso='HappyFace',
            screentip="Draw the bounding box",
            on_action=bkt.Callback(TestVisio.bounding_box,
                                   page=True,
                                   shape=True),
            get_enabled=bkt.CallbackTypes.get_enabled.dotnet_name),
        bkt.ribbon.Button(
            id='locpin_dis',
            label="Locpin Distance",
            show_label=True,
            image_mso='HappyFace',
            screentip="Calculate LocPin distance for rotated shapes",
            on_action=bkt.Callback(TestVisio.locpin_dis, shape=True),
            get_enabled=bkt.CallbackTypes.get_enabled.dotnet_name),
        bkt.ribbon.Button(
            id='clipboard_data',
            label="Clipboard Analysis",
            show_label=True,
            image_mso='HappyFace',
Example #28
0
calculator = Calc()

rechner_gruppe = bkt.ribbon.Group(
    label="Mini-Rechner",
    image_mso="Calculator",
    children=[
        bkt.ribbon.Button(
            id='run_eval',
            label="Neuer Mini-Rechner",
            show_label=True,
            size='large',
            image_mso='Calculator',
            screentip=
            "Zeigt einen kleines Tool zum Auswerten von Formeln und Berechnungen an an",
            on_action=bkt.Callback(calculator.show_calc, context=True),
            get_enabled=bkt.CallbackTypes.get_enabled.dotnet_name,
        ),
    ])

bkt.excel.add_tab(
    bkt.ribbon.Tab(
        id='bkt_excel_toolbox_advanced',
        #id_q='nsBKT:excel_toolbox_advanced',
        label=u'Toolbox 3/3 BETA',
        insert_before_mso="TabHome",
        get_visible=bkt.Callback(lambda: True),
        children=[
            rechner_gruppe,
        ]),
    True)
Example #29
0
            addin.Connect = True
        except Exception, e:
            bkt.console.show_message(str(e))


dev_group = bkt.ribbon.Group(
    id="bkt_dev_group",
    label="BKT Dev Options",
    image_mso="AccessRefreshAllLists",
    children=[
        bkt.ribbon.Button(
            label="Console",
            size="large",
            image_mso="WatchWindow",
            on_action=bkt.Callback(DevGroup.show_console,
                                   context=True,
                                   transaction=False),
        ),
        bkt.ribbon.Button(
            label="Show Config",
            size="large",
            image_mso="Info",
            on_action=bkt.Callback(DevGroup.show_config,
                                   context=True,
                                   transaction=False),
        ),
        bkt.ribbon.Button(
            label="Show Settings",
            size="large",
            image_mso="Info",
            on_action=bkt.Callback(DevGroup.show_settings,
Example #30
0
        bkt.settings["ppt_notes.color_theme"] = cls.color_theme
        bkt.settings["ppt_notes.color_brightness"] = cls.color_brightness

    @classmethod
    def get_color(cls):
        return [cls.color_theme, cls.color_brightness, cls.color_rgb]


notes_gruppe = bkt.ribbon.Group(
    label='Notes',
    image='noteAdd',
    children=[
        bkt.ribbon.Button(label='Notizen (+)',
                          screentip='Notiz hinzufügen',
                          image='noteAdd',
                          on_action=bkt.Callback(EditModeShapes.addNote)),
        bkt.ribbon.Button(label='Notizen (I/O)',
                          screentip='Notizen auf Folie ein-/ausblenden',
                          image='noteToggle',
                          on_action=bkt.Callback(
                              EditModeShapes.toogleNotesOnSlide)),
        bkt.ribbon.Button(label='Notizen (-)',
                          screentip='Notizen auf Folie löschen',
                          image='noteRemove',
                          on_action=bkt.Callback(
                              EditModeShapes.removeNotesOnSlide)),
        bkt.ribbon.Button(label='Alle Notizen (I/O)',
                          screentip='Alle Notizen ein-/ausblenden',
                          image='noteToggleAll',
                          on_action=bkt.Callback(
                              EditModeShapes.toggleNotesOnAllSlides)),