//<AcroButtons name="FlattenPages" version="2.0" "modified="4/3/2005 23:54:4" id="4:3:2005:23:37:50">
// This script was created by AcroButtons from Windjack Solutions, www.windjack.com
// Do not modify the code inbetween the AcroButtons Tags
// Moving or changing tag positions can compromise AcroButtons' ability to handle
// this file
// Place Extra-AcroButton Code in the following "Code Above" Section
//


//<CodeAbove>
//Acrobat JavaScript Dialog
//Created by DialogDesigner from WindJack Solutions
var SelPgDlg =
{
  DoDialog: function(){return app.execDialog(this);},
  strGRP1:"rAll",
  strStrtPg:"",
  strEndPg:"",
  GetRadioSel:function(oRslts,aCtrls){
      for(var strRtn=aCtrls[0];aCtrls.length>0;strRtn=aCtrls.pop()){
        if(oRslts[strRtn] == true)
            return strRtn;
      }
      return "";
    },
  initialize: function(dialog)
  {
    this.result = "Cancel";
    var dlgInit = 
      {
        "tFPg": util.printf("%d",this.strStrtPg),
        "tTPg": util.printf("%d",this.strEndPg),
      };
    dlgInit[this.strGRP1] = true;
    dialog.load(dlgInit);
    dialog.enable(
      {
        "tTPg": false,
        "tFPg": false,
      }
    );
  },
  commit: function(dialog)
  {
     var oRslt = dialog.store();
     this.strGRP1 = this.GetRadioSel(oRslt,["rAll","rCur","rFro"]);
     this.strStrtPg = oRslt["tFPg"];
     this.strEndPg = oRslt["tTPg"];
  },
  "rFro": function(dialog)
  {
     dialog.enable({tFPg:true, tTPg:true});
     
  },
  "rCur": function(dialog)
  {
     dialog.enable({tFPg:false, tTPg:false});
     
  },
  "rAll": function(dialog)
  {
     dialog.enable({tFPg:false, tTPg:false});
     
  },
  description:
  {
    name: "Select Pages to Flatten",
    elements:
    [
      {
        item_id: "sta1",
        name: "Select Pages to Flatten",
        type: "static_text",
      },
      {
        type: "view",
        elements:
        [
          {
            char_height: 8,
            char_width: 8,
            height: 96,
            item_id: "cls3",
            name: "Page range",
            type: "cluster",
            userName: "Page range",
            width: 332,
            elements:
            [
              {
                group_id: "GRP1",
                height: 20,
                item_id: "rAll",
                name: "All",
                type: "radio",
              },
              {
                group_id: "GRP1",
                height: 20,
                item_id: "rCur",
                name: "Current",
                type: "radio",
                variable_Name: "strRange",
              },
              {
                align_children: "align_row",
                char_height: 8,
                char_width: 8,
                height: 20,
                type: "view",
                width: 256,
                elements:
                [
                  {
                    group_id: "GRP1",
                    height: 24,
                    item_id: "rFro",
                    name: "From:",
                    type: "radio",
                    width: 12,
                  },
                  {
                    char_width: 6,
                    height: 24,
                    item_id: "tFPg",
                    type: "edit_text",
                    variable_Name: "strStrtPg",
                  },
                  {
                    height: 24,
                    item_id: "sta1",
                    name: "To:",
                    type: "static_text",
                  },
                  {
                    char_width: 6,
                    height: 24,
                    item_id: "tTPg",
                    type: "edit_text",
                    variable_Name: "strEndPg",
                  },
                  {
                    height: 24,
                    item_id: "sOfN",
                    name: "of (N)",
                    type: "static_text",
                  },
                ]
              },
            ]
          },
          {
            align_children: "align_fill",
            type: "ok_cancel",
          },
        ]
      },
    ]
  }
};
//</CodeAbove>

