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:25:26 +0900
commit086012dcad8a976a0dabbb7cbc20c9cb612cdfa9 (patch)
tree56c9bfcfd7cd13b17707dc8862f26932e9814973 /src/app/Dialogs/krsqueezedtextlabel.h
parent409e7f624d202c7f96b4d0ab2da1834135169f8b (diff)
downloadkrusader-master.tar.gz
krusader-master.zip
Restructure source foldersHEADmaster
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
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