Solution Builder API
Configure the Custom Uploader
17min
overview for background information, see implementation details docid 42txky0k3olytswsglysh if you want to create a custom uploader, then please contact sales to obtain the source files that you will need this document describes how you can configure your personalized custom uploader this allows you to use a reserved area of the screenpal solution builder upload ui panel to insert your custom ui you create the ui using the java programming language (not javascript) in this screenshot, the yellow rectangle is the area where your custom java user interface would appear your custom user interface can be used to add additional customer entered information that is delivered in the post to the upload url creating a custom uploader create a java source file, such as custompublishimpl java, that implements the com screencastomatic custompublish custompublish interface for example package test custompublish; import com screencastomatic custompublishbasicuploadwithselect; import javax swing ; import java awt ; public class custompublishimpl extends custompublishbasicuploadwithselect{ @override public jcomponent create(application application){ jcomponent superjcomponent = super create(application); superjcomponent setopaque(false); superjcomponent setalignmentx(component center alignment); jcomponent customui = new jlabel("\<html>\<br> this is my custom uploader ui \<br>imagine some buttons or " + "something here \<br>\<br>"); customui setopaque(true); customui setbackground(color yellow); customui setminimumsize(customui getpreferredsize()); customui setmaximumsize(customui getpreferredsize()); customui setalignmentx(component center alignment); jpanel result = new jpanel(); result setlayout(new boxlayout(result, boxlayout y axis)); result setopaque(false); result add(customui); result add(superjcomponent); return result; } } you create a jar file, similar to implementation details docid 42txky0k3olytswsglysh , that replaces basicuploadskin x y z jar inside that jar file, you put the class file for your custom uploader, such as custompublishimpl class make sure to put it inside the required java directory hierarchy, such as "test/custompublish/custompublishimpl class" for the example source file above's java package you "appdisplay properties" file with your customized properties see configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s section for a description of the properties you can use any resources you need for you custom ui, such as skin images be sure to remove basicuploadskin x y z jar and use your custom uploader jar, such as customuploadskin 3 1 0 jar, when specifying your list of jars that get downloaded from your javascript launcher properties see splauncher properties docid bpkdmtjdpmi02x4qpzcw custom uploader properties below is a list of properties that you may configure from your implementation details docid 42txky0k3olytswsglysh javascript file, and/or your customuploadskin x y z jar jar file (inside its appdisplay properties and appdisplay xxx properties files ) localization the screenpal application displays text using localization this means it detects the user's set language and choses a string created for that language it does this by having the text property being placed in a language specific file for example, put the "som app preview\ title" property in each of the language files, with its value text set to the translated string for that language appdisplay properties is used to hold properties that are for any language, such as properties that are not text messages appdisplay xxx properties files are used to hold language specific strings in the property list below, locale locale is used to identify a property that you should place in a language specific appdisplay xxx properties file filename language note appdisplay properties none holds non localized properties (no translated text ) appdisplay de properties german appdisplay default properties english used as the default when no other language file contains an overriden property appdisplay es properties spanish appdisplay fr properties french appdisplay it properties italian appdisplay ja properties japanese appdisplay pt br properties portugues (brasil) appdisplay zh properties chinese the following properties can be set in the appdisplay properties file configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required locale locale configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required locale locale configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s optional optional configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s optional optional configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required locale locale configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required locale locale configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s optional optional configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s required required locale locale configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s optional optional configure the custom uploader docid 8nh8n9zsb0jjiepyzqz1s optional optional som app content subdirectory required required locale locale the subdirectory to store your users’ recordings the subdirectory is created in the screenpal application's default storage location for example, the user's home folder on mac, or the user's documents folder on windows som app content subdirectory=screen recorder som app custompublish class required required identifies the java class you created that implements the custompublish interface som app custompublish class=com screencastomatic custompublish custompublishimpl som app custompublish name required required locale locale the text to show for your brand name som app custompublish name="upload to mybrand" som app drawandzoom enabled optional optional optionally show the show draw & zoom controls button on the screenpal recorder som app drawandzoom enabled=true som app editing enabled optional optional optionally show the edit video button on the upload ui panel som app editing enabled=true som app frame title required required locale locale the text to show on the screenpal application titlebar som app frame title=mybrand som app preview\ title required required locale locale the text to show for the title of the recording at the top of the preview display som app preview\ title=upload to mybrand som app upload deleteafter optional optional specifies if the local recording should be deleted after a successful upload som app upload deleteafter=true som app upload message required required locale locale the message to display after a successful upload the optional string, title replace , will be replaced with the string you return from your custompublishimpl gettitle() java method som app upload message=\\ \<div style="font size 17pt; text align\ left;">\\ uploaded video \<br>\\ \<b>title replace\</b>\\ \<br>\<br>\\ you can set up a custom message here and also \\ \<ul>\\ \<li>choose if you want to show the link below \<br>\<br>\</li>\\ \<li>choose if you want to launch a url when the \<b>continue\</b> button below is pressed so you can direct the user to a playback page or any other url \</li>\\ \</ul>\\ \<br>for example, this app is set to go to screencast o matic com when you click \<b>continue\</b>\\ \</div> som app upload onexit action optional optional after a successful upload, a continue button is displayed when clicked, a webpage will be opened to the url you specify here if not specified, then no webpage is opened specify gotoplayback to open the url you returned for a successful upload via com screencastomatic custompublish customuploader listener done(string url) som app upload onexit action=http //screenpal com/ som app upload showlink optional optional after a successful upload, you can choose to show ui that presents a hyperlink url to open the video or use its copy button to copy the url to the clipboard som app upload showlink=true