Commit Graph

26 Commits

Author SHA1 Message Date
sleuth 510d0ded29 Preliminary dnd support. Dragging from and to views works, with a
default mode of move.  Hold 'shift' for copy.  No visible feedback
of actions occurs yet, but you'll see the view update as soon as efsd
reports the file changes.  Tested, but be careful around files you care
about.  Moves and copys use efsd_move and efsd_copy, without the force
option.  So source files will not overwrite the destination if it exists.

Kevin Brosius <cobra@compuserve.com>


SVN revision: 5747
2001-12-06 02:50:17 +00:00
Carsten Haitzler ee82a15d31 add stuff to e_setup.. dialog has buttons now. fixed bug with view with bg
addition not working.


SVN revision: 5738
2001-11-26 13:08:34 +00:00
cpk bba90a0090 Oops, that was not for public consumption :)
SVN revision: 5737
2001-11-26 01:20:24 +00:00
cpk 630bf3c408 Efsd updates. Now I remember what I forgot in the efsd commit comment --
I changed the name of some of the convenience calls from efsd_reply_...
to efsd_event_... because they're no longer applicable to reply events
only.

I've also hooked in a cleanup function for Efsd when E exits, and
duplicated memory when accessing a returned metadata string.


SVN revision: 5736
2001-11-26 01:10:48 +00:00
Carsten Haitzler 0ce64e39cf and in an optimising spree i broke the bg reload if you replaced the file..
fix fix fix :)


SVN revision: 5734
2001-11-25 12:49:39 +00:00
Carsten Haitzler 3cbfb2d937 working on the iconbar. it now accepts scroll arrows in the iconbar bit - u
can scroll around 9if you have too many icons to fit) it also will clip the
icons to the icon area. also u can scroll the icons up and down the bar to a
position you like. a new test iconbar bit to demo this too.


SVN revision: 5726
2001-11-24 05:54:32 +00:00
Carsten Haitzler d90ac55831 consolidate.. consolidate..
SVN revision: 5721
2001-11-18 21:43:50 +00:00
Carsten Haitzler 7e0be252dc centralise all the bg handling in views...
SVN revision: 5720
2001-11-18 21:28:35 +00:00
Carsten Haitzler febd6d0d43 bacgkroudns of views now watch for the background file to change... if it
does.. the background changes - hand for setting your own root bg.. just use
ebony.. save it and:

cp file.bg.db ~/.e.desktop/default/.e_background.bg.db


SVN revision: 5708
2001-11-17 02:45:43 +00:00
cpk c728727b17 * s/mulit/multi/ :)
* slight improvement in the menu handling -- when something was selected,
don't pop up menus when the user just clicks, but only unselect
everything. I think it's pretty irritating when the user just wants to
get rid of the selection and keeps getting menu popups.


SVN revision: 5617
2001-11-03 15:33:21 +00:00
cpk a708bdfd42 * More cleanups. I took out everything related only to icon handling
from the view code, and put it into icons.[ch].

* Added the relative desktop move path from Alan Schmitt.


SVN revision: 5616
2001-11-03 14:55:21 +00:00
cpk 454d2b917a * replaced printf()s with D()s.
* cleaned up functions in utils in file utils and others, there's a
new file.[ch] for the file-related helpers.
* Added stat info to E_Icon, watch how directories become grayed when
you cannot access them :)


SVN revision: 5610
2001-11-03 09:07:40 +00:00
cpk 02379472ae Alright, I spent some time now reading e17's code. Here's what
I've changed, this is big, so read this carefully :)

* I've added debugging macros for messages and function call
tracing. Usage:

  D("Creating item %i %i %i\n", x, y, z);

Define DEBUG to use the D macro.

  D_ENTER;
  D_RETURN;
  D_RETURN_(x);

These are for call tracing. Use D_RETURN_(x) when returning
something from a function. Define DEBUG_NEST to use this.

* added iconbar header file to Makefile.am
* added proper new()/cleanup() calls for E_Delayed_Action;

* I've completely rewritten the object and observer handling. Bye
bye macros, this was nasty. It'll be hard enough to avoid leaks
with usecounting in C. We now basically have the same system as gtk.
There's a clear separation of observer and object code now.
An E_Object by itself has nothing to do with observing or being
observed, therefore, there are now E_Observers and E_Observees
that are derived from E_Object. IMPORTANT: The cleanup system now
reflects the reference count system, therefore, all ..._free()
calls are now static, because the destructor should never be called explicitly, but implicitly through e_object_unref(). The object handling
now is as follows:

  - The cleanup functions clean up everything that is contained in
a struct, but NOT the struct itself. Instead of the final
free() call, they call the destructor of the base class. The
calls will walk up the hierarchy and clean up what's contained in
every struct, and the final e_object_cleanup() will free the
structure itself. E_Delayed_Action is a good example.

  - The only calls that influence the reference count are
