-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathViewSet.jsx
More file actions
114 lines (107 loc) · 4.14 KB
/
ViewSet.jsx
File metadata and controls
114 lines (107 loc) · 4.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
// ViewSet 0.5
// Lamma Studio Design
// 17-5-2021
#targetengine "session";
setPrefs();
setView();
function setView() {
try {
//
// Clear away any old event listeners so we can reinstall them
//
app.eventListeners.everyItem().remove();
app.addEventListener(Document.AFTER_OPEN, afterOpenHandler);
//
// Handle the active document if there is one
//
if (
app.documents.length > 0 &&
app.activeDocument &&
app.activeDocument instanceof Document
) {
afterOpenHandler({
target: app.activeDocument,
eventType: Document.AFTER_OPEN
});
};
} catch (err) {
alert ("MainRoutine Error: " + [err,err.line]);
};
};
function afterOpenHandler(evt) {
try {
if ((app.documents.item(0).windows.length < 2) && (app.documents.item(0).windows.length > 0)) {
var savedSettings = eval(app.extractLabel("lsd_vs_usersettings"));
// alert ("savedSettings: " + savedSettings);
var doc = app.documents.item(0);
// Set Window to Galley
app.documents.item(0).windows.item(0).viewTab = ViewTabs.GALLEY_VIEW;
// Open a new window
app.documents.item(0).windows.add();
// Set it to Layout and fit it to page
app.documents.item(0).windows.item(0).viewTab = ViewTabs.LAYOUT_VIEW;
app.documents.item(0).windows.item(0).zoom = ZoomOptions.ACTUAL_SIZE;
// Tile the windows
app.tileWindows(HorizontalOrVertical.HORIZONTAL);
//Switch on/off the guides
//Dialog choice or settings file to go here
doc.gridPreferences.documentGridShown = savedSettings[0];
doc.gridPreferences.baselineGridShown = savedSettings[1];
doc.guidePreferences.guidesShown = savedSettings[2];
doc.viewPreferences.showFrameEdges = savedSettings[3];
doc.viewPreferences.showRulers = savedSettings[4];
app.textPreferences.showInvisibles = savedSettings[5];
// subs need the notes so leave on
doc.viewPreferences.showNotes = savedSettings[6];
// Code to do auto checkout
app.activeDocument.stories.everyItem().checkOut();
} else {
return;
};
} catch (err) {
alert ("EventHandler Error: " + [err,err.line]);
};
};
function setPrefs() {
try {
var savedSettings = eval(app.extractLabel("lsd_vs_usersettings"));
// alert ("savedSettings: " + savedSettings);
if (savedSettings === undefined) {
///////////////////////////////////////////////////////////////////
///////////// Dialogue to ask you what you want to do /////////////
///////////////////////////////////////////////////////////////////
var dlgAd = app.dialogs.add({name:"Preferences"});
var dlcAd = dlgAd.dialogColumns.add();
//////////////////////// Line type section ////////////////////////
var bpnAd = dlcAd.borderPanels.add();
bpnAd.staticTexts.add({staticLabel:"Show: "});
//////////////////// Line type radiobuttonGroup ///////////////////
var docugd = bpnAd.checkboxControls.add({staticLabel:"DocumentGrid", checkedState:false});
var basegd = bpnAd.checkboxControls.add({staticLabel:"BaselineGrid", checkedState:false});
var guides = bpnAd.checkboxControls.add({staticLabel:"Guides", checkedState:false});
var frames = bpnAd.checkboxControls.add({staticLabel:"FrameEdges", checkedState:false});
var rulers = bpnAd.checkboxControls.add({staticLabel:"Rulers", checkedState:false});
var invisi = bpnAd.checkboxControls.add({staticLabel:"Invisibles", checkedState:false});
var noters = bpnAd.checkboxControls.add({staticLabel:"Notes", checkedState:false});
///////////// Display dialog and capture user choices /////////////
blnResult = dlgAd.show();
if (blnResult == false){
alert("Operation cancelled by user.");
exit();
} else {
var docgd = docugd.checkedState;
var basgd = basegd.checkedState;
var guide = guides.checkedState;
var frame = frames.checkedState;
var ruler = rulers.checkedState;
var invis = invisi.checkedState;
var notes = noters.checkedState;
var savedSettings = [docgd, basgd, guide, frame, ruler, invis, notes];
};
dlgAd.destroy();
app.insertLabel("lsd_vs_usersettings", savedSettings.toSource());
};
} catch (err) {
alert ("setPrefs Error: " + [err,err.line]);
};
};