summaryrefslogtreecommitdiff
path: root/setedit/setedit/dskwin.cc
diff options
context:
space:
mode:
Diffstat (limited to 'setedit/setedit/dskwin.cc')
-rw-r--r--setedit/setedit/dskwin.cc265
1 files changed, 0 insertions, 265 deletions
diff --git a/setedit/setedit/dskwin.cc b/setedit/setedit/dskwin.cc
deleted file mode 100644
index 6d5afaf..0000000
--- a/setedit/setedit/dskwin.cc
+++ /dev/null
@@ -1,265 +0,0 @@
-/* Copyright (C) 1996,1997,1998,1999,2000 by Salvador E. Tropea (SET),
- see copyrigh file for details */
-/**[txh]**********************************************************************
-
- Module: Desktop Windows Helper
- Comments:
- This classes are used to handle the windows of the editor. All are based
-on an abstract class called @x{TDskWin (class)}. This class provides the
-basic structure for all the windows supported in the editor.
-@p
- In addition the editor uses a class called @x{TEditorCollection (class)},
-to hold the windows. This structure basically complements the concept of
-the desktop in TVision. From my point of view it could be part of the
-TDeskTop class.
-@p
- The editor uses it:
-@p
-@<pre>
- extern TEditorCollection *edHelper;
-@</pre>
- Then the windows are inserted using:
-@p
-@<pre>
- edHelper->addEditor(p,SelectHL);
-@</pre>
-for editors and:
-@p
-@<pre>
- edHelper->addNonEditor(p);
-@</pre>
-for non editors.
-@p
- For more information see the classes named above.
-
-***********/
-/**[txh]****
-
- Class: TDskWin
- Comments:
- That's the base class for all the desktop helper windows. All the members
-are undefined except @x{TDskWin::GetText}.
-@p
- The class is derived from TStreamable and helps to save any window in the
-desktop even when the window isn't a TStreamable one.
-@p
-@<subtitle>{Data members:}
-@<pre>
-int type;
-@</pre>
- Is the type of the object. One important thing of this classes is that you
-can know to what class belongs each object. That's used for example to search
-a window of some kind exluding the rest.
-@p
-@<pre>
-int CanBeSaved;
-@</pre>
- It says if the window can be saved to disk. Some special windows like
-the project window aren't saved with the rest.
-@p
-@<pre>
-int ZOrder;
-@</pre>
- This value is used to restore the exact position of the window when reading
-a desktop file from disk.
-@p
-@<pre>
-TView *view;
-@</pre>
- Point to the view of the window. Generally the derived classes have
-another member to use internally and with the correct type.
-
-*****************************************************************************/
-
-#define Uses_string
-#define Uses_TStreamable
-#define Uses_TProgram
-#define Uses_TDeskTop
-#include <ceditor.h>
-
-#include <dskwin.h>
-
-#define Uses_SETAppVarious
-#include <setapp.h> // closeView
-
-/**[txh]**********************************************************************
-
- Function: GetText (3 vals)
- Include: dskwin.h
- Description:
- The GetText member is used by the TListEditors to provide a
-description of the window in the List of windows dialog.
-See: @x{TListEditors (class)}.
-@p
- This version is used to concatenate the contents of s with the dest
-contents without exceding maxLen. Is called by various of the derived
-classes. Isn't the one called by TListEditors.
-
- Return:
- A char pointer to the description of the window.
-
-*****************************************************************************/
-
-char *TDskWin::GetText(char *dest,char *s, short maxLen)
-{
- int max=maxLen-strlen(dest);
- int l=strlen(s);
- if (l>=max)
- {
- strncat(dest,s,max);
- dest[maxLen]=0;
- }
- else
- strcat(dest,s);
-
- return dest;
-}
-
-/**[txh]**********************************************************************
-
- Function: GoAction
- Prototype: int GoAction(ccIndex i)
- Description:
- This member is called when the user selects the Go button in the List of
-Windows dialog. It must select the window. This task is made in an indirect
-way using:
-@p
-@<pre>
-extern TView *setFocusTo;
-extern Boolean focusChanged;
-
-int TDskWinHelp::GoAction(ccIndex )
-{
- TProgram::deskTop->lock();
- setFocusTo=window;
- focusChanged=True;
-
- return 0;
-}
-@</pre>
-
- But can be very different like in the case of the @x{TDskWinClosed (class)},
-where this action opens a previously closed editor.
-
- Return:
- 1 if the object must be deleted. That's used by closed windows.
-
-**************/
-
-int TDskWin::GoAction(ccIndex )
-{
- TProgram::deskTop->lock();
- setFocusTo=view;
- focusChanged=True;
-
- return 0;
-}
-
-/**[txh]*******
-
- Description:
- This member is called when the user selects the Delete button in the List of
-Windows dialog. It can close the window, hide it or remove it. The default
-behavior is call closeView passing the TView pointer.@p
- The arguments are the position in the list and a Boolean value indicating
-if the associated file in disk must be deleted too.
-
-Return:
- 1 if the object must be destroyed.
-
-**************/
-
-int TDskWin::DeleteAction(ccIndex, Boolean)
-{
- closeView(view,0);
- return 0;
-}
-
-/**[txh]********************************************************************
-
- Description:
- Used to know the number of the window associated with it.
-
- Return: The number of the window or a negative value if it doesn't have
-a number. The negative value is -type.
-
-***************************************************************************/
-
-int TDskWin::GetNumber()
-{
- return -type;
-}
-
-/**[txh]*******
-
- Function: Compare
- Prototype: int Compare(void *view, int type)
- Description:
- Is used during searchs. If the view is the one owned by the class and
-the type is the right it must return a non zero value.
-
- Return:
- Non zero if the requested object is this.
-
-**************/
-/**[txh]*******
-
- Function: GetText
- Prototype: char *GetText(char *dest, short maxLen)
- Description:
- The GetText member is used by the TListEditors class to provide a
-description of the window in the List of windows dialog.
-See @x{TListEditors (class)}.
-@p
- This version is the virtual one. It must copy to dest the description of
-the window limiting it to maxLen.
-
- Return:
- A char pointer to the description of the window.
-
-*****************************************************************************/
-
-void InsertInOrder(TDeskTop *dsk,TDskWin *win)
-{
- int z=win->ZOrder;
- TView *v=0;
-
- if (z>=0)
- {
- if (z==0)
- dsk->insertBefore(win->view,0);
- else
- {
- v=dsk->at(z);
- dsk->insertBefore(win->view,v);
- }
- }
- else
- dsk->insert(win->view);
-}
-
-void AddAndInsertDskWin(TDskWin *win)
-{
- AddNonEditorToHelper(win);
- InsertInOrder(TProgram::deskTop,win);
-}
-
-void TDskWin::write(opstream& os)
-{
-}
-
-void *TDskWin::read(ipstream& is)
-{
- return this;
-}
-
-const char *TDskWin::streamableName() const
-{
- return NULL;
-}
-
-int TDskWin::Compare(void *p, int t)
-{
- return (t==type) && p==(void *)view;
-}
-