зеркало из https://github.com/mozilla/pjs.git
clean up single signon viewer wallet.h
This commit is contained in:
Родитель
81dcd95eb8
Коммит
2f99cb088a
|
@ -98,6 +98,26 @@ NS_IMETHODIMP nsWalletlibService::SI_SignonViewerReturn(nsAutoString results){
|
|||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsWalletlibService::SI_GetSignonListForViewer(nsString& aSignonList){
|
||||
::SINGSIGN_GetSignonListForViewer(aSignonList);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsWalletlibService::SI_GetRejectListForViewer(nsString& aRejectList){
|
||||
::SINGSIGN_GetRejectListForViewer(aRejectList);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsWalletlibService::WALLET_GetNopreviewListForViewer(nsString& aNopreviewList){
|
||||
::WLLT_GetNopreviewListForViewer(aNopreviewList);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsWalletlibService::WALLET_GetNocaptureListForViewer(nsString& aNocaptureList){
|
||||
::WLLT_GetNocaptureListForViewer(aNocaptureList);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsWalletlibService::SI_RememberSignonData
|
||||
(char* URLName, char** name_array, char** value_array, char** type_array, PRInt32 value_cnt) {
|
||||
::SINGSIGN_RememberSignonData(URLName, name_array, value_array, type_array, value_cnt);
|
||||
|
|
|
@ -39,6 +39,10 @@ public:
|
|||
|
||||
NS_IMETHOD SI_DisplaySignonInfoAsHTML();
|
||||
NS_IMETHOD SI_SignonViewerReturn(nsAutoString results);
|
||||
NS_IMETHOD SI_GetSignonListForViewer(nsString& aSignonList);
|
||||
NS_IMETHOD SI_GetRejectListForViewer(nsString& aRejectList);
|
||||
NS_IMETHOD WALLET_GetNopreviewListForViewer(nsString& aNopreviewList);
|
||||
NS_IMETHOD WALLET_GetNocaptureListForViewer(nsString& aNocaptureList);
|
||||
|
||||
NS_IMETHOD SI_RememberSignonData
|
||||
(char* URLName, char** name_array, char** value_array, char** type_array, PRInt32 value_cnt);
|
||||
|
|
|
@ -2761,6 +2761,9 @@ SI_MakeDialog(char* S) {
|
|||
strm.close();
|
||||
}
|
||||
|
||||
extern void
|
||||
Wallet_SignonViewerReturn (nsAutoString results);
|
||||
|
||||
PUBLIC void
|
||||
SINGSIGN_SignonViewerReturn (nsAutoString results) {
|
||||
XP_List *url_ptr;
|
||||
|
@ -2841,23 +2844,83 @@ SINGSIGN_SignonViewerReturn (nsAutoString results) {
|
|||
}
|
||||
si_unlock_signon_list();
|
||||
delete[] gone;
|
||||
|
||||
/* now give wallet a chance to do its deletions */
|
||||
Wallet_SignonViewerReturn(results);
|
||||
}
|
||||
|
||||
#define BUFLEN 50000
|
||||
extern void Wallet_AddToHTML(int* g_ptr, char* buffer, PRBool isNoCapture, char* listname);
|
||||
#define BUFLEN2 5000
|
||||
#define BREAK '\001'
|
||||
|
||||
PUBLIC void
|
||||
SINGSIGN_DisplaySignonInfoAsHTML()
|
||||
SINGSIGN_GetSignonListForViewer(nsString& aSignonList)
|
||||
{
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN);
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN2);
|
||||
int g = 0, signonNum;
|
||||
XP_List *url_ptr;
|
||||
XP_List *user_ptr;
|
||||
XP_List *data_ptr;
|
||||
XP_List *reject_ptr;
|
||||
si_SignonURLStruct *url;
|
||||
si_SignonUserStruct * user;
|
||||
si_SignonDataStruct* data;
|
||||
|
||||
buffer[0] = '\0';
|
||||
url_ptr = si_signon_list;
|
||||
signonNum = 0;
|
||||
while ( (url=(si_SignonURLStruct *) XP_ListNextObject(url_ptr)) ) {
|
||||
user_ptr = url->signonUser_list;
|
||||
while ( (user=(si_SignonUserStruct *) XP_ListNextObject(user_ptr)) ) {
|
||||
/* first data item for user is the username */
|
||||
data_ptr = user->signonData_list;
|
||||
data = (si_SignonDataStruct *) XP_ListNextObject(data_ptr);
|
||||
g += PR_snprintf(buffer+g, BUFLEN2-g,
|
||||
"%c <OPTION value=%d>%s:%s</OPTION>\n",
|
||||
BREAK,
|
||||
signonNum,
|
||||
url->URLName,
|
||||
data->value
|
||||
);
|
||||
signonNum++;
|
||||
}
|
||||
}
|
||||
aSignonList = buffer;
|
||||
PR_FREEIF(buffer);
|
||||
}
|
||||
|
||||
PUBLIC void
|
||||
SINGSIGN_GetRejectListForViewer(nsString& aRejectList)
|
||||
{
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN2);
|
||||
int g = 0, rejectNum;
|
||||
XP_List *reject_ptr;
|
||||
si_Reject *reject;
|
||||
|
||||
buffer[0] = '\0';
|
||||
reject_ptr = si_reject_list;
|
||||
rejectNum = 0;
|
||||
while ( (reject=(si_Reject *) XP_ListNextObject(reject_ptr)) ) {
|
||||
g += PR_snprintf(buffer+g, BUFLEN2-g,
|
||||
"%c <OPTION value=%d>%s:%s</OPTION>\n",
|
||||
BREAK,
|
||||
rejectNum,
|
||||
reject->URLName,
|
||||
reject->userName
|
||||
);
|
||||
rejectNum++;
|
||||
}
|
||||
aRejectList = buffer;
|
||||
PR_FREEIF(buffer);
|
||||
}
|
||||
|
||||
#define BUFLEN 50000
|
||||
extern void Wallet_GetNocaptureListForViewer(nsString& aNocaptureList);
|
||||
extern void Wallet_GetNopreviewListForViewer(nsString& aNopreviewList);
|
||||
|
||||
PUBLIC void
|
||||
SINGSIGN_DisplaySignonInfoAsHTML()
|
||||
{
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN);
|
||||
int g = 0;
|
||||
char * view_signons = NULL;
|
||||
char * view_rejects = NULL;
|
||||
char * view_nopreview = NULL;
|
||||
|
@ -2897,8 +2960,10 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
" button_frame = 5;\n"
|
||||
"\n"
|
||||
" var signon_mode;\n"
|
||||
" var goneS;\n"
|
||||
" var goneR;\n"
|
||||
" var signonList = [];\n"
|
||||
" var rejectList = [];\n"
|
||||
" var nopreviewList = [];\n"
|
||||
" var nocaptureList = [];\n"
|
||||
" deleted_signons = new Array;\n"
|
||||
" deleted_rejects = new Array;\n"
|
||||
" deleted_nopreviews = new Array;\n"
|
||||
|
@ -2982,7 +3047,7 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
" if (selname.options[i-1].selected) {\n"
|
||||
" selname.options[i-1].selected = 0;\n"
|
||||
" goneC.value = goneC.value + selname.options[i-1].value + \",\";\n"
|
||||
" deleted_nocaputures[selname.options[i-1].value] = 1;\n"
|
||||
" deleted_nocaptures[selname.options[i-1].value] = 1;\n"
|
||||
" for (j=i; j < selname.options.length; j++) {\n"
|
||||
" selname.options[j-1] = selname.options[j];\n"
|
||||
" }\n"
|
||||
|
@ -3060,29 +3125,14 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
PR_FREEIF(heading);
|
||||
|
||||
/* generate the html for the list of signons */
|
||||
url_ptr = si_signon_list;
|
||||
signonNum = 0;
|
||||
while ( (url=(si_SignonURLStruct *) XP_ListNextObject(url_ptr)) ) {
|
||||
user_ptr = url->signonUser_list;
|
||||
while ( (user=(si_SignonUserStruct *) XP_ListNextObject(user_ptr)) ) {
|
||||
/* first data item for user is the username */
|
||||
data_ptr = user->signonData_list;
|
||||
data = (si_SignonDataStruct *) XP_ListNextObject(data_ptr);
|
||||
|
||||
g += PR_snprintf(buffer+g, BUFLEN-g,
|
||||
" if (!deleted_signons[%d]) {\n"
|
||||
" top.frames[list_frame].document.write(\n"
|
||||
" \"<OPTION value=%d>\" +\n"
|
||||
" \"%s:%s\" +\n"
|
||||
" \"</OPTION>\"\n"
|
||||
" );\n"
|
||||
" }\n",
|
||||
signonNum, signonNum,
|
||||
url->URLName,
|
||||
data->value
|
||||
" for (i=1; i<signonList.length; i++) {\n"
|
||||
" if (!deleted_signons[i-1]) {\n"
|
||||
" top.frames[list_frame].document.write(signonList[i]);\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
);
|
||||
signonNum++;
|
||||
}
|
||||
}
|
||||
|
||||
/* generate next section of html file */
|
||||
StrAllocCopy (heading, Wallet_Localize("SavedRejects"));
|
||||
|
@ -3159,24 +3209,14 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
PR_FREEIF(heading);
|
||||
|
||||
/* generate the html for the list of rejects */
|
||||
signonNum = 0;
|
||||
reject_ptr=si_reject_list;
|
||||
while ( (reject=(si_Reject *)
|
||||
XP_ListNextObject(reject_ptr)) ) {
|
||||
g += PR_snprintf(buffer+g, BUFLEN-g,
|
||||
" if (!deleted_rejects[%d]) {\n"
|
||||
" top.frames[list_frame].document.write(\n"
|
||||
" \"<OPTION value=\" +\n"
|
||||
" \"%d>\" +\n"
|
||||
" \"%s: %s\" +\n"
|
||||
" \"</OPTION>\"\n"
|
||||
" );\n"
|
||||
" }\n",
|
||||
signonNum, signonNum,
|
||||
reject->URLName,
|
||||
reject->userName);
|
||||
signonNum++;
|
||||
}
|
||||
|
||||
g += PR_snprintf(buffer+g, BUFLEN-g,
|
||||
" for (i=1; i<rejectList.length; i++) {\n"
|
||||
" if (!deleted_rejects[i-1]) {\n"
|
||||
" top.frames[list_frame].document.write(rejectList[i]);\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
);
|
||||
|
||||
/* generate next section of html file */
|
||||
StrAllocCopy (heading, Wallet_Localize("SavedNopreviews"));
|
||||
|
@ -3252,7 +3292,14 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
PR_FREEIF(heading);
|
||||
|
||||
/* generate the html for the list of nopreviews */
|
||||
Wallet_AddToHTML(&g, buffer, PR_FALSE, "nopreviews");
|
||||
|
||||
g += PR_snprintf(buffer+g, BUFLEN-g,
|
||||
" for (i=1; i<nopreviewList.length; i++) {\n"
|
||||
" if (!deleted_nopreviews[i-1]) {\n"
|
||||
" top.frames[list_frame].document.write(nopreviewList[i]);\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
);
|
||||
|
||||
/* generate next section of html file */
|
||||
StrAllocCopy (heading, Wallet_Localize("SavedNocaptures"));
|
||||
|
@ -3269,7 +3316,7 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
" }\n"
|
||||
"\n"
|
||||
" function loadNocaptures(){\n"
|
||||
" signon_mode = 2;\n"
|
||||
" signon_mode = 3;\n"
|
||||
" top.frames[index_frame].document.open();\n"
|
||||
" top.frames[index_frame].document.write(\n"
|
||||
" \"<BODY BGCOLOR=#C0C0C0>\" +\n"
|
||||
|
@ -3328,7 +3375,14 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
PR_FREEIF(heading);
|
||||
|
||||
/* generate the html for the list of nocaptures */
|
||||
Wallet_AddToHTML(&g, buffer, PR_TRUE, "nocaptures");
|
||||
|
||||
g += PR_snprintf(buffer+g, BUFLEN-g,
|
||||
" for (i=1; i<nocaptureList.length; i++) {\n"
|
||||
" if (!deleted_nocaptures[i-1]) {\n"
|
||||
" top.frames[list_frame].document.write(nocaptureList[i]);\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
);
|
||||
|
||||
/* generate next section of html file */
|
||||
StrAllocCopy (heading, Wallet_Localize("SavedRejects"));
|
||||
|
@ -3366,6 +3420,8 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
" \"<INPUT TYPE=HIDDEN NAME=goneR VALUE=\\\"\\\" SIZE=-1>\" +\n"
|
||||
" \"<INPUT TYPE=HIDDEN NAME=goneP VALUE=\\\"\\\" SIZE=-1>\" +\n"
|
||||
" \"<INPUT TYPE=HIDDEN NAME=goneC VALUE=\\\"\\\" SIZE=-1>\" +\n"
|
||||
" \"<INPUT TYPE=HIDDEN NAME=signonList VALUE=\\\"\\\" SIZE=-1>\" +\n"
|
||||
" \"<INPUT TYPE=HIDDEN NAME=rejectList VALUE=\\\"\\\" SIZE=-1>\" +\n"
|
||||
" \"</FORM>\"\n"
|
||||
" );\n"
|
||||
" top.frames[button_frame].document.close();\n"
|
||||
|
@ -3373,6 +3429,18 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
"\n"
|
||||
" function loadFrames(){\n"
|
||||
" StartUp(\"Signons\");\n"
|
||||
" list = DoGetSignonList();\n"
|
||||
" BREAK = list[0];\n"
|
||||
" signonList = list.split(BREAK);\n"
|
||||
" list = DoGetRejectList();\n"
|
||||
" BREAK = list[0];\n"
|
||||
" rejectList = list.split(BREAK);\n"
|
||||
" list = DoGetNopreviewList();\n"
|
||||
" BREAK = list[0];\n"
|
||||
" nopreviewList = list.split(BREAK);\n"
|
||||
" list = DoGetNocaptureList();\n"
|
||||
" BREAK = list[0];\n"
|
||||
" nocaptureList = list.split(BREAK);\n"
|
||||
" loadSignons();\n"
|
||||
" loadButtons();\n"
|
||||
" }\n"
|
||||
|
@ -3380,7 +3448,10 @@ SINGSIGN_DisplaySignonInfoAsHTML()
|
|||
" function Save(){\n"
|
||||
" var goneS = top.frames[button_frame].document.buttons.goneS;\n"
|
||||
" var goneR = top.frames[button_frame].document.buttons.goneR;\n"
|
||||
" var result = \"|goneS|\"+goneS.value+\"|goneR|\"+goneR.value+\"|\";\n"
|
||||
" var goneP = top.frames[button_frame].document.buttons.goneP;\n"
|
||||
" var goneC = top.frames[button_frame].document.buttons.goneC;\n"
|
||||
" var result = \"|goneS|\"+goneS.value+\"|goneR|\"+goneR.value;\n"
|
||||
" result += \"|goneC|\"+goneC.value+\"|goneP|\"+goneP.value+\"|\";\n"
|
||||
" DoSave(result);\n"
|
||||
" }\n"
|
||||
"\n"
|
||||
|
@ -3467,6 +3538,14 @@ void
|
|||
SINGSIGN_SignonViewerReturn (nsAutoString results) {
|
||||
}
|
||||
|
||||
void
|
||||
SINGSIGN_GetSignonListForViewer(nsString& aSignonList) {
|
||||
}
|
||||
|
||||
void
|
||||
SINGSIGN_GetRejectListForViewer(nsString& aRejectList) {
|
||||
}
|
||||
|
||||
void
|
||||
SINGSIGN_DisplaySignonInfoAsHTML()
|
||||
{
|
||||
|
|
|
@ -34,6 +34,12 @@ XP_BEGIN_PROTOS
|
|||
extern void
|
||||
SINGSIGN_DisplaySignonInfoAsHTML();
|
||||
|
||||
extern void
|
||||
SINGSIGN_GetSignonListForViewer (nsString& aSignonList);
|
||||
|
||||
extern void
|
||||
SINGSIGN_GetRejectListForViewer (nsString& aRejectList);
|
||||
|
||||
extern void
|
||||
SINGSIGN_SignonViewerReturn(nsAutoString results);
|
||||
|
||||
|
|
|
@ -17,8 +17,6 @@
|
|||
* Netscape Communications Corporation. All Rights Reserved.
|
||||
*/
|
||||
|
||||
//#ifdef ClientWallet
|
||||
|
||||
/*
|
||||
wallet.cpp
|
||||
*/
|
||||
|
@ -1891,39 +1889,152 @@ wallet_PostEdit() {
|
|||
}
|
||||
}
|
||||
|
||||
PUBLIC void
|
||||
Wallet_AddToHTML(int* g_ptr, char* buffer, PRBool isNoCapture, char* listname)
|
||||
{
|
||||
wallet_InitializeURLList();
|
||||
XP_List *url_ptr = wallet_URL_list;
|
||||
int urlNum = 0;
|
||||
int preview_or_capture = isNoCapture ? NO_CAPTURE : NO_PREVIEW;
|
||||
wallet_MapElement *url;
|
||||
char* urlCString;
|
||||
while ( (url=(wallet_MapElement *) XP_ListNextObject(url_ptr)) ) {
|
||||
if (url->item2->CharAt(preview_or_capture) == 'y') {
|
||||
urlCString = url->item1->ToNewCString();
|
||||
(*g_ptr) += PR_snprintf(buffer+(*g_ptr), BUFLEN-(*g_ptr),
|
||||
" if (!deleted_%s[%d]) {\n"
|
||||
" top.frames[list_frame].document.write(\n"
|
||||
" \"<OPTION value=%d>\" +\n"
|
||||
" \"%s\" +\n"
|
||||
" \"</OPTION>\"\n"
|
||||
" );\n"
|
||||
" }\n",
|
||||
listname, urlNum, urlNum, urlCString
|
||||
);
|
||||
delete[] urlCString;
|
||||
PRIVATE void
|
||||
wallet_FreeURL(wallet_MapElement *url) {
|
||||
|
||||
urlNum++;
|
||||
if(!url) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
XP_ListRemoveObject(wallet_URL_list, url);
|
||||
PR_FREEIF(url->item1);
|
||||
PR_FREEIF(url->item2);
|
||||
PR_Free(url);
|
||||
}
|
||||
|
||||
PUBLIC void
|
||||
Wallet_SignonViewerReturn (nsAutoString results) {
|
||||
XP_List *url_ptr;
|
||||
wallet_MapElement *url;
|
||||
wallet_MapElement *URLToDelete;
|
||||
int urlNumber;
|
||||
char * gone;
|
||||
|
||||
/*
|
||||
* step through all nopreviews and delete those that are in the sequence
|
||||
* Note: we can't delete nopreview while "url_ptr" is pointing to it because
|
||||
* that would destroy "url_ptr". So we do a lazy deletion
|
||||
*/
|
||||
URLToDelete = 0;
|
||||
gone = SI_FindValueInArgs(results, "|goneP|");
|
||||
urlNumber = 0;
|
||||
url_ptr = wallet_URL_list;
|
||||
while ((url = (wallet_MapElement *) XP_ListNextObject(url_ptr))) {
|
||||
if (url->item2->CharAt(NO_PREVIEW) == 'y') {
|
||||
if (SI_InSequence(gone, urlNumber)) {
|
||||
url->item2->SetCharAt('n', NO_PREVIEW);
|
||||
if (url->item2->CharAt(NO_CAPTURE) == 'n') {
|
||||
if (URLToDelete) {
|
||||
wallet_FreeURL(URLToDelete);
|
||||
}
|
||||
URLToDelete = url;
|
||||
}
|
||||
}
|
||||
urlNumber++;
|
||||
}
|
||||
}
|
||||
if (URLToDelete) {
|
||||
wallet_FreeURL(URLToDelete);
|
||||
wallet_WriteToFile("URL.tbl", wallet_URL_list, PR_FALSE);
|
||||
}
|
||||
delete[] gone;
|
||||
|
||||
/*
|
||||
* step through all nocaptures and delete those that are in the sequence
|
||||
* Note: we can't delete nocapture while "url_ptr" is pointing to it because
|
||||
* that would destroy "url_ptr". So we do a lazy deletion
|
||||
*/
|
||||
URLToDelete = 0;
|
||||
gone = SI_FindValueInArgs(results, "|goneC|");
|
||||
urlNumber = 0;
|
||||
url_ptr = wallet_URL_list;
|
||||
while ((url = (wallet_MapElement *) XP_ListNextObject(url_ptr))) {
|
||||
if (url->item2->CharAt(NO_CAPTURE) == 'y') {
|
||||
if (SI_InSequence(gone, urlNumber)) {
|
||||
url->item2->SetCharAt('n', NO_CAPTURE);
|
||||
if (url->item2->CharAt(NO_PREVIEW) == 'n') {
|
||||
if (URLToDelete) {
|
||||
wallet_FreeURL(URLToDelete);
|
||||
}
|
||||
URLToDelete = url;
|
||||
}
|
||||
}
|
||||
urlNumber++;
|
||||
}
|
||||
}
|
||||
if (URLToDelete) {
|
||||
wallet_FreeURL(URLToDelete);
|
||||
wallet_WriteToFile("URL.tbl", wallet_URL_list, PR_FALSE);
|
||||
}
|
||||
delete[] gone;
|
||||
}
|
||||
|
||||
/***************************************************************/
|
||||
/* The following are the interface routines seen by other dlls */
|
||||
/***************************************************************/
|
||||
|
||||
#define BUFLEN2 5000
|
||||
#define BREAK '\001'
|
||||
|
||||
PUBLIC void
|
||||
WLLT_GetNopreviewListForViewer(nsString& aNopreviewList)
|
||||
{
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN2);
|
||||
int g = 0, nopreviewNum;
|
||||
XP_List *url_ptr;
|
||||
wallet_MapElement *url;
|
||||
char* urlCString;
|
||||
|
||||
wallet_InitializeURLList();
|
||||
buffer[0] = '\0';
|
||||
url_ptr = wallet_URL_list;
|
||||
nopreviewNum = 0;
|
||||
while ( (url=(wallet_MapElement *) XP_ListNextObject(url_ptr)) ) {
|
||||
if (url->item2->CharAt(NO_PREVIEW) == 'y') {
|
||||
urlCString = url->item1->ToNewCString();
|
||||
g += PR_snprintf(buffer+g, BUFLEN2-g,
|
||||
"%c <OPTION value=%d>%s</OPTION>\n",
|
||||
BREAK,
|
||||
nopreviewNum,
|
||||
urlCString
|
||||
);
|
||||
delete[] urlCString;
|
||||
nopreviewNum++;
|
||||
}
|
||||
}
|
||||
aNopreviewList = buffer;
|
||||
PR_FREEIF(buffer);
|
||||
}
|
||||
|
||||
PUBLIC void
|
||||
WLLT_GetNocaptureListForViewer(nsString& aNocaptureList)
|
||||
{
|
||||
char *buffer = (char*)XP_ALLOC(BUFLEN2);
|
||||
int g = 0, nocaptureNum;
|
||||
XP_List *url_ptr;
|
||||
wallet_MapElement *url;
|
||||
char* urlCString;
|
||||
|
||||
wallet_InitializeURLList();
|
||||
buffer[0] = '\0';
|
||||
url_ptr = wallet_URL_list;
|
||||
nocaptureNum = 0;
|
||||
while ( (url=(wallet_MapElement *) XP_ListNextObject(url_ptr)) ) {
|
||||
if (url->item2->CharAt(NO_CAPTURE) == 'y') {
|
||||
urlCString = url->item1->ToNewCString();
|
||||
g += PR_snprintf(buffer+g, BUFLEN2-g,
|
||||
"%c <OPTION value=%d>%s</OPTION>\n",
|
||||
BREAK,
|
||||
nocaptureNum,
|
||||
urlCString
|
||||
);
|
||||
delete[] urlCString;
|
||||
nocaptureNum++;
|
||||
}
|
||||
}
|
||||
aNocaptureList = buffer;
|
||||
PR_FREEIF(buffer);
|
||||
}
|
||||
|
||||
/*
|
||||
* edit the users data
|
||||
*/
|
||||
|
@ -2359,30 +2470,3 @@ WLLT_Capture(nsIDocument* doc, nsString field, nsString value, nsString vcard) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
//#else
|
||||
//#include "prtypes.h"
|
||||
//extern "C" {
|
||||
|
||||
//PUBLIC void
|
||||
//WLLT_PreEdit(nsIURL* url) {
|
||||
//}
|
||||
|
||||
//PUBLIC void
|
||||
//WLLT_PrefillReturn(nsAutoString results) {
|
||||
//}
|
||||
|
||||
//PUBLIC void
|
||||
//WLLT_Prefill(nsIPresShell* shell, PRBool quick) {
|
||||
//}
|
||||
|
||||
//PUBLIC void
|
||||
//WLLT_OKToCapture(PRBool * result, PRInt32 count, char* urlName) {
|
||||
//}
|
||||
|
||||
//PUBLIC void
|
||||
//WLLT_Capture(nsIDocument* doc, nsString field, nsString value, nsString vcard) {
|
||||
//}
|
||||
|
||||
//}
|
||||
//#endif
|
||||
|
|
|
@ -51,6 +51,13 @@ WLLT_OKToCapture(PRBool * result, PRInt32 count, char* URLName);
|
|||
extern void
|
||||
WLLT_Capture(nsIDocument* doc, nsString name, nsString value, nsString vcard);
|
||||
|
||||
extern void
|
||||
WLLT_GetNopreviewListForViewer (nsString& aNopreviewList);
|
||||
|
||||
extern void
|
||||
WLLT_GetNocaptureListForViewer (nsString& aNocaptureList);
|
||||
|
||||
|
||||
XP_END_PROTOS
|
||||
|
||||
#endif /* !_WALLET_H */
|
||||
|
|
Загрузка…
Ссылка в новой задаче