~ubuntu-branches/ubuntu/edgy/sope/edgy

« back to all changes in this revision

Viewing changes to sope-appserver/NGObjWeb/Associations/WOLabelAssociation.h

  • Committer: Bazaar Package Importer
  • Author(s): Sebastian Ley
  • Date: 2005-08-19 16:53:31 UTC
  • Revision ID: james.westby@ubuntu.com-20050819165331-hs683wz1osm708pw
Tags: upstream-4.4rc.2
ImportĀ upstreamĀ versionĀ 4.4rc.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
  Copyright (C) 2000-2005 SKYRIX Software AG
 
3
 
 
4
  This file is part of SOPE.
 
5
 
 
6
  SOPE is free software; you can redistribute it and/or modify it under
 
7
  the terms of the GNU Lesser General Public License as published by the
 
8
  Free Software Foundation; either version 2, or (at your option) any
 
9
  later version.
 
10
 
 
11
  SOPE is distributed in the hope that it will be useful, but WITHOUT ANY
 
12
  WARRANTY; without even the implied warranty of MERCHANTABILITY or
 
13
  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
 
14
  License for more details.
 
15
 
 
16
  You should have received a copy of the GNU Lesser General Public
 
17
  License along with SOPE; see the file COPYING.  If not, write to the
 
18
  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 
19
  02111-1307, USA.
 
20
*/
 
21
 
 
22
#ifndef __NGObjWeb_WOLabelAssociation_H__
 
23
#define __NGObjWeb_WOLabelAssociation_H__
 
24
 
 
25
#include <NGObjWeb/WOAssociation.h>
 
26
 
 
27
/*
 
28
  WOLabelAssociation
 
29
 
 
30
  String value syntax:
 
31
    "next"       - lookup key 'next' in table 'nil'   with default 'next'
 
32
    "table/next" - lookup key 'next' in table 'table' with default 'next'
 
33
  
 
34
  This association performs a string lookup in the components 
 
35
  WOResourceManager (or the app's manager if the component has none). It uses 
 
36
  the session and browser languages for the key lookup.
 
37
  
 
38
  Note that this also supports keypathes by prefixing the values with an
 
39
  "$", eg: "$currentDay" will first evaluate "currentDay" in the component
 
40
  and then pipe the result through the label processor.
 
41
  We consider that a bit hackish, but given that it is often required in
 
42
  practice, a pragmatic implementation.
 
43
*/
 
44
 
 
45
@interface WOLabelAssociation : WOAssociation < NSCopying >
 
46
{
 
47
  NSString *key;
 
48
  NSString *table;
 
49
  NSString *defaultValue;
 
50
  struct {
 
51
    int isKeyKeyPath:1;
 
52
    int isTableKeyPath:1;
 
53
    int isValueKeyPath:1;
 
54
    int reserved:29;
 
55
  } flags;
 
56
}
 
57
 
 
58
- (id)initWithKey:(NSString *)_key inTable:(NSString *)_table
 
59
  withDefaultValue:(NSString *)_default;
 
60
 
 
61
- (id)initWithString:(NSString *)_str;
 
62
 
 
63
/* value */
 
64
 
 
65
- (BOOL)isValueConstant; // returns NO
 
66
- (BOOL)isValueSettable; // returns NO
 
67
 
 
68
@end
 
69
 
 
70
#endif /* __NGObjWeb_WOLabelAssociation_H__ */