summaryrefslogtreecommitdiffstats
path: root/src/app/Dialogs/krsqueezedtextlabel.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2025-08-28 22:44:34 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2025-08-31 23:30:34 +0900
commitf9abd9d505434c9244c03eac708e29a0ca042f6b (patch)
tree30a197ab4c413849188bc131ff859212e636c821 /src/app/Dialogs/krsqueezedtextlabel.h
parent14d42d284de233f9937becf3fc9ee0dabede3b21 (diff)
downloadkrusader-r14.1.x.tar.gz
krusader-r14.1.x.zip
Restructure source foldersr14.1.x
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 086012dcad8a976a0dabbb7cbc20c9cb612cdfa9)
Diffstat (limited to 'src/app/Dialogs/krsqueezedtextlabel.h')
-rw-r--r--src/app/Dialogs/krsqueezedtextlabel.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/app/Dialogs/krsqueezedtextlabel.h b/src/app/Dialogs/krsqueezedtextlabel.h
new file mode 100644
index 0000000..320953f
--- /dev/null
+++ b/src/app/Dialogs/krsqueezedtextlabel.h
@@ -0,0 +1,45 @@
+#ifndef KRSQUEEZEDTEXTLABEL_H
+#define KRSQUEEZEDTEXTLABEL_H
+
+#include <ksqueezedtextlabel.h>
+
+class TQMouseEvent;
+class TQDropEvent;
+class TQDragEnterEvent;
+
+/**
+This class overloads KSqueezedTextLabel and simply adds a clicked signal,
+so that users will be able to click the label and switch focus between panels.
+
+NEW: a special setText() method allows to choose which part of the string should
+ be displayed (example: make sure that search results won't be cut out)
+*/
+class KrSqueezedTextLabel : public KSqueezedTextLabel {
+TQ_OBJECT
+
+ public:
+ KrSqueezedTextLabel(TQWidget *parent = 0, const char *name = 0);
+ ~KrSqueezedTextLabel();
+
+ void enableDrops( bool flag );
+
+ public slots:
+ void setText( const TQString &text, int index=-1, int length=-1 );
+
+ signals:
+ void clicked(); /**< emitted when someone clicks on the label */
+ void dropped(TQDropEvent *); /**< emitted when someone drops URL onto the label */
+
+ protected:
+ void resizeEvent( TQResizeEvent * ) { squeezeTextToLabel(_index, _length); }
+ virtual void mousePressEvent(TQMouseEvent *e);
+ virtual void dropEvent(TQDropEvent *e);
+ virtual void dragEnterEvent(TQDragEnterEvent *e);
+ void squeezeTextToLabel(int index=-1, int length=-1);
+
+ private:
+ bool acceptDrops;
+ int _index, _length;
+};
+
+#endif