windstille-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Windstille-devel] rev 367 - trunk/src


From: Ingo Ruhnke
Subject: [Windstille-devel] rev 367 - trunk/src
Date: Sun, 30 May 2004 02:54:18 +0200

Author: grumbel
Date: 2004-05-30 02:54:18 +0200 (Sun, 30 May 2004)
New Revision: 367

Modified:
   trunk/src/editor.py
   trunk/src/editor_map.cxx
   trunk/src/supertux.py
   trunk/src/tile_selector.cxx
   trunk/src/tile_selector.hxx
Log:
- fixed tileselector api a bit
- give a clean level at startup

Modified: trunk/src/editor.py
===================================================================
--- trunk/src/editor.py 2004-05-30 00:07:42 UTC (rev 366)
+++ trunk/src/editor.py 2004-05-30 00:54:18 UTC (rev 367)
@@ -81,9 +81,6 @@
 workspace  = Workspace(myrect.get_width(), myrect.get_height())
 editor_map.set_workspace(workspace)
 
-m = EditorMap()
-workspace.set_map(m)
-
 # Tools
 tilemap_paint_tool  = TileMapPaintTool()
 tilemap_select_tool = TileMapSelectTool()
@@ -92,11 +89,8 @@
 
 workspace.set_tool(tilemap_paint_tool.to_tool());
 
-tileset = load_supertux_tiles()
-tilemap = TilemapLayer(tileset, 200, 15)
-m.add_layer(tilemap.to_layer())
-    
-TilemapLayer_set_current(tilemap)
+startlevel = SuperTuxLevel()
+startlevel.activate(workspace)
 
 def do_quit():
     print "---My Callback---"
@@ -112,31 +106,32 @@
     _.add_point(CL_Point(4,4))
     workspace.get_map().execute(_.to_command())
 
-window = Window(CL_Rect(50, 50, 450, 400), "My Window", gui.get_component())
+def block():
+    window = Window(CL_Rect(50, 50, 450, 400), "My Window", 
gui.get_component())
     
-gui.push_component(window.get_client_area())
-dirview = DirectoryView(CL_Rect(CL_Point(3, 40), CL_Size(300, 200)), 
gui.get_component())
-dirview.set_directory("/");
+    gui.push_component(window.get_client_area())
+    dirview = DirectoryView(CL_Rect(CL_Point(3, 40), CL_Size(300, 200)), 
gui.get_component())
+    dirview.set_directory("/");
 
-scrollbar = Scrollbar(CL_Rect(CL_Point(370, 5), CL_Size(12, 300)), 
Scrollbar.VERTICAL, gui.get_component())
-scrollbar.set_range(50, 150)
-scrollbar.set_pagesize(10)
-scrollbar.set_pos(100)
+    scrollbar = Scrollbar(CL_Rect(CL_Point(370, 5), CL_Size(12, 300)), 
Scrollbar.VERTICAL, gui.get_component())
+    scrollbar.set_range(50, 150)
+    scrollbar.set_pagesize(10)
+    scrollbar.set_pos(100)
 
-load_icon    = Icon(CL_Point(34*0+2, 2), 
make_sprite("../data/images/icons24/stock_open.png"), "Some tooltip", 
gui.get_component());
-save_icon    = Icon(CL_Point(34*1+2, 2), 
make_sprite("../data/images/icons24/stock_save.png"), "Some tooltip", 
gui.get_component());
-save_as_icon = Icon(CL_Point(34*2+2, 2), 
make_sprite("../data/images/icons24/stock_save_as.png"), "Some tooltip", 
gui.get_component());
+    load_icon    = Icon(CL_Point(34*0+2, 2), 
make_sprite("../data/images/icons24/stock_open.png"), "Some tooltip", 
gui.get_component());
+    save_icon    = Icon(CL_Point(34*1+2, 2), 
make_sprite("../data/images/icons24/stock_save.png"), "Some tooltip", 
gui.get_component());
+    save_as_icon = Icon(CL_Point(34*2+2, 2), 
make_sprite("../data/images/icons24/stock_save_as.png"), "Some tooltip", 
gui.get_component());
+    
+    copy_icon    = Icon(CL_Point(34*3.1+2, 2), 
make_sprite("../data/images/icons24/stock_copy.png"), "Some tooltip", 
gui.get_component());
+    paste_icon   = Icon(CL_Point(34*4.1+2, 2), 
make_sprite("../data/images/icons24/stock_paste.png"), "Some tooltip", 
gui.get_component());
+    
+    def foo():
+        print "Button pressed"
 
