summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsje <sje@4f64403b-2f21-0410-a795-97e2b3489a10>2007-02-02 14:17:26 +0000
committersje <sje@4f64403b-2f21-0410-a795-97e2b3489a10>2007-02-02 14:17:26 +0000
commit8029b70725875a41ee394aabcbe4d39b658a6364 (patch)
tree5067e677504c641d23deaca9d0553b263f91bca2
parentb75d91b2249acd062d80bfccdb66e8d25284ad9c (diff)
git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@107 4f64403b-2f21-0410-a795-97e2b3489a10
-rw-r--r--MirandaPlugin/1033/Images/DottedHori.gifbin0 -> 43 bytes
-rw-r--r--MirandaPlugin/1033/Images/DottedVert.gifbin0 -> 43 bytes
-rw-r--r--MirandaPlugin/1033/Images/spacer.gifbin0 -> 43 bytes
-rw-r--r--MirandaPlugin/1033/NewStyles.css792
-rw-r--r--MirandaPlugin/HTML/1033/default.htm425
-rw-r--r--MirandaPlugin/HTML/1033/details.htm366
-rw-r--r--MirandaPlugin/HTML/1033/options.htm390
-rw-r--r--MirandaPlugin/INSTALL.txt4
-rw-r--r--MirandaPlugin/Images/MirandaPlugin.gifbin0 -> 3510 bytes
-rw-r--r--MirandaPlugin/Images/MirandaPlugin_Background.gifbin0 -> 811 bytes
-rw-r--r--MirandaPlugin/Images/mim_logo.gifbin0 -> 2567 bytes
-rw-r--r--MirandaPlugin/MirandaPlugin.icobin0 -> 22486 bytes
-rw-r--r--MirandaPlugin/MirandaPlugin.sln20
-rw-r--r--MirandaPlugin/MirandaPlugin.vcproj229
-rw-r--r--MirandaPlugin/MirandaPlugin.vsdir1
-rw-r--r--MirandaPlugin/MirandaPlugin.vsz6
-rw-r--r--MirandaPlugin/Scripts/1033/default.js310
-rw-r--r--MirandaPlugin/Templates/1033/Templates.inf26
-rw-r--r--MirandaPlugin/Templates/1033/base.cpp95
-rw-r--r--MirandaPlugin/Templates/1033/base.rc82
-rw-r--r--MirandaPlugin/Templates/1033/common.cpp1
-rw-r--r--MirandaPlugin/Templates/1033/common.h70
-rw-r--r--MirandaPlugin/Templates/1033/filter.cpp87
-rw-r--r--MirandaPlugin/Templates/1033/filter.h9
-rw-r--r--MirandaPlugin/Templates/1033/menu.cpp87
-rw-r--r--MirandaPlugin/Templates/1033/menu.h7
-rw-r--r--MirandaPlugin/Templates/1033/menu.icobin0 -> 2550 bytes
-rw-r--r--MirandaPlugin/Templates/1033/net.cpp20
-rw-r--r--MirandaPlugin/Templates/1033/net.h10
-rw-r--r--MirandaPlugin/Templates/1033/options.cpp64
-rw-r--r--MirandaPlugin/Templates/1033/options.h13
-rw-r--r--MirandaPlugin/Templates/1033/readme.txt51
-rw-r--r--MirandaPlugin/Templates/1033/resource.h21
-rw-r--r--MirandaPlugin/Templates/1033/resource.rc2
-rw-r--r--MirandaPlugin/Templates/1033/version.h26
-rw-r--r--MirandaPlugin/Templates/1033/version.rc33
-rw-r--r--MirandaPlugin/default.vcproj14
-rw-r--r--MirandaPlugin/install.bat26
38 files changed, 3287 insertions, 0 deletions
diff --git a/MirandaPlugin/1033/Images/DottedHori.gif b/MirandaPlugin/1033/Images/DottedHori.gif
new file mode 100644
index 0000000..67072b8
--- /dev/null
+++ b/MirandaPlugin/1033/Images/DottedHori.gif
Binary files differ
diff --git a/MirandaPlugin/1033/Images/DottedVert.gif b/MirandaPlugin/1033/Images/DottedVert.gif
new file mode 100644
index 0000000..72e0c7d
--- /dev/null
+++ b/MirandaPlugin/1033/Images/DottedVert.gif
Binary files differ
diff --git a/MirandaPlugin/1033/Images/spacer.gif b/MirandaPlugin/1033/Images/spacer.gif
new file mode 100644
index 0000000..13acffe
--- /dev/null
+++ b/MirandaPlugin/1033/Images/spacer.gif
Binary files differ
diff --git a/MirandaPlugin/1033/NewStyles.css b/MirandaPlugin/1033/NewStyles.css
new file mode 100644
index 0000000..27a4d06
--- /dev/null
+++ b/MirandaPlugin/1033/NewStyles.css
@@ -0,0 +1,792 @@
+/******************************************************************************/
+/*DEFAULT STYLES FOR ALL SECTIONS**********************************************/
+/******************************************************************************/
+body { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ background-color: buttonface;
+ margin-top: 0px;
+ margin-left: 0px;
+ margin-right: 0px;
+ margin-bottom: 0px;
+ overflow: auto; }
+
+a:link { color: captiontext;
+ text-decoration: none; }
+
+a:visited { color: captiontext;
+ text-decoration: none; }
+
+a:active { color: captiontext;
+ text-decoration: none; }
+
+a:hover { color: captiontext;
+ text-decoration: underline; }
+
+table { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ width: 100%; }
+
+table.one { table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+
+/*DEFAULT STYLES FOR THE 'INTRODUCTION' TABLE**********************************/
+/******************************************************************************/
+
+table.two { table-layout: fixed;
+ height: 79px;
+ width: 100%;
+ background-color: window; }
+
+td.image { text-align: right; }
+
+
+/*DEFAULT STYLES FOR THE 'NAVIGATION' TABLE************************************/
+/******************************************************************************/
+table.linkText { line-height: 95%;
+ width: 157px;
+ height: 30px;
+ position: relative;
+ left: 10px;
+ z-index: 2; }
+
+span { position: relative;
+ z-index: 3; }
+
+span.horiLine1 { height: 30px;
+ width: 166px;
+ position: absolute;
+ top: -1px;
+ left: -1px;
+ bottom: -1px;
+ z-index: 2; }
+
+
+/*DEFAULT STYLES FOR THE ALL BUTTONS AND THE 'BUTTONS' TABLE*******************/
+/******************************************************************************/
+button { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ height: 23px;
+ cursor: hand; }
+
+.buttons { width: 100%; }
+
+/*DEFAULT STYLES FOR THE 'CONTENT' TABLE***************************************/
+/******************************************************************************/
+table.fixedSize { table-layout: fixed; }
+
+table.content { table-layout: fixed;
+ height: 100%;
+ width: 422px; }
+
+ol { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ margin-top: -1px;
+ margin-bottom: 16px; }
+
+ul { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ margin-top: 3px;
+ margin-bottom: 16px; }
+
+li { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ position: relative;
+ left: -15px;
+ margin-bottom: 1px; }
+
+span.itemTextTop { position: relative; }
+
+span.itemText { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ line-height: 9pt;
+ position: relative;
+ top: -3px; }
+
+span.itemTextIndent { position: relative;
+ left: 17px;
+ top: -3px; }
+
+span.sideBtnHidden { width: 100%;
+ margin-top: 3px;
+ margin-bottom: 0px; }
+
+div.itemTextRadioAa { position: relative;
+ width: 170px;
+ top: -17px;
+ left: 17px;
+ margin-bottom: -25px; }
+
+div.itemTextRadioA { position: relative;
+ width: 170px;
+ top: -19px;
+ left: 17px;
+ margin-bottom: -25px; }
+
+div.itemTextRadioB { position: relative;
+ width: 170px;
+ top: -19px;
+ left: 25px;
+ margin-bottom: -25px; }
+
+div.itemTextRadioIndentA { position: relative;
+ width: 165px;
+ top: -17px;
+ left: 30px;
+ margin-bottom: -25px; }
+
+div.itemTextRadioIndentB { position: relative;
+ width: 153px;
+ top: -17px;
+ left: 42px;
+ margin-bottom: -25px; }
+
+div.itemTextCheckboxA { position: relative;
+ width: 176px;
+ top: -17px;
+ left: 17px;
+ margin-bottom: -23px; }
+
+div.itemTextCheckboxB { position: relative;
+ width: 176px;
+ top: -18px;
+ left: 25px;
+ margin-bottom: -25px; }
+
+div.itemTextCheckboxIndentB { position: relative;
+ width: 159px;
+ top: -16px;
+ left: 42px;
+ margin-bottom: -25px; }
+
+input { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext; }
+
+select { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext; }
+
+.radio { position: relative;
+ top: -2px;
+ left: 4px; }
+
+.radioA { position: relative;
+ top: -1px;
+ margin-left: -4px;
+ z-index: 2; }
+
+.radioIndent { margin-top: -2px;
+ margin-left: 17px; }
+
+.radioIndentA { margin-top: -2px;
+ margin-left: 9px; }
+
+.checkbox { position: relative;
+ top: -1px;
+ margin-left: -4px;
+ z-index: 2; }
+
+.checkboxA { position: relative;
+ top: -2px;
+ left: 4px; }
+
+.checkboxIndent { position:relative;
+ margin-top: -1px;
+ margin-left: 21px; }
+
+.comment { width: 578px;
+ position: relative;
+ top: 5px;
+ bottom: 6px; }
+
+.commentA { width: 398px;
+ position: relative;
+ top: 5px;
+ bottom: 6px; }
+
+.commentB { width: 578px;
+ position: relative;
+ top: 3px;
+ bottom: -3px; }
+
+/****THIS IS THE STANDARD TABBED WIZARD, TWO COLUMN INPUT BOX******************/
+input.sideBtn { width: 193px;
+ position: relative;
+ top: 3px; }
+
+/****THIS IS THE STANDARD THREE COLUMN WIZARD INPUT BOX************************/
+input.sideBtnThreeColumn { width: 185px;
+ position: relative;
+ top: 3px; }
+
+/****THIS IS THE DEFAULT INPUT BOX IN NON-TABBED AND 2 COLUMN WIZARD***********/
+input.itemTextTwoColumnLong { width: 283px;
+ position: relative;
+ top: 3px; }
+
+/****THIS IS AN INPUT BOX INDENTED UNDER A CHECKBOX SECTION********************/
+input.sideBtnIndent { width: 175px;
+ position: relative;
+ top: 3px;
+ left: 18px;
+ bottom: 6px; }
+
+/****THIS INPUT BOX HAS IS INDENTED UNDER A HEADING AND RULE SECTION***********/
+input.sideBtnB { width: 185px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+input.sideBtnBA { width: 175px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****THIS INPUT BOX HAS A "..." BUTTON BESIDE IT AND IT'S A TABBED WIZARD******/
+input.sideBtn2 { width: 169px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****"..." BUTTON IN A NON-TABBED, 3 COLUMN WIZARD*****************************/
+input.sideBtn2ThreeColumn { width: 161px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****THIS IS AN INPUT BOX IN NON-TABBED AND 2 COLUMN WIZARD WITH A BUTTON******/
+input.TwoColumnLongButton { width: 259px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****THIS INPUT BOX HAS A "..." BUTTON BESIDE IT AND IT'S UNDER A CHECKBOX*****/
+input.sidebtn2Indent { width: 151px;
+ position: relative;
+ top: 3px;
+ left: 18px;
+ bottom: 6px; }
+
+/****"..." BUTTON IS UNDER A SECTION IN A TWO COLUMN AND TABBED WIZARD*********/
+input.sidebtn21 { width: 161px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****"..." BUTTON IS UNDER A SECTION IN A THREE COLUMN AND TABBED WIZARD*********/
+input.sidebtn21A { width: 153px;
+ position: relative;
+ top: 3px;
+ bottom: 6px; }
+
+/****THIS IS THE STANDARD TABBED WIZARD, TWO COLUMN SELECTION BOX**************/
+select.sidebtn { width: 193px;
+ position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+select.sidebtnNoWidth { position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+/****THIS IS THE STANDARD TABBED WIZARD, ONE COLUMN SELECTION BOX**************/
+select.sideBtnOneCLong { width: 398px;
+ position: relative;
+ top: 3px; }
+
+/****THIS IS THE STANDARD THREE COLUMN WIZARD INPUT BOX************************/
+select.sideBtnThreeColumn { width: 185px;
+ position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+/****THIS IS THE DEFAULT INPUT BOX IN NON-TABBED AND 2 COLUMN WIZARD***********/
+select.itemTextTwoColumnLong { width: 283px;
+ position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+/****THIS SELECTION BOX IS INDENTED UNDER A HEADING AND RULE SECTION***********/
+select.sidebtnB { width: 164px;
+ position: relative;
+ top: 4px;
+ left: 8px;
+ bottom: -3px; }
+
+/****THIS SELECTION BOX IS BELOW AND ASSOCIATED WITH A CHECKBOX****************/
+select.sidebtn2 { width: 164px;
+ position: relative;
+ top: 11px;
+ left: 17px;
+ bottom: -3px; }
+
+select.sidebtnIndent { width: 175px;
+ position: relative;
+ top: 4px;
+ left: 18px;
+ bottom: -3px; }
+
+/****THIS SELECTION BOX IS BELOW AND ASSOCIATED WITH A CHECKBOX AND HEADING****/
+select.sidebtn2AShort { width: 168px;
+ position: relative;
+ top: 4px;
+ left: 25px;
+ bottom: -3px; }
+
+/****THIS SELECTION BOX IS IN A TABBED, TWO COLUM WIZARD AND FOR < << > >>*****/
+select.sidebtn3 { width: 177px;
+ position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+/****THIS IS A SELECTION BOX IN NON-TABBED AND 2 COLUMN WIZARD WITH A BUTTON***/
+select.TwoColumnLongButton { width: 259px;
+ position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+/****THIS IS A SELECTION BOX IN NON-TABBED AND 2 COLUMN WIZARD WITH A BUTTON***/
+select.IndentListBoxWithButton { width: 283px;
+ position: relative;
+ top: 4px;
+ bottom: -3px;
+ left: 18px; }
+
+/****THIS IS THE DEFAULT OBJECT DROP DOWN IN 2 COLUMN AND TABBED WIZARD********/
+object.itemtext { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ width: 193px;
+ height: 2em;
+ position: relative;
+ top: 4px;
+ margin-bottom: 0px; }
+
+/****THIS IS THE DEFAULT OBJECT DROP DOWN IN 3 COLUMN AND NON-TABBED WIZARD****/
+object.itemtextThreeColumn { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ width: 185px;
+ height: 2em;
+ position: relative;
+ top: 4px;
+ margin-bottom: 0px; }
+
+/****THIS IS THE DEFAULT OBJECT DROP DOWN IN NON-TABBED AND 2 COLUMN WIZARD****/
+object.itemTextTwoColumnLong{ font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext;
+ width: 283px;
+ height: 2em;
+ position: relative;
+ top: 4px;
+ margin-bottom: 0px; }
+
+.dropdowncombo { font-family: Tahoma, MS Sans Serif, Arial, Sans Serif;
+ font-weight: normal;
+ font-size: 8pt;
+ color: buttontext; }
+
+/****MOVES RADIO TEXT UP A BIT WHEN INLINE*************************************/
+span.upABit { position: relative;
+ top: -2px; }
+
+/****THIS DEFINES A STANDARD BUTTON IN THE CONTENT SECTION*********************/
+.buttonClass { margin-top: 0px;
+ margin-bottom: -6px; }
+
+/****THIS DEFINES ADD/REMOVE BUTTONS IN THE CONTENT SECTION********************/
+.buttonClass2 { width: 75px;
+ margin-top: 7px; }
+
+/****THIS DEFINES A "..." BUTTON IN THE CONTENT SECTION OUT OF THE SPAN TAG****/
+.buttonClass3 { height: 19px;
+ width: 20px;
+ position: relative;
+ left: 1px;
+ top: 0px; }
+
+/****THIS DEFINES A "..." BUTTON IN THE CONTENT SECTION WITHIN THE SPAN TAG***/
+.buttonClass3Custom { height: 19px;
+ width: 20px;
+ position: relative;
+ left: 4px;
+ top: 3px; }
+
+/****THIS DEFINES A "..." BUTTON IN THE CONTENT SECTION AND UNDER A CHECKBOX***/
+.buttonClass3Indent { height: 19px;
+ width: 20px;
+ position: relative;
+ top: 0px;
+ left: 10px; }
+
+/****THIS DEFINES A ">>" BUTTON IN THE CONTENT SECTION************************/
+.buttonClass4 { margin-bottom: 4px;
+ width: 25px; }
+
+/****THIS DEFINES ADD/REMOVE BUTTONS HORIZONTALLY IN THE CONTENT SECTION******/
+.buttonClass5 { position: relative;
+ top: 4px;
+ width: 75px; }
+
+/****THIS SETS THE LEFT MARGIN FOR THE REMOVE BUTTON***************************/
+#removeBtn { margin-left: 4px; }
+
+/****THIS SETS THE LEFT MARGIN FOR INDENTED SECTION UNDER CHECKBOXES***********/
+label.indent { margin-left: 18px; }
+
+/****THIS SETS THE LEFT MARGIN FOR INDENTED SECTION UNDER CHECKBOXES***********/
+label.indent2 { margin-left: 25px; }
+
+/****THIS MOVES CHECK BOX AND RADIO TEXT UP A BIT******************************/
+label.upABit { position: relative;
+ top: -2px; }
+
+/****THIS BOLDS < << > >> BUTTONS**********************************************/
+b.bigFont { font-size: 135%; }
+
+/****THESE ARE CUSTOM VERTICAL SPACING ELEMENTS********************************/
+p.spacer { margin-bottom: -28px; }
+
+p.elementSpacer { margin-bottom: -12px; }
+
+p.elementSpacer2 { margin-bottom: -19px; }
+
+p.elementSpacer3 { margin-bottom: -3px; }
+
+p.elementSpacer4 { margin-bottom: 7px; }
+
+p.elementSpacer5 { margin-bottom: 5px; }
+
+p.elementSpacer6 { margin-bottom: -24px; }
+
+p.elementSpacer7 { margin-bottom: -11px; }
+
+p.elementSpacer8 { margin-bottom: -15px; }
+
+p.elementSpacer9 { margin-bottom: -7px; }
+
+p.elementSpacer10 { margin-bottom: 6px; }
+
+p.elementSpacer11 { margin-bottom: -1px; }
+
+p.elementSpacer12 { margin-bottom: -17px; }
+
+p.elementSpacer13 { margin-bottom: -23px; }
+
+p.elementSpacer14 { margin-bottom: -25px; }
+
+p.elementSpacer15 { margin-bottom: -13px; }
+
+p.elementSpacer16 { margin-bottom: -22px; }
+
+p.elementSpacer17 { margin-bottom: -32px; }
+
+p.elementSpacer18 { margin-bottom: -14px; }
+
+p.elementSpacer19 { margin-bottom: -10px; }
+
+p.elementSpacer21 { margin-bottom: -16px; }
+
+p.elementSpacer22 { margin-bottom: 3px; }
+
+/*CUSTOM STYLES FOR THE 'CONTENT' FRAME****************************************/
+/******************************************************************************/
+
+ /*CUSTOM SPACING FOR MFC UI PAGE - SET UP FOR LOC PURPOSES*******************/
+ /**************************************************************************/
+ p.elementSpacer20 { margin-bottom: -13px; }
+
+ /*CUSTOM STYLE FOR MFC UI PAGE - SET UP FOR LOC PURPOSES*******************/
+ /**************************************************************************/
+ input.sideBtnLoc { width: 193px;
+ position: relative;
+ top: 3px; }
+
+ /*PLACES SPACE BETWEEN ADD/REMOVE BUTTONS**********************************/
+ /**************************************************************************/
+ span.spacer8 { width: 1px; }
+
+ /*SETS TEXT BOX TO APPROPRIATE WIDTH IN MFCAppWiz**************************/
+ /**************************************************************************/
+ #CLASS_NAMES { width: 399px; }
+
+ /*MOVES SELECT BOX UP IN CSharpIndexerWiz, Interface, Method,**************/
+ /*InterfaceMethod, AND MemFunctionWiz**************************************/
+ #PARAMETER_LIST { margin-top: -1px; }
+ /*MOVES SELECT BOX UP IN CSharpMethodWiz***********************************/
+ /**************************************************************************/
+ #PARAMETER_LIST1 { margin-top: -1px; }
+
+ /*SETS SELECTION BOX WIDTH IN CSharpInterfaceMethod AND CSharpMethodWiz****/
+ /**************************************************************************/
+ #PARAMETER_MODIFIER { width: 58px; }
+
+ /*SETS INDENT FOR ATLCustom AND MFCCustom Wizards**************************/
+ /**************************************************************************/
+ span.itemTextIndent1 { position: relative;
+ left: 8px;
+ top: -3px; }
+
+ /*SETS INDENT ON OBJECT FOR CSharpMethodWiz********************************/
+ /**************************************************************************/
+ span.customObjectIndent { margin-left: 8px; }
+
+ /*SETS CUSTOM INDENT FOR SECTION IN CSHARPMETHODWIZ************************/
+ /**************************************************************************/
+ span.sidebtn { position: relative;
+ top: 4px;
+ bottom: -3px; }
+
+ /*SETS CUSTOM INDENT FOR SECTION IN CSHARPMETHODWIZ************************/
+ /**************************************************************************/
+ span.itemtextspecial { position: relative;
+ top: -20px;
+ left: 9px;
+ bottom: -3px; }
+
+ /*SETS CUSTOM INDENT FOR SECTION IN CSHARPMETHODWIZ************************/
+ /**************************************************************************/
+ span.sidebtnspecial { position: relative;
+ top: -2px;
+ left: 53px;
+ bottom: -3px; }
+
+ /**************************************************************************/
+
+
+
+
+ /*MODIFIED POSITIONING*****************************************************/
+ /**************************************************************************/
+ /*Position and border change + link to the script file (absolutely needed)!!*/
+ table.three { table-layout: fixed;
+ height: 100%;
+ width: 178px;
+ position: absolute;
+ left: -1px;
+ border-right: solid 2px Window; }
+
+ /*Color change*/
+ span.activeLink { color: WindowText;
+ text-decoration: none;
+ word-wrap: break-word;
+ cursor: hand;
+ width: 100%;
+ padding-top: 1px;
+ padding-bottom: 1px; }
+
+ /*Color change*/
+ span.activeLink2 { color: WindowText;
+ text-decoration: underline;
+ word-wrap: break-word;
+ cursor: hand;
+ width: 100%;
+ padding-top: 1px;
+ padding-bottom: 1px; }
+
+ /*Color change*/
+ span.inactiveLink { color: GrayText;
+ text-decoration: none;
+ word-wrap: break-word;
+ cursor: default;
+ width: 100%;
+ padding-top: 1px;
+ padding-bottom: 1px; }
+
+ /*Turned off dotted line*/
+ span.vertLine1 { height: 100%;
+ width: 1px;
+ position: absolute;
+ top: 0px;
+ left: -1px;
+ bottom: 0px;
+ z-index: 2; }
+
+ /*Style for width-control of the left-side links bar */
+ .LinkPane { width: 178px; }
+
+ /*Removed bolding of text*/
+ table.linkTextSelected { line-height: 95%;
+ width: 157px;
+ height: 30px;
+ position: relative;
+ left: 10px;
+ z-index: 2; }
+
+ /*Removed bolding of text and made width bigger*/
+ table.linkTextSelectedIndent { line-height: 95%;
+ width: 157px;
+ height: 30px;
+ position: relative;
+ top: -2px;
+ left: 18px;
+ z-index: 2; }
+
+ /*Changed left margin and position of top of element and made width bigger*/
+ table.linkTextIndent { line-height: 95%;
+ width: 148px;
+ height: 30px;
+ position: relative;
+ top: -2px;
+ left: 20px;
+ z-index: 2; }
+
+ /*Removed background color, changed top, and bottom margins*/
+ div.linkSelected { height: 30px;
+ width: 166px;
+ position: relative;
+ top: -6px;
+ left: 0px;
+ right: 0px;
+ z-index: 1;
+ margin-bottom: -.7em; }
+
+ /*Changed top and bottom margins*/
+ div.link { height: 30px;
+ width: 166px;
+ position: relative;
+ top: -6px;
+ left: 0px;
+ right: 0px;
+ z-index: 1;
+ margin-bottom: -.7em; }
+
+ /*Comment out
+ div.vertLine { background: url(Images/DottedVert.gif) repeat;
+ height: 125%;
+ width: 1px;
+ position: relative;
+ top: -12px;
+ left: -1px; }*/
+
+ /*Deleted dotted line*/
+ span.vertLine1 { height: 100%;
+ width: 1px;
+ position: absolute;
+ top: 0px;
+ left: -1px;
+ bottom: 0px;
+ z-index: 2; }
+
+ /*Changed background color and add alpha*/
+ td.three { background-color: Window;
+ filter: Alpha(Opacity = 25); }
+
+ /*Removed all background image modification elements and set image to 0 opacity*/
+ td.threeCustom { filter: Alpha(Opacity = 0); }
+
+
+ /*Comment out
+ td.dottedline { background: url(Images/DottedHori.gif) repeat; }*/
+
+ /*Removed border color*/
+ div.inlineA { position: relative;
+ top: 4px;
+ width: 100%;
+ height: 1px; }
+
+ /*Changed border color*/
+ div.inlineB { position: relative;
+ top: -9px;
+ margin-bottom: -20px;
+ width: 100%;
+ height: 1px;
+ border-top: solid ThreeDShadow 1px; }
+
+ /*Changed position of element*/
+ h4.head { font-weight: bold;
+ font-size: 10pt;
+ color: windowtext;
+ position: absolute;
+ top: 16px;
+ left: 120px;
+ height: 24px; }
+
+ /*Hide element*/
+ p.subhead { /*display: none;*/
+ color: windowtext;
+ font-size: 8pt;
+ position: absolute;
+ top: 40px;
+ left: 120px; }
+
+ /*Changed alignment to right*/
+ td.image { text-align: left; }
+
+ /*Added item to control positioning of element*/
+ div.smallA { position: absolute;
+ top: 0px;
+ left: 12px;
+ height: 78px;
+ width: 110px;
+ vertical-align: bottom; }
+
+ /*Added item to control positioning of element - 1 misspelling in html so dup of above*/
+ div.smalA { position: absolute;
+ top: 0px;
+ left: 12px;
+ height: 78px;
+ width: 110px;
+ vertical-align: bottom; }
+
+ /*Added item to control positioning of element*/
+ div.small { position: absolute;
+ top: 0px;
+ left: 12px;
+ height: 78px;
+ width: 110px;
+ vertical-align: bottom; }
+
+ /*Added all positioning informaiton*/
+ img.smallest { background-color: activecaption;
+ position: relative;
+ bottom: 1px; }
+
+ /*Added item to control positioning of element*/
+ img.small { position: relative;
+ bottom: 1px; }
+
+ /*Add height specification*/
+ td.rule { background-color: window;
+ height: 1px; }
+
+ /*Info for new button*/
+ #PreviousBtn { position: relative;
+ right: -79px; }
+ /*Info for new button*/
+ #NextBtn { position: relative;
+ right: -79px; }
+
+ /*Reposition button*/
+ #FinishBtn { position: relative;
+ right: -79px; }
+
+ /*Reposition button*/
+ #CancelBtn { position: relative;
+ right: -79px; }
+
+ /*Hide button*/
+ #HelpBtn { display: none; }
+
+
+ /**************************************************************************/
diff --git a/MirandaPlugin/HTML/1033/default.htm b/MirandaPlugin/HTML/1033/default.htm
new file mode 100644
index 0000000..1bb195c
--- /dev/null
+++ b/MirandaPlugin/HTML/1033/default.htm
@@ -0,0 +1,425 @@
+<HTML DIR="LTR">
+
+<HEAD>
+ <TITLE>'Miranda Plugin'</TITLE>
+ <META NAME="vs_targetSchema" CONTENT="http://schemas.microsoft.com/intellisense/ie5">
+ <LINK ID="LINKURL" REL="stylesheet" HREF="../../1033/NewStyles.css">
+
+ <!-- -->
+ <!-- The SYMBOL tag is used to set the default values for the user-defined symbols.-->
+ <!-- -->
+
+ <SYMBOL NAME='WIZARD_DIALOG_TITLE' TYPE=text VALUE='Miranda Plugin'></SYMBOL>
+
+ <SYMBOL NAME='AUTHOR_NAME' TYPE=text VALUE='Joe Blogs'></SYMBOL>
+ <SYMBOL NAME='AUTHOR_EMAIL' TYPE=text VALUE='nobody@nowhere.com'></SYMBOL>
+ <SYMBOL NAME='AUTHOR_WEB' TYPE=text VALUE='http://nowhere.com'></SYMBOL>
+
+ <SYMBOL NAME='COPYRIGHT' TYPE=text VALUE='© 2007 Joe Blogs'></SYMBOL>
+
+ <SYMBOL NAME='PLUGIN_DESC' TYPE=text VALUE='My funky new plugin'></SYMBOL>
+
+ <SYMBOL NAME='API_INCLUDE_DIR' TYPE=text VALUE='../../include'></SYMBOL>
+ <SYMBOL NAME='OPTIONS_PAGE' TYPE=checkbox VALUE=true></SYMBOL>
+
+ <SYMBOL NAME='FILTER_CODE' TYPE=checkbox VALUE=false></SYMBOL>
+ <SYMBOL NAME='USE_NETLIB' TYPE=checkbox VALUE=false></SYMBOL>
+ <SYMBOL NAME='MAIN_MENU' TYPE=checkbox VALUE=false></SYMBOL>
+ <SYMBOL NAME='CONTACT_MENU' TYPE=checkbox VALUE=false></SYMBOL>
+</HEAD>
+
+<BODY BGCOLOR="BUTTONFACE" TOPMARGIN="0" LEFTMARGIN="0" RIGHTMARGIN="0" BOTTOMMARGIN="0" ONLOAD="InitDocument(document);" ONKEYDOWN="OnKey();" ONKEYPRESS="OnPress();">
+
+<TABLE CLASS="ONE" HEIGHT="100%" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+<COL CLASS="LinkPane"><col>
+
+ <!--OPEN OF INTRODUCTORY INFORMATION TABLE//-->
+ <TR VALIGN="TOP">
+ <TD HEIGHT="79" WIDTH="100%" COLSPAN="2">
+ <TABLE CLASS="TWO" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD CLASS="IMAGE" VALIGN="BOTTOM" WIDTH="110" ROWSPAN="2">
+ <DIV CLASS="SMALLA" ID="Layer0">
+ <IMG CLASS="SMALLEST" SRC="../../Images/MirandaPlugin.gif" WIDTH="63" HEIGHT="63" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="6" ROWSPAN="2">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65">
+ <H4 CLASS="HEAD" ID="HEAD">New Miranda Plugin</H4>
+ <P CLASS="SUBHEAD" ID="SUBHEAD">This wizard will create the basic code required to build a working plugin for Miranda-IM</P>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="5" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ <!--CLOSE OF INTRODUCTORY INFORMATION TABLE//-->
+
+ <!--OPEN OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ <TR VALIGN="TOP">
+ <TD class="Three" VALIGN="TOP" HEIGHT="100%">
+
+ <!--OPEN OF NAVIGATION TABLE//-->
+
+ <TABLE CLASS="THREE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="1">
+ <TR>
+ <TD VALIGN="TOP" COLSPAN="3" HEIGHT="12">
+ &nbsp;
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF NAVIGATIONAL LINKS//-->
+
+ <DIV CLASS="LINKSELECTED">
+ <SPAN CLASS="VERTLINE1">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </SPAN>
+ <SPAN CLASS="HORILINE1">
+ <TABLE WIDTH="167" HEIGHT="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="28" ALT="" BORDER="0">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ </TABLE>
+ </SPAN>
+
+ <TABLE WIDTH="160" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXTSELECTED">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="100%">
+ <SPAN ID="Default" TITLE="" onClick="Next(document, 'default.htm');" TABINDEX="1">Summary</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="100%">
+ <SPAN CLASS="ACTIVELINK" ID="Details" TITLE="" onClick="Next(document, 'details.htm');" TABINDEX="1">Details</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="100%">
+ <SPAN CLASS="ACTIVELINK" ID="Options" TITLE="" onClick="Next(document, 'options.htm');" TABINDEX="1">Options</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+
+ <!--CLOSE OF NAVIGATIONAL LINKS//-->
+ </TD>
+ <TD WIDTH="1">
+ <DIV CLASS="VERTLINE">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION TABLE//-->
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF CONTENT AND BUTTON TABLE//-->
+
+ <TABLE CLASS="ONE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="100%">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <!--OPEN OF CONTENT//-->
+
+ <TABLE CLASS="CONTENT" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL WIDTH="398"><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" COLSPAN="3">
+ &nbsp;
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP" WIDTH="12">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP">
+ <SPAN CLASS="ItemTextTop" ID="PROJECT_SETTINGS_SPAN">These are the current project settings:</SPAN>
+
+ <UL>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="INC_OPTIONS" TITLE="">
+ <LABEL FOR="INC_OPTIONS"></LABEL>
+ </SPAN>
+ </LI>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="API_DIR" TITLE="">
+ <LABEL FOR="API_DIR"></LABEL>
+ </SPAN>
+ </LI>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="INC_FILTER_CODE" TITLE="">
+ <LABEL FOR="INC_FILTER_CODE"></LABEL>
+ </SPAN>
+ </LI>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="USE_NETLIB_CODE" TITLE="">
+ <LABEL FOR="USE_NETLIB_CODE"></LABEL>
+ </SPAN>
+ </LI>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="INC_MAIN_MENU" TITLE="">
+ <LABEL FOR="INC_MAIN_MENU"></LABEL>
+ </SPAN>
+ </LI>
+ <LI CLASS="LIST">
+ <SPAN CLASS="SideBtnHidden" ID="INC_CONTACT_MENU" TITLE="">
+ <LABEL FOR="INC_CONTACT_MENU"></LABEL>
+ </SPAN>
+ </LI>
+ </UL>
+
+ <P CLASS="ElementSpacer2">&nbsp;</P>
+
+ <SPAN CLASS="ItemText" ID="FinishText">Click <B>Finish</B> from any window to accept the current settings.</SPAN>
+
+ <P CLASS="ElementSpacer2">&nbsp;</P>
+
+ <SPAN CLASS="ItemText" ID="README_REMINDER" TITLE="">After you create the project, see the project's readme.txt file for information about the project features and files that are generated.</SPAN>
+ </TD>
+
+ <TD VALIGN="TOP" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF CONTENT//-->
+ </TD>
+ </TR>
+ <TR VALIGN="BOTTOM">
+ <TD HEIGHT="48">
+ <!--OPEN OF BUTTON HTML//-->
+
+ <TABLE HEIGHT="48" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="8" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="11" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="23">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="FinishBtn" ACCESSKEY="F" onClick="OnFinish(document);"><U>F</U>inish</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="CancelBtn" ACCESSKEY="C" onClick="window.external.Finish(document, 'cancel');"><U>C</U>ancel</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="HelpBtn" ACCESSKEY="H" onClick="window.external.OnHelp('vc.appwiz.custom.overview');"><U>H</U>elp</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF BUTTON HTML//-->
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ </TD>
+ </TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
+
+<SCRIPT LANGUAGE="JSCRIPT">
+
+var tab_array = new Array();
+tab_array[0] = Default;
+tab_array[1] = Details;
+tab_array[2] = Options;
+
+// This is an example of a function which initializes the page
+//
+function InitDocument(document)
+{
+ setDirection();
+
+ if (window.external.FindSymbol('DOCUMENT_FIRST_LOAD'))
+ {
+ //window.external.AddSymbol('API_INCLUDE_DIR', '../../include');
+ //window.external.AddSymbol('OPTIONS_PAGE', true);
+
+ SetLocaleForResources(window.external.GetHostLocale());
+ window.external.SetDefaults(document);
+ }
+
+ // Load the document and initialize the controls
+ // with the appropriate symbol values
+ //
+ window.external.Load(document);
+ InitControls();
+}
+
+function InitControls()
+{
+ if (window.external.FindSymbol("OPTIONS_PAGE"))
+ INC_OPTIONS.innerText = "Include an options page";
+ else
+ INC_OPTIONS.innerText = "No options page";
+
+ API_DIR.innerText = 'Miranda include folder: ' + window.external.FindSymbol("API_INCLUDE_DIR");
+
+ if (window.external.FindSymbol("FILTER_CODE"))
+ INC_FILTER_CODE.innerText = "Filter messages";
+ else
+ INC_FILTER_CODE.innerText = "No filter code";
+
+ if (window.external.FindSymbol("USE_NETLIB"))
+ USE_NETLIB_CODE.innerText = "Register with the Network Library";
+ else
+ USE_NETLIB_CODE.innerText = "Not using the Network Library";
+
+ if (window.external.FindSymbol("MAIN_MENU"))
+ INC_MAIN_MENU.innerText = "Add a Main Menu item";
+ else
+ INC_MAIN_MENU.innerText = "No Main Menu item";
+
+ if (window.external.FindSymbol("CONTACT_MENU"))
+ INC_CONTACT_MENU.innerText = "Add a Contact Menu item";
+ else
+ INC_CONTACT_MENU.innerText = "No Contact Menu item";
+}
+
+// If the wizard has more than 1 page, this
+// function will browse to the page specified
+//
+function Next(document, linkto)
+{
+ window.external.Next(document, linkto);
+}
+
+// This is an example of a function which
+// gets called when the user clicks on 'Finish'
+//
+function OnFinish(document)
+{
+ OnWizFinish(document);
+}
+
+</SCRIPT>
+<SCRIPT ID="INCLUDE_SCRIPT" LANGUAGE="JSCRIPT"></SCRIPT>
+<SCRIPT ID="INCLUDE_COMMON" LANGUAGE="JSCRIPT"></SCRIPT>
+<!--
+Common.js is a script file which contains the helper functions
+used by the wizards. Include this line if you want to
+call these functions from your html scripts.
+//-->
+<SCRIPT>
+ var strPath = window.external.FindSymbol("PRODUCT_INSTALLATION_DIR");
+ strPath += "VCWizards/";
+ strPath += window.external.GetHostLocale();
+ var strScriptPath = strPath + "/Script.js";
+ var strCommonPath = strPath + "/Common.js";
+ document.scripts("INCLUDE_SCRIPT").src = strScriptPath;
+ document.scripts("INCLUDE_COMMON").src = strCommonPath;
+</SCRIPT> \ No newline at end of file
diff --git a/MirandaPlugin/HTML/1033/details.htm b/MirandaPlugin/HTML/1033/details.htm
new file mode 100644
index 0000000..ed48f7b
--- /dev/null
+++ b/MirandaPlugin/HTML/1033/details.htm
@@ -0,0 +1,366 @@
+<HTML DIR="LTR">
+
+<HEAD>
+ <TITLE>'Miranda Plugin'</TITLE>
+ <META NAME="vs_targetSchema" CONTENT="http://schemas.microsoft.com/intellisense/ie5">
+ <LINK ID="LINKURL" REL="stylesheet" HREF="../../1033/NewStyles.css">
+</HEAD>
+
+<BODY BGCOLOR="BUTTONFACE" TOPMARGIN="0" LEFTMARGIN="0" RIGHTMARGIN="0" BOTTOMMARGIN="0" ONLOAD="InitDocument(document);" ONKEYDOWN="OnKey();" ONKEYPRESS="OnPress();">
+
+<TABLE CLASS="ONE" HEIGHT="100%" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+
+
+<COL CLASS="LinkPane"><COL>
+
+ <!--OPEN OF INTRODUCTORY INFORMATION TABLE//-->
+ <TR VALIGN="TOP">
+ <TD HEIGHT="79" WIDTH="100%" COLSPAN="2">
+ <TABLE CLASS="TWO" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD CLASS="IMAGE" VALIGN="BOTTOM" WIDTH="110" ROWSPAN="2">
+ <DIV CLASS="SMALLA" ID="Layer0">
+ <IMG CLASS="SMALLEST" SRC="..\..\Images\MirandaPlugin.gif" WIDTH="63" HEIGHT="63" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="6" ROWSPAN="2">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65">
+ <H4 CLASS="HEAD" ID="HEAD">New Miranda Plugin</H4>
+ <P CLASS="SUBHEAD" ID="SUBHEAD">This wizard will create the basic code required to build a working plugin for Miranda-IM</P>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="5" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ <!--CLOSE OF INTRODUCTORY INFORMATION TABLE//-->
+
+ <!--OPEN OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ <TR VALIGN="TOP">
+ <TD CLASS="Three" VALIGN="TOP" HEIGHT="100%" WIDTH="100%">
+
+ <!--OPEN OF NAVIGATION TABLE//-->
+
+ <TABLE CLASS="THREE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="1">
+ <TR>
+ <TD VALIGN="TOP" COLSPAN="3" HEIGHT="12">
+ &nbsp;
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF NAVIGATIONAL LINKS//-->
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN CLASS="ACTIVELINK" ID="Default" TITLE="" onClick="Next(document, 'default.htm');" TABINDEX="1">Summary</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINKSELECTED">
+ <SPAN CLASS="VERTLINE1">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </SPAN>
+ <SPAN CLASS="HORILINE1">
+ <TABLE WIDTH="167" HEIGHT="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="28" ALT="" BORDER="0">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ </TABLE>
+ </SPAN>
+
+ <TABLE WIDTH="160" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXTSELECTED">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN ID="Details" TITLE="" onClick="Next(document, 'details.htm');" TABINDEX="1">Details</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN CLASS="ACTIVELINK" ID="Options" TITLE="" onClick="Next(document, 'options.htm');" TABINDEX="1">Options</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <!--CLOSE OF NAVIGATIONAL LINKS//-->
+ </TD>
+ <TD WIDTH="1">
+ <DIV CLASS="VERTLINE">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION TABLE//-->
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF CONTENT AND BUTTON TABLE//-->
+
+ <TABLE CLASS="ONE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="100%">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <!--OPEN OF CONTENT//-->
+
+ <TABLE CLASS="CONTENT" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="30" COLSPAN="5">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP">
+ <SPAN CLASS="itemTextTop" ID="ADDITIONAL_OPTIONS_SPAN" TITLE=""></span>
+ <span class="itemText">
+ <P CLASS="Spacer">&nbsp;</P>
+
+ <DIV CLASS="itemText" TITLE="The name of the author." ID="DIV3">
+ <LABEL FOR="AUTHOR_NAME" ID="AUTHOR_NAME_LABEL">Author name:</LABEL><br>
+ <INPUT TYPE="text" CLASS="itemText" ACCESSKEY="N" ID="AUTHOR_NAME" TITLE="The name of the author." onPropertyChange="OnAuthorName(this);">
+ </DIV>
+
+ <br>
+
+ <DIV CLASS="itemText" TITLE="The email address of the author." ID="DIV4">
+ <LABEL FOR="AUTHOR_EMAIL" ID="AUTHOR_EMAIL_LABEL">Author email:</LABEL><br>
+ <INPUT TYPE="text" CLASS="itemText" ACCESSKEY="E" ID="AUTHOR_EMAIL" TITLE="The email address of the author." onPropertyChange="OnAuthorEmail(this);">
+ </DIV>
+
+ <br>
+
+ <DIV CLASS="itemText" TITLE="The address of the author's website." ID="DIV5">
+ <LABEL FOR="AUTHOR_WEB" ID="AUTHOR_WEB_LABEL">Author website:</LABEL><br>
+ <INPUT TYPE="text" CLASS="itemText" ACCESSKEY="W" ID="AUTHOR_WEB" TITLE="The address of the author's website." onPropertyChange="OnAuthorWeb(this);">
+ </DIV>
+
+ <br>
+
+ <DIV CLASS="itemText" TITLE="A description of the plugin's function." ID="DIV6">
+ <LABEL FOR="PLUGIN_DESC_TXT" ID="PLUGIN_DESC_LABEL">Plugin description:</LABEL><br>
+ <textarea CLASS="itemText" ACCESSKEY="D" ID="PLUGIN_DESC_TXT" TITLE="A description of the plugin's function." onChange="OnPluginDesc(this);" rows='5' cols='40'></textarea>
+ </DIV>
+ </span>
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF CONTENT//-->
+ </TD>
+ </TR>
+ <TR VALIGN="BOTTOM">
+ <TD HEIGHT="48">
+ <!--OPEN OF BUTTON HTML//-->
+
+ <TABLE HEIGHT="48" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="8" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="11" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="23">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="FinishBtn" ACCESSKEY="F" onClick="OnFinish(document);"><U>F</U>inish</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="CancelBtn" ACCESSKEY="C" onClick="window.external.Finish(document, 'cancel');"><U>C</U>ancel</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="HelpBtn" ACCESSKEY="H" onClick="window.external.OnHelp('vc.appwiz.custom.overview');"><U>H</U>elp</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF BUTTON HTML//-->
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ </TD>
+ </TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
+
+<SCRIPT LANGUAGE="JSCRIPT">
+
+var tab_array = new Array();
+tab_array[0] = Default;
+tab_array[1] = Details;
+tab_array[2] = Options;
+
+// This is an example of a function which initializes the page
+//
+function InitDocument(document)
+{
+ setDirection();
+
+ // Load the document and initialize the controls
+ // with the appropriate symbol values
+ //
+ PLUGIN_DESC_TXT.value = window.external.FindSymbol("PLUGIN_DESC");
+ window.external.Load(document);
+ InitControls();
+}
+
+function InitControls()
+{
+}
+// If the wizard has more than 1 page, this
+// function will browse to the page specified
+//
+function Next(document, linkto)
+{
+ window.external.Next(document, linkto);
+}
+
+// This is an example of a function which
+// gets called when the user clicks on 'Finish'
+//
+function OnFinish(document)
+{
+ OnWizFinish(document);
+}
+
+function OnAuthorName(obj) {
+ var d = new Date();
+ var strCopy = '© ' + d.getFullYear().toString() + ' ' + obj.value;
+ window.external.AddSymbol("COPYRIGHT", strCopy);
+}
+
+function OnAuthorEmail() {
+}
+
+function OnAuthorWeb() {
+}
+
+function OnPluginDesc(obj) {
+ window.external.AddSymbol("PLUGIN_DESC", obj.value);
+}
+
+</SCRIPT>
+<SCRIPT ID="INCLUDE_SCRIPT" LANGUAGE="JSCRIPT"></SCRIPT>
+<SCRIPT ID="INCLUDE_COMMON" LANGUAGE="JSCRIPT"></SCRIPT>
+<!--
+Common.js is a script file which contains the helper functions
+used by the wizards. Include this line if you want to
+call these functions from your html scripts.
+//-->
+<SCRIPT>
+ var strPath = window.external.FindSymbol("PRODUCT_INSTALLATION_DIR");
+ strPath += "VCWizards/";
+ strPath += window.external.GetHostLocale();
+ var strScriptPath = strPath + "/Script.js";
+ var strCommonPath = strPath + "/Common.js";
+ document.scripts("INCLUDE_SCRIPT").src = strScriptPath;
+ document.scripts("INCLUDE_COMMON").src = strCommonPath;
+</SCRIPT> \ No newline at end of file
diff --git a/MirandaPlugin/HTML/1033/options.htm b/MirandaPlugin/HTML/1033/options.htm
new file mode 100644
index 0000000..f31c95f
--- /dev/null
+++ b/MirandaPlugin/HTML/1033/options.htm
@@ -0,0 +1,390 @@
+<HTML DIR="LTR">
+
+<HEAD>
+ <TITLE>'Miranda Plugin'</TITLE>
+ <META NAME="vs_targetSchema" CONTENT="http://schemas.microsoft.com/intellisense/ie5">
+ <LINK ID="LINKURL" REL="stylesheet" HREF="../../1033/NewStyles.css">
+</HEAD>
+
+<BODY BGCOLOR="BUTTONFACE" TOPMARGIN="0" LEFTMARGIN="0" RIGHTMARGIN="0" BOTTOMMARGIN="0" ONLOAD="InitDocument(document);" ONKEYDOWN="OnKey();" ONKEYPRESS="OnPress();">
+
+<TABLE CLASS="ONE" HEIGHT="100%" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+
+
+<COL CLASS="LinkPane"><COL>
+
+ <!--OPEN OF INTRODUCTORY INFORMATION TABLE//-->
+ <TR VALIGN="TOP">
+ <TD HEIGHT="79" WIDTH="100%" COLSPAN="2">
+ <TABLE CLASS="TWO" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD CLASS="IMAGE" VALIGN="BOTTOM" WIDTH="110" ROWSPAN="2">
+ <DIV CLASS="SMALLA" ID="Layer0">
+ <IMG CLASS="SMALLEST" SRC="..\..\Images\MirandaPlugin.gif" WIDTH="63" HEIGHT="63" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="12" WIDTH="6" ROWSPAN="2">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65">
+ <H4 CLASS="HEAD" ID="HEAD">New Miranda Plugin</H4>
+ <P CLASS="SUBHEAD" ID="SUBHEAD">This wizard will create the basic code required to build a working plugin for Miranda-IM</P>
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="65" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="5" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ <!--CLOSE OF INTRODUCTORY INFORMATION TABLE//-->
+
+ <!--OPEN OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ <TR VALIGN="TOP">
+ <TD CLASS="Three" VALIGN="TOP" HEIGHT="100%" WIDTH="100%">
+
+ <!--OPEN OF NAVIGATION TABLE//-->
+
+ <TABLE CLASS="THREE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="1">
+ <TR>
+ <TD VALIGN="TOP" COLSPAN="3" HEIGHT="12">
+ &nbsp;
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF NAVIGATIONAL LINKS//-->
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN CLASS="ACTIVELINK" ID="Default" TITLE="" onClick="Next(document, 'default.htm');" TABINDEX="1">Summary</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINK">
+ <TABLE WIDTH="100%" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXT">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN CLASS="ACTIVELINK" ID="Details" TITLE="" onClick="Next(document, 'details.htm');" TABINDEX="1">Details</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+ <DIV CLASS="LINKSELECTED">
+ <SPAN CLASS="VERTLINE1">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </SPAN>
+ <SPAN CLASS="HORILINE1">
+ <TABLE WIDTH="167" HEIGHT="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="28" ALT="" BORDER="0">
+ </TD>
+ </TR>
+ <TR VALIGN="TOP">
+ <TD CLASS="DOTTEDLINE" HEIGHT="1">
+ </TD>
+ </TR>
+ </TABLE>
+ </SPAN>
+
+ <TABLE WIDTH="160" HEIGHT="28" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="LINKTEXTSELECTED">
+ <TR VALIGN="MIDDLE">
+ <TD WIDTH="162">
+ <SPAN ID="Options" TITLE="" onClick="Next(document, 'options.htm');" TABINDEX="1">Options</SPAN>
+ </TD>
+ <TD WIDTH="4">
+ <IMG SRC="../../Images/spacer.gif" HEIGHT="1" WIDTH="4">
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+
+
+ <!--CLOSE OF NAVIGATIONAL LINKS//-->
+ </TD>
+ <TD WIDTH="1">
+ <DIV CLASS="VERTLINE">
+ <IMG SRC="../../Images/spacer.gif" WIDTH="1" HEIGHT="1" ALT="" BORDER="0">
+ </DIV>
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION TABLE//-->
+ </TD>
+
+ <TD VALIGN="TOP" HEIGHT="100%">
+ <!--OPEN OF CONTENT AND BUTTON TABLE//-->
+
+ <TABLE CLASS="ONE" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="100%">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="100%">
+ <!--OPEN OF CONTENT//-->
+
+ <TABLE CLASS="CONTENT" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="30" COLSPAN="3">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP">
+ <SPAN CLASS="itemTextTop" ID="APPLICATION_TYPE_LABEL" TITLE=""></span>
+
+ <span class="itemText">
+ <P CLASS="Spacer">&nbsp;</P>
+
+ <DIV CLASS="itemText" TITLE="The name of the folder where the Miranda include files are located." ID="DIV2">
+ <LABEL FOR="API_INCLUDE_DIR" ID="API_INCLUDE_DIR_LABEL">Miranda include folder:</LABEL><br>
+ <INPUT TYPE="text" CLASS="itemText" ACCESSKEY="F" ID="API_INCLUDE_DIR" TITLE="The name of the folder where the Miranda include files are located." onPropertyChange="OnIncludeDir();">
+ </DIV>
+
+ <br>
+
+ <INPUT TYPE="checkbox" CLASS="CheckBoxA" ACCESSKEY="O" ID="OPTIONS_PAGE" TITLE="This option creates an empty options page. Use this when you intend to include user configurable options." onPropertyChange="OnOptionsPage();">
+ <DIV CLASS="itemTextCheckboxB" TITLE="This option creates an empty options page. Use this when you intend to include user configurable options." ID="DIV1">
+ <LABEL FOR="OPTIONS_PAGE" ID="OPTIONS_PAGE_LABEL">Include an empty <U>O</U>ptions page</LABEL>
+ </DIV>
+ </span>
+
+ <br>
+
+ <INPUT TYPE="checkbox" CLASS="CheckBoxA" ACCESSKEY="I" ID="FILTER_CODE" TITLE="This option adds code to filter messages." onPropertyChange="OnFilterCode();">
+ <DIV CLASS="itemTextCheckboxB" TITLE="This option adds code to filter messages." ID="DIV3">
+ <LABEL FOR="FILTER_CODE" ID="FILTER_CODE_LABEL">Include F<U>i</U>lter code</LABEL>
+ </DIV>
+
+ <br>
+
+ <INPUT TYPE="checkbox" CLASS="CheckBoxA" ACCESSKEY="W" ID="USE_NETLIB" TITLE="Register with the network library." onPropertyChange="OnUseNetlib();">
+ <DIV CLASS="itemTextCheckboxB" TITLE="Register with the network library." ID="DIV4">
+ <LABEL FOR="USE_NETLIB" ID="USE_NETLIB_LABEL">Register with the Net<U>w</U>ork Library</LABEL>
+ </DIV>
+ </span>
+
+ <br>
+
+ <INPUT TYPE="checkbox" CLASS="CheckBoxA" ACCESSKEY="M" ID="MAIN_MENU" TITLE="Add a Main Menu item." onPropertyChange="OnMainMenu();">
+ <DIV CLASS="itemTextCheckboxB" TITLE="Add a Main Menu item." ID="DIV5">
+ <LABEL FOR="MAIN_MENU" ID="MAIN_MENU_LABEL">Add a <U>M</U>ain Menu item</LABEL>
+ </DIV>
+ </span>
+
+ <br>
+
+ <INPUT TYPE="checkbox" CLASS="CheckBoxA" ACCESSKEY="M" ID="CONTACT_MENU" TITLE="Add a Contact Menu item." onPropertyChange="OnContactMenu();">
+ <DIV CLASS="itemTextCheckboxB" TITLE="Add a Contact Menu item." ID="DIV6">
+ <LABEL FOR="CONTACT_MENU" ID="CONTACT_MENU_LABEL">Add a <U>C</U>ontact Menu item</LABEL>
+ </DIV>
+ </span>
+
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF CONTENT//-->
+ </TD>
+ </TR>
+ <TR VALIGN="BOTTOM">
+ <TD HEIGHT="48">
+ <!--OPEN OF BUTTON HTML//-->
+
+ <TABLE HEIGHT="48" BORDER="0" CELLPADDING="0" CELLSPACING="0">
+ <COL WIDTH="12"><COL><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="4"><COL WIDTH="75"><COL WIDTH="12">
+ <TR>
+ <TD VALIGN="TOP" CLASS="RULE" COLSPAN="8" HEIGHT="2">
+ <TABLE BORDER="0" WIDTH="100%" HEIGHT="1" CELLPADDING="0" CELLSPACING="0">
+ <TR VALIGN="TOP">
+ <TD HEIGHT="1" WIDTH="100%" BGCOLOR="BUTTONSHADOW"></TD>
+ <TD HEIGHT="1" WIDTH="1" BGCOLOR="WINDOW"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="11" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ <TD VALIGN="TOP" HEIGHT="23">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="FinishBtn" ACCESSKEY="F" onClick="OnFinish(document);"><U>F</U>inish</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="CancelBtn" ACCESSKEY="C" onClick="window.external.Finish(document, 'cancel');"><U>C</U>ancel</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="4">
+ &nbsp;
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="75">
+ <BUTTON CLASS="BUTTONS" ID="HelpBtn" ACCESSKEY="H" onClick="window.external.OnHelp('vc.appwiz.custom.overview');"><U>H</U>elp</BUTTON>
+ </TD>
+ <TD VALIGN="MIDDLE" HEIGHT="23" WIDTH="12">
+ &nbsp;
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP" HEIGHT="12" COLSPAN="8">
+ &nbsp;
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF BUTTON HTML//-->
+ </TD>
+ </TR>
+ </TABLE>
+
+ <!--CLOSE OF NAVIGATION, CONTENT, AND BUTTON TABLES//-->
+ </TD>
+ </TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
+
+<SCRIPT LANGUAGE="JSCRIPT">
+
+var tab_array = new Array();
+tab_array[0] = Default;
+tab_array[1] = Details;
+tab_array[2] = Options;
+
+// This is an example of a function which initializes the page
+//
+function InitDocument(document)
+{
+ setDirection();
+
+ // Load the document and initialize the controls
+ // with the appropriate symbol values
+ //
+ OPTIONS_PAGE.focus();
+ window.external.Load(document);
+ InitControls();
+}
+
+function InitControls()
+{
+ OPTIONS_PAGE.disabled = false;
+ FILTER_CODE.disabled = false;
+}
+// If the wizard has more than 1 page, this
+// function will browse to the page specified
+//
+function Next(document, linkto)
+{
+ window.external.Next(document, linkto);
+}
+
+// This is an example of a function which
+// gets called when the user clicks on 'Finish'
+//
+function OnFinish(document)
+{
+ OnWizFinish(document);
+}
+
+function OnIncludeDir() {
+}
+
+function OnOptionsPage() {
+}
+
+function OnFilterCode() {
+}
+
+function OnUseNetlib() {
+}
+
+function OnMainMenu() {
+}
+
+function OnContactMenu() {
+}
+
+</SCRIPT>
+<SCRIPT ID="INCLUDE_SCRIPT" LANGUAGE="JSCRIPT"></SCRIPT>
+<SCRIPT ID="INCLUDE_COMMON" LANGUAGE="JSCRIPT"></SCRIPT>
+<!--
+Common.js is a script file which contains the helper functions
+used by the wizards. Include this line if you want to
+call these functions from your html scripts.
+//-->
+<SCRIPT>
+ var strPath = window.external.FindSymbol("PRODUCT_INSTALLATION_DIR");
+ strPath += "VCWizards/";
+ strPath += window.external.GetHostLocale();
+ var strScriptPath = strPath + "/Script.js";
+ var strCommonPath = strPath + "/Common.js";
+ document.scripts("INCLUDE_SCRIPT").src = strScriptPath;
+ document.scripts("INCLUDE_COMMON").src = strCommonPath;
+</SCRIPT> \ No newline at end of file
diff --git a/MirandaPlugin/INSTALL.txt b/MirandaPlugin/INSTALL.txt
new file mode 100644
index 0000000..98a8f9b
--- /dev/null
+++ b/MirandaPlugin/INSTALL.txt
@@ -0,0 +1,4 @@
+make sure VCPATH in the install.bat file is correct!
+
+this batch file can be run manually to install the wizard.
+it is also run as a 'post-build' step when building the project. \ No newline at end of file
diff --git a/MirandaPlugin/Images/MirandaPlugin.gif b/MirandaPlugin/Images/MirandaPlugin.gif
new file mode 100644
index 0000000..4ee582d
--- /dev/null
+++ b/MirandaPlugin/Images/MirandaPlugin.gif
Binary files differ
diff --git a/MirandaPlugin/Images/MirandaPlugin_Background.gif b/MirandaPlugin/Images/MirandaPlugin_Background.gif
new file mode 100644
index 0000000..7615277
--- /dev/null
+++ b/MirandaPlugin/Images/MirandaPlugin_Background.gif
Binary files differ
diff --git a/MirandaPlugin/Images/mim_logo.gif b/MirandaPlugin/Images/mim_logo.gif
new file mode 100644
index 0000000..d67dc4c
--- /dev/null
+++ b/MirandaPlugin/Images/mim_logo.gif
Binary files differ
diff --git a/MirandaPlugin/MirandaPlugin.ico b/MirandaPlugin/MirandaPlugin.ico
new file mode 100644
index 0000000..f7791c3
--- /dev/null
+++ b/MirandaPlugin/MirandaPlugin.ico
Binary files differ
diff --git a/MirandaPlugin/MirandaPlugin.sln b/MirandaPlugin/MirandaPlugin.sln
new file mode 100644
index 0000000..7b7ac3b
--- /dev/null
+++ b/MirandaPlugin/MirandaPlugin.sln
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MirandaPlugin", "MirandaPlugin.vcproj", "{CA038F81-E0CB-4081-805B-8B165A5219F6}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {CA038F81-E0CB-4081-805B-8B165A5219F6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CA038F81-E0CB-4081-805B-8B165A5219F6}.Debug|Win32.Build.0 = Debug|Win32
+ {CA038F81-E0CB-4081-805B-8B165A5219F6}.Release|Win32.ActiveCfg = Release|Win32
+ {CA038F81-E0CB-4081-805B-8B165A5219F6}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/MirandaPlugin/MirandaPlugin.vcproj b/MirandaPlugin/MirandaPlugin.vcproj
new file mode 100644
index 0000000..2f7498d
--- /dev/null
+++ b/MirandaPlugin/MirandaPlugin.vcproj
@@ -0,0 +1,229 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="MirandaPlugin"
+ ProjectGUID="{CA038F81-E0CB-4081-805B-8B165A5219F6}"
+ RootNamespace="MirandaPlugin"
+ Keyword="CustomAppWizProj"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="10"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="install.bat"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
+ ConfigurationType="10"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="install.bat"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Template Files"
+ Filter="txt"
+ >
+ <File
+ RelativePath=".\Templates\1033\base.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\base.rc"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\common.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\common.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\filter.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\filter.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\menu.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\menu.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\menu.ico"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\net.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\net.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\options.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\options.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\readme.txt"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\resource.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\resource.rc"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\version.h"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\version.rc"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="HTML Files"
+ Filter="htm"
+ >
+ <File
+ RelativePath=".\HTML\1033\default.htm"
+ DeploymentContent="true"
+ >
+ </File>
+ <File
+ RelativePath=".\HTML\1033\details.htm"
+ DeploymentContent="true"
+ >
+ </File>
+ <File
+ RelativePath=".\HTML\1033\options.htm"
+ DeploymentContent="true"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Image Files"
+ Filter="bmp"
+ >
+ <File
+ RelativePath=".\1033\Images\DottedHori.gif"
+ >
+ </File>
+ <File
+ RelativePath=".\1033\Images\DottedVert.gif"
+ >
+ </File>
+ <File
+ RelativePath=".\Images\mim_logo.gif"
+ >
+ </File>
+ <File
+ RelativePath=".\Images\MirandaPlugin.gif"
+ >
+ </File>
+ <File
+ RelativePath=".\Images\MirandaPlugin_Background.gif"
+ >
+ </File>
+ <File
+ RelativePath=".\1033\Images\spacer.gif"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Script Files"
+ Filter="js"
+ >
+ <File
+ RelativePath=".\Scripts\1033\default.js"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Miscellaneous Files"
+ Filter="vsz;vsdir;ico;vcproj;csproj;css;inf"
+ >
+ <File
+ RelativePath=".\default.vcproj"
+ >
+ </File>
+ <File
+ RelativePath=".\MirandaPlugin.ico"
+ >
+ </File>
+ <File
+ RelativePath=".\MirandaPlugin.vsdir"
+ >
+ </File>
+ <File
+ RelativePath=".\MirandaPlugin.vsz"
+ >
+ </File>
+ <File
+ RelativePath=".\1033\NewStyles.css"
+ >
+ </File>
+ <File
+ RelativePath=".\Templates\1033\Templates.inf"
+ >
+ </File>
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/MirandaPlugin/MirandaPlugin.vsdir b/MirandaPlugin/MirandaPlugin.vsdir
new file mode 100644
index 0000000..ee8a3f2
--- /dev/null
+++ b/MirandaPlugin/MirandaPlugin.vsdir
@@ -0,0 +1 @@
+MirandaPlugin.vsz| |Miranda Plugin|1|Create a plugin for Miranda-IM| |6777| |<Enter_name>
diff --git a/MirandaPlugin/MirandaPlugin.vsz b/MirandaPlugin/MirandaPlugin.vsz
new file mode 100644
index 0000000..e5c1b99
--- /dev/null
+++ b/MirandaPlugin/MirandaPlugin.vsz
@@ -0,0 +1,6 @@
+VSWIZARD 7.0
+Wizard=VsWizard.VsWizardEngine.8.0
+
+Param="WIZARD_NAME = MirandaPlugin"
+Param="RELATIVE_PATH = VCWizards"
+Param="FALLBACK_LCID = 1033"
diff --git a/MirandaPlugin/Scripts/1033/default.js b/MirandaPlugin/Scripts/1033/default.js
new file mode 100644
index 0000000..748930e
--- /dev/null
+++ b/MirandaPlugin/Scripts/1033/default.js
@@ -0,0 +1,310 @@
+
+function OnFinish(selProj, selObj)
+{
+ try
+ {
+ var strProjectPath = wizard.FindSymbol('PROJECT_PATH');
+ var strProjectName = wizard.FindSymbol('PROJECT_NAME');
+
+ selProj = CreateCustomProject(strProjectName, strProjectPath);
+ AddConfig(selProj, strProjectName);
+ AddFilters(selProj);
+
+ var InfFile = CreateCustomInfFile();
+ AddFilesToCustomProj(selProj, strProjectName, strProjectPath, InfFile);
+ PchSettings(selProj);
+ InfFile.Delete();
+
+ ExcludeResources(selProj, strProjectName);
+
+ selProj.Object.Save();
+ }
+ catch(e)
+ {
+ if (e.description.length != 0)
+ SetErrorInfo(e);
+ return e.number
+ }
+}
+
+function CreateCustomProject(strProjectName, strProjectPath)
+{
+ try
+ {
+ var strProjTemplatePath = wizard.FindSymbol('START_PATH'); //wizard.FindSymbol('PROJECT_TEMPLATE_PATH');
+ var strProjTemplate = '';
+ strProjTemplate = strProjTemplatePath + '\\default.vcproj';
+
+ var Solution = dte.Solution;
+ var strSolutionName = "";
+ if (wizard.FindSymbol("CLOSE_SOLUTION"))
+ {
+ Solution.Close();
+ strSolutionName = wizard.FindSymbol("VS_SOLUTION_NAME");
+ if (strSolutionName.length)
+ {
+ var strSolutionPath = strProjectPath.substr(0, strProjectPath.length - strProjectName.length);
+ Solution.Create(strSolutionPath, strSolutionName);
+ }
+ }
+
+ var strProjectNameWithExt = '';
+ strProjectNameWithExt = strProjectName + '.vcproj';
+
+ var oTarget = wizard.FindSymbol("TARGET");
+ var prj;
+ if (wizard.FindSymbol("WIZARD_TYPE") == vsWizardAddSubProject) // vsWizardAddSubProject
+ {
+ var prjItem = oTarget.AddFromTemplate(strProjTemplate, strProjectNameWithExt);
+ prj = prjItem.SubProject;
+ }
+ else
+ {
+ prj = oTarget.AddFromTemplate(strProjTemplate, strProjectPath, strProjectNameWithExt);
+ }
+ return prj;
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function AddFilters(proj)
+{
+ try {
+ SetupFilters(proj);
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function AddConfig(proj, strProjectName)
+{
+ try
+ {
+ var config = proj.Object.Configurations('Debug');
+ config.IntermediateDirectory = '$(ConfigurationName)';
+ config.OutputDirectory = '$(ConfigurationName)';
+ config.ConfigurationType = typeDynamicLibrary;
+
+ var CLTool = config.Tools('VCCLCompilerTool');
+ CLTool.AdditionalIncludeDirectories = wizard.FindSymbol("API_INCLUDE_DIR");
+ CLTool.PrecompiledHeaderThrough = "common.h";
+ CLTool.DisableSpecificWarnings = "4996";
+ CLTool.PreprocessorDefinitions = "_DEBUG;_WINDOWS;_USERDLL";
+ CLTool.RuntimeLibrary = rtMultiThreadedDebug;
+ CLTool.Optimization = optimizeDisabled;
+
+ var LinkTool = config.Tools('VCLinkerTool');
+ LinkTool.SubSystem = subSystemWindows;
+
+ var config = proj.Object.Configurations('Release');
+ config.IntermediateDirectory = '$(ConfigurationName)';
+ config.OutputDirectory = '$(ConfigurationName)';
+ config.ConfigurationType = typeDynamicLibrary;
+
+ var CLTool = config.Tools('VCCLCompilerTool');
+ CLTool.AdditionalIncludeDirectories = wizard.FindSymbol("API_INCLUDE_DIR");
+ CLTool.PrecompiledHeaderThrough = "common.h";
+ CLTool.DisableSpecificWarnings = "4996";
+ CLTool.PreprocessorDefinitions = "NDEBUG;_WINDOWS;_USERDLL";
+ CLTool.RuntimeLibrary = rtMultiThreaded;
+
+ var LinkTool = config.Tools('VCLinkerTool');
+ LinkTool.SubSystem = subSystemWindows;
+
+ var config = proj.Object.Configurations('Debug (Unicode)');
+ config.IntermediateDirectory = '$(ConfigurationName)';
+ config.OutputDirectory = '$(ConfigurationName)';
+ config.ConfigurationType = typeDynamicLibrary;
+ config.CharacterSet = charSetUNICODE;
+
+ var CLTool = config.Tools('VCCLCompilerTool');
+ CLTool.AdditionalIncludeDirectories = wizard.FindSymbol("API_INCLUDE_DIR");
+ CLTool.PrecompiledHeaderThrough = "common.h";
+ CLTool.DisableSpecificWarnings = "4996";
+ CLTool.PreprocessorDefinitions = "_DEBUG;_WINDOWS;_USERDLL;UNICODE;_UNICODE";
+ CLTool.RuntimeLibrary = rtMultiThreadedDebug;
+ CLTool.Optimization = optimizeDisabled;
+
+ var LinkTool = config.Tools('VCLinkerTool');
+ LinkTool.SubSystem = subSystemWindows;
+
+ var config = proj.Object.Configurations('Release (Unicode)');
+ config.IntermediateDirectory = '$(ConfigurationName)';
+ config.OutputDirectory = '$(ConfigurationName)';
+ config.ConfigurationType = typeDynamicLibrary;
+ config.CharacterSet = charSetUNICODE;
+
+ var CLTool = config.Tools('VCCLCompilerTool');
+ CLTool.AdditionalIncludeDirectories = wizard.FindSymbol("API_INCLUDE_DIR");
+ CLTool.PrecompiledHeaderThrough = "common.h";
+ CLTool.DisableSpecificWarnings = "4996";
+ CLTool.PreprocessorDefinitions = "NDEBUG;_WINDOWS;_USERDLL;UNICODE;_UNICODE";
+ CLTool.RuntimeLibrary = rtMultiThreaded;
+
+ var LinkTool = config.Tools('VCLinkerTool');
+ LinkTool.SubSystem = subSystemWindows;
+
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function ExcludeResources(proj, strProjectName) {
+ try
+ {
+ for (var fileIdx = 1; fileIdx <= proj.Object.Files.Count; fileIdx++)
+ {
+ var file = proj.Object.Files.Item(fileIdx);
+ if (file.Extension.toLowerCase() == ".rc")
+ {
+ if(file.Name == strProjectName + ".rc" || file.Name == "version.rc") {
+ for(var cfgIdx = 1; cfgIdx <= file.FileConfigurations.Count; cfgIdx++)
+ file.FileConfigurations.Item(cfgIdx).ExcludedFromBuild = true;
+ }
+ }
+ }
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function PchSettings(proj)
+{
+ try
+ {
+ var files = proj.Object.Files;
+ file = files("common.cpp");
+ if(!file)
+ return;
+
+ var configs = proj.Object.Configurations;
+
+ for (var i = 1; i <= configs.Count; i++)
+ {
+ // setup /Yu (using precompiled headers)
+ config = configs.Item(i);
+ var CLTool = config.Tools("VCCLCompilerTool");
+ CLTool.UsePrecompiledHeader = pchUseUsingSpecific;
+ // setup /Yc (create precompiled header)
+ fileConfig = file.FileConfigurations(config.Name);
+ fileConfig.Tool.UsePrecompiledHeader = pchCreateUsingSpecific;
+ }
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function DelFile(fso, strWizTempFile)
+{
+ try
+ {
+ if (fso.FileExists(strWizTempFile))
+ {
+ var tmpFile = fso.GetFile(strWizTempFile);
+ tmpFile.Delete();
+ }
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function CreateCustomInfFile()
+{
+ try
+ {
+ var fso, TemplatesFolder, TemplateFiles, strTemplate;
+ fso = new ActiveXObject('Scripting.FileSystemObject');
+
+ var TemporaryFolder = 2;
+ var tfolder = fso.GetSpecialFolder(TemporaryFolder);
+ var strTempFolder = tfolder.Drive + '\\' + tfolder.Name;
+
+ var strWizTempFile = strTempFolder + "\\" + fso.GetTempName();
+
+ var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
+ var strInfFile = strTemplatePath + '\\Templates.inf';
+ wizard.RenderTemplate(strInfFile, strWizTempFile);
+
+ var WizTempFile = fso.GetFile(strWizTempFile);
+ return WizTempFile;
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function GetTargetName(strName, strProjectName, strResPath, strHelpPath)
+{
+ try
+ {
+ var strTarget = strName;
+
+ if (strName == "readme.txt")
+ strTarget = "readme.txt";
+ if (strName == "resource.h")
+ strTarget = "resource.h";
+
+ if (strName.substr(0, 4) == "base")
+ {
+ strTarget = strProjectName + strName.substr(4);
+
+ }
+ return strTarget;
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
+
+function AddFilesToCustomProj(proj, strProjectName, strProjectPath, InfFile)
+{
+ try
+ {
+ var projItems = proj.ProjectItems
+
+ var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
+
+ var strTpl = '';
+ var strName = '';
+
+ var strTextStream = InfFile.OpenAsTextStream(1, -2);
+ while (!strTextStream.AtEndOfStream)
+ {
+ strTpl = strTextStream.ReadLine();
+ if (strTpl != '')
+ {
+ strName = strTpl;
+ var strTarget = GetTargetName(strName, strProjectName);
+ var strTemplate = strTemplatePath + '\\' + strTpl;
+ var strFile = strProjectPath + '\\' + strTarget;
+
+ var bCopyOnly = false; //"true" will only copy the file from strTemplate to strTarget without rendering/adding to the project
+ var strExt = strName.substr(strName.lastIndexOf("."));
+ if(strExt==".bmp" || strExt==".ico" || strExt==".gif" || strExt==".rtf" || strExt==".css")
+ bCopyOnly = true;
+ wizard.RenderTemplate(strTemplate, strFile, bCopyOnly);
+ proj.Object.AddFile(strFile);
+ }
+ }
+ strTextStream.Close();
+ }
+ catch(e)
+ {
+ throw e;
+ }
+}
diff --git a/MirandaPlugin/Templates/1033/Templates.inf b/MirandaPlugin/Templates/1033/Templates.inf
new file mode 100644
index 0000000..8094d44
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/Templates.inf
@@ -0,0 +1,26 @@
+readme.txt
+common.h
+common.cpp
+version.h
+version.rc
+base.rc
+resource.rc
+resource.h
+base.cpp
+[!if OPTIONS_PAGE]
+options.cpp
+options.h
+[!endif]
+[!if FILTER_CODE]
+filter.cpp
+filter.h
+[!endif]
+[!if USE_NETLIB]
+net.cpp
+net.h
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+menu.cpp
+menu.h
+menu.ico
+[!endif]
diff --git a/MirandaPlugin/Templates/1033/base.cpp b/MirandaPlugin/Templates/1033/base.cpp
new file mode 100644
index 0000000..d0cb971
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/base.cpp
@@ -0,0 +1,95 @@
+/* Replace "dll.h" with the name of your header */
+#include "common.h"
+#include "version.h"
+#include "resource.h"
+[!if OPTIONS_PAGE]
+#include "options.h"
+[!endif]
+[!if FILTER_CODE]
+#include "filter.h"
+[!endif]
+[!if USE_NETLIB]
+#include "net.h"
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+#include "menu.h"
+[!endif]
+
+///////////////////////////////////////////////
+// Common Plugin Stuff
+///////////////////////////////////////////////
+HINSTANCE hInst;
+PLUGINLINK *pluginLink;
+
+PLUGININFO pluginInfo={
+ sizeof(PLUGININFO),
+ //META_PROTO,
+ __PLUGIN_NAME, // altered here and on file listing, so as not to match original
+ PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
+ __DESC,
+ __AUTHOR,
+ __AUTHOREMAIL,
+ __COPYRIGHT,
+ __AUTHORWEB,
+ 0,
+ 0
+};
+
+
+extern "C" BOOL APIENTRY DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved) {
+ hInst=hinstDLL;
+ return TRUE;
+}
+
+extern "C" __declspec (dllexport) PLUGININFO* MirandaPluginInfo(DWORD mirandaVersion) {
+ return &pluginInfo;
+}
+
+int ModulesLoaded(WPARAM wParam, LPARAM lParam) {
+[!if USE_NETLIB]
+ InitNetlib();
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+ InitMenu();
+[!endif]
+
+ return 0;
+}
+
+HANDLE hModulesLoaded;
+extern "C" __declspec (dllexport) int Load(PLUGINLINK *link) {
+ pluginLink=link;
+
+[!if OPTIONS_PAGE]
+ InitOptions();
+[!endif]
+[!if FILTER_CODE]
+
+ /////////////
+ ////// init filter
+ RegisterFilter();
+ AddFilterToContacts();
+[!endif]
+
+ // hook modules loaded
+ hModulesLoaded = HookEvent(ME_SYSTEM_MODULESLOADED, ModulesLoaded);
+ return 0;
+}
+
+extern "C" __declspec (dllexport) int Unload(void) {
+ UnhookEvent(hModulesLoaded);
+[!if MAIN_MENU || CONTACT_MENU]
+ DeinitMenu();
+[!endif]
+[!if USE_NETLIB]
+ DeinitNetlib();
+[!endif]
+[!if FILTER_CODE]
+ DeinitFilter();
+[!endif]
+[!if OPTIONS_PAGE]
+ DeinitOptions();
+[!endif]
+
+ return 0;
+}
diff --git a/MirandaPlugin/Templates/1033/base.rc b/MirandaPlugin/Templates/1033/base.rc
new file mode 100644
index 0000000..93bad1c
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/base.rc
@@ -0,0 +1,82 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "afxres.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// Neutral (Default) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEUD)
+#ifdef _WIN32
+LANGUAGE LANG_NEUTRAL, SUBLANG_DEFAULT
+#pragma code_page(1252)
+#endif //_WIN32
+
+[!if OPTIONS_PAGE]
+/////////////////////////////////////////////////////////////////////////////
+//
+// Dialog
+//
+
+IDD_OPT1 DIALOGEX 0, 0, 246, 179
+STYLE DS_SETFONT | WS_POPUP
+FONT 8, "MS Sans Serif", 0, 0, 0x0
+BEGIN
+END
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+/////////////////////////////////////////////////////////////////////////////
+//
+// Icon
+//
+
+IDI_MENU ICON "menu.ico"
+
+[!endif]
+#endif //!defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEUD)
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""afxres.h""\r\n"
+ "\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/MirandaPlugin/Templates/1033/common.cpp b/MirandaPlugin/Templates/1033/common.cpp
new file mode 100644
index 0000000..3324856
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/common.cpp
@@ -0,0 +1 @@
+#include "common.h"
diff --git a/MirandaPlugin/Templates/1033/common.h b/MirandaPlugin/Templates/1033/common.h
new file mode 100644
index 0000000..8680d6a
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/common.h
@@ -0,0 +1,70 @@
+#ifndef _COMMON_INC
+#define _COMMON_INC
+
+// Modify the following defines if you have to target a platform prior to the ones specified below.
+// Refer to MSDN for the latest info on corresponding values for different platforms.
+#ifndef WINVER // Allow use of features specific to Windows XP or later.
+#define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later.
+#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.
+#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
+#endif
+
+#ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later.
+#define _WIN32_IE 0x0600 // Change this to the appropriate value to target other versions of IE.
+#endif
+
+#if defined( UNICODE ) && !defined( _UNICODE )
+#define _UNICODE
+#endif
+
+#include <tchar.h>
+
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
+
+#include <windows.h>
+#include <commctrl.h>
+
+#include <newpluginapi.h>
+#include <m_system.h>
+#include <m_database.h>
+#include <m_langpack.h>
+[!if OPTIONS_PAGE]
+#include <m_options.h>
+[!endif]
+[!if FILTER_CODE]
+#include <m_protomod.h>
+#include <m_protosvc.h>
+[!endif]
+[!if USE_NETLIB]
+#include <stdio.h> // for m_utils
+#include <winsock2.h> // for FD_SETSIZE
+#include <m_netlib.h>
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+#include <m_clist.h>
+
+////////////
+// included for backward compatibility
+#ifndef CMIF_UNICODE
+#define CMIF_UNICODE 512 //will return TCHAR* instead of char*
+#if defined( _UNICODE )
+ #define CMIF_TCHAR CMIF_UNICODE //will return TCHAR* instead of char*
+#else
+ #define CMIF_TCHAR 0 //will return char*, as usual
+#endif
+#endif
+////////////
+[!endif]
+
+#define MODULE "[!output PROJECT_NAME]"
+
+extern HINSTANCE hInst;
+extern PLUGINLINK *pluginLink;
+
+#endif
diff --git a/MirandaPlugin/Templates/1033/filter.cpp b/MirandaPlugin/Templates/1033/filter.cpp
new file mode 100644
index 0000000..56543b3
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/filter.cpp
@@ -0,0 +1,87 @@
+#include "common.h"
+#include "filter.h"
+
+int FilterSendMessage(WPARAM wParam, LPARAM lParam) {
+ CCSDATA *ccs = (CCSDATA *) lParam;
+ char *message = (char *)ccs->lParam;
+
+ // TODO: process 'message' and/or 'messagew' below
+ if(ccs->wParam & PREF_UNICODE) {
+ wchar_t *messagew = (wchar_t *)&message[strlen(message)+1];
+ } else {
+ }
+
+ return CallService(MS_PROTO_CHAINSEND, wParam, lParam);
+}
+
+int FilterSendMessageW(WPARAM wParam, LPARAM lParam) {
+ CCSDATA *ccs = (CCSDATA *) lParam;
+ ccs->wParam |= PREF_UNICODE;
+
+ return FilterSendMessage(wParam, lParam);
+}
+
+int FilterRecvMessage(WPARAM wParam, LPARAM lParam) {
+ CCSDATA *ccs = (CCSDATA *) lParam;
+ PROTORECVEVENT *pre = (PROTORECVEVENT *) ccs->lParam;
+
+ char *message = pre->szMessage;
+
+ // TODO: process 'message' and/or 'messagew' below
+ if(ccs->wParam & PREF_UNICODE) {
+ wchar_t *messagew = (wchar_t *)&message[strlen(message)+1];
+ } else {
+ }
+
+ return CallService(MS_PROTO_CHAINRECV, wParam, lParam);
+}
+
+int NewContact(WPARAM wParam, LPARAM lParam) {
+ // add filter
+ HANDLE hContact = (HANDLE)wParam;
+ CallService( MS_PROTO_ADDTOCONTACT, ( WPARAM )hContact, ( LPARAM )MODULE );
+
+ return 0;
+}
+
+void RegisterFilter() {
+ PROTOCOLDESCRIPTOR pd = {0};
+ pd.cbSize = sizeof(pd);
+ pd.szName = MODULE "Filter";
+ // TODO: modify this to reflect the purpose of your plugin
+ pd.type = PROTOTYPE_FILTER;
+ CallService(MS_PROTO_REGISTERMODULE,0,(LPARAM)&pd);
+}
+
+HANDLE hEventNewContact;
+#define NUM_FILTER_SERVICES 3
+HANDLE hServices[NUM_FILTER_SERVICES];
+
+void AddFilterToContacts() {
+ // this adds us as a filter to all existing and new contacts
+ // TODO: modify this (and the NewContact function above) to include only the contacts required
+ HANDLE hContact = ( HANDLE )CallService( MS_DB_CONTACT_FINDFIRST, 0, 0 );
+ while ( hContact != NULL ) {
+ CallService( MS_PROTO_ADDTOCONTACT, ( WPARAM )hContact, ( LPARAM )(MODULE "Filter"));
+ hContact = ( HANDLE )CallService( MS_DB_CONTACT_FINDNEXT,( WPARAM )hContact, 0 );
+ }
+
+ hEventNewContact = HookEvent(ME_DB_CONTACT_ADDED, NewContact);
+}
+
+void CreateFilterServices() {
+ // create our services
+ int i = 0;
+ hServices[i++] = CreateProtoServiceFunction(MODULE "Filter", PSS_MESSAGE, FilterSendMessage);
+ hServices[i++] = CreateProtoServiceFunction(MODULE "Filter", PSS_MESSAGE"W", FilterSendMessageW);
+ hServices[i++] = CreateProtoServiceFunction(MODULE "Filter", PSR_MESSAGE, FilterRecvMessage);
+
+ // remember to modify the NUM_FILTER_SERVICES #define above if you add more services!
+}
+
+void DeinitFilter() {
+ UnhookEvent(hEventNewContact);
+
+ for(int i = 0; i < NUM_FILTER_SERVICES; i++)
+ DestroyServiceFunction(hServices[i]);
+} \ No newline at end of file
diff --git a/MirandaPlugin/Templates/1033/filter.h b/MirandaPlugin/Templates/1033/filter.h
new file mode 100644
index 0000000..0a42110
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/filter.h
@@ -0,0 +1,9 @@
+#ifndef _FILTER_INC
+#define _FILTER_INC
+
+void RegisterFilter();
+void AddFilterToContacts();
+void CreateFilterServices();
+void DeinitFilter();
+
+#endif
diff --git a/MirandaPlugin/Templates/1033/menu.cpp b/MirandaPlugin/Templates/1033/menu.cpp
new file mode 100644
index 0000000..b252fad
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/menu.cpp
@@ -0,0 +1,87 @@
+#include "common.h"
+#include "menu.h"
+#include "resource.h"
+[!if MAIN_MENU]
+
+HANDLE hMenuMain = 0, hServiceMenuMain = 0;
+
+int MainMenuService(WPARAM wParam, LPARAM lParam) {
+ // TODO: add code here that executes when the menu item is chosen
+
+ // e.g. modify main menu item - see m_clist.h
+ //CLISTMENUITEM menu = {0};
+ //menu.cbSize=sizeof(menu);
+ //menu.flags = CMIM_NAME | CMIF_TCHAR;
+ //menu.ptszName = (char *)TranslateT("Changed menu text");
+ //CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuMain, (LPARAM)&menu);
+
+ return 0;
+}
+[!endif]
+[!if CONTACT_MENU]
+
+HANDLE hMenuContact = 0, hServiceMenuContact = 0, hEventMenuBuild = 0;
+
+int ContactMenuService(WPARAM wParam, LPARAM lParam) {
+ HANDLE hContact = (HANDLE)wParam;
+ // TODO: add code here that executes when the menu item is chosen
+
+ // e.g. you could modify the menu item here - see below
+ return 0;
+}
+
+// this function is called when the contact's menu is about to be shown - you can e.g.
+// modify the menu here using the MS_CLIST_MODIFYMENUITEM service
+int PrebuildContactMenu(WPARAM wParam, LPARAM lParam) {
+ HANDLE hContact = (HANDLE)wParam;
+ // TODO: add code here that executes when the menu is constructed
+
+ // e.g. modify menu item - see m_clist.h
+ //CLISTMENUITEM menu = {0};
+ //menu.cbSize=sizeof(menu);
+ //menu.flags = CMIM_NAME | CMIF_TCHAR;
+ //menu.ptszName = (char *)TranslateT("Changed menu text");
+ //CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hMenuContact, (LPARAM)&menu);
+
+ return 0;
+}
+[!endif]
+
+void InitMenu() {
+ CLISTMENUITEM menu = {0};
+ menu.cbSize=sizeof(menu);
+
+ menu.flags = CMIM_ALL | CMIF_TCHAR;
+ menu.hIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MENU), IMAGE_ICON, 0, 0, 0);
+[!if MAIN_MENU]
+
+ // main menu item
+ hServiceMenuMain = CreateServiceFunction(MODULE "/MainMenu", MainMenuService);
+ menu.ptszName = TranslateT(MODULE);
+ menu.pszService = MODULE "/MainMenu";
+ menu.position = 0;
+ hMenuMain = (HANDLE)CallService(MS_CLIST_ADDMAINMENUITEM,0,(LPARAM)&menu);
+[!endif]
+[!if CONTACT_MENU]
+
+ // contact menu item
+ hServiceMenuContact = CreateServiceFunction(MODULE "/ContactMenu", ContactMenuService);
+ menu.ptszName = TranslateT(MODULE);
+ menu.pszService = MODULE "/ContactMenu";
+ menu.position = 0;
+ menu.flags = CMIF_NOTOFFLINE; // only show for not-offline contacts
+ hMenuContact = (HANDLE)CallService(MS_CLIST_ADDCONTACTMENUITEM,0,(LPARAM)&menu);
+
+ hEventMenuBuild = HookEvent(ME_CLIST_PREBUILDCONTACTMENU, PrebuildContactMenu);
+[!endif]
+}
+
+void DeinitMenu() {
+[!if CONTACT_MENU]
+ UnhookEvent(hEventMenuBuild);
+ DestroyServiceFunction(hServiceMenuContact);
+[!endif]
+[!if MAIN_MENU]
+ DestroyServiceFunction(hServiceMenuMain);
+[!endif]
+} \ No newline at end of file
diff --git a/MirandaPlugin/Templates/1033/menu.h b/MirandaPlugin/Templates/1033/menu.h
new file mode 100644
index 0000000..0add0ed
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/menu.h
@@ -0,0 +1,7 @@
+#ifndef _MENU_INC
+#define _MENU_INC
+
+void InitMenu();
+void DeinitMenu();
+
+#endif
diff --git a/MirandaPlugin/Templates/1033/menu.ico b/MirandaPlugin/Templates/1033/menu.ico
new file mode 100644
index 0000000..94f62a2
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/menu.ico
Binary files differ
diff --git a/MirandaPlugin/Templates/1033/net.cpp b/MirandaPlugin/Templates/1033/net.cpp
new file mode 100644
index 0000000..e7beb8a
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/net.cpp
@@ -0,0 +1,20 @@
+#include "common.h"
+#include "net.h"
+
+HANDLE hNetlibUser = 0;
+
+void InitNetlib() {
+ NETLIBUSER nl_user = {0};
+ nl_user.cbSize = sizeof(nl_user);
+ nl_user.szSettingsModule = MODULE;
+ nl_user.flags = NUF_OUTGOING | NUF_HTTPCONNS;
+ nl_user.szDescriptiveName = "Updater";
+
+ hNetlibUser = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nl_user);
+}
+
+void DeinitNetlib() {
+ if(hNetlibUser)
+ CallService(MS_NETLIB_CLOSEHANDLE, (WPARAM)hNetlibUser, 0);
+}
+
diff --git a/MirandaPlugin/Templates/1033/net.h b/MirandaPlugin/Templates/1033/net.h
new file mode 100644
index 0000000..95a5009
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/net.h
@@ -0,0 +1,10 @@
+#ifndef _NET_INC
+#define _NET_INC
+
+// uncomment this if you need access elsewhere
+//extern HANDLE hNetlibUser;
+
+void InitNetlib();
+void DeinitNetlib();
+
+#endif \ No newline at end of file
diff --git a/MirandaPlugin/Templates/1033/options.cpp b/MirandaPlugin/Templates/1033/options.cpp
new file mode 100644
index 0000000..593846a
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/options.cpp
@@ -0,0 +1,64 @@
+#include "common.h"
+#include "options.h"
+#include "resource.h"
+
+void LoadOptions() {
+ //DBWriteContactSettingDword(0, MODULE, "Dummy", options.dummy);
+}
+
+void SaveOptions() {
+ //options.dummy = DBGetContactSettingDword(0, MODULE, "Dummy", 0);
+}
+
+BOOL CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) {
+ static HANDLE hItemAll;
+
+ switch ( msg ) {
+ case WM_INITDIALOG:
+ TranslateDialogDefault( hwndDlg );
+ return FALSE;
+ case WM_COMMAND:
+ break;
+ case WM_NOTIFY:
+ switch(((LPNMHDR)lParam)->idFrom) {
+ case 0:
+ switch (((LPNMHDR)lParam)->code)
+ {
+ case PSN_APPLY:
+ SaveOptions();
+ }
+ break;
+ }
+ break;
+ }
+
+ return 0;
+}
+
+int OptInit(WPARAM wParam, LPARAM lParam) {
+ OPTIONSDIALOGPAGE odp = { 0 };
+ odp.cbSize = sizeof(odp);
+ odp.flags = ODPF_BOLDGROUPS;
+ odp.flags |= ODPF_TCHAR;
+ odp.position = -790000000;
+ odp.hInstance = hInst;
+
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT1);
+ odp.ptszTitle = TranslateT(MODULE);
+ odp.ptszGroup = TranslateT("Plugins");
+ odp.nIDBottomSimpleControl = 0;
+ odp.pfnDlgProc = DlgProcOpts;
+ CallService( MS_OPT_ADDPAGE, wParam,( LPARAM )&odp );
+
+ return 0;
+}
+
+HANDLE hEventOptInit;
+void InitOptions() {
+ hEventOptInit = HookEvent(ME_OPT_INITIALISE, OptInit);
+ LoadOptions();
+}
+
+void DeinitOptions() {
+ UnhookEvent(hEventOptInit);
+}
diff --git a/MirandaPlugin/Templates/1033/options.h b/MirandaPlugin/Templates/1033/options.h
new file mode 100644
index 0000000..82c90c7
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/options.h
@@ -0,0 +1,13 @@
+#ifndef _OPTIONS_INC
+#define _OPTIONS_INC
+
+typedef struct {
+ int dummy;
+} Options;
+
+extern Options options;
+
+void InitOptions();
+void DeinitOptions();
+
+#endif
diff --git a/MirandaPlugin/Templates/1033/readme.txt b/MirandaPlugin/Templates/1033/readme.txt
new file mode 100644
index 0000000..e3a656a
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/readme.txt
@@ -0,0 +1,51 @@
+========================================================================
+ Miranda Plugin : [!output PROJECT_NAME] Project Overview
+========================================================================
+
+Miranda Plugin has created this [!output PROJECT_NAME] project for you as a starting point.
+
+This file contains a summary of what you will find in each of the files that make up your project.
+
+[!output PROJECT_NAME].vcproj
+ This is the main project file for projects generated using an Application Wizard.
+ It contains information about the version of the product that generated the file, and
+ information about the platforms, configurations, and project features selected with the
+ Application Wizard.
+
+[!output PROJECT_NAME].cpp
+ Main plugin file. Contains the functions necessary for the plugin to load.
+
+[!output PROJECT_NAME].rc
+ Project resources - this is the the only resource file that should require editing on your part!
+[!if OPTIONS_PAGE]
+ This file contains for example the options dialog page.
+[!endif]
+
+version.h
+ Version information
+
+version.rc
+ Version resource - do not edit!
+
+common.h
+ Common includes - also acts as the procompiled header file for the project.
+
+common.cpp
+ Just includes the common.h header file.
+
+resource.h
+ Resource defines
+
+resource.rc
+ Binds together the version and plugin resources - do not edit!
+
+[!if OPTIONS_PAGE]
+options.cpp
+options.h
+ These files contain the dialog procedure for the options page, and placeholders for options including save and load routines.
+[!endif]
+
+/////////////////////////////////////////////////////////////////////////////
+Other notes:
+
+/////////////////////////////////////////////////////////////////////////////
diff --git a/MirandaPlugin/Templates/1033/resource.h b/MirandaPlugin/Templates/1033/resource.h
new file mode 100644
index 0000000..b18d761
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/resource.h
@@ -0,0 +1,21 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by MetaContacts.rc
+//
+[!if OPTIONS_PAGE]
+#define IDD_OPT1 109
+[!endif]
+[!if MAIN_MENU || CONTACT_MENU]
+#define IDI_MENU 110
+[!endif]
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 120
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif
diff --git a/MirandaPlugin/Templates/1033/resource.rc b/MirandaPlugin/Templates/1033/resource.rc
new file mode 100644
index 0000000..37de854
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/resource.rc
@@ -0,0 +1,2 @@
+#include "version.rc"
+#include "[!output PROJECT_NAME].rc"
diff --git a/MirandaPlugin/Templates/1033/version.h b/MirandaPlugin/Templates/1033/version.h
new file mode 100644
index 0000000..089b09f
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/version.h
@@ -0,0 +1,26 @@
+// Set the version number here - it will affect the version resource and the version field of the pluginInfo structure
+// (Be careful that you don't have the resource file open when you change this and rebuild, otherwise the changes may not
+// take effect within the version resource)
+
+#define __MAJOR_VERSION 0
+#define __MINOR_VERSION 0
+#define __RELEASE_NUM 0
+#define __BUILD_NUM 1
+
+#define __FILEVERSION_STRING __MAJOR_VERSION,__MINOR_VERSION,__RELEASE_NUM,__BUILD_NUM
+#define __FILEVERSION_STRING_DOTS __MAJOR_VERSION.__MINOR_VERSION.__RELEASE_NUM.__BUILD_NUM
+#define __STRINGIFY(x) #x
+#define __VERSION_STRING __STRINGIFY(__FILEVERSION_STRING_DOTS)
+
+#ifdef _UNICODE
+#define __PLUGIN_NAME "[!output PROJECT_NAME] (Unicode)"
+#else
+#define __PLUGIN_NAME "[!output PROJECT_NAME]"
+#endif
+#define __FILENAME "[!output PROJECT_NAME].dll"
+
+#define __DESC "[!output PLUGIN_DESC]"
+#define __AUTHOR "[!output AUTHOR_NAME]"
+#define __AUTHOREMAIL "[!output AUTHOR_EMAIL]"
+#define __AUTHORWEB "[!output AUTHOR_WEB]"
+#define __COPYRIGHT "[!output COPYRIGHT]"
diff --git a/MirandaPlugin/Templates/1033/version.rc b/MirandaPlugin/Templates/1033/version.rc
new file mode 100644
index 0000000..0bb7a49
--- /dev/null
+++ b/MirandaPlugin/Templates/1033/version.rc
@@ -0,0 +1,33 @@
+
+#include <windows.h>
+#include "version.h"
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION __FILEVERSION_STRING
+ PRODUCTVERSION __FILEVERSION_STRING
+ FILEFLAGSMASK 0x3fL
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x40004L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "000004b0"
+ BEGIN
+ VALUE "Author", __AUTHOR
+ VALUE "FileDescription", __DESC
+ VALUE "InternalName", __PLUGIN_NAME
+ VALUE "LegalCopyright", __COPYRIGHT
+ VALUE "OriginalFilename", __FILENAME
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x0, 1200
+ END
+END
diff --git a/MirandaPlugin/default.vcproj b/MirandaPlugin/default.vcproj
new file mode 100644
index 0000000..fb56e70
--- /dev/null
+++ b/MirandaPlugin/default.vcproj
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject ProjectType="Visual C++" Version="8.00">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration Name="Debug|Win32"></Configuration>
+ <Configuration Name="Release|Win32"></Configuration>
+ <Configuration Name="Debug (Unicode)|Win32"></Configuration>
+ <Configuration Name="Release (Unicode)|Win32"></Configuration>
+ </Configurations>
+</VisualStudioProject>
+
diff --git a/MirandaPlugin/install.bat b/MirandaPlugin/install.bat
new file mode 100644
index 0000000..6ed6a73
--- /dev/null
+++ b/MirandaPlugin/install.bat
@@ -0,0 +1,26 @@
+@echo off
+
+rem *** correct this if your VC install path is different!
+set VCPATH="C:\Program Files\Microsoft Visual Studio 8\VC"
+
+rem *** copy to different path if using Express
+if exist %VCPATH%\Express\VCProjects goto exp_inst
+
+copy MirandaPlugin.vsz %VCPATH%\vcprojects
+copy MirandaPlugin.vsdir %VCPATH%\vcprojects
+copy MirandaPlugin.ico %VCPATH%\vcprojects
+goto copy_files
+
+exp_install:
+copy MirandaPlugin.vsz %VCPATH%\Express\VCProjects
+copy MirandaPlugin.vsdir %VCPATH%\Express\VCProjects
+copy MirandaPlugin.ico %VCPATH%\Express\VCProjects
+
+:copy_files
+xcopy /y /e /i 1033\*.* %VCPATH%\VCWizards\MirandaPlugin\1033
+xcopy /y /e /i HTML\*.* %VCPATH%\VCWizards\MirandaPlugin\HTML
+xcopy /y /e /i Images\*.* %VCPATH%\VCWizards\MirandaPlugin\Images
+xcopy /y /e /i Scripts\*.* %VCPATH%\VCWizards\MirandaPlugin\Scripts
+xcopy /y /e /i Templates\*.* %VCPATH%\VCWizards\MirandaPlugin\Templates
+
+copy default.vcproj %VCPATH%\VCWizards\MirandaPlugin \ No newline at end of file