use of org.rstudio.core.client.js.JsObject in project rstudio by rstudio.
the class ProjectTemplateWidget method checkBoxInput.
private ProjectTemplateWidgetItem checkBoxInput(final ProjectTemplateWidgetDescription description) {
final CheckBox widget = new CheckBox(description.getLabel());
// set default value
String defaultValue = description.getDefault();
if (!StringUtil.isNullOrEmpty(defaultValue))
widget.setValue(isTruthy(defaultValue));
return new ProjectTemplateWidgetItem(widget, new Collector() {
@Override
public void collectInput(JsObject receiver) {
boolean value = widget.getValue();
receiver.setBoolean(description.getParameter(), value);
}
});
}
use of org.rstudio.core.client.js.JsObject in project rstudio by rstudio.
the class JsArrayUtil method deepCopy.
@SuppressWarnings("unchecked")
public static final <T extends JavaScriptObject> JsArray<T> deepCopy(JsArray<T> array) {
JsObject original = (JsObject) array.cast();
JsObject clone = original.clone();
JsArray<T> cloneArray = (JsArray<T>) clone.cast();
return cloneArray;
}
use of org.rstudio.core.client.js.JsObject in project rstudio by rstudio.
the class AceCommandManager method getRelevantCommands.
public final JsArray<AceCommand> getRelevantCommands() {
JsObject allCommands = getCommands();
JsArray<AceCommand> filtered = JavaScriptObject.createArray().cast();
JsArrayString keys = allCommands.keys();
for (String key : JsUtil.asIterable(keys)) {
AceCommand command = allCommands.getObject(key);
String name = command.getInternalName();
if (!EXCLUDED_COMMANDS_MAP.hasKey(name)) {
filtered.push(command);
}
}
return sorted(filtered);
}
use of org.rstudio.core.client.js.JsObject in project rstudio by rstudio.
the class SetupChunkOptionsPopupPanel method initOptions.
@Override
protected void initOptions(final Command afterInit) {
String chunkText = getChunkText();
server_.extractChunkOptions(chunkText, new ServerRequestCallback<JsObject>() {
@Override
public void onError(ServerError error) {
Debug.logError(error);
}
@Override
public void onResponseReceived(JsObject object) {
JsArrayString keys = object.keys();
for (String key : JsUtil.asIterable(keys)) chunkOptions_.put(key, object.getAsString(key));
afterInit.execute();
}
});
}
use of org.rstudio.core.client.js.JsObject in project rstudio by rstudio.
the class DesktopApplicationHeader method initialize.
@Inject
public void initialize(final Commands commands, EventBus events, final Session session, ApplicationServerOperations server, Provider<DesktopHooks> pDesktopHooks, Provider<CodeSearch> pCodeSearch, Provider<UIPrefs> pUIPrefs, ErrorManager errorManager, GlobalDisplay globalDisplay, ApplicationQuit appQuit) {
session_ = session;
eventBus_ = events;
pUIPrefs_ = pUIPrefs;
globalDisplay_ = globalDisplay;
ignoredUpdates_ = IgnoredUpdates.create();
server_ = server;
appQuit_ = appQuit;
binder_.bind(commands, this);
commands.mainMenu(new DesktopMenuCallback());
pDesktopHooks.get();
commands.uploadFile().remove();
commands.exportFiles().remove();
commands.updateCredentials().remove();
commands.checkForUpdates().setVisible(true);
commands.showLogFiles().setVisible(true);
commands.diagnosticsReport().setVisible(true);
commands.showFolder().setVisible(true);
events.addHandler(SessionInitEvent.TYPE, new SessionInitHandler() {
public void onSessionInit(SessionInitEvent sie) {
final SessionInfo sessionInfo = session.getSessionInfo();
toolbar_.completeInitialization(sessionInfo);
new JSObjectStateValue("updates", "ignoredUpdates", ClientState.PERSISTENT, session_.getSessionInfo().getClientState(), false) {
@Override
protected void onInit(JsObject value) {
if (value != null)
ignoredUpdates_ = value.cast();
}
@Override
protected JsObject getValue() {
ignoredUpdatesDirty_ = false;
return ignoredUpdates_.cast();
}
@Override
protected boolean hasChanged() {
return ignoredUpdatesDirty_;
}
};
Scheduler.get().scheduleFinally(new ScheduledCommand() {
public void execute() {
Desktop.getFrame().onWorkbenchInitialized(sessionInfo.getScratchDir());
if (sessionInfo.getDisableCheckForUpdates())
commands.checkForUpdates().remove();
if (!sessionInfo.getDisableCheckForUpdates() && pUIPrefs_.get().checkForUpdates().getValue()) {
checkForUpdates(false);
}
}
});
}
});
events.addHandler(ShowFolderEvent.TYPE, new ShowFolderHandler() {
public void onShowFolder(ShowFolderEvent event) {
Desktop.getFrame().showFolder(event.getPath().getPath());
}
});
toolbar_ = new GlobalToolbar(commands, events, pCodeSearch);
ThemeStyles styles = ThemeResources.INSTANCE.themeStyles();
toolbar_.addStyleName(styles.desktopGlobalToolbar());
}
Aggregations