e_object_ref() and e_object_unref(). If you need to do things
before an object gets destroyed, you can query the use count using
e_object_get_usecount() and check if it's equal to 1. So this:

  OBJ_UNREF(b);
  OBJ_IF_FREE(b)
   {
     ecore_window_reparent(e->win, 0, 0, 0);
     e_icccm_release(e->win);
     OBJ_FREE(b);
   }

   now is this:

  if (e_object_get_usecount(E_OBJECT(b)) == 1)
    {
      ecore_window_reparent(e->win, 0, 0, 0);
      e_icccm_release(e->win);
    }

   e_object_unref(E_OBJECT(b));

object.h and observer.h are completely commented, it shouldn't be
too hard to understand. This'll need to be documented in the manual
anyway.

* E_Objects are now used in lots of places where void* were used as
pointers to objects before, especially in the actions code. This is
obviously better, as it will generate compiler warnings when people
want to pass things to functions that expect E_Objects. This could
probably be more restrictive.

* Added typedefs for the function prototypes in E_Action_Impl. Those
fat signatures were just painful to read in the function
declarations/implementations.

* I've also tried to give parameters more useful names. Calling an
object "o" is a lot of fun when you want to grep for it.

* Included is also Graham's latest menu.c patch. Sorry for the
delay, Graham.

* I've added checks to the menu code that make sure that menus
don't pop up when they're empty (which resulted in a little useless
rectangle).

I guess that's it for now. Sorry if I broke anything, but this was
necessary imho.


SVN revision: 5605
2001-11-02 17:07:52 +00:00
cpk f70c75f5c7 I've started to read the code again and added comments here and there.
Also updated the manual.


SVN revision: 5603
2001-11-01 23:54:48 +00:00
cpk 27379cbd44 Back with another one of those blockrockin' BUILDS :o)
* Should compile against new ecore. Yay!
* Cleaned up iconbar code a good deal (no c++ comments!)


SVN revision: 5511
2001-10-17 22:34:27 +00:00
Carsten Haitzler c8e0c7f7be iconbar code.. and some work i was doing on click to focus... having a
problem... not sure what it is actually... but will fix it :)


SVN revision: 5507
2001-10-17 09:53:44 +00:00
Carsten Haitzler 133b01836c fs now uses efsd_flush mechanism... and view records x,y - but efsd
currently segv's if u load up /dev in my tests... :)


SVN revision: 5409
2001-10-01 05:23:42 +00:00
hendryx 6228476075 OK, you can now have individual backgrounds for diffrent directories now.
Just set the full path and file name in the metadata for that directory
under the key "/view/background" (you'll have to use efsdsh to set it right
now).


SVN revision: 5317
2001-09-02 17:42:26 +00:00
Carsten Haitzler 68f5a95f2e strdup wrapped... and err.. looking for a mem leak.. anyone got insure++ ?
SVN revision: 5174
2001-08-16 08:45:37 +00:00
Carsten Haitzler 14f5d57ee5 work work.. smell smell - scrollbars in and mostly functioning
SVN revision: 5135
2001-08-13 06:35:14 +00:00
Carsten Haitzler 23e05d4d83 * fix apps menu
* cp -> tar


SVN revision: 5045
2001-08-05 12:48:18 +00:00
Carsten Haitzler 82c3eaeda2 and make that text abstraction do..... outlines! :)
SVN revision: 5028
2001-08-02 00:54:09 +00:00
Carsten Haitzler fc25a6f20d use cp -dpR instead of -ar (it seems bsd doesnt like -a).
add abstraction for recording view geometry metadata,
put geometry recording on a self-resetting timeout so efsd doesnt thrash
the disk whenever you move or resize windows.
clean out some unused code.


SVN revision: 5026
2001-08-01 23:14:06 +00:00
Carsten Haitzler a9c76621d2 wooop. views now remember size & location by storing it in meta data....
they also defer show until meta data for dir has either failed retrieval or
succeeded. this is cool yyayayayya! :)


SVN revision: 5021
2001-08-01 04:45:14 +00:00
Carsten Haitzler 897f37f43d * make it more split upo (better in this case)
* get rid of more wranings
* get rid of useless code (how the hell it compiled AND ran with missing
symbols... beats me -  but it was working)


SVN revision: 5018
2001-07-31 01:12:02 +00:00
cpk 637e5ce74b Okay Raster, don't shoot me. I've cleaned up the whole thing. I've
added header files for most of the logical units, which greatly
reduces the size of e.h. The dependencies are probably still a bit
too dense, I'll look at that next. Things don't get rebuilt completely
any more when efsd is updated. I've also started command line options.
Only version info and the display variable are recognized so far.
I see no warnings here on my machine. Hope I didn't break anything.


SVN revision: 5014
2001-07-30 16:59:37 +00:00