Welcome to the most active Linux Forum on the web.
Go Back > Forums > Linux Forums > Linux - Software
User Name
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.


  Search this Thread
Old 06-07-2012, 10:35 AM   #1
sumeet inani
Registered: Oct 2008
Posts: 905
Blog Entries: 26

Rep: Reputation: 49
searching for software that makes flow chart

hi ,
I want to make a map in which the a node can be expanded to see hard words & when I mouse over them I should be able to see exact meaning .
For example

emotion on clicking shows sad , happy etc.
sad will open up to show dejected , morose , morbid etc.
& mousing over leaf node i.e dejected will show unhappy & disappointed.
Old 06-07-2012, 12:05 PM   #2
Senior Member
Registered: Jul 2006
Location: Kolkata, India
Distribution: Debian 64-bit GNU/Linux, Kubuntu64, Fedora QA, Slackware,
Posts: 2,766

Rep: Reputation: Disabled
A very large number of free s/w can do that.
I would use GNU/R (but that will involve some coding).

ROCs is a wysiwg + scripting tool
Old 06-07-2012, 01:01 PM   #3
Senior Member
Registered: Jul 2009
Distribution: Debian Squeeze
Posts: 1,267

Rep: Reputation: 32
your best bets would either be Libre office or Openoffice writer, google search how to make flowcharts with it (should be easy to find)
Old 06-08-2012, 11:41 PM   #4
sumeet inani
Registered: Oct 2008
Posts: 905

Original Poster
Blog Entries: 26

Rep: Reputation: 49
As mentioned in my first post I was looking for software that allows one to make a GUI tree with leaf nodes showing details on hovering (like alt tag of html image).

Maybe the title of post was slightly misleading .
Old 06-09-2012, 12:37 AM   #5
Senior Member
Registered: Feb 2005
Location: San Antonio, Texas
Distribution: Gentoo Hardened using OpenRC not Systemd
Posts: 1,458

Rep: Reputation: 85

Last edited by fakie_flip; 06-09-2012 at 12:39 AM.
Old 06-21-2012, 09:30 PM   #6
sumeet inani
Registered: Oct 2008
Posts: 905

Original Poster
Blog Entries: 26

Rep: Reputation: 49
thank you