-copy_icon    = Icon(CL_Point(34*3.1+2, 2), 
make_sprite("../data/images/icons24/stock_copy.png"), "Some tooltip", 
gui.get_component());
-paste_icon   = Icon(CL_Point(34*4.1+2, 2), 
make_sprite("../data/images/icons24/stock_paste.png"), "Some tooltip", 
gui.get_component());
+    connect(load_icon.sig_clicked(), foo)
 
-def foo():
-    print "Button pressed"
+    gui.pop_component()
 
-connect(load_icon.sig_clicked(), foo)
-
-gui.pop_component()
-
 willow = Panel(CL_Rect(CL_Point(0, 23), CL_Size(800, 33)), gui.get_component())
 
 def Icon_set_callback(self, func):
@@ -174,8 +169,6 @@
     else:
         redo_icon.disable()        
 
-connect(m.sig_change(), on_map_change)
-
 def set_tilemap_paint_tool():
     workspace.set_tool(tilemap_paint_tool.to_tool())
     paint.set_down()
@@ -225,7 +218,7 @@
 # erase  = Icon(CL_Point(2, 32+1+2), 
make_sprite("../data/images/tools/stock-tool-eraser-22.png"), "Some tooltip", 
toolbar);
 # move   = Icon(CL_Point(2, 32*2+2), 
make_sprite("../data/images/tools/stock-tool-move-22.png"), "Some tooltip", 
toolbar);
 
-supertux = SuperTuxGUI(tileset, gui)
+supertux = SuperTuxGUI(load_supertux_tiles(), gui)
 
 def block():
     def CL_Menu_add_item(self, name, func):

Modified: trunk/src/editor_map.cxx
===================================================================
--- trunk/src/editor_map.cxx    2004-05-30 00:07:42 UTC (rev 366)
+++ trunk/src/editor_map.cxx    2004-05-30 00:54:18 UTC (rev 367)
@@ -133,8 +133,6 @@
 CL_Rect
 EditorMap::get_bounding_rect()
 {
-  assert(impl->layers.size() >= 1);
-  
   bool init = false;
   CL_Rect rect;
 

Modified: trunk/src/supertux.py
===================================================================
--- trunk/src/supertux.py       2004-05-30 00:07:42 UTC (rev 366)
+++ trunk/src/supertux.py       2004-05-30 00:54:18 UTC (rev 367)
@@ -40,7 +40,6 @@
                                   CL_Color(255,   0,   0, 128)))
 
 class SuperTuxLevel:
-    me = None
     name   = "no name"
     author = "no author"
     width  = 20
@@ -54,30 +53,39 @@
 
     editormap = None
 
-    def __init__(self, filename):
-        print "SuperTuxLevel:__init__"
-        self.me = self
+    def __init__(self, filename = None):
+        if filename == None:
+            self.name   = "No Name"
+            self.author = "No Author"
 
-        tree = sexpr_read_from_file(filename)
-        data = tree[1:]
+            self.width  = 20
+            self.height = 15
 
-        self.name   = get_value_from_tree(["name", "_"], data, "no name")
-        self.author = get_value_from_tree(["name", "_"], data, "no author")
+            self.foreground  = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.interactive = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.background  = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.objects = ObjectLayer()
+        else:
+            tree = sexpr_read_from_file(filename)
+            data = tree[1:]
 
-        self.width  = get_value_from_tree(["width", "_"], data, 20)
-        self.height = get_value_from_tree(["height""_"], data, 15)
+            self.name   = get_value_from_tree(["name", "_"], data, "no name")
+            self.author = get_value_from_tree(["name", "_"], data, "no author")
 
-        self.foreground  = TilemapLayer(supertux_tileset, self.width, 
self.height)
-        self.foreground.set_data(get_value_from_tree(["foreground-tm"], data, 
[]))
+            self.width  = get_value_from_tree(["width", "_"], data, 20)
+            self.height = get_value_from_tree(["height""_"], data, 15)
 
-        self.interactive = TilemapLayer(supertux_tileset, self.width, 
self.height)
-        self.interactive.set_data(get_value_from_tree(["interactive-tm"], 
data, []))
+            self.foreground  = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.foreground.set_data(get_value_from_tree(["foreground-tm"], 
data, []))
 
