Schrift
[thread]7991[/thread]

Widget Variablennamen (Seite 3)

Leser: 2


<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten
renee
 2006-05-22 19:49
#66258 #66258
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Nein, das müsstest Du dann so machen:

package Tk::Varname::Entry
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package Tk::Varname::Entry;

#
# Copyright (c) 2005 Renee Baecker (module@renee-baecker.de)
#

use strict;
use warnings;

require Tk;
require Tk::Entry;

our @ISA = qw(Tk::Derived Tk::Entry);
our $VERSION = '0.01';

Construct Tk::Widget 'Varname::Entry';

sub Populate{
my ($cw,$args) = @_;

$cw->SUPER::Populate($args);
$cw->ConfigSpecs(
-varname => ['PASSIVE', 'varname', 'Varname', '' ],
);
return $cw;
}

sub get_varname{
my ($self) = @_;
return $self->cget('-varname');
}

1;


package Tk::Varname::BrowseEntry:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
package Tk::Varname::BrowseEntry;

use Tk;
use Tk::BrowseEntry;

our @ISA = qw(Tk::Derived Tk::BrowseEntry);

sub Populate{
# ...
}

1;



und dann im Skript:
Code: (dl )
my $entry = $mw->Varname::Entry();


Wobei ich noch nicht einmal weiß, ob das bei Tk mit den :: in den Widget-Namen funktioniert...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
zipster
 2006-05-22 20:11
#66259 #66259
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Okay. Danke also so wie ich es vor hatte alles in einem Modul geht also nicht.

Werde es mal bauen und checken ob es funktioniert.
Vielen Vielen Dank schon mal.
renee
 2006-05-22 21:01
#66260 #66260
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Mal schauen, ob ptk da noch einen Tipp hat!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2006-05-23 00:06
#66261 #66261
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
In der Dokumentation zu Tk::BrowseEntry gibt es ein Kapitel "Subclassing", das hier interessant sein könnte. In fünf Zeilen könnte man damit ein Tk::Varname_BrowseEntry schreiben.

Zu den dreiteiligen Packagenamen: ich würde lieber nur zweiteilige Namen verwenden (also wie eben geschrieben). Der Grund ist, dass die Tk-Klasse aus der letzten Komponente gebildet wird. Das kann oder kann nicht gewünscht sein.

Vielleicht könnte man schmutzigerweise Populate() in Tk::Widget erweitern. Dann hätte man die neue Option in *allen* Tk-Widgets ohne Änderung.
zipster
 2006-05-23 12:29
#66262 #66262
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Wie erweitert man den Populate?
Von mir aus könnte das nämlich ruhig in allen Widgets drin sein, würde mich garnicht stören :D
ptk
 2006-05-23 23:06
#66263 #66263
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Tk::Widget::Populate ist zurzeit eine ziemlich leere Funktion. Also kannst du sie einfach nur definieren. Aber Achtung: schmutzig! Zeige niemanden deinen Code!
zipster
 2006-05-24 12:05
#66264 #66264
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Also mache ich es besser mit eigenen modulen.

Okay hab kapiert ;)
zipster
 2006-05-24 13:55
#66265 #66265
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Hab nen Bug entdeckt.

Mit dem Standard Tk::Entry sind die Felder alle Weiß
Mit dem Eigenmodul Tk::VarnameEntry sind die Felder Grau.

Warum ist das so? Und wie kann ich das ändern.

By the Way: Das mit den Modulen funktioniert super. Jetzt ist es ganz einfach einträg zu löschen. NOCHMALS VIELEN DANK RENEE :laugh:
renee
 2006-05-24 15:01
#66266 #66266
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
probier mal, die Option -background (oder so ähnlich) im Modul zu setzen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2006-05-24 21:46
#66267 #66267
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Vielleicht hilft eine Erweiterung in ConfigSpecs:
Code: (dl )
1
2
    -background  => ['SELF' => "background",  "Background", Tk::NORMAL_BG ],
-foreground => ['SELF' => "foreground", "Foreground", Tk::BLACK ],
<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten



View all threads created 2006-05-18 13:18.