How to disabled or Grayed some field in Input box
-
-
There is no such control for UI.inputbox.
If you need advanced control over the UI the only option at the moment is to create WebDialogs.
That being said, you might find it easier and faster to make a dialog using the SKUI framework: https://github.com/thomthom/SKUI
One limitation here is that OSX won't be able to produce a modal window. -
Thanks for the info.
-
` require 'CSV'
def pricelookup(my_part_number)csv = CSV.read('C:\price_lookup.csv', :headers => true) price = csv.find {|row| row['Part No'] == my_part_number }['Price'] return price
end`
Above code works fine as long as partnumber exist in price_lookup.csv
file. If partnumber doesn't exist it crash my sketchup project. how do I
handle this with out crashing my sketchup project. -
What version are you using? Did you submit the BugSplats? Did you enter any info that we can search for to find the BugSplats?
-
Here's an alternative way avoiding the clunky require 'CSV'...
def pricelookup(my_part_number) all_parts = IO.readlines('C;\price_lookup.csv') part_number_row = nil part_number_row = all_parts.grep(/^#{my_part_number},/)[0] ### first match price = nil price = part_number_row.split(',')[1].chomp if part_number_row return price end
This assumes 'price' is the second column after 'part_number' in its row...
You know how your csv files is set up... -
I test following code in sketchup 8 works fine. but in Sketchup 2014 gave error. I tried
some change in code works now here is the code comment out the one i changed.I think Array of Array problem.<span class="syntaxdefault">require </span><span class="syntaxstring">'sketchup.rb'<br /><br /></span><span class="syntaxdefault">class Testbox<br />def initialize</span><span class="syntaxkeyword">()<br /></span><span class="syntaxdefault"> <br /> model </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> Sketchup</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">active_model<br /> ent </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> model</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities <br /> group </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_group<br /> ent </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">entities<br /> <br /> <br /> prompts </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"Width"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Depth"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Height"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Colour"</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> defaults </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"8'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"12\""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"7\'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Blue"</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> list </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"6'|8'|10'|Custom"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"2'|4'|12\""</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"5'|7'|9'"</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Blue|Red|Green"</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">#list = [["6'|8'|10'|Custom"],["2'|4'|12\""],["5'|7'|9'"],["Blue|Red|Green"]]<br /></span><span class="syntaxdefault"> results </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> inputbox prompts</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> defaults</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> list</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Test_Box"<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">#results = inputbox (prompts, defaults, list, "Test_Box")<br /></span><span class="syntaxdefault"> return nil if not results<br /> <br /> w </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> if w </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Custom"<br /></span><span class="syntaxdefault"> results_w </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> inputbox </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"Enter Width;"</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxstring">"1'"</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Custom Size"<br /></span><span class="syntaxdefault"> return nil if not results_w<br /> w </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results_w</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br /> else<br /> w </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> w</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">to_l<br /> end<br /> <br /> wid </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> w<br /> dep </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">1</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br /> hei </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">2</span><span class="syntaxkeyword">].</span><span class="syntaxdefault">to_l<br /> color </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> results</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">3</span><span class="syntaxkeyword">]<br /></span><span class="syntaxdefault"> <br /> pts </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">wid</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">],</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">[</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">dep</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">0</span><span class="syntaxkeyword">]]<br /></span><span class="syntaxdefault"> <br /> base </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> ent</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">add_face pts<br /> hei </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">-</span><span class="syntaxdefault">hei if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">normal</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">dot</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">Z_AXIS</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword"><</span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">back_material </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> color <br /> base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> color<br /> mat </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">material<br /> mat</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">alpha </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 0.1<br /> base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">reverse</span><span class="syntaxkeyword">!<br /></span><span class="syntaxdefault"> base</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">pushpull </span><span class="syntaxkeyword">-</span><span class="syntaxdefault">hei<br /> <br /> part_NO </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">"600181"<br /></span><span class="syntaxdefault"> <br /> box_1_qty </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 1<br /> <br /> <br /> group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">set_attribute</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'dynamic_attributes'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">'name of material'</span><span class="syntaxkeyword">,</span><span class="syntaxstring">"Test Box"</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">set_attribute</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'dynamic_attributes'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">'partnumber'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> part_NO</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> group</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">set_attribute</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'dynamic_attributes'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">'quantity'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault">box_qty</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> <br /> <br /> <br /> end<br />end<br /><br /><br />if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">not $Testbox_menu_loaded</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> <br /> UI</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">menu</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Tools"</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">add_item</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"TEST_BOX"</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{</span><span class="syntaxdefault"> Testbox</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">new </span><span class="syntaxkeyword">}</span><span class="syntaxdefault"> <br /> <br /> $Testbox_menu_loaded </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> true<br />end</span>
-
The correct method+arguments format for both versions of Ruby is:
results = inputbox(prompts, defaults, list, "Test_Box") results_w = inputbox(["Enter Width:"], ["1'"], "Custom Size")
There should be a pair of( )
enclosing the arguments AND NO space in front of the opening(
-
what is the different between these two
` list = ["6'|8'|10'|Custom","2'|4'|12"","5'|7'|9'","Blue|Red|Green"]list = [["6'|8'|10'|Custom"],["2'|4'|12""],["5'|7'|9'"],["Blue|Red|Green"]]`
second one doesn't work on Sketchup 2014 but works in sketchup 8.Thanks TIG for the alternative way for finding price this code works awesome you don't need
require 'CSV'. -
Who cares? The second one is not the format given in the API dictionary.
Use the first one.
Advertisement