-        self.background  = TilemapLayer(supertux_tileset, self.width, 
self.height)
-        self.background.set_data(get_value_from_tree(["background-tm"], data, 
[]))
+            self.interactive = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.interactive.set_data(get_value_from_tree(["interactive-tm"], 
data, []))
 
-        self.objects = ObjectLayer()
+            self.background  = TilemapLayer(supertux_tileset, self.width, 
self.height)
+            self.background.set_data(get_value_from_tree(["background-tm"], 
data, []))
 
+            self.objects = ObjectLayer()
+
         self.editormap = EditorMap()
         self.editormap.add_layer(self.background.to_layer())
         self.editormap.add_layer(self.interactive.to_layer())
@@ -143,8 +151,7 @@
     def __init__(self, tileset, gui):
         self.selector_window = Panel(CL_Rect(CL_Point(800-134, 23+33), 
CL_Size(128 + 6, 558)),
                                          gui.get_component())
-        self.tileselector = TileSelector(CL_Rect(CL_Point(3, 3), CL_Size(128, 
552)),
-                                         6, 3, self.selector_window)
+        self.tileselector = TileSelector(CL_Rect(CL_Point(3, 3), CL_Size(128, 
552)), self.selector_window)
         self.tileselector.set_tileset(tileset)
         self.tileselector.set_tiles(range(1,100))
         self.tileselector.show(False)
@@ -178,34 +185,7 @@
     tileset = Tileset(32)
     load_game_tiles(tileset, 
"/home/ingo/cvs/supertux/supertux/data/images/tilesets/supertux.stgt")
     return tileset 
-        
-def main_loop():
-    flexlay = Flexlay()
-    flexlay.init()
 
-    editor = Editor()
-    gui = editor.get_gui_manager()
-
-    tileset = load_supertux_tiles()
-    editor_map = EditorMapComponent(CL_Rect(0, 0, 799, 599), 
gui.get_component())
-    workspace  = Workspace(799, 599)
-    editor_map.set_workspace(workspace)
-
-    m = EditorMap()
-    workspace.set_current_map(m)
-    
-    tilemap = TilemapLayer(tileset, 20, 10)
-    m.add_layer(tilemap.to_layer())
-    
-    window = CL_Window(CL_Rect(50, 50, 350, 300), "My Window", 
gui.get_component())
-    
-    supertux_gui = SuperTuxGUI()
-
-    print "Launching GUI"
-    gui.run()
-    
-    flexlay.deinit()
-
 supertux_datadir = "/home/ingo/cvs/supertux/supertux/data/"
 supertux_tileset = load_supertux_tiles()
     

Modified: trunk/src/tile_selector.cxx
===================================================================
--- trunk/src/tile_selector.cxx 2004-05-30 00:07:42 UTC (rev 366)
+++ trunk/src/tile_selector.cxx 2004-05-30 00:54:18 UTC (rev 367)
@@ -24,10 +24,9 @@
 #include "tile_selector.hxx"
 #include "tilemap_paint_tool.hxx"
 
-TileSelector::TileSelector(const CL_Rect& rect, int width, int height, 
CL_Component* parent)
-  : CL_Component(rect,
-                 parent),
-    width(width), height(height)
+TileSelector::TileSelector(const CL_Rect& rect, CL_Component* parent)
+  : CL_Component(rect, parent),
+    width(1)
 {
   index = 0;
 
@@ -160,6 +159,8 @@
 TileSelector::set_tileset(Tileset t)
 {
   tileset = t;
+  // Recalc the number of tiles in a row
+  width  = get_width()/tileset.get_tile_size();
 }
 
 void

Modified: trunk/src/tile_selector.hxx
===================================================================
--- trunk/src/tile_selector.hxx 2004-05-30 00:07:42 UTC (rev 366)
+++ trunk/src/tile_selector.hxx 2004-05-30 00:54:18 UTC (rev 367)
@@ -33,7 +33,6 @@
 private:
   CL_SlotContainer slots;
   int width;
-  int height;
   int index;
   
   int offset;
@@ -50,7 +49,7 @@
 
 public:
   /** width and height in number of tiles */
-  TileSelector(const CL_Rect& rect, int width, int height, CL_Component* 
parent);
+  TileSelector(const CL_Rect& rect, CL_Component* parent);
   
   ~TileSelector();
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]