%global _empty_manifest_terminate_build 0 Name: python-phoebusgen Version: 2.6.1 Release: 1 Summary: Control screen generator for Phoebus License: GNU General Public License v2 (GPLv2) URL: https://github.com/tynanford/phoebusgen Source0: https://mirrors.aliyun.com/pypi/web/packages/d4/3a/b29d113f7e757f6dce5160958d69ad237d1914968a6b2f46551d82b48c41/phoebusgen-2.6.1.tar.gz BuildArch: noarch %description # Python Module to Generate Phoebus Control Screens [![PyPI](https://img.shields.io/pypi/v/phoebusgen)](https://pypi.org/project/phoebusgen/) [![Python unittest Status](https://github.com/als-epics/phoebusgen/workflows/Python%20unittest/badge.svg)](https://github.com/als-epics/phoebusgen/actions) [![codecov](https://codecov.io/gh/als-epics/phoebusgen/branch/master/graph/badge.svg?token=Ue2BauI8IW)](https://codecov.io/gh/als-epics/phoebusgen) [![Build Docs](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml) [![Upload Python Package](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e16f9c35657f47fcb31347fbd4f92367)](https://www.codacy.com/gh/als-epics/phoebusgen/dashboard?utm_source=github.com&utm_medium=referral&utm_content=als-epics/phoebusgen&utm_campaign=Badge_Grade) Phoebus is the next generation of Control System Studio, a graphical platform for EPICS control systems. https://github.com/ControlSystemStudio/phoebus This module aims to provide a way to generate Phoebus xml through Python. See examples [here](examples). API docs here: [https://als-epics.github.io/phoebusgen](https://als-epics.github.io/phoebusgen/) Suggestions, comments, and pull requests are welcome. ## Requirements - Python >= 3.5 ## Install Pip Package: [phoebusgen](https://pypi.org/project/phoebusgen/) ```shell pip install phoebusgen ``` ## Intro Phoebus widgets and a Phoebus screen are all Python objects. Widgets can be added to a screen or even to other widgets (for things like Group or Tab widgets). ```pycon >>> import phoebusgen >>> text_update_widget = phoebusgen.widget.TextUpdate('test widget', 'TEST:PV', 10, 20, 20, 50) >>> text_update_widget.predefined_foreground_color(phoebusgen.colors.OK) >>> text_update_widget.font_style_bold() >>> print(text_update_widget) test widget 10 20 20 50 TEST:PV ``` ## Modules ### phoebusgen.widget Python API to directly create Phoebus widgets. All standard Phoebus widgets are available, but some (3) are not fully feature complete. [Widgets Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.widget.html#module-phoebusgen.widget.widgets) #### Incomplete Widgets - Image - Strip Chart - X/Y Plot Example - ```text_update_xml = phoebusgen.widget.TextUpdate(widget_name, pv_name, x, y, width, height)``` ### phoebusgen.screen Python object to represent a Phoebus screen. Widgets can be added to the screen object and the screen object can be written to a .bob file to be opened in Phoebus. [Screen Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.screen.html#module-phoebusgen.screen.screen) Example ```pycon >>> import phoebusgen.screen >>> import phoebusgen.widget >>> my_screen = phoebusgen.screen.Screen("my screen") >>> print(my_screen) my screen >>> my_widget = phoebusgen.widget.TextUpdate("test", "test:PV", 10, 10 ,10 ,10) >>> my_screen.add_widget(my_widget) >>> print(my_screen) my screen test 10 10 10 10 test:PV ``` ## Site specific color and font definitions Place a custon color.def or font.def in ~/.phoebusgen/ to force phoebusgen.colors or phoebusgen.fonts to reflect your site's custom definitions. ```python my_widget.predefined_font(phoebusgen.fonts.Header1) ``` ```python my_widget.predefined_color(phoebusgen.colors.OK) ``` %package -n python3-phoebusgen Summary: Control screen generator for Phoebus Provides: python-phoebusgen BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-phoebusgen # Python Module to Generate Phoebus Control Screens [![PyPI](https://img.shields.io/pypi/v/phoebusgen)](https://pypi.org/project/phoebusgen/) [![Python unittest Status](https://github.com/als-epics/phoebusgen/workflows/Python%20unittest/badge.svg)](https://github.com/als-epics/phoebusgen/actions) [![codecov](https://codecov.io/gh/als-epics/phoebusgen/branch/master/graph/badge.svg?token=Ue2BauI8IW)](https://codecov.io/gh/als-epics/phoebusgen) [![Build Docs](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml) [![Upload Python Package](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e16f9c35657f47fcb31347fbd4f92367)](https://www.codacy.com/gh/als-epics/phoebusgen/dashboard?utm_source=github.com&utm_medium=referral&utm_content=als-epics/phoebusgen&utm_campaign=Badge_Grade) Phoebus is the next generation of Control System Studio, a graphical platform for EPICS control systems. https://github.com/ControlSystemStudio/phoebus This module aims to provide a way to generate Phoebus xml through Python. See examples [here](examples). API docs here: [https://als-epics.github.io/phoebusgen](https://als-epics.github.io/phoebusgen/) Suggestions, comments, and pull requests are welcome. ## Requirements - Python >= 3.5 ## Install Pip Package: [phoebusgen](https://pypi.org/project/phoebusgen/) ```shell pip install phoebusgen ``` ## Intro Phoebus widgets and a Phoebus screen are all Python objects. Widgets can be added to a screen or even to other widgets (for things like Group or Tab widgets). ```pycon >>> import phoebusgen >>> text_update_widget = phoebusgen.widget.TextUpdate('test widget', 'TEST:PV', 10, 20, 20, 50) >>> text_update_widget.predefined_foreground_color(phoebusgen.colors.OK) >>> text_update_widget.font_style_bold() >>> print(text_update_widget) test widget 10 20 20 50 TEST:PV ``` ## Modules ### phoebusgen.widget Python API to directly create Phoebus widgets. All standard Phoebus widgets are available, but some (3) are not fully feature complete. [Widgets Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.widget.html#module-phoebusgen.widget.widgets) #### Incomplete Widgets - Image - Strip Chart - X/Y Plot Example - ```text_update_xml = phoebusgen.widget.TextUpdate(widget_name, pv_name, x, y, width, height)``` ### phoebusgen.screen Python object to represent a Phoebus screen. Widgets can be added to the screen object and the screen object can be written to a .bob file to be opened in Phoebus. [Screen Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.screen.html#module-phoebusgen.screen.screen) Example ```pycon >>> import phoebusgen.screen >>> import phoebusgen.widget >>> my_screen = phoebusgen.screen.Screen("my screen") >>> print(my_screen) my screen >>> my_widget = phoebusgen.widget.TextUpdate("test", "test:PV", 10, 10 ,10 ,10) >>> my_screen.add_widget(my_widget) >>> print(my_screen) my screen test 10 10 10 10 test:PV ``` ## Site specific color and font definitions Place a custon color.def or font.def in ~/.phoebusgen/ to force phoebusgen.colors or phoebusgen.fonts to reflect your site's custom definitions. ```python my_widget.predefined_font(phoebusgen.fonts.Header1) ``` ```python my_widget.predefined_color(phoebusgen.colors.OK) ``` %package help Summary: Development documents and examples for phoebusgen Provides: python3-phoebusgen-doc %description help # Python Module to Generate Phoebus Control Screens [![PyPI](https://img.shields.io/pypi/v/phoebusgen)](https://pypi.org/project/phoebusgen/) [![Python unittest Status](https://github.com/als-epics/phoebusgen/workflows/Python%20unittest/badge.svg)](https://github.com/als-epics/phoebusgen/actions) [![codecov](https://codecov.io/gh/als-epics/phoebusgen/branch/master/graph/badge.svg?token=Ue2BauI8IW)](https://codecov.io/gh/als-epics/phoebusgen) [![Build Docs](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/build-docs.yml) [![Upload Python Package](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml/badge.svg)](https://github.com/als-epics/phoebusgen/actions/workflows/python-publish.yml) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e16f9c35657f47fcb31347fbd4f92367)](https://www.codacy.com/gh/als-epics/phoebusgen/dashboard?utm_source=github.com&utm_medium=referral&utm_content=als-epics/phoebusgen&utm_campaign=Badge_Grade) Phoebus is the next generation of Control System Studio, a graphical platform for EPICS control systems. https://github.com/ControlSystemStudio/phoebus This module aims to provide a way to generate Phoebus xml through Python. See examples [here](examples). API docs here: [https://als-epics.github.io/phoebusgen](https://als-epics.github.io/phoebusgen/) Suggestions, comments, and pull requests are welcome. ## Requirements - Python >= 3.5 ## Install Pip Package: [phoebusgen](https://pypi.org/project/phoebusgen/) ```shell pip install phoebusgen ``` ## Intro Phoebus widgets and a Phoebus screen are all Python objects. Widgets can be added to a screen or even to other widgets (for things like Group or Tab widgets). ```pycon >>> import phoebusgen >>> text_update_widget = phoebusgen.widget.TextUpdate('test widget', 'TEST:PV', 10, 20, 20, 50) >>> text_update_widget.predefined_foreground_color(phoebusgen.colors.OK) >>> text_update_widget.font_style_bold() >>> print(text_update_widget) test widget 10 20 20 50 TEST:PV ``` ## Modules ### phoebusgen.widget Python API to directly create Phoebus widgets. All standard Phoebus widgets are available, but some (3) are not fully feature complete. [Widgets Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.widget.html#module-phoebusgen.widget.widgets) #### Incomplete Widgets - Image - Strip Chart - X/Y Plot Example - ```text_update_xml = phoebusgen.widget.TextUpdate(widget_name, pv_name, x, y, width, height)``` ### phoebusgen.screen Python object to represent a Phoebus screen. Widgets can be added to the screen object and the screen object can be written to a .bob file to be opened in Phoebus. [Screen Docs](https://als-epics.github.io/phoebusgen/source/phoebusgen.screen.html#module-phoebusgen.screen.screen) Example ```pycon >>> import phoebusgen.screen >>> import phoebusgen.widget >>> my_screen = phoebusgen.screen.Screen("my screen") >>> print(my_screen) my screen >>> my_widget = phoebusgen.widget.TextUpdate("test", "test:PV", 10, 10 ,10 ,10) >>> my_screen.add_widget(my_widget) >>> print(my_screen) my screen test 10 10 10 10 test:PV ``` ## Site specific color and font definitions Place a custon color.def or font.def in ~/.phoebusgen/ to force phoebusgen.colors or phoebusgen.fonts to reflect your site's custom definitions. ```python my_widget.predefined_font(phoebusgen.fonts.Header1) ``` ```python my_widget.predefined_color(phoebusgen.colors.OK) ``` %prep %autosetup -n phoebusgen-2.6.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-phoebusgen -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Jun 20 2023 Python_Bot - 2.6.1-1 - Package Spec generated