//FFSubmenu=Bilderlisten
//FFName=Bereinigen
//FFPath=BListBereinigen.js
/*********************************************************
' BListBereinigen.js v1.0
' (C) Heinz Höfling 18.8.2010
' Email: fixfoto@gmx.de
'
' ablauffähig ab Fixfoto V2.80
' Fixfoto: http://www.j-k-s.com
'
' Dieses Script entfernt virtuelle Bilderlisten
'*********************************************************/
var il = new Array();
var dl = new Array();
function RemoveA(was,worin)
{
result=new Array();
for( s in worin )
{
if ( worin[s] != was )
result.push(worin[s]);
}
return result;
}
function Fillin(dlg,ilc,dlc)
{
FF_SetControl(dlg,ilc,"");
FF_SetControl(dlg,ilc,"");
for ( s in il)
FF_SetControl(dlg,ilc,il[s]);
FF_SetControl(dlg,dlc,"");
FF_SetControl(dlg,dlc,"");
for ( s in dl)
FF_SetControl(dlg,dlc,dl[s]);
}
function MainDialog()
{
//** Start Dialog Bilderlisten **
FF_AddDialog("Bilderlisten",262,127);
FF_AddControl("Bilderlisten","Zu löschende Bilderlisten","GROUP",131,3,128,104);
FF_AddControl("Bilderlisten","Vorhandene Bilderlisten (virtuelle)","GROUP",1,3,128,104);
FF_AddControl("Bilderlisten","iLists","LISTBOX",3,10,124,95);
FF_AddControl("Bilderlisten","iDelete","LISTBOX",132,10,125,95);
FF_AddControl("Bilderlisten",">>","BUTTON",95,109,33,11);
FF_AddControl("Bilderlisten","<<","BUTTON",132,109,33,11);
FF_AddControl("Bilderlisten","Löschen","BUTTON",188,109,70,12);
FF_AddControl("Bilderlisten","Leere >>","BUTTON",53,109,33,11);
FF_AddControl("Bilderlisten","Hilfe!","BUTTON",4,109,33,11);
//** End Dialog Bilderlisten **
var dlg="Bilderlisten";
var r="";
// Dialog initialiesieren
il=FF_IListGetLists().split("\r\n");
Fillin(dlg,"iLists","iDelete");
for(;;)
{
r = FF_ShowDialog(dlg);
if( (r=="CANCEL") ) break;
switch(r)
{
case "Leere >>": var delop=true;
while ( delop )
{
delop=false;
for( s in il)
{
elem=il[s];
if( FF_IListGetCount(elem) == 0 ) // leer?
{
dl.push(elem);
il=RemoveA(elem,il);
delop=true; // schleife neustarten da il nun eins weniger
break;
} // if
} // for
} // while
Fillin(dlg,"iLists","iDelete");
break;
case ">>":
case "iLists" : var elem=FF_GetControl(dlg,"iLists");
if(elem!="")
{
dl.push(elem);
il = RemoveA(elem,il);
Fillin(dlg,"iLists","iDelete");
}
break;
case "<<":
case "iDelete" : var elem=FF_GetControl(dlg,"iDelete");
if(elem!="")
{
il.push(elem);
dl = RemoveA(elem,dl);
Fillin(dlg,"iLists","iDelete");
}
break;
case "Hilfe!": FF_MessageBox("Löschen von virtuellen Bilderlisten\n\n"+
"Mit den Knöpfen [<<] und [>>] oder durch Doppelklick in den Listen\n"+
"können die Einträge umgrupiert werden.\n"+
"[Leere >>] setzt die leeren Bilderlisten auf die Lösch-Seite\n"+
"[Löschen] löscht die Bilderlisten die in der rechten stehen",
64);
break;
}
if( (r=="Löschen") ) break;
}
FF_CloseDialog(dlg);
if ( r == "Löschen" )
{
if( dl.length > 0)
{
if( 6==FF_MessageBox("Sollen nun "+dl.length+" Bilderlisten gelöscht werden?",32+4) )
{
var bl=0;
for( s in dl )
{
bl++;
FF_IListDelete(dl[s]);
}
FF_MessageBox("Es wurden "+bl+" Bilderlisten gelöscht",64);
}
}
}
return r;
}
MainDialog();