2022-12-30 Fred Gleason <fredg@paravelsystems.com>

* Added a 'RDLIBRARY.IS_SINGLETON' field to the database.
	* Added a 'RDLOGEDIT.IS_SINGLETON' field to the database.
	* Incremented the database version to 367.
	* Added 'RDLibraryConf::isSingleton()' and
	'RDLibraryConf::setIsSingleton()' methods.
	* Added 'RDLogeditConf::isSingleton()' and
	'RDLogeditConf::setIsSingleton()' methods.
	* Modified rdcartslots(1), rdcastmanager(1), rdcatch(1),
	rdlogmanager(1) and rdpanel(1) to allow only a single instance to
	run at a time.
	* Modified rdlibrary(1) and rdlogedit(1) to conditionally allow
	only a single instance to run at a time.
	* Added an rdsinglestart(1) utility.
	* Added a 'wmctrl' dependency to the 'rivendell' RPM package.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2022-12-30 15:41:22 -05:00
parent a1f2fa577f
commit 12bdbfc948
73 changed files with 759 additions and 146 deletions

View File

@@ -47,6 +47,7 @@ all-local: rdairplay.1\
rdrender.1\
rmlsend.1\
rdservice.8\
rdsinglestart.1\
rdsoftkeys.1
man_MANS = rdairplay.1\
@@ -63,6 +64,7 @@ man_MANS = rdairplay.1\
rdrender.1\
rmlsend.1\
rdservice.8\
rdsinglestart.1\
rdsoftkeys.1
EXTRA_DIST = exitcodes.xml\
@@ -94,6 +96,8 @@ EXTRA_DIST = exitcodes.xml\
rmlsend.xml\
rdservice.8\
rdservice.xml\
rdsinglestart.1\
rdsinglestart.xml\
rdsoftkeys.1\
rdsoftkeys.xml

View File

@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<refentry id="stdin" xmlns="http://docbook.org/ns/docbook" version="5.0">
<!--
Header
-->
<refmeta>
<refentrytitle>rdsinglestart</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class='source'>December 2022</refmiscinfo>
<refmiscinfo class='manual'>Linux Audio Manual</refmiscinfo>
</refmeta>
<refnamediv>
<refname>rdsinglestart</refname>
<refpurpose>
Start an X11 client program so as to ensure that only a
single instance is run
</refpurpose>
</refnamediv>
<info>
<author>
<personname>
<firstname>Fred</firstname>
<surname>Gleason</surname>
<email>fredg@paravelsystems.com</email>
</personname>
<contrib>Application Author</contrib>
</author>
</info>
<!--
Body
-->
<refsynopsisdiv id='synopsis'>
<cmdsynopsis>
<command>rdsinglestart</command>
<arg choice='req'><replaceable>cmd-name</replaceable></arg>
<arg choice='opt'><replaceable>cmd-opt1</replaceable></arg>
<arg choice='opt'><replaceable>..</replaceable></arg>
<sbr/>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1 id='description'><title>Description</title>
<para>
<command>rdsinglestart</command><manvolnum>1</manvolnum> is used to start
an X11 client program so as to ensure that only a single instance is run.
When invoked, <command>rdsinglestart</command><manvolnum>1</manvolnum>
will first look for existing windows whose title begins with the
string specified in <replaceable>cmd-name</replaceable> (case-insensitive).
If found, such windows will be raised, following which
<command>rdsinglestart</command><manvolnum>1</manvolnum> will exit.
If no matching windows are found,
<command>rdsinglestart</command><manvolnum>1</manvolnum>
will attempt to start <replaceable>cmd-name</replaceable>, using any
added options specified, following which it will exit.
</para>
</refsect1>
<refsect1 id='notes'><title>Notes</title>
<para>
<command>rdsinglestart</command><manvolnum>1</manvolnum> uses
<command>wmctrl</command><manvolnum>1</manvolnum> to query and interact
with the X11 windowing system. As such, it will work only with X11
client programs. Attempts to use it with non-X11 programs will have
undefined results.
</para>
</refsect1>
<refsect1 id='see_also'><title>See Also</title>
<para>
<citerefentry>
<refentrytitle>wmctrl</refentrytitle><manvolnum>1</manvolnum>
</citerefentry>
</para>
</refsect1>
</refentry>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 50 KiB

View File

@@ -1024,7 +1024,7 @@
<para>
<mediaobject>
<imageobject>
<imagedata align="center" fileref="rdadmin.configure_rdlibrary_dialog.png" width="87mm" depth="140mm"/>
<imagedata align="center" fileref="rdadmin.configure_rdlibrary_dialog.png" width="87mm"/>
</imageobject>
<caption>
<para>The Configure RDLibrary Dialog</para>
@@ -1177,6 +1177,12 @@
<computeroutput>Show Only First 100 Matches</computeroutput> box
to be ticked when starting a new instance of rdlibrary(1).
</para>
<para>
The <computeroutput>Allow Multiple Instances</computeroutput>, if set
to <userinput>Yes</userinput>, will allow multiple, independent
instances of <command>rdlibrary</command><manvolnum>1</manvolnum> to
be run simultaneously.
</para>
<para>
The <computeroutput>Channels:</computeroutput> dropdown sets the
default value of the <computeroutput>Channels:</computeroutput>
@@ -1658,7 +1664,7 @@
<para>
<mediaobject>
<imageobject>
<imagedata align="center" fileref="rdadmin.configure_rdlogedit_dialog.png" width="67mm" depth="89mm"/>
<imagedata align="center" fileref="rdadmin.configure_rdlogedit_dialog.png" width="67mm"/>
</imageobject>
<caption>
<para>The Configure RDLogEdit Dialog</para>
@@ -1733,6 +1739,12 @@
the transition type to use by default when adding a new log
event.
</para>
<para>
The <computeroutput>Allow Multiple Instances</computeroutput>, if set
to <userinput>Yes</userinput>, will allow multiple, independent
instances of <command>rdlogedit</command><manvolnum>1</manvolnum> to
be run simultaneously.
</para>
</sect2>
<sect2 xml:id="sect.rdadmin.manage_hosts.configuring_rdcartslots">
<title>Configuring RDCartSlots</title>

View File

@@ -31,3 +31,4 @@ ENABLE_EDITOR enum('N','Y')
SRC_CONVERTER int(11)
LIMIT_SEARCH int(11) 0 = No, 1 = Yes, 2 = Previous
SEARCH_LIMITED enum('N','Y')
IS_SINGLETON enum('N','Y')

View File

@@ -24,3 +24,4 @@ REC_STOP_CART int(10) unsigned
TRIM_THRESHOLD int(11)
RIPPER_LEVEL int(11)
DEFAULT_TRANS_TYPE int(11)
IS_SINGLETON enum('N','Y')