//<JSCodeSnippet name="ImageData6">
var strData6FlattenPages = 
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000FF000000FF000000FF000000FF000000" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C0FF000000FF000000FF000000FF000000FF00000000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C0FF000000FF000000FF000000FF00000000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FF000000FF000000FF000000FF00000000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FF000000FF000000FF000000FF00000000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FF000000FF000000FF000000FF000000FF00000000C0C0C000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000" +
"FF000000FF000000FF000000FF000000FF000000FFFFFFFFFF000000FF00000000C0C0C000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000" +
"FF000000FF00000000C0C0C000C0C0C0FF000000FF000000FFFFFFFFFF000000FF00000000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"FF000000FF00000000C0C0C000C0C0C000C0C0C0FF000000FF000000FFFFFFFFFF000000FF000000" +
"00C0C0C0FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF00000000C0C0C0" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000FF000000FFFFFFFFFF000000" +
"00C0C0C0FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000" +
"00C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000FF000000FFFFFFFF" +
"00C0C0C0FF000000FFFFFFFFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFF00000000C0C0C0" +
"FF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000FF000000" +
"00C0C0C0FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000" +
"FF000000FF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0FF000000" +
"00C0C0C0FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FF000000" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FFFFFFFFFF000000FF000000FF000000FF000000FF000000FF000000FF000000" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0" +
"00C0C0C0FF000000FFFFFFFFFF000000FF000000FF000000FFFFFFFFFFFFFFFFFF000000FF000000" +
"FFFFFFFFFF00000000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C0";
//</JSCodeSnippet>


// Icon Generic Stream Object
//<JSCodeSnippet name="ButtonIconDef">
var oIconFlattenPages = null;
//if(app.viewerVersion < 7){
oIconFlattenPages = {count: 0, width: 20, height: 20,
read: function(nBytes){return strData6FlattenPages.slice(this.count, this.count += nBytes);}};
//}else{
//}
//</JSCodeSnippet>

//<JSCodeSnippet name="EventCode">
var DoCmdFlattenPages = 
"// Example Code\n" +
"SelPgDlg.strGRP1 = \"rAll\";\n" +
"SelPgDlg.strStrtPg = this.pageNum + 1;\n" +
"SelPgDlg.strEndPg = this.numPages;\n" +
"if(\"ok\" == SelPgDlg.DoDialog())\n" +
"{\n" +
"   switch(SelPgDlg.strGRP1)\n" +
"  {\n" +
"      case \"rAll\":\n" +
"         this.flattenPages(0,this.numPages-1);\n" +
"         break;\n" +
"      case \"rCur\":\n" +
"         this.flattenPages(this.pageNum);\n" +
"         break;\n" +
"      case \"rFro\":\n" +
"         this.flattenPages(SelPgDlg.strStrtPg - 1,SelPgDlg.strEndPg - 1);\n" +
"         break;\n" +
"   }\n" +
"}"
//</JSCodeSnippet>

//<JSCodeSnippet name="ButtonObjDef">
var oButObjFlattenPages = 
{cName: "FlattenPages",
cExec: DoCmdFlattenPages,
cEnable: "event.rc = (app.doc != null)",
cMarked: "event.rc = false",
cTooltext: "Flatten Form Fields and Annots on PDF Pages",
nPos: -1,
cLabel: "Flatten Pages"};
//</JSCodeSnippet>
if(oIconFlattenPages != null)
    oButObjFlattenPages.oIcon = oIconFlattenPages;

try{app.removeToolButton("FlattenPages");}catch(e){}

//<JSCodeSnippet name="TryAddBut">
try
{
//</JSCodeSnippet>
//<JSCodeSnippet name="AddButtonfn">
    app.addToolButton(oButObjFlattenPages);
//</JSCodeSnippet>
if((event.type == "Doc") && (app.viewerVersion >= 7))
    global["FlattenPages_InDoc"] = "4:3:2005:23:37:50";
else
    global["FlattenPages"] = "4:3:2005:23:37:50";
//<JSCodeSnippet name="CatchAddBut">
}catch(e)
{
   if((global.bReportNameCollision != null) && (global.bReportNameCollision == true))
   {
    var strError = 'Cannot Install AcroButton "oButObjFlattenPages"\n';
    strError += ':' + e.fileName + '\n';
    strError += 'Error: ' + e.name + '\n';
    strError += e.message + '\n';
    strError += 'Possible Name conflict';
    app.alert(strError,0,0,'AcroButton Error');
   }
}
//</JSCodeSnippet>
 
//</AcroButtons>






