Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > RUBYLIB and shared libraries

Reply
Thread Tools

RUBYLIB and shared libraries

 
 
Alpha Blue
Guest
Posts: n/a
 
      02-02-2010
Hi everyone,

I'm setting up my RUBYLIB variables for use with custom libraries I've
created. I have the following working properly:

C:/lib/wxruby/lib [this points to the custom library path I have set]

Everything is verified with ruby -e "puts $:" ..

The first module I created is a module called public_instance_methods.rb

Location: C:/lib/wxruby/lib/public_instance_methods.rb

module PublicInstanceMethods

# This method sets the default icon for the given window or frame
def set_icon_file(file)
icon_file = File.join(File.dirname(__FILE__),"..","icons",file )
set_icon Wx::Icon.new(icon_file, Wx::BITMAP_TYPE_ICO)
end

end

My default working project directory is:

E:\project\lib\
"" \core
"" \icons
"" \images

In E:\project\lib\core\main.rb I have..

require 'public_instance_methods'
include PublicInstanceMethods

class GuiMain < XrcFrameMain
def initialize
super()

set_icon_file("test.ico")

end
end

Which results into an error saying:

Icon file does not exist:
C:/lib/wxruby/lib/../icons/kirin.ico (ArgumentError)

.. which means that it's looking in the lib directory of the included
module and not the working directory of the application. How should I
set this method up so that it includes the right path to the ico file?
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Alpha Blue
Guest
Posts: n/a
 
      02-02-2010
Jason Perry wrote:
> You can use RAILS_ROOT but I'm sure there is a better way.


wha??

This isn't a rails discussion topic and has nothing to do with rails.
Someone else?
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Alpha Blue
Guest
Posts: n/a
 
      02-02-2010
Jason Perry wrote:
> Sorry, man.
>
> If you want to define the root of your application you could always set
> a
> global variable in your main.rb or set a global variable.


Thanks Jason. That's what I needed:

main.rb

$file_path = __FILE__

set_icon_file($file_path,"..","icons","test.ico")

.. then in my custom lib directory for PublicInstanceMethods I have:

# This method sets the default icon for the given window or frame
def set_icon_file(path, *file)
icon_file = File.join(File.dirname(path), file)
set_icon Wx::Icon.new(icon_file, Wx::BITMAP_TYPE_ICO)
end

.. and now everything works fine. If there is a better way of doing
this with regard to use of custom lib files, please let me know.

Thanks.

--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to override RUBYLIB for soap4r on shared host? Bothari Ruby 0 08-19-2006 05:52 PM
RUBYLIB on Windows aurelianito Ruby 4 11-04-2005 06:02 PM
RubyGems and $RUBYLIB Chris Spiegel Ruby 0 02-28-2005 12:40 PM
Where to download FXRuby library; where to put it; RUBYLIB, RUBYPATH env. vars Richard Lionheart Ruby 8 05-27-2004 04:31 PM
passing RUBYLIB to fcgi processes matthew c. mead Ruby 0 02-15-2004 06:03 AM



Advertisments