[Code] Sketchup.send_action() : Arguments to
-
Sketchup.send_action() : Arguments to
This topic is for posting both string and (PC ONLY) numeric arguments to the Sketchup.send_action() method.
Other known threads on this topic:
Search the Developers Forum
( for other posts on send action ) -
integer arguments are PC ONLY:
@unknownuser said:
(http://forums.sketchucation.com/memberlist.php?mode) in Google toolbar: get position":2lfu275a]Hi all, do you know how can I call the get position (the 1st command in Google Toolbar) via API?
I looked around and found that SU5 had some script for manage the Google Earth input/ouput.
use:
Sketchup.send_action( *numarg* )
Sketchup ver 7.x, where
*numarg*
is:<span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_action</span><span class="syntaxkeyword">(</span><span class="syntaxdefault"> numarg </span><span class="syntaxkeyword">)<br /></span><span class="syntaxcomment"># Sketchup ver 7.x<br /># PC ONLY ; numargs for the Google Toolbar;<br /></span><span class="syntaxdefault"> 139 </span><span class="syntaxstring">"Get Current View"<br /></span><span class="syntaxdefault"> 140 </span><span class="syntaxstring">"Toggle Terrain"<br /></span><span class="syntaxdefault"> 145 </span><span class="syntaxstring">"Place Model"<br /></span><span class="syntaxdefault">21988 </span><span class="syntaxstring">"Get Models"<br /></span><span class="syntaxdefault">21989 </span><span class="syntaxstring">"Share Model"<br /></span><span class="syntaxdefault">24188 </span><span class="syntaxstring">"Upload Component"<br /></span><span class="syntaxdefault"> </span>
Sketchup ver 8.x, where
*numarg*
is:<span class="syntaxdefault">Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_action</span><span class="syntaxkeyword">(</span><span class="syntaxdefault"> numarg </span><span class="syntaxkeyword">)<br /></span><span class="syntaxcomment"># Sketchup ver 8.x<br /># PC ONLY ; numargs for the Google Toolbar;<br /></span><span class="syntaxdefault"> 139 </span><span class="syntaxstring">"Add Location..."<br /></span><span class="syntaxdefault"> 140 </span><span class="syntaxstring">"Toggle Terrain"<br /></span><span class="syntaxdefault">24209 </span><span class="syntaxstring">"Add New Building..."<br /></span><span class="syntaxdefault">24210 </span><span class="syntaxstring">"Photo Textures"<br /></span><span class="syntaxdefault"> 145 </span><span class="syntaxstring">"Preview Model in Google Earth"<br /></span><span class="syntaxdefault">21988 </span><span class="syntaxstring">"Get Models..."<br /></span><span class="syntaxdefault">21989 </span><span class="syntaxstring">"Share Model..."<br /></span><span class="syntaxdefault">24188 </span><span class="syntaxstring">"Share Component..."<br /><br /></span><span class="syntaxcomment"># Cross-Platform String arguments;<br /></span><span class="syntaxstring">'addBuilding;'</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Add New Building..."<br />'getPhotoTexture;'</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Photo Textures"<br />'getModels;'</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Get Models..."<br />'shareModel;'</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Share Model..."</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">**<br /></span><span class="syntaxstring">'uploadComponent;'</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Share Component..."</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">**<br />**(</span><span class="syntaxdefault">brings up login dialog if not logged in</span><span class="syntaxkeyword">.)<br /></span><span class="syntaxdefault"> </span>
Updated 2011-09-05 : show the cross-platform strings for ver 8+.
-
@unknownuser said:
# Cross-Platform String arguments; > 'addBuilding;' "Add New Building..." > 'getPhotoTexture;' "Photo Textures" > 'getModels;' "Get Models..." > 'shareModel;' "Share Model..." ** > 'uploadComponent;' "Share Component..." ** > **(brings up login dialog if not logged in.)
The Cross-Platform String arguments don't work for me on a Mac with SketchUp 8.
-
Realized I need to clarify. Those arguments return true, but nothing happens. Dialogs don't show up, etc. Do they work on a PC?
-
@shoff said:
Realized I need to clarify. Those arguments return true, but nothing happens. Dialogs don't show up, etc. Do they work on a PC?
Yes they work on PC.. same as if you clicked the corresponding button on the Google Toolbar.
-
Bug Report filed for Sketchup Ruby on Apple OSX (this topic referenced.)
-
Here's an updated list of send_action() arguments for SketchUp 8 M2.
- Undocumented
! Broken on Mac
addBuilding; ! copy; * cut; * editDelete; * editHide; editRedo; editUndo; editUnhide; fixNonPlanarFaces; getCurrentView; * getModels; *! getPhotoTexture; ! newDocument; * openDocument; * pageAdd; pageDelete; pageNext; pagePrevious; pageUpdate; paste; * placeModel; * printDocument; * renderHiddenLine; renderMonochrome: renderShaded; renderTextures; renderWireframe; saveDocument; * select3dTextTool; * selectArcTool; selectAxisTool; selectCircleTool; selectDimensionTool; selectDollyTool; selectEraseTool; selectExtrudeTool; selectFieldOfViewTool; selectFreehandTool; selectImageIglooTool; selectLineTool; selectMeasureTool; selectMoveTool; selectNorthTool; selectOffsetTool; selectOrbitTool; selectPaintTool; selectPolygonTool; selectPositionCameraTool; selectProtractorTool; selectPushPullTool; selectRectangleTool; selectRotateTool; selectScaleTool; selectSectionPlaneTool; selectSelectionTool; selectTextTool; selectTurnTool; selectWalkTool; selectZoomTool; selectZoomWindowTool; selectionZoomExt; * shareModel; *! showRubyPanel; uploadComponent; *! viewBack; viewBottom; viewFront; viewIso; viewLeft; viewPerspective; viewRight; viewShowAxes; viewShowGuides; * viewShowHidden; viewTop; viewUndo; viewZoomExtents; viewZoomToSelection;
SketchUp 15
- = removed
- = added
-addBuilding; +selectArc3PointFitTool; +selectArc3PointPieTool; +selectArc3PointTool; +selectClassifierTool; +selectionZoomExt; +selectRectangle3PointTool; -selectionZoomExt; +showExtensionStore;
- Undocumented
-
is this an exception? [as in a mac thing...]
> Sketchup.send_action('viewPerspective;') true > !Sketchup.send_action('viewPerspective;') false
john
Edit:
I've been looking for a replacement forSketchup.send_action('viewParallelProjection:')
which returns True, but doesn't 'switch views' on mac.
**!**Sketchup.send_action('viewPerspective:')
does, I'm wondering if it also 'switches views' on PC or would I need to have both in a cross platform script.EDIT Edit:
Sketchup.send_action('viewParallelProjection:')
is working now?
it not on the list, but I had tried it... maybe I had a typo...So does
Sketchup.send_action('viewParallelProjection:')
work on PC's... john -
Sketchup.send_action('viewParallelProjection:') does not work on the PC. It returns true or false but does not change the view.
Sketchup.active_model.active_view.camera.perspective = false This command will change based on the true or false value
Keith
-
No action for the Follow Me tool? (That works on both platforms.)
-
@thomthom said:
No action for the Follow Me tool? (That works on both platforms.)
don't know what works on a PC, but since your probably missing the mac one...
Sketchup.send_action('selectExtrudeTool;')
I'll add this to my list...
I've got a osascript test runner, for running the lot if you want it...
john -
Excellent! I didn't realise that was it's internal name. Doh!
Yea, run the lot and see what you get.
-
I think early versions of SketchUp called it the 'Extrude Tool', later it was renamed 'FollowMe' but the original 'coded' name remains - which is like 'Scenes' are really 'Pages', 'Guides' are really 'Clines' etc, and other foibles that you can probably list too !
-
Yea - there's lots of legacy strangeness to discover when traversing the API.
-
possibly new for v2013 on mac at least
Sketchup.send_action('closeDocument;') Sketchup.send_action('newDocument;') Sketchup.send_action('saveDocument;') Sketchup.send_action('openDocument;') Sketchup.send_action('printDocument;')
@Dan, thanks for the trigger to test them...
-
@driven said:
possibly new for v2013 on mac at least
Sketchup.send_action('closeDocument;') > > Sketchup.send_action('newDocument;') > > Sketchup.send_action('saveDocument;') > > Sketchup.send_action('openDocument;') > > Sketchup.send_action('printDocument;') >
@Dan, thanks for the trigger to test them...
Some of those have been around BUT 'undocumented' for some time [v8M2].
The 'saveDocument:' is particularly useful because callingmodel.save(model.path)
does NOT save the model BUT returns 'true'.
So if you want to ensure the model is saved before saving it as another name, that send_action is needed...
Here's a list that I have for those v8M2 changes - some were documented but * == undocumented & ! == broken on MAC:
addBuilding: !
copy: *
cut: *
editDelete: *
getCurrentView: *
getModels: *!
getPhotoTexture: !
newDocument: *
openDocument: *
paste: *
placeModel: *
printDocument: *
saveDocument: *
select3dTextTool: *
selectionZoomExt: *
shareModel: *!
showRubyPanel:
uploadComponent: *!
viewShowGuides: * -
This is my latest list, some may be mac only, some new, some missing
Sketchup.send_action('addBuilding;') #! dosn't work on mac Sketchup.send_action('getPhotoTexture;') #! dosn't work on mac
#/ Sketchup.send_action('closeDocument;') Sketchup.send_action('newDocument;') Sketchup.send_action('openDocument;') # dialog drop-down sheet Sketchup.send_action('printDocument;') # direct print of current view @current settings Sketchup.send_action('saveDocument;') # dialog drop-down sheet
#/ Sketchup.send_action('editHide;') Sketchup.send_action('editRedo;') Sketchup.send_action('editUndo;') Sketchup.send_action('editUnhide;') #! dosn't work on mac Sketchup.send_action('editUnhideAll;') #* does work on mac Sketchup.send_action('editUnhideLast;') #* does work on mac
#/ Sketchup.send_action('fixNonPlanarFaces;')
#/ Sketchup.send_action('pageAdd;') Sketchup.send_action('pageDelete;') Sketchup.send_action('pageNext;') Sketchup.send_action('pagePrevious;') Sketchup.send_action('pageUpdate;')
#/ Sketchup.send_action('renderHiddenLine;') Sketchup.send_action('renderMonochrome:') Sketchup.send_action('renderShaded;') Sketchup.send_action('renderTextures;') Sketchup.send_action('renderWireframe;')
#/ Sketchup.send_action('selectAll;') #NEW? does work on mac but not('editSelectAll;') Sketchup.send_action('selectArcTool;') Sketchup.send_action('selectAxisTool;') Sketchup.send_action('selectCircleTool;') Sketchup.send_action('selectDimensionTool;') Sketchup.send_action('selectDollyTool;') Sketchup.send_action('selectEraseTool;') Sketchup.send_action('selectExtrudeTool;') Sketchup.send_action('selectFieldOfViewTool;') Sketchup.send_action('selectFreehandTool;') Sketchup.send_action('selectImageIglooTool;') Sketchup.send_action('selectLineTool;') Sketchup.send_action('selectMeasureTool;') Sketchup.send_action('selectMoveTool;') Sketchup.send_action('selectNorthTool;') Sketchup.send_action('selectOffsetTool;') Sketchup.send_action('selectOrbitTool;') Sketchup.send_action('selectPaintTool;') Sketchup.send_action('selectPolygonTool;') Sketchup.send_action('selectPositionCameraTool;') Sketchup.send_action('selectProtractorTool;') Sketchup.send_action('selectPushPullTool;') Sketchup.send_action('selectRectangleTool;') Sketchup.send_action('selectRotateTool;') Sketchup.send_action('selectScaleTool;') Sketchup.send_action('selectSectionPlaneTool;') Sketchup.send_action('selectSelectionTool;') Sketchup.send_action('selectTextTool;') Sketchup.send_action('selectTurnTool;') Sketchup.send_action('selectWalkTool;') Sketchup.send_action('selectZoomTool;') Sketchup.send_action('selectZoomWindowTool;')
#/ Sketchup.send_action('viewBack;') Sketchup.send_action('viewBottom;') Sketchup.send_action('viewFront;') Sketchup.send_action('viewIso;') Sketchup.send_action('viewLeft;') Sketchup.send_action('viewParallelProjection;') #* does work on mac •toggle Sketchup.send_action('viewPerspective;') #* does work on mac •toggle Sketchup.send_action('viewRight;') Sketchup.send_action('viewShowAxes;') Sketchup.send_action('viewShowAxes;') #* does work on mac •toggle Sketchup.send_action('viewShowGuides;') #* does work on mac •toggle Sketchup.send_action('viewShowHidden;') #* does work on mac •toggle Sketchup.send_action('viewTop;') Sketchup.send_action('viewTwoPointPerspective;') #* does work on mac Sketchup.send_action('viewUndo;') Sketchup.send_action('viewZoomExtents;') Sketchup.send_action('viewZoomToSelection;')
#/ Sketchup.send_action('showRubyPanel;')
#/ Sketchup.send_action('cut;')
#/ Sketchup.send_action('copy;')
#/ Sketchup.send_action('paste;')
#/ Sketchup.send_action('pasteInPlace;')
#/ Sketchup.send_action('editDelete;')
forgot the bottom one, and I think I have a few others... somewhere...
-
Is there any action to edit a group/component (similar as double clicking on a group)?
-
@mythos said:
Is there any action to edit a group/component (similar as double clicking on a group)?
No.
I have PM'd you a suggestion with a method usingview.pick_helper.path_at[-2]
, to select the picked object's container, then using the [forced open]Outliner
to open that now selected group/instance for editing... -
Has anyone found a cross-platform string to send the model to Layout ?
On the PC only this works:
Sketchup::send_action( 23051 )
Advertisement