summaryrefslogtreecommitdiffstats
path: root/kdejava/koala/test/kbase/KBaseDoc.java
diff options
context:
space:
mode:
Diffstat (limited to 'kdejava/koala/test/kbase/KBaseDoc.java')
-rw-r--r--kdejava/koala/test/kbase/KBaseDoc.java198
1 files changed, 198 insertions, 0 deletions
diff --git a/kdejava/koala/test/kbase/KBaseDoc.java b/kdejava/koala/test/kbase/KBaseDoc.java
new file mode 100644
index 00000000..0ee4f8f3
--- /dev/null
+++ b/kdejava/koala/test/kbase/KBaseDoc.java
@@ -0,0 +1,198 @@
+import java.util.*;
+
+import org.kde.qt.*;
+import org.kde.koala.*;
+
+/** KBaseDoc provides a document object for a document-view model.
+ *
+ * The KBaseDoc class provides a document object that can be used in conjunction with the classes JavaApiTestApp and KBaseView
+ * to create a document-view model for standard KDE applications based on KApplication and KMainWindow. Thereby, the document object
+ * is created by the JavaApiTestApp instance and contains the document structure with the according methods for manipulation of the document
+ * data by KBaseView objects. Also, KBaseDoc contains the methods for serialization of the document data from and to files.
+ *
+ * @author Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team.
+ * @version KDevelop version 1.2 code generation
+ */
+public class KBaseDoc extends QObject {
+
+ /** the list of the views currently connected to the document */
+ public ArrayList pViewList;
+
+ /** the modified flag of the current document */
+ private boolean modified;
+ private KURL doc_url;
+
+ /** Constructor for the fileclass of the application */
+public KBaseDoc(QWidget parent, String name)
+{
+ super(parent, name);
+ setURL(new KURL());
+
+ if(pViewList == null)
+ {
+ pViewList = new ArrayList();
+ }
+
+// pViewList.setAutoDelete(true);
+}
+
+ /** adds a view to the document which represents the document contents. Usually this is your main view. */
+public void addView(KBaseView view)
+{
+ pViewList.add(view);
+}
+
+ /** removes a view from the list of currently connected views */
+public void removeView(KBaseView view)
+{
+ pViewList.remove(view);
+}
+
+ /** sets the modified flag for the document after a modifying action on the view connected to the document.*/
+public void setModified(boolean _m){ modified=_m; }
+public void setModified(){ modified=true; }
+
+ /** returns if the document is modified or not. Use this to determine if your document needs saving by the user on closing.*/
+public boolean isModified(){ return modified; }
+
+ /** sets the URL of the document */
+public void setURL(KURL url)
+{
+ doc_url=url;
+}
+
+ /** returns the KURL of the document */
+public KURL URL()
+{
+ return doc_url;
+}
+
+ /** calls repaint() on all views connected to the document object and is called by the view by which the document has been changed.
+ * As this view normally repaints itself, it is excluded from the paintEvent.
+ */
+public void slotUpdateAllViews(KBaseView sender)
+{
+ KBaseView w;
+ if(pViewList != null)
+ {
+ Iterator it = pViewList.iterator();
+ while(it.hasNext())
+ {
+ w=(KBaseView)it.next();
+ if(w!=sender)
+ w.repaint();
+ }
+ }
+
+}
+
+ /** "save modified" - asks the user for saving if the document is modified */
+public boolean saveModified()
+{
+ boolean completed=true;
+
+ if(modified)
+ {
+ KBase win=(KBase ) parent();
+ int want_save = KMessageBox.warningYesNoCancel(win, tr("Warning"),
+ tr("The current file has been modified.\n"
+ + "Do you want to save it?"));
+ switch(want_save)
+ {
+ case 1:
+ if (doc_url.fileName() == tr("Untitled"))
+ {
+ win.slotFileSaveAs();
+ }
+ else
+ {
+ saveDocument(URL());
+ };
+
+ deleteContents();
+ completed=true;
+ break;
+
+ case 2:
+ setModified(false);
+ deleteContents();
+ completed=true;
+ break;
+
+ case 3:
+ completed=false;
+ break;
+
+ default:
+ completed=false;
+ break;
+ }
+ }
+
+ return completed;
+}
+
+ /** closes the acutal document */
+public void closeDocument()
+{
+ deleteContents();
+}
+
+ /** initializes the document generally */
+public boolean newDocument()
+{
+ /////////////////////////////////////////////////
+ // TODO: Add your document initialization code here
+ /////////////////////////////////////////////////
+ modified=false;
+ doc_url.setFileName(tr("Untitled"));
+
+ return true;
+}
+
+ /** loads the document by filename and format and emits the updateViews() signal */
+public boolean openDocument(KURL url, String format)
+{
+ StringBuffer tmpfile = new StringBuffer("");
+ NetAccess.download( url, tmpfile, null );
+ /////////////////////////////////////////////////
+ // TODO: Add your document opening code here
+ /////////////////////////////////////////////////
+
+ NetAccess.removeTempFile( tmpfile.toString() );
+
+ modified=false;
+ return true;
+}
+
+public boolean openDocument(KURL url)
+{
+ return openDocument(url, null);
+}
+
+ /** saves the document under filename and format.*/
+public boolean saveDocument(KURL url, String format)
+{
+ /////////////////////////////////////////////////
+ // TODO: Add your document saving code here
+ /////////////////////////////////////////////////
+
+ modified=false;
+ return true;
+}
+
+public boolean saveDocument(KURL url)
+{
+ return saveDocument(url, null);
+}
+
+ /** deletes the document's contents */
+public void deleteContents()
+{
+ /////////////////////////////////////////////////
+ // TODO: Add implementation to delete the document contents
+ /////////////////////////////////////////////////
+
+}
+
+}