diff options
| author | Cracker64 <cracker642@gmail.com> | 2010-12-16 05:17:08 (GMT) |
|---|---|---|
| committer | Cracker64 <cracker642@gmail.com> | 2010-12-16 05:17:08 (GMT) |
| commit | 327ccb7bbae1923b98ff8db8d87b2f649afd7d35 (patch) | |
| tree | 780474c5170c6ec2bb8e0aa921ec221be0da9f00 /src/main.c | |
| parent | 5b2c6893941cc04bbe80f74b8ea35a744b0164cc (diff) | |
| download | powder-327ccb7bbae1923b98ff8db8d87b2f649afd7d35.zip powder-327ccb7bbae1923b98ff8db8d87b2f649afd7d35.tar.gz | |
a rotate tool! ctrl-r, then select the area, it will rotate counterclockwise, no properties are saved right now, it deletes and recreates.
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 26 |
1 files changed, 23 insertions, 3 deletions
@@ -1463,8 +1463,6 @@ int main(int argc, char *argv[]) } if(sdl_key=='d') DEBUG_MODE = !DEBUG_MODE; - if(sdl_key=='r') - GENERATION = 0; if(sdl_key=='i') { int nx, ny; @@ -1512,6 +1510,13 @@ int main(int argc, char *argv[]) } } } + if(sdl_key=='r'&&(sdl_mod & (KMOD_LCTRL|KMOD_RCTRL))) + { + save_mode = 1; + copy_mode = 3;//rotate + } + else if(sdl_key=='r') + GENERATION = 0; if(sdl_key=='x'&&(sdl_mod & (KMOD_LCTRL|KMOD_RCTRL))) { save_mode = 1; @@ -1868,6 +1873,14 @@ int main(int argc, char *argv[]) copy_mode = 0; clear_area(save_x*CELL, save_y*CELL, save_w*CELL, save_h*CELL); } + else if(copy_mode==3)//rotation + { + if(save_h>save_w) + save_w = save_h; + rotate_area(save_x*CELL, save_y*CELL, save_w*CELL, save_w*CELL);//just do squares for now + save_mode = 0; + copy_mode = 0; + } else { stamp_save(save_x*CELL, save_y*CELL, save_w*CELL, save_h*CELL); @@ -2148,7 +2161,14 @@ int main(int argc, char *argv[]) if(save_mode) { - xor_rect(vid_buf, save_x*CELL, save_y*CELL, save_w*CELL, save_h*CELL); + if(copy_mode==3)//special drawing for rotate, can remove once it can do rectangles + { + if(save_h>save_w) + save_w = save_h; + xor_rect(vid_buf, save_x*CELL, save_y*CELL, save_w*CELL, save_w*CELL); + } + else + xor_rect(vid_buf, save_x*CELL, save_y*CELL, save_w*CELL, save_h*CELL); da = 51; db = 269; } |
