summaryrefslogtreecommitdiff
path: root/apps/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins')
-rw-r--r--apps/plugins/rockpaint.c5
-rw-r--r--apps/plugins/text_editor.c15
2 files changed, 15 insertions, 5 deletions
diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c
index a273e4c..184add1 100644
--- a/apps/plugins/rockpaint.c
+++ b/apps/plugins/rockpaint.c
@@ -2491,8 +2491,13 @@ static void goto_menu(void)
break;
case MAIN_MENU_SAVE:
+ if (!filename[0])
+ rb->strcpy(filename,"/");
if( !rb->kbd_input( filename, MAX_PATH ) )
{
+ if(rb->strlen(filename) <= 4 ||
+ rb->strcasecmp(&filename[rb->strlen(filename)-4], ".bmp"))
+ rb->strcat(filename, ".bmp");
save_bitmap( filename );
rb->splash( 1*HZ, "File saved (%s)", filename );
}
diff --git a/apps/plugins/text_editor.c b/apps/plugins/text_editor.c
index 5737271..3c9bf7d 100644
--- a/apps/plugins/text_editor.c
+++ b/apps/plugins/text_editor.c
@@ -18,6 +18,7 @@
****************************************************************************/
#include "plugin.h"
#include "action.h"
+#include "playback_control.h"
#if PLUGIN_BUFFER_SIZE > 0x45000
#define MAX_CHARS 0x40000 /* 128 kiB */
@@ -465,27 +466,31 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
if (changed)
{
MENUITEM_STRINGLIST(menu, "Do What?", NULL,
- "Return", "Save Changes",
+ "Return",
+ "Show Playback Menu", "Save Changes",
"Save As...", "Save and Exit",
"Ignore Changes and Exit");
switch (rb->do_menu(&menu, NULL))
{
case 0:
break;
- case 1: //save to disk
+ case 1:
+ playback_control(rb);
+ break;
+ case 2: //save to disk
save_changes(1);
changed = 0;
break;
- case 2:
+ case 3:
save_changes(0);
changed = 0;
break;
- case 3:
+ case 4:
save_changes(1);
exit=1;
break;
- case 4:
+ case 5:
exit=1;
break;
}