Improvement requests
: K-Meleon Forum
Use this forum to talk about a feature you're missing. Use the bug tracker to report it if necessary.
Goto:
Forum List
•
Message List
•
Search
•
Log In
Your Name:
Subject:
Help information
BBcode help
Smileys help
[quote=JamesD] This is early code with not enough testing. It should give you and idea of where I am going with this. Post any comments in this thread. 1 - Menu items in document popup and link popup. 2 - Allows to store, retrieve, or delete. 3 - Allows for six (6) items. (Arbitrary, could change) 4 - Allows user editing of item description. [b]QickStor.kmm[/b] [code] # K-Meleon Macros (http://kmeleon.sourceforge.net/wiki/index.php?id=MacroLanguage2) # # ---------- QickStor.kmm # ---------- K-Meleon Macro Language Store or retrieve Page URL or Link URL --------- # # = = = = = Early version - For demonstration and comments # # Dependencies : main.kmm # Resources : # Preferences : "k-meleon_QickStor.count" interger # "k-meleon_QickStor.Description.1...6" string # "k-meleon_QickStor.Url.1...6" string # Version : .3 2011-08-02 # Author : JamesD # -------------------------------------------------------------------------------- _QickStor_StoreP { $_QickStor_CurrentCount = getpref(INT,"k-meleon_QickStor.count"); $_QickStor_CurrentCount>=6 ? &_QickStor_StorePno : &_QickStor_StoreP2 ; } _QickStor_StorePno { alert($_QickStor_CurrentCount . " items already stored.", "Maximum storage reached", INFO); } _QickStor_StoreP2 { $_QickStor_NewCount = $_QickStor_CurrentCount + 1; $_QickStor_Description = prompt("45 characters maximum", "Edit the discription",substr($TITLE,0,45)); $_QickStor_URL = $URL; alert( "Count: ".$_QickStor_NewCount."\n"."URL: ".$_QickStor_URL."\n"."Desc: ".$_QickStor_Description , "Item to be stored", INFO); setpref(INT,"k-meleon_QickStor.count", $_QickStor_NewCount); setpref(STRING,"k-meleon_QickStor.Url.".$_QickStor_NewCount, $_QickStor_URL); setpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_NewCount, substr($_QickStor_Description,0,45) ); } _QickStor_StoreL { $_QickStor_CurrentCount = getpref(INT,"k-meleon_QickStor.count"); $_QickStor_CurrentCount>=6 ? &_QickStor_StorePno : &_QickStor_StoreL2 ; } _QickStor_StoreL2 { $_QickStor_NewCount = $_QickStor_CurrentCount + 1; id(ID_COPY_LINK_LOCATION); $_QickStor_URL = getclipboard() ; $_QickStor_Description = prompt("45 characters maximum", "Edit the discription",substr($_QickStor_URL,0,45)); alert( "Count: ".$_QickStor_NewCount."\n"."URL: ".$_QickStor_URL."\n"."Desc: ".$_QickStor_Description , "Item to be stored", INFO); setpref(INT,"k-meleon_QickStor.count", $_QickStor_NewCount); setpref(STRING,"k-meleon_QickStor.Url.".$_QickStor_NewCount, $_QickStor_URL); setpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_NewCount, substr($_QickStor_Description,0,45) ); } _QickStor_Retrieve { $_QickStor_NewCount = getpref(INT,"k-meleon_QickStor.count"); $_QickStor_Description = ""; $_QickStor_Count = 1 ; while($_QickStor_Count <= $_QickStor_NewCount) { $_QickStor_Desc = getpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_Count) ; $_QickStor_Description = $_QickStor_Description.$_QickStor_Count." -- ".$_QickStor_Desc."\n" ; $_QickStor_Count = $_QickStor_Count +1; } alert($_QickStor_Description, "Note the number next to your choice", INFO); $_QickStor_UseCount = prompt("Enter a number 1 to ". $_QickStor_Count-1,"Retrieve a page"); $_QickStor_UseCount=="" ? &_QickStor_Retrieve1 : &_QickStor_Retrieve2 ; } _QickStor_Retrieve1 { alert("Cancel was pressed.", "No action to be taken.", INFO); } _QickStor_Retrieve2 { $_QickStor_UseCount > $_QickStor_NewCount ? &_QickStor_Retrieve3 : &_QickStor_Retrieve4 ; } _QickStor_Retrieve3 { alert("Number enter is out of range.", "No action to be taken.", INFO); } _QickStor_Retrieve4 { $_QickStor_UseCount < 1 ? &_QickStor_Retrieve3 : &_QickStor_Retrieve5 ; } _QickStor_Retrieve5 { $_QickStor_URL = getpref(STRING,"k-meleon_QickStor.Url.".$_QickStor_UseCount); open($_QickStor_URL); } _QickStor_Delete { $_QickStor_CurrCount = getpref(INT,"k-meleon_QickStor.count"); $_QickStor_Description = ""; $_QickStor_Count = 1 ; while($_QickStor_Count <= $_QickStor_CurrCount) { $_QickStor_Desc = getpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_Count) ; $_QickStor_Description = $_QickStor_Description.$_QickStor_Count." -- ".$_QickStor_Desc."\n" ; $_QickStor_Count = $_QickStor_Count +1; } alert($_QickStor_Description, "Note the number next to your choice", INFO); $_QickStor_DelCount = prompt("Enter a number 1 to ". $_QickStor_Count-1, "Delete this record"); $_QickStor_DelCount=="" ? &_QickStor_Delete1 : &_QickStor_Delete2 ; } _QickStor_Delete1 { alert("Cancel was pressed.", "No action to be taken.", INFO); } _QickStor_Delete2 { $_QickStor_DelCount > $_QickStor_NewCount ? &_QickStor_Delete3 : &_QickStor_Delete4 ; } _QickStor_Delete3 { alert("Number enter is out of range.", "No action to be taken.", INFO); } _QickStor_Delete4 { $_QickStor_DelCount < 1 ? &_QickStor_Delete3 : &_QickStor_Delete5 ; } _QickStor_Delete5 { if ( $_QickStor_DelCount == $_QickStor_CurrCount) { ## take off top only - no collaspe setpref(INT,"k-meleon_QickStor.count", $_QickStor_CurrCount-1); # reduce count by one delpref("k-meleon_QickStor.Description.".$_QickStor_DelCount); delpref("k-meleon_QickStor.Url.".$_QickStor_DelCount); } else { setpref(INT,"k-meleon_QickStor.count", $_QickStor_CurrCount-1); # reduce count by one while ( $_QickStor_DelCount < $_QickStor_CurrCount) { ## copy downward $_QickStor_ResetD = getpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_DelCount +1); setpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_DelCount, $_QickStor_ResetD ); setpref(STRING,"k-meleon_QickStor.Description.".$_QickStor_DelCount, $_QickStor_ResetD ); $_QickStor_ResetU = getpref(STRING,"k-meleon_QickStor.Url.".$_QickStor_DelCount +1); setpref(STRING,"k-meleon_QickStor.Url.".$_QickStor_DelCount, $_QickStor_ResetU ); $_QickStor_DelCount = $_QickStor_DelCount + 1; } delpref("k-meleon_QickStor.Description.".$_QickStor_CurrCount); delpref("k-meleon_QickStor.Url.".$_QickStor_CurrCount); } } _QickStor_ModMenu{ $_QickStor_PopmL = "QuickStoreLink"; $_QickStor_PopmP = "QuickStorePage"; setmenu("LinkSave",popup,$_QickStor_PopmL,-1); setmenu("Document",popup,$_QickStor_PopmP,-1); &_QickStor_ModMenuP; &_QickStor_ModMenuL; } _QickStor_ModMenuP{ setmenu($_QickStor_PopmP,macro,"Store", _QickStor_StoreP,0); setmenu($_QickStor_PopmP,macro,"Retrieve", _QickStor_Retrieve,1); setmenu($_QickStor_PopmP,macro,"Delete", _QickStor_Delete,2); rebuildmenu($_QickStor_PopmP); } _QickStor_ModMenuL{ setmenu($_QickStor_PopmL,macro,"Store", _QickStor_StoreL,0); setmenu($_QickStor_PopmL,macro,"Retrieve", _QickStor_Retrieve,1); setmenu($_QickStor_PopmL,macro,"Delete", _QickStor_Delete,2); rebuildmenu($_QickStor_PopmL); } # - - - - - - - - - - - - - - - - - - - $OnInit=$OnInit."_QickStor_ModMenu;"; $macroModules=$macroModules."QickStor;"; [/code][/quote]
[Please Enable JavaScript]
K-Meleon forum is powered by
Phorum
.
Home/News
Screenshots
Download
Documentation
Resources
Get Involved
Forum
Bugs
Development