[plug] Display control

David Godfrey info at sbts.com.au
Sun Jan 4 03:53:20 UTC 2015


Sorry for the late reply, I've been a little busy and not checking my 
email....

How about a simple bash script and one of many tiling window managers?

In fact, you don't even really need a window manager.....
bare X is enough if you don't need to change the size or position of a 
window after it is created.

If you use xdotool, or similar (there are a few other tools that would 
allow you to do this)
you can resize a window from within the bash script.
NOTE: in this case (using xdotool) some programs may NOT resize and 
reposition without a windowmanager of some sort.

<pseudo code>
     while true; do
         getnumber of files to be displayed.
         use lookup table (array) to get position and size for each 
desired window.

         kill all windows.....
         for each file do
             case file type
                 .jpg)   edisplay --geometry XxY+X+Y filename
                 .odf)  oowriter --geometry XxY+X+Y filename
                 .pdf)   gv --geometry XxY+X+Y filename
         done
         sleep 60
     done
</pseudo code>

Of course, you don't really want to kill every window before, 
redisplaying it if the file hasn't changed, or even when the number of 
files change (ie: number of windows).
Instead you could use xdotool to resize existing stuff then add the new one.
Even more radical would be to create each "new" screen layout minimized, 
then bring up over the top of the existing windows.
eventually closing any old windows.

Done in bash this is a simple project that is easily maintained and 
extended to any file type that linux supports, and would even work with 
multiple monitors.

I have built similar systems that run 10+ monitors at once from a single 
low end motherboard.
Your imagination is the only limit really.

Regards
David G


On 22/12/14 18:52, Kevin Shackleton wrote:
> Hi everyone, hope you're all shaping up for a great Christmas, break 
> or no break.
>
> Here's a fairly abstract problem.  I would demonstrate a solution on 
> e.g. a Raspberry Pi, and transition to some tougher industrial PC.  It 
> could be described as a "business situational awareness display"
>
> This PC is to be set up in a central area of a business, driving a 
> fairly good display.  It will share a folder (or tree if you like).
>
> Other PCs can feed various files onto this central display PC's shared 
> folders.  The PC then draws these appropriately, switching from 
> single-pane to 2-pane, 4 pane, maybe 6 or 8 pane to accommodate 
> displaying the data.  The contributor PCs would delete the data to 
> cancel their display.
>
> In the simplest form, the data would be images (screen shots maybe).  
> More sophistication could include:
>  - some consistency in which pane each contributor is displayed.
>  - maybe a rolling sequence could be used instead of, or as well as, 
> multiple panes.
>  - handling other file formats including Office formats.
>  - labelling each panel with some text identifying the source.
>  - probably lots of other things I have not thought about
>
> I don't really want to get into the capabilities of X, because the 
> contributors will be dumb to X (i.e. Windows)
>
> This sounds as though it's been done before.  Any clues as to ways to 
> go about it?
>
> Thanks,
>
> Kevin.
>
>
> _______________________________________________
> PLUG discussion list: plug at plug.org.au
> http://lists.plug.org.au/mailman/listinfo/plug
> Committee e-mail: committee at plug.org.au
> PLUG Membership: http://www.plug.org.au/membership

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.plug.org.au/pipermail/plug/attachments/20150104/d8bf07ca/attachment.html>


More information about the plug mailing list