Question about palettes
-
wow, this is terrible... just when i think i 'understand'...
this is the code:
def togz name='Scenes' if @open==1 ### it WAS clicked ON earlier, so it's probably ON toggleRollUp(name) if isRolledUp(name) ### now check if it's open and close it if it is. closeWindow(name) ### 'close code' ### but if it's already been closed [manually?] do nothing but this... @open=0 else ### it's either been clicked OFF, or it has not yet been clicked at all togglecloseWindow(name) if iscloseWindow(name) ### now check if it's closed and open it if it is. Sketchup.send_action 21354 ### 'open code' ### but if it's already open do nothing but this... @open=1 end end #def
and this is the error when i type togz into the ruby console...
Error: #<NoMethodError: undefined method `iscloseWindow' for main:Object>
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/- - togz.rb:14
(eval):155i have placed both toggleWindows.rb and win32api.so in the plugins folder (and i saw there is a def called closeWindow in toggleWindows.rb)
-
I've added a 'windowIsVisible(name)' test to the toggleWindows code.toggleWindows.rb This code below does what you want...
require 'toggleWindows.rb' def toggleLayersWindow() if @toggle==1 if windowIsVisible('Layers') closeWindow('Layers') else Sketchup.send_action(21354) end @toggle=0 else if windowIsVisible('Layers') if not @toggle ### 1st go if isRolledUp('Layers') toggleRollUp('Layers') else closeWindow('Layers') end else closeWindow('Layers') end else Sketchup.send_action(21354) end @toggle=1 end#if end#def
-
Along with a
require 'toggleWindows.rb'
to ensure it's loaded before accessing the code. -
that's not fair TIG - you're hacking your own code!
i'll give it a spin..
ok folks, seriously what the heck have you got in those brains...i'm thinking of early retirement..
Thank You
-
Ain't no backing out now!
-
you must be joking, i'm going out for a drink to forget!
-
You'll be drinking binary
-
Note that TIG's current example works on English Sketchup only. It needs a bit of work to retrieve the localized window titles from the exe's resources, in order to work for all language locale editions.
-
that's true.. it works fine, but it greys out many context commands on starting SU...
-
How are you making the commands? - make one only attached to the toolbar.
The reason for the grey-outs is 'too many commands'.
It's possible to accidentally create a new command every time it's used... -
i went through most plugins commands, numbered them all differently (e.g. cmd1, cmd2, etc)
also got rid of some plugins - right now it works - but i'm keeping an eye...
many thanks again TIG... i owe you quite a few pints!
-
ok, updated version with better commands and icons. works fine on my pc
-
yes, maybe i'm better at it after a few guinness...
meantime here's the result - i don't have a mac so do not know whether it works there.
only thing is that upon reopening, the windows always dock at the bottom of the stack..
Cheers
Advertisement