I have a window called ‘SideBar’ and on it is a Tab Strip Component.
-
How do I add a row to the Tab Data through scripting?
-
How do I set the Tab data column ‘Hidden’ to true or false through scritping?
Thank you for any help.
I have a window called ‘SideBar’ and on it is a Tab Strip Component.
How do I add a row to the Tab Data through scripting?
How do I set the Tab data column ‘Hidden’ to true or false through scritping?
Thank you for any help.
After some further investigation I answered my own question.
row = ["Main/Overview/_Navigation", "Overview2", True, False, "F48E1C", "Builtin/icons/24/home.png", 4, 3, "000000", "808080", "font(Dialog,bold,24)", "EEECE8", "EEECE8", "Builtin/icons/24/home.png", 4, 3, "000000", "EEECE8", "font(Dialog,bold,24)", "EEECE8", "AAAAAA", True, True, "Overview"]
tab = event.source.parent.getComponent('Tabs')
tab.tabData = system.dataset.addRow(tab.tabData, 0, row)
tab.tabData = system.dataset.setValue(tab.tabData, 5, "HIDDEN", True)
There are 24 columns on the data set that need filled out.
NAME STRING Main/Overview/_Navigation
DISPLAY_NAME STRING Overview
ENABLED BOOLEAN TRUE
HIDDEN BOOLEAN FALSE
HOVER_COLOR COLOR F48E1C
SELECTED_IMAGE_PATH STRING Builtin/icons/24/home.png
SELECTED_IMAGE_HORIZONTAL_ALIGNMENT INTEGER 4
SELECTED_IMAGE_VERTICAL_ALIGNMENT INTEGER 3
SELECTED_FOREGROUND_COLOR COLOR 000000
SELECTED_BACKGROUND_COLOR COLOR 808080
SELECTED_FONT STRING font(Dialog,bold,24)
SELECTED_GRADIENT_START_COLOR COLOR EEECE8
SELECTED_GRADIENT_END_COLOR COLOR EEECE8
UNSELECTED_IMAGE_PATH STRING Builtin/icons/24/home.png
UNSELECTED_IMAGE_HORIZONTAL_ALIGNMENT INTEGER 4
UNSELECTED_IMAGE_VERTICAL_ALIGNMENT INTEGER 3
UNSELECTED_FOREGROUND_COLOR COLOR 000000
UNSELECTED_BACKGROUND_COLOR COLOR EEECE8
UNSELECTED_FONT STRING font(Dialog,bold,24)
UNSELECTED_GRADIENT_START_COLOR COLOR EEECE8
UNSELECTED_GRADIENT_END_COLOR COLOR AAAAAA
USE_SELECTED_GRADIENT BOOLEAN TRUE
USE_UNSELECTED_GRADIENT BOOLEAN TRUE
MOUSEOVER_TEXT STRING Overview
The 4 lines of code defines the new row, it obtains the component which ive called ‘Tabs’. The code then adds a new row 0 (all other rows are shifted down). Finally the code hides the sixth row (which is after rows 0, 1, 2, 3, and 4.
Nicely done!
One suggestion though; create a temporary dataset variable initialized with the tab’s dataset, make all neccesary changes to the temp dataset and then set the tab’s dataset property. This avoids updating the tab strip more than once.
row = ["Main/Overview/_Navigation", "Overview2", True, False, "F48E1C", "Builtin/icons/24/home.png", 4, 3, "000000", "808080", "font(Dialog,bold,24)", "EEECE8", "EEECE8", "Builtin/icons/24/home.png", 4, 3, "000000", "EEECE8", "font(Dialog,bold,24)", "EEECE8", "AAAAAA", True, True, "Overview"]
tab = event.source.parent.getComponent('Tabs')
dsEdit = tab.tabData
dsEdit = system.dataset.addRow(dsEdit, 0, row)
dsEdit = system.dataset.setValue(dsEdit 5, "HIDDEN", True)
tab.tabData = dsEdit
Thanks for the input. I will definitely do it this way.
(One minor thing: you missed a coma in your code.)
Thanks again!