source: tol/tolbase/lib/toltk/ImageManager.tcl @ 507bd60

1941-docker-image-to-testdevel
Last change on this file since 507bd60 was 507bd60, checked in by Jorge Pérez <josp.jorge@…>, 16 years ago

refs #945, fixed a bug raised when GuiTools is not loaded

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@2406 be4846ae-f051-483a-831f-b64e7d08527f

  • Property mode set to 100644
File size: 1.5 KB
Line 
1package require BWidget
2
3namespace eval ::ImageManager {
4}
5
6proc ::ImageManager::getImageResourceId { imageName } {
7  set rvar "__getImageResourceId__"
8  set tolExpr [ string map [ list %N $imageName %RV $rvar ] {
9    Text %RV = {
10      Real test = ObjectExist( "Code",
11                               "GuiTools::ImageManager::getImageResourceId" );
12      Text If( test, GuiTools::ImageManager::getImageResourceId( "%N" ), "" )
13    }
14  } ]
15  tol::console eval $tolExpr
16  set info [ tol::info variable [ list Text $rvar ] ]
17  set value [ string trim [ lindex $info 2 ] \" ]
18  tol::console stack release $rvar
19  return $value
20}
21
22proc ::ImageManager::getIconForInstance { objAddress } {
23  set rvar "__getIconForInstance__"
24  set tolExpr [ string map [ list %A $objAddress %RV $rvar ] {
25    Text %RV = {
26      Real test = ObjectExist( "Code",
27                               "GuiTools::ImageManager::getIconForInstance" );
28      Text If( test, {
29        NameBlock obj = GetObjectFromAddress( "%A" );
30        // obtengo el nombre del imagen
31        Text imageName = GuiTools::ImageManager::getIconForInstance( obj );
32        // obtengo el id del recurso que es el id de la imagen Tk
33        Text GuiTools::ImageManager::getImageResourceId( imageName )
34      }, "" )
35    }
36  } ]
37  tol::console eval $tolExpr
38  set info [ tol::info variable [ list Text $rvar ] ]
39  set value [ string trim [ lindex $info 2 ] \" ]
40  tol::console stack release $rvar
41  return [ expr {$value eq "" ? [::Bitmap::get "NameBlock"] : $value} ]
42}
Note: See TracBrowser for help on using the repository browser.