sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    [Plugin] Recall last tool v1.2

    Scheduled Pinned Locked Moved Plugins
    60 Posts 28 Posters 59.5k Views 28 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M Offline
      Matt666
      last edited by

      Hi plot_paris!

      That's a good idea... I will give a try! I think we may go through 10 previously used tools, and may undo history (retrun to the last tool used) by activating selection tool.

      Frenglish at its best !
      My scripts

      1 Reply Last reply Reply Quote 0
      • Chris FullmerC Offline
        Chris Fullmer
        last edited by

        Hey, I was just thinking about a plugin that would cycle through tools on repeated pressing of a button.

        So assign it to the spacebar. Hit the spacebar once and its select. Twice it move, 3 is rotate. But I quickly decided against the silly plugin when I started thinking about having to hit the spacebar 26 times to get to "place camera" or something 😆

        But in this context, I think it is quite a good idea,

        Chris

        Lately you've been tan, suspicious for the winter.
        All my Plugins I've written

        1 Reply Last reply Reply Quote 0
        • plot-parisP Offline
          plot-paris
          last edited by

          another idea, although probably not managable with ruby, is a much more graphical approach:

          when you hold down the space bar, a ring with tool buttons appears around your cursor in a circular fashion. you can now left click any button to get the tool. or you can simply turn the scroll wheel to file through them, either clockwise or counterclockwise. by default the selection tool is highlighted - so if you just press the space bar once, you get the select tool.

          you can easily customise this tool-circle by holding down the space bar and then dragging unwanted tools out of the circle and vice versa.

          well, maybe Google comes up with soemthing similar in the next release 😄

          1 Reply Last reply Reply Quote 0
          • juan974J Offline
            juan974
            last edited by

            Merci MATT ...

            juan974 (Réunion island)
            website : http://sketchucation.com/click.php?url=http://www.tarn.us

            1 Reply Last reply Reply Quote 0
            • B Offline
              bitsnbites
              last edited by

              Thank you very much, Matt666.
              That´s the Plugin i was lookin for.

              thx a lot

              1 Reply Last reply Reply Quote 0
              • M Offline
                Matt666
                last edited by

                I will try to find a solution.

                Frenglish at its best !
                My scripts

                1 Reply Last reply Reply Quote 0
                • M Offline
                  Matt666
                  last edited by

                  Sorry, I don't know how to create a personal observer for controlling mouse events...

                  Frenglish at its best !
                  My scripts

                  1 Reply Last reply Reply Quote 0
                  • P Offline
                    Pherim
                    last edited by

                    Neat, I didn't know this yet. Great timesaver when switching to select tool to return to the previously used tool.

                    1 Reply Last reply Reply Quote 0
                    • M Offline
                      mirale999
                      last edited by

                      Merci Matt! Great plugin~
                      By the way, I come up with an idea, I think maybe it's useful!

                      I use the shortcut“shift+Y” to recall the last tool. When I use this plugin, a situation like this will happen:
                      first I use the "Edge follow me" tool to build a face,
                      then I move it to another place, and use move and scale to modify the curves,
                      then I want to do "Edge follow me" again

                      so the idea comes:------this tool have a function: ignore the move, scale, rotate, line, arc, rectangle, circle...(because they are so useful and they have shortcuts), but recall edge follow me, blend, extrapolate colors...(you must find it in a submenu).
                      On my bad English... hope you get my meaning... ☀

                      paranoia is a higher form of awareness...

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        Matt666
                        last edited by

                        Hi mirale999!
                        So you want RLT ignores some native tools you would be able to choose? Do you agree with this "way of explanation" (I dont know how to tell it in english 😳 )?
                        I don't know if it's possible... But I can try.

                        Frenglish at its best !
                        My scripts

                        1 Reply Last reply Reply Quote 0
                        • J Offline
                          jdtsmith
                          last edited by

                          Just an FYI for any Mac users. Pecan's version above with the "exceptions" list works fine for me in SU 8.0. I use it with BetterTouchTool and a Magic Trackpad:

                          • Three Finger TipTap Left: Orbit (O)
                          • 3 Finger Tip Tap Right: Recall Last Tool (which I have as F2)
                          • Pinch Out: Zoom Extents (I have as Shift-Z)

                          This plugin, with Lion's native three finger dragging make using SU with the trackpad much more enjoyable. Here's how I use it:

                          • Two finger "scroll": zooms in and out
                          • 3 Finger move: same as click and drag for selection
                          • Tip Tap Left (drop two fingers and tap another to the left): switch to orbit tool
                          • Tip Tap Right: switch back to whichever tool I'm in the middle of using
                          • Get Lost? Pinch to Zoom Out

                          Thanks to the plugin's authors!

                          1 Reply Last reply Reply Quote 0
                          • A Offline
                            alex_picas
                            last edited by

                            Hi Matt. Recall command of autocad is good too. Can you do other 'last tool recall' version like autocad with using only a space bar? Thanks Matt.

                            1 Reply Last reply Reply Quote 0
                            • O Offline
                              Omaha
                              last edited by

                              In this case, I want to say that for sure, Thank you. You saved the day.

                              1 Reply Last reply Reply Quote 0
                              • P Offline
                                Pherim
                                last edited by

                                Makes SU Make 2017 (Windows) crash.

                                1 Reply Last reply Reply Quote 0
                                • CadFatherC Offline
                                  CadFather
                                  last edited by

                                  mmm... works fine with me - is it wrapped in a module?

                                  
                                  require 'sketchup.rb'
                                  
                                  module MATT_Recall
                                  
                                  
                                  class Matt_Observer < Sketchup;;ToolsObserver
                                  
                                  	@@Matt_Model_Toolid = nil
                                  	@@Matt_Model_Toolid2 = nil
                                    
                                  	def onActiveToolChanged (tools_object, toolname, toolid)
                                  		@@Matt_Model_Toolid = @@Matt_Model_Toolid2 if @@Matt_Model_Toolid2
                                  		@@Matt_Model_Toolid2 = toolid if not([10508].index toolid)
                                  	end
                                    
                                    
                                  	def self.recall_last
                                  		if @@Matt_Model_Toolid
                                  			return Sketchup.send_action(@@Matt_Model_Toolid)
                                  		else
                                  			puts "No tool used before."
                                  			return Sketchup.send_action("selectSelectionTool;")
                                  		end
                                  	end
                                    
                                    
                                  end  #class
                                  
                                  Sketchup.active_model.tools.add_observer(Matt_Observer.new)
                                  
                                  	
                                  unless file_loaded?(__FILE__)
                                     UI.menu('Edit').add_item("RECALL LAST TOOL"){ Matt_Observer.recall_last }
                                  	file_loaded(__FILE__)
                                  end
                                  
                                  end#module
                                  
                                  
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • CadFatherC Offline
                                    CadFather
                                    last edited by

                                    just in case anyone else asks, the following is totally fine on my pc:

                                    
                                    require 'sketchup.rb'
                                    
                                    module MATT_Recall
                                    
                                    class Matt_Observer < Sketchup;;ToolsObserver
                                    
                                    	@@Matt_Model_Toolid = nil
                                    	@@Matt_Model_Toolid2 = nil
                                      
                                    	def onActiveToolChanged (tools, tool_name, tool_id)
                                        puts "Tool Used; #{tool_name}"
                                    		@@Matt_Model_Toolid = @@Matt_Model_Toolid2 if @@Matt_Model_Toolid2
                                    		@@Matt_Model_Toolid2 = tool_id if not([10508].index tool_id)
                                    	end
                                     
                                    
                                    	def self.recall_last
                                    		if @@Matt_Model_Toolid
                                    			return Sketchup.send_action(@@Matt_Model_Toolid)
                                    		else
                                    			puts "No tool used before."
                                    			return Sketchup.send_action("selectSelectionTool;")
                                    		end
                                    	end
                                      
                                      
                                    end  #class
                                    
                                    Sketchup.active_model.tools.add_observer(Matt_Observer.new)
                                    
                                    	
                                    unless file_loaded?(__FILE__)
                                       UI.menu('Edit').add_item("RECALL LAST TOOL"){ Matt_Observer.recall_last }
                                    	file_loaded(__FILE__)
                                    end
                                    
                                    end#module
                                    
                                    
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • P Offline
                                      Pherim
                                      last edited by

                                      Using the one from the ExtensionStore... but no, it's not. Will try it out, thank you.

                                      Edit: Still crashes on start. Well, it doesn't work with tools from plugins, anyway.

                                      1 Reply Last reply Reply Quote 0
                                      • B Offline
                                        booglabird
                                        last edited by

                                        Nice tool, but i wish it worked after panning or rotating, avoiding those inputs

                                        1 Reply Last reply Reply Quote 0
                                        • E Offline
                                          Einstein
                                          last edited by

                                          The RB file has a very strange name: "Recall_last_tool%5Bv1.2%5D.rb" and its installation caused a bugsplat in SU17. I changed RB name to "Recall_last_tool" and bugsplat didn't appear anymore 😄

                                          1 Reply Last reply Reply Quote 0
                                          • Dave RD Offline
                                            Dave R
                                            last edited by

                                            @einstein said:

                                            The RB file has a very strange name: "Recall_last_tool%5Bv1.2%5D.rb"

                                            Actually it shows up that way when you download it because Windows doesn't resolve the square brackets in file names. You could have edited the file name and removed %5B and %5D and been just fine.

                                            Etaoin Shrdlu

                                            %

                                            (THERE'S NO PLACE LIKE)

                                            G28 X0.0 Y0.0 Z0.0

                                            M30

                                            %

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 3 / 3
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement