summaryrefslogtreecommitdiff
path: root/atari/misc.c
diff options
context:
space:
mode:
authorOle Loots <ole@monochrom.net>2011-12-06 21:06:41 +0000
committerOle Loots <ole@monochrom.net>2011-12-06 21:06:41 +0000
commite7e8024be80b734bf1197615e70cc198bb9758c6 (patch)
treed69763a205d7253e84da6a22cb6b77790583e06d /atari/misc.c
parent3ba6a15fa7af580d14044ab2e73318b75deb6433 (diff)
downloadnetsurf-e7e8024be80b734bf1197615e70cc198bb9758c6.tar.gz
netsurf-e7e8024be80b734bf1197615e70cc198bb9758c6.tar.bz2
Fix focus element
svn path=/trunk/netsurf/; revision=13251
Diffstat (limited to 'atari/misc.c')
-rwxr-xr-xatari/misc.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/atari/misc.c b/atari/misc.c
index 3146f5ccd..e91c167de 100755
--- a/atari/misc.c
+++ b/atari/misc.c
@@ -301,6 +301,36 @@ long nkc_to_input_key(short nkc, long * ucs4_out)
}
return ( ik );
}
+
+/**
+ * Show default file selector
+ *
+ * \param title The selector title.
+ * \param name Default file name
+ * \return a static char pointer or null if the user aborted the selection.
+ */
+const char * file_select( const char * title, const char * name ) {
+ static char path[PATH_MAX]=""; // First usage : current directory
+ static char fullname[PATH_MAX]="";
+ char tmpname[255];
+ char * use_title = (char*)title;
+
+ if( strlen(name)>254)
+ return( NULL );
+
+ strcpy( tmpname, name );
+
+ if( use_title == NULL ){
+ use_title = (char*)"";
+ }
+
+ if( FselInput( path, tmpname, (char*)"", use_title, NULL, NULL)) {
+ strncpy( fullname, path, PATH_MAX-1 );
+ strncat( fullname, tmpname, PATH_MAX-strlen(fullname)-1 );
+ return( (const char*)&fullname );
+ }
+ return( NULL );
+}
void dbg_lgrect( char * str, LGRECT * r )