Hey, glad its working. Some of your points are related, so I'll address those together.<br>
<br>
<br>
<span class="q"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">1.) The first time the app loads, there should be all image loaded, or<br>some kind of random image, or some kind of text that says search for
<br>what you need...basically, users need help.</blockquote></span>
<div><br>
Good idea. Loading all images would take an unreasonable amount
of memory, but a text prompt in the results pane is very doable.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">2.) When dragging in clip art, could it land in Inkscape where it is<br>
dropped? Is this an Inkscape or a Clip Art Browser issue?
</blockquote></span>
<div><br>
This is an Inkscape issue. I've been trying to fix this, and I
believe the relevent code is in the sp_ui_drag_data_received function
in interface.cpp . The fix doesn't appear hard; just take the x
and y parameters to the function (which are currently unused), find
what coordinates in the document correspond to that point on the
screen, and set the x, y attributes on the outermost element of the
incoming xml accordingly. Unfortunately, I don't know what
function to use to map screen coordinates to document coordinates.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">3.) Where are the titles for all the clip art?</blockquote></span>
<div><br>
The icon titles should be the metadata titles; are you seeing something
different? Also, the title should be listed near the bottom of
the right hand pane when a specific icon is active.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">4.) Could the right pane collapse, or be collapsed at the beginning?</blockquote>
</span>
<div><br>
Sure, though from a user interface perspective, I'm not sure that its
good to have the dimensions of the main window be changing
dynamically. The large, empty space initially doesn't look good
either though.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">5.) Is there a way to add a light preferences menu, or a button to this.
<br>I wonder if it is wise to put a menu or some kind of icon bar in this
<br>app. I'm leaning towards icon menu rather than a menu because it will be<br>used inside apps for the most part.</blockquote></span>
<div><br>
<br>
Right now, I'm working on turning the whole interface into a gtk
notebook that will have 3 tabs: search, browse, and settings. I'm
nervous about this, because I'm just having a hard time coming up with
any reasonable visual interface for the browse tab, but I'll discuss
that more below.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">6.) When doing a search, the app goes non-responsive for long periods of
<br>time which is bad IMO.
</blockquote></span>
<div><br>
<br>
Definitely agree; this is an Inkscape issue, and after looking through
the extensions code a bit, I suspect its a non-trivial fix. You
could partially fix this by having the subprocess that Inkscape spawns
for the extension spawn the real extension process and then return
immediately, giving Inkscape back the unaltered document. You
could then insert clip art by dragging and dropping, but not by
selecting an image. The issue is that Inkscape effects extensions
work by writing the current document to the extensions's standard
input, waiting (freezing), then reading the modified document on
standard input. To keep it responsive during the waiting period,
you'd have to spawn another thread that would poll the extension
continuously. This could be done by modifications to
extension/implementation/script.cpp, but I haven't attempted this yet.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">7.) Could you add some kind of link to the image or to the open clip art
<br>library that says "get more clip art"
</blockquote></span>
<div><br>
Not sure what you mean here.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">8.) When running the Clip Art Browser, Inkscape is blocked and appears<br>
frozen so then it is not possible to do drag and drop...not good! This
<br>should be fixed. The Clip Art Browser should be spawned, the pid<br>recorded, etc, so that Inkscape controls that process, but so that<br>Inkscape can continue...</blockquote></span>
<div><br>
Yeah, I tried to describe why this is above. Spawning the browser
off into its own app would work, but you lose the ability to write to
the pipe that did the spawning, which means you can't use the
traditional effect extension interface to modify the document.
And the only other IPC technique to modify the document then is gtk
drag-drop, I believe. The way effect extensions are implemented,
as long as that original pipe is open, Inkscape is frozen (uh, right,
guys)?. Again, I think this might be solvable with threads.<br>
<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">9.) The name of the program, Clip Art Browser needs to be made<br>consistent throughout the code
</blockquote></span>
<div><br>
Working on that for 0.32, which I intend to release absolutely ASAP.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">10.) You need to make the clip art indexer take an argument as to where
<br>the clipart folder is, and then it needs to also take an argument for
<br>where to install the index.dat it generates...if this arg. is not passed<br>in, then generate that file in the same dir. as where the script is run.</blockquote></span>
<div><br>
This is actually how I implemented it initially, before I started
worrying that I was making everything too complex. But I agree,
and will switch it back.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">11.) There should be some kind of information in the GUI as to how many
<br>images are at the apps disposal.
</blockquote></span>
<div><br>
Good idea... only prob is that this will require some way to retrieve
this info from ocal. The ocal web site currently just says "Over
4300 clips.", which isn't quite usable, unless I'm desperate.<br>
</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">12.) Some kind of browse by category would be nice.</blockquote></span>
<div><br>
I have absolutely been wracking my brain about how to do the interface
for this. If I'm willing to make the interface target OCAL in
particular, and not arbitrary clip art repositories, its not difficult,
but if you want to connect it to arbitrary repositories (such as custom
local ones) that may have differing category structures, providing a
browsing interface becomes more challenging. For now, the best
solutions I see are to either hard code OCAL's category structure, or
let users only browse one repository at a time. Right now, I'm
trying to implement the former. There's some other more complex
issues too, including the performance of trying to browse ocal over the
network, but they're not worth going into on the list.</div>
<span class="q"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">13.) Some kind of browse alphabetically would be nice too... :)
</blockquote></span>
<br>
This can be done without too much trouble for local clip art, but will
require server-side additions to be used for querying ocal over the
network.<br>
<br>
Anyway, I promise I'm coding like mad nowadays to get this stuff in
there. 0.32 will be out soon. Thanks for the feedback, I
expect to be able to implement most of it, as described above.<br>
<br>
Greg