Home » U++ Library support » TopWindow&PopUp, TrayIcon » Howto Drop Files into a TopWindow please?
Re: Howto Drop Files into a TopWindow please? [message #13908 is a reply to message #13844] |
Fri, 01 February 2008 11:38 ![Go to previous message Go to previous message](theme/default/images/up.png) ![Go to next message Go to previous message](theme/default/images/down.png) |
mrjt
Messages: 705 Registered: March 2007 Location: London
|
Contributor |
|
|
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
class DndTest : public TopWindow {
public:
typedef DndTest CLASSNAME;
DndTest();
Vector<String> files;
virtual void Paint(Draw &w);
void TextLine(Draw &w, Point &p, const String &txt);
virtual void DragAndDrop(Point p, PasteClip& d);
};
void DndTest::Paint(Draw &w)
{
TopWindow::Paint(w);
Point p(2, 2);
TextLine(w, p, "Files:");
if (files.GetCount())
for (int i = 0; i < files.GetCount(); i++)
TextLine(w, p, files[i]);
else
TextLine(w, p, "None");
}
void DndTest::TextLine(Draw &w, Point &p, const String &txt)
{
w.DrawText(p.x, p.y, txt);
p.y += StdFont().GetHeight()+1;
}
// This is the important bit:
void DndTest::DragAndDrop(Point p, PasteClip& d)
{
if (AcceptFiles(d)) {
files = GetFiles(d);
Refresh();
}
}
DndTest::DndTest()
{
Title("I need files!");
SetRect(0, 0, 200, 400);
CenterScreen();
}
GUI_APP_MAIN
{
DndTest().Run();
}
|
|
|
Goto Forum:
Current Time: Mon Jun 10 19:26:47 CEST 2024
Total time taken to generate the page: 0.01131 seconds
|