Finally I found an html file which can be edited easily & cross compatible on all operating system.
Here it is
Directory structure
/media/FreeAgent GoFlex Drive/tree html/
|-- closed.GIF
|-- graph.html
|-- list.GIF
|-- open.GIF
|-- simpletree.css
`-- simpletreemenu.js
.treeview ul{ /*CSS for Simple Tree Menu*/ margin: 0; padding: 0; } .treeview li{ /*Style for LI elements in general (excludes an LI that contains sub lists)*/ background: white url(list.gif) no-repeat left center; list-style-type: none; padding-left: 22px; margin-bottom: 3px; } .treeview li.submenu{ /* Style for LI that contains sub lists (other ULs). */ background: white url(closed.gif) no-repeat left 1px; cursor: hand !important; cursor: pointer !important; } .treeview li.submenu ul{ /*Style for ULs that are children of LIs (submenu) */ display: none; /*Hide them by default. Don't delete. */ } .treeview .submenu ul li{ /*Style for LIs of ULs that are children of LIs (submenu) */ cursor: default; }
var persisteduls=new Object() var ddtreemenu=new Object() ddtreemenu.closefolder="closed.gif" //set image path to "closed" folder image ddtreemenu.openfolder="open.gif" //set image path to "open" folder image //////////No need to edit beyond here/////////////////////////// ddtreemenu.createTree=function(treeid, enablepersist, persistdays){ var ultags=document.getElementById(treeid).getElementsByTagName("ul") if (typeof persisteduls[treeid]=="undefined") persisteduls[treeid]=(enablepersist==true && ddtreemenu.getCookie(treeid)!="")? ddtreemenu.getCookie(treeid).split(",") : "" for (var i=0; i<ultags.length; i++) ddtreemenu.buildSubTree(treeid, ultags[i], i) if (enablepersist==true){ //if enable persist feature var durationdays=(typeof persistdays=="undefined")? 1 : parseInt(persistdays) ddtreemenu.dotask(window, function(){ddtreemenu.rememberstate(treeid, durationdays)}, "unload") //save opened UL indexes on body unload } } ddtreemenu.buildSubTree=function(treeid, ulelement, index){ ulelement.parentNode.className="submenu" if (typeof persisteduls[treeid]=="object"){ //if cookie exists (persisteduls[treeid] is an array versus "" string) if (ddtreemenu.searcharray(persisteduls[treeid], index)){ ulelement.setAttribute("rel", "open")"block""url("+ddtreemenu.openfolder+")" } else ulelement.setAttribute("rel", "closed") } //end cookie persist code else if (ulelement.getAttribute("rel")==null || ulelement.getAttribute("rel")==false) //if no cookie and UL has NO rel attribute explicted added by user ulelement.setAttribute("rel", "closed") else if (ulelement.getAttribute("rel")=="open") //else if no cookie and this UL has an explicit rel value of "open" ddtreemenu.expandSubTree(treeid, ulelement) //expand this UL plus all parent ULs (so the most inner UL is revealed!) ulelement.parentNode.onclick=function(e){ var submenu=this.getElementsByTagName("ul")[0] if (submenu.getAttribute("rel")=="closed"){"block" submenu.setAttribute("rel", "open")"url("+ddtreemenu.openfolder+")" } else if (submenu.getAttribute("rel")=="open"){"none" submenu.setAttribute("rel", "closed")"url("+ddtreemenu.closefolder+")" } ddtreemenu.preventpropagate(e) } ulelement.onclick=function(e){ ddtreemenu.preventpropagate(e) } } ddtreemenu.expandSubTree=function(treeid, ulelement){ //expand a UL element and any of its parent ULs var rootnode=document.getElementById(treeid) var currentnode=ulelement"block""url("+ddtreemenu.openfolder+")" while (currentnode!=rootnode){ if (currentnode.tagName=="UL"){ //if parent node is a UL, expand it too"block" currentnode.setAttribute("rel", "open") //indicate it's open"url("+ddtreemenu.openfolder+")" } currentnode=currentnode.parentNode } } ddtreemenu.flatten=function(treeid, action){ //expand or contract all UL elements var ultags=document.getElementById(treeid).getElementsByTagName("ul") for (var i=0; i<ultags.length; i++){ ultags[i].style.display=(action=="expand")? "block" : "none" var relvalue=(action=="expand")? "open" : "closed" ultags[i].setAttribute("rel", relvalue) ultags[i]"expand")? "url("+ddtreemenu.openfolder+")" : "url("+ddtreemenu.closefolder+")" } } ddtreemenu.rememberstate=function(treeid, durationdays){ //store index of opened ULs relative to other ULs in Tree into cookie var ultags=document.getElementById(treeid).getElementsByTagName("ul") var openuls=new Array() for (var i=0; i<ultags.length; i++){ if (ultags[i].getAttribute("rel")=="open") openuls[openuls.length]=i //save the index of the opened UL (relative to the entire list of ULs) as an array element } if (openuls.length==0) //if there are no opened ULs to save/persist openuls[0]="none open" //set array value to string to simply indicate all ULs should persist with state being closed ddtreemenu.setCookie(treeid, openuls.join(","), durationdays) //populate cookie with value treeid=1,2,3 etc (where 1,2... are the indexes of the opened ULs) } ////A few utility functions below////////////////////// ddtreemenu.getCookie=function(Name){ //get cookie value var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair if (document.cookie.match(re)) //if cookie found return document.cookie.match(re)[0].split("=")[1] //return its value return "" } ddtreemenu.setCookie=function(name, value, days){ //set cookei value var expireDate = new Date() //set "expstring" to either future or past date, to set or delete cookie, respectively var expstring=expireDate.setDate(expireDate.getDate()+parseInt(days)) document.cookie = name+"="+value+"; expires="+expireDate.toGMTString()+"; path=/"; } ddtreemenu.searcharray=function(thearray, value){ //searches an array for the entered value. If found, delete value from array var isfound=false for (var i=0; i<thearray.length; i++){ if (thearray[i]==value){ isfound=true thearray.shift() //delete this element from array for efficiency sake break } } return isfound } ddtreemenu.preventpropagate=function(e){ //prevent action from bubbling upwards if (typeof e!="undefined") e.stopPropagation() else event.cancelBubble=true } ddtreemenu.dotask=function(target, functionref, tasktype){ //assign a function to execute to an event handler (ie: onunload) var tasktype=(window.addEventListener)? tasktype : "on"+tasktype if (target.addEventListener) target.addEventListener(tasktype, functionref, false) else if (target.attachEvent) target.attachEvent(tasktype, functionref) }
<HEAD> <style>{ position:relative; /*this is the key*/ z-index:24; background-color:#ccc; color:#000; text-decoration:none}{z-index:25; background-color:#ff0} span{display: none} span{ /*the span will display just on :hover state*/ display:block; position:absolute; top:2em; left:2em; width:15em; border:1px solid #0cf; background-color:#cff; color:#000; text-align: center} </style> <script type="text/javascript" src="simpletreemenu.js"> /*********************************************** * Simple Tree Menu- Dynamic Drive DHTML code library ( * This notice MUST stay intact for legal use * Visit Dynamic Drive at for full source code ***********************************************/ </script> <link rel="stylesheet" type="text/css" href="simpletree.css" /> </head> <body> <h4>Simple Tree Menu #1 (persist enabled):</h4> <a href="javascript:ddtreemenu.flatten('treemenu1', 'expand')">Expand All</a> | <a href="javascript:ddtreemenu.flatten('treemenu1', 'contract')">contract All</a> <ul id="treemenu1" class="treeview"> <li>dirt <ul> <li>grime</li> </ul> </li> <li>woman <ul> <li><a class=info href="#">damsel<span>not married</span></a></li> </ul> </li> <li>fascinate <ul> <li><a class=info href="#">mesmerize<span>take attention</span></a></li> </ul> </li> <li>party <ul> <li><a class=info href="#">rave<span>electronic music & illegal drug</span></a></li> </ul> </li> <script type="text/javascript"> //ddtreemenu.createTree(treeid, enablepersist, opt_persist_in_days (default is 1)) ddtreemenu.createTree("treemenu1", true) ddtreemenu.createTree("treemenu2", false) </script> </body>
Attached Images

Last edited by sumeet inani; 06-21-2012 at 09:33 PM. Reason: now this is complete


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Flow Chart diddyp20 Linux - Newbie 6 12-13-2008 10:16 AM
Where to find linux flow chart software? agtlewis Linux - Software 1 01-19-2006 03:53 PM
Source Code to Flow Chart Converter leibinitz Linux - Software 0 06-21-2005 03:20 AM
flow chart sw allelopath Linux - General 1 04-06-2004 07:02 AM
C 2 Structure/Flow Chart generator Misel Linux - Software 0 12-18-2003 02:49 PM > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 04:37 